Error: invalid client id or redirect uri

Bom dia,

Comprei uma alexa echo dot para integrar com a home assistant e segui este tutorial:

Consigo ver todos os dispositivos no test, mas quando chego à parte de dar link à conta aparece-me o seguite erro:

Quando tento fazer login aparece-me este erro na home assistant:
image

Que nos logs aparece:

Já tentei várias coisas mas não consigo resolver. Eu recentemente mudei para a operadora NOS e tenho o gigarouter e acho que este não possui NAT loopback. E acho que este é problema, alguém já teve este problema e sabe como resolver?

A minha home assistant está a correr com a última versão do hassio 64-bits numa raspberry pi 4b.

Obrigado!

Alguém teve problemas a mudar de operadora para a NOS? Eu recentemente mudei e comecei a ter problemas de não conseguir aceder com o IP externo dentro da minha rede. Eu acho que isto é devido ao router não possuir NAT loopback e também faz com que não consiga configurar a alexa. Alguém ja teve este problema?

O endereço que se usa como Client ID tem de estar acessível do dispositivo que vai fazer a ligação entre as duas contas.

https://layla.amazon.com/.well-known/assetlinks.json

É o caso?

Segundo a documentação esta opção também deve estar desactivada.
Alexa with Home Assistant Local for FREE Without Subscription - YouTube 2021-11-07 22-32-04

Olá Luís, obrigado pela resposta! Eu abri o link que enviaste e aparece-me o seguinte:

[{
  "relation": ["delegate_permission/common.handle_all_urls"],
  "target": {
    "namespace": "android_app",
    "package_name": "com.amazon.dee.app", "sha256_cert_fingerprints":
       ["2F:19:AD:EB:28:4E:B3:6F:7F:07:78:61:52:B9:A1:D1:4B:21:65:32:03:AD:0B:04:EB:BF:9C:73:AB:6D:76:25",
        "7C:AC:39:19:37:98:1B:61:34:BD:CE:1F:D9:83:4C:25:31:81:F5:AB:F9:1D:ED:60:78:21:0D:0F:91:AC:E3:60"]
  }
}]

Confirmei sobre essa opção e tenho-a desligada. Estive a verificar o tutorial outra vez e esta é a minha configuração.




lambda

Eu confirmei o arn e no lambda a Alexa Smart home e elas coincidem. O teste do discovery funciona e da-me todos os dispositivos que tenho. Mas quando vou a aplicação e tento dar link à conta acontece-me o seguinte:

Eu fui ver ao log e aparece-me isto:

home_assistant_log

Não sei mesmo resolver. A minha configuração tem:

http:
  use_x_forwarded_for: true
  trusted_proxies:
    - 127.0.0.1
    - 172.30.33.0/24

Eu estou a utilizar o Nginx Proxy Manager para reencaminhar o meu DNS para o meu dispositivo para poder usar a porta 443 para duas home assistants que tenho em casa.

Alguma ideia?
Obrigado pela atenção!

Isso é um AVISO, pode não ser nada. Não há erros mesmo? De indieauth por exemplo?

Eu tentei outra vez ligar-me e apareceu esta notification com o mesmo erro:

image

E este é o log completo:
image

Se isso é um log é texto e como tal deve ser copiado para aqui, e formatado, como texto.

2021-11-13 10:56:56 WARNING (SyncWorker_2) [homeassistant.loader] We found a custom integration hacs which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2021-11-13 10:56:56 WARNING (SyncWorker_0) [homeassistant.loader] We found a custom integration shelly which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2021-11-13 10:56:56 WARNING (SyncWorker_1) [homeassistant.loader] We found a custom integration scheduler which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2021-11-13 10:56:57 WARNING (Recorder) [homeassistant.components.recorder.util] The system could not validate that the sqlite3 database at //config/home-assistant_v2.db was shutdown cleanly
2021-11-13 10:58:03 ERROR (MainThread) [homeassistant.components.google_assistant.http] Request for https://homegraph.googleapis.com/v1/devices:reportStateAndNotification failed: 404
2021-11-13 10:58:33 ERROR (MainThread) [homeassistant.components.google_assistant.http] Request for https://homegraph.googleapis.com/v1/devices:reportStateAndNotification failed: 404
2021-11-13 10:58:35 ERROR (MainThread) [homeassistant.components.google_assistant.http] Request for https://homegraph.googleapis.com/v1/devices:reportStateAndNotification failed: 404
2021-11-13 11:13:11 ERROR (MainThread) [homeassistant.components.google_assistant.http] Request for https://homegraph.googleapis.com/v1/devices:reportStateAndNotification failed: 404
2021-11-13 11:13:38 ERROR (MainThread) [homeassistant.components.google_assistant.http] Request for https://homegraph.googleapis.com/v1/devices:reportStateAndNotification failed: 404
2021-11-13 11:31:56 ERROR (Poll status) [pyShelly] Timeout connecting to http://192.168.1.86/status [shellyswitch25-40F5202673EC]
2021-11-13 12:07:26 WARNING (MainThread) [homeassistant.components.http.ban] Login attempt or request with invalid authentication from 87-196-81-16.net.novis.pt (87.196.81.16). (Mozilla/5.0 (Linux; Android 10; Mi A2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.74 Mobile Safari/537.36)

Não sabia, está aqui.

Deves ter por ai um ficheiro de bans onde consta o endereço de onde está a vir o pedido da Alexa. Apaga o ficheiro e tenta de novo.

Faz sentido como diz http.ban. Eu procurei pelo ficheiro na pasta de configuração e não encontrei:

Ou está noutro sitio?

Esta é a minha configuração do http, adicionei o ::1 a ver se fazia diferença e tem o mesmo comportamento.

http:
  use_x_forwarded_for: true
  trusted_proxies:
    - 127.0.0.1
    - 172.30.33.0/24
    - ::1
```´

Não sei onde estas a ver esses ficheiros mas falta-te ai muito ficheiro escondido… E se não me engano o ficheiro de bans está escondido.

Estou a utilizar a extensão vscode. Tive de desativar os ficheiros escondidos e continuo sem encontrar o ficheiro:

A directoria .cloud nao tem nada e a .storage tem:

image

Coloquei no http:

 ip_ban_enabled: false

A ver se fazia algo, mas continuo a ter o mesmo comportamento.

Já reiniciaste o HA depois da alteração?

sim, sempre que faço alterações

Estive a ver o código e esse aviso é genérico e aparece conforme o status HTTP, não implica necessariamente que houve ban (aliás o ban tem de se ligar o ip_ban_enabled). Como há erro toca a registar essa mensagem.

Estive a investigar um pouco e o https://layla.amazon.com está mesmo devolver erros. Logo o Home Assistant nunca vai conseguir ultrapassar esse passo. Experimentar antes com o client_id https://pitangui.amazon.com/. Não sei se isso implica alterações noutras partes da configuração do lado da Amazon, tipo mudar a região da conta Alexa, pois não utilizo.

 % http https://layla.amazon.com
HTTP/1.1 500 
Date: Sat, 13 Nov 2021 15:11:01 GMT
Server: Server
X-Cache: Error from cloudfront
% http https://pitangui.amazon.com/
HTTP/1.1 302 
Date: Sat, 13 Nov 2021 15:14:35 GMT
Location: https://www.amazon.com/ap/signin?showRmrMe=1&openid.return_to=https%3A%2F%2Fpitangui.amazon.com%2F&openid.identity=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&openid.assoc_handle=amzn_dp_project_dee&openid.mode=checkid_setup&openid.claimed_id=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&openid.ns=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0&
Server: Server
X-Cache: Miss from cloudfront
1 Curtiu

Também poderá implicar alguma alteração no NGINX Proxy Manager para fazer passar a autenticação.

Troquei o client id e ja apareceu para fazer o login:
image

O que troquei foi o client id como disseste.

E já consegui!

image

Muito obrigado a todos pela ajuda!

PS: Tive de alterar a região do lambda para US mas está funcional! :slight_smile:

1 Curtiu

Copyright © 2017-2021. Todos os direitos reservados
CPHA.pt - info@cpha.pt


FAQ | Termos de Serviço/Regras | Política de Privacidade