matbarofex/pyRofex

websocket deja de recibir datos

Closed this issue · 1 comments

Estoy utilizando pyRofex via Eco.

Me conecto perfecto, realizo el market data subscription bien y empiezo a recibir y procesar datos en tiempo real, pero luego de determinado tiempo (aún no se cuanto). Dejo de recibir datos.

Hice el chequeo con Matriz y el ticker sigue cotizando normalmente.

Hay algun metodo tipo keep_connection_alive?

Porque se produce esta desconexión?

Gracias.

Hola Alejandro,

En principio la conexión debería mantenerse abierta permanentemente, sospecho que esta ocurriendo algun tipo de error que no se esta mostrando. Te recomiendo lo siguiente (tal vez ya lo estas haciendo):

  • Asociar un handler para errores y excepciones que pueden estar ocurriendo en la conexión pero no se están mostrando por algún motivo.
  • Utilizar try-catch dentro de los handlers para detectar alguna excepcion que pueda estar ocurriendo al procesar los mensajes.

Ambos puntos es posible realizarlo con el siguiente código:

import traceback

def market_data_handler(message):
    try:
        print("Market Data Message Received: {0}".format(message))
        # Codigo para procesar el mensaje 
    except Exception:
        traceback.print_exc()


def error_handler(message):
    print("Error Message Received: {0}".format(message))


def exception_handler(e):
    print("Exception Occurred: {0}".format(e.message))

pyRofex.init_websocket_connection(market_data_handler=market_data_handler,
                                  error_handler=error_handler,
                                  exception_handler=exception_handler)

Avisame si te sirvió esto y si logras encontrar donde esta el problema.
Saludos!