General

¡Bienvenido a los foros Aeodoo!

Somos la comunidad de Odoo internacional hispanohablante.
Estos foros son para compartir y debatir dudas técnicas, funcionales y mejores prácticas para Odoo. Recuerda que no están permitidos los insultos, descalificaciones o spam, cualquier conducta reprobable supondrá el baneo del usuario.

0

[16] CE - No funciona longpooling/websocket no refresca el chat

Hola,

En una instalación realizada en docker, con portainer, usando el dockerfile oficial de odoo, solo cambiando que expongo el puerto 8072 (es decir, 8069:8069 y además 8072:8072) y noginxproxymanager.com como proxy inverso

Me da error y no funcina el longpooling/websocket


Estas son las versiones de librerias python

cryptography        3.4.8

gevent              20.9.0

greenlet            0.4.17

Parece que pasa algo con greenlet, tuve que bajar greenlet a 0.4.17 porque sinó no funcionaba el odoo 

¿Alguien sabe como arreglar esto?

Saludos y gracia


1 Comment
Avatar
Discard
Avatar
Fernando García Hansen
-

Error

2024-02-23 07:12:00,175 17 INFO teslaspain werkzeug: 172.19.0.1 - - [23/Feb/2024 07:12:00] "GET /websocket HTTP/1.1" 500 - 37 0.094 4.110
2024-02-23 07:12:26,751 16 ERROR teslaspain odoo.http: Exception during request handling.
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/odoo/addons/bus/websocket.py", line 818, in open_connection
socket = request.httprequest._HTTPRequest__environ['socket']
KeyError: 'socket'
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/odoo/http.py", line 2044, in __call__
response = request._serve_db()
File "/usr/lib/python3/dist-packages/odoo/http.py", line 1633, in _serve_db
return service_model.retrying(self._serve_ir_http, self.env)
File "/usr/lib/python3/dist-packages/odoo/service/model.py", line 133, in retrying
result = func()
File "/usr/lib/python3/dist-packages/odoo/http.py", line 1660, in _serve_ir_http
response = self.dispatcher.dispatch(rule.endpoint, args)
File "/usr/lib/python3/dist-packages/odoo/http.py", line 1774, in dispatch
return self.request.registry['ir.http']._dispatch(endpoint)
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_http.py", line 154, in _dispatch
result = endpoint(**request.params)
File "/usr/lib/python3/dist-packages/odoo/http.py", line 697, in route_wrapper
result = endpoint(self, *args, **params_ok)
File "/usr/lib/python3/dist-packages/odoo/addons/bus/controllers/websocket.py", line 18, in websocket
return WebsocketConnectionHandler.open_connection(request)
File "/usr/lib/python3/dist-packages/odoo/addons/bus/websocket.py", line 830, in open_connection
raise RuntimeError(
RuntimeError: Couldn't bind the websocket. Is the connection opened on the evented port (8072)?

3 Answers
2
Avatar
Valentín Vinagre
Best Answer

Hola Fernando,

te dejo un ejemplo del fabricante donde explica como configurar nginx.

https://www.odoo.com/documentation/16.0/administration/install/deploy.html?highlight=nginx#id7


Un saludo,

1 Comment
Avatar
Discard
Avatar
Fernando García Hansen
-

Gracias Valentín

Para mi, al no ser un ingeniero , me viene mejor apoyarme en herramientas con panel gráfico como nginxproxymanager.com
Al resolver un pequeño error , ya funciona.

Saludos

0
Best Answer

Hola,

Gracias por contestar,

Soy muy torpe, tenía algo sin configurar, ahora funciona bien

Era un problema del proxy que al cambiar cosas me olvidé de ponerlo bien.

Con las librerias python de arriba, si funciona. Ló único que hay que cambiar es bajar greenlet a 0.4.17


Saludos y gracias



Avatar
Discard
0
Avatar
Sergio Serrano Lloret
Best Answer

Hola Fernando.

Entiendo que estás utilizando Odoo v16 (a partir de esta versión ya no es compatible longpolling y funciona únicamente por websocket). ¿Qué configuración tienes hecha en el vhost de Nginx para websocket? Creo que ahí está la clave.

Un saludo.

Avatar
Discard

Your Answer

Please try to give a substantial answer. If you wanted to comment on the question or answer, just use the commenting tool. Please remember that you can always revise your answers - no need to answer the same question twice. Also, please don't forget to vote - it really helps to select the best questions and answers!