Onde e quando aparece
Só surge ao clicar num botão
As fichas de instância do Temu abrem-se a partir do menu Temu. Nessa vista está o botão Detect Outbound IP, que aparece sempre no Odoo 17, 18 e 19. A mensagem Could not detect outbound public IP from this Odoo environment. é o erro que esse botão dá quando a deteção não devolve nada, e interrompe a ação. O texto está no código publicado das três ramificações: 17, 18 e 19.

Temu ao botão e daí à mensagem, com as etiquetas em inglês do código original.O botão com o Odoo em português
Com o Odoo em português, o botão continua a chamar-se Detect Outbound IP. O módulo não traz tradução para este idioma, pelo que a etiqueta aparece em inglês, mas é o mesmo botão.


O que faz o módulo antes de dar o erro
A condição é só uma: não há IP
Ao clicar no botão, o módulo tenta descobrir o IP público com que o ambiente do teu Odoo sai para a internet. Se o resultado estiver vazio, lança a mensagem e para. No código, essa é a condição que leva ao erro: ou se obtém um IP, ou surge a mensagem.
Pergunta a três serviços, um a seguir ao outro
A ordem é esta:
api.ipify.org, do qual o módulo espera uma resposta JSON e lê o campoip.ifconfig.me/ip, do qual espera texto.icanhazip.com, do qual também espera texto.
O primeiro que devolve um IP não vazio fica com o resultado e os seguintes não são consultados. A mensagem só aparece quando os três falharam.
O que conta como falha de um serviço
Para o módulo, um serviço falhou e passa-se ao seguinte em qualquer um destes casos:
- O pedido dá algum erro: não há ligação, o serviço não responde a tempo ou qualquer outra exceção.
- O serviço responde com um código de erro HTTP.
- O serviço responde com um redirecionamento. O módulo não o segue, descarta-o e deixa um aviso no registo do servidor com o endereço e o código HTTP.
- A resposta chega bem, mas sem IP (vazia).
Cada pedido espera no máximo dez segundos, ou menos se o tempo limite da instância for menor. Por isso o erro surge depois de testados os três serviços, e não à primeira falha.
O que acontece ao que já tinhas
Se falhar, não se guarda nada
Um erro interrompe a ação e não se guarda o que essa ação ia alterar. Neste caso, o módulo nem chega a guardar um IP novo nem a hora da verificação: o que houvesse de uma deteção anterior fica como estava.
Se correr bem, guarda o IP e a hora
Quando algum serviço responde, o módulo guarda na instância o IP detetado e o momento da verificação, e mostra uma notificação de sucesso com o IP atual. Essa notificação não fica fixa no ecrã.
O que rever quando surge
Testa a partir do servidor onde corre o Odoo
Os pedidos são feitos pelo ambiente do Odoo, não pelo teu navegador. Verificar o endereço no teu portátil não diz nada sobre o que o servidor vê: tens de testar a partir da máquina onde o Odoo é executado. Estes são os pontos que o código permite rever:
- Que esse servidor alcance por HTTPS os três endereços da lista acima.
- Que nenhum responda com um redirecionamento, porque o módulo não o segue.
- Que o que devolvem seja o que o módulo espera: um campo
ipem JSON o primeiro, texto com o IP os outros dois.
Depois, volta a clicar em Detect Outbound IP: cada clique repete a deteção desde o início.
A mensagem não diz qual dos três serviços falhou
O texto é o mesmo quer tenham falhado por tempo, por erro HTTP ou por resposta vazia. Só os redirecionamentos deixam um aviso no registo do servidor, com o endereço do serviço e o código HTTP; nos restantes casos o módulo passa ao serviço seguinte sem mais. Se precisares de saber qual falha, testa cada endereço em separado a partir do servidor.
Se precisares de ajuda com a instalação
O módulo é de pagamento único por versão do Odoo e precisa da subscrição do FlexigoTech Cloud (plano Conector: 49 €/mês ou 490 €/ano, sem IVA); está publicado no Odoo Apps para Odoo 17, 18, 19 e 20, e tens também a página do módulo. Se o ambiente do teu Odoo estiver numa rede com restrições de saída e não souberes por onde começar, a FlexigoTech implementa Odoo 17, 18, 19 e 20 e desenvolve conectores e integrações à medida: podes contar-nos o teu caso e vemos contigo.
Continue a ler
Verificado no código do conector (versão 19.0) e nas fontes indicadas
Fontes
- Código do módulo: flexigobe_temu_connector 19.0 (455b3f0f): models/temu_instance.py
- Código do módulo: flexigobe_temu_connector 19.0 (455b3f0f): views/temu_instance_views.xml
- Código do módulo: flexigobe_temu_connector 19.0 (455b3f0f): models/fgt_cloud.py
- apps.odoo.com/apps/modules/19.0/flexigobe_temu_connector
- flexigotech.com/precios.html
- flexigotech.com/en/services.html
