2011-06-16 13 views
8

Me gustaría tratar de comenzar a usar Erlang, y hay una fuente de datos que me gustaría leer que se distribuye a través de Websockets. En este momento estoy haciendo lo mismo en node.js usando el módulo 'websocket-client ', pero ¿alguien podría sugerir una biblioteca de cliente websocket para Erlang que pudiera ver? (O una solución alternativa si estoy fuera de la marca)Cliente de Websocket en Erlang

+2

['misultin'] (https://github.com/ostinelli/misultin/blob/master/src/misultin_websocket.erl) es un servidor web erlang y parece tener compatibilidad con websocket. – Raynos

+2

@Jonas Oh lo leí mal. ['Here's one'] (https://github.com/davebryson/erlang_websocket/blob/master/README.textile) – Raynos

+0

yaws también tiene algo que ver con los sockets web. El único problema es que la implementación podría ser anterior a la especificación más reciente en sockets web –

Respuesta

2

Aquí es una prometedora uno: https://github.com/jeremyong/websocket_client

Ésta no existía en el momento en que se hizo la pregunta, pero es una buena pregunta que merece ser actualizada.

+0

Gracias por el enchufe. Escribí este para poder probar el código de mi servidor websocket en Erlang. Las cosas más importantes que otros clientes no tenían eran el soporte de wss (protocolo https) y los marcos de continuación. – jeremyong

+0

@jeremyong Estaba tratando de usar su cliente de websocket contra un servidor webboy de vaquero, pero sin éxito. Entonces el ws_ping_example.erl que usó usa 'websocket_client: cast (self(), Msg)' para enviar un mensaje al servidor remoto pero no puedo usar la misma función en ningún otro lado en el código de ejemplo del ping. Además, ¿el controlador solo recibe mensajes del servidor remoto o puede ese manejador enviar datos a través de websocket? ¿Puedes arrojar algo de luz? muchas gracias. – sad

+0

@jeremyong Puede publicar un ejemplo muy simple de cómo podemos enviar datos al servidor remoto. Veo que usas 'websocket_client: cast/2' pero parece que no puede usar esa otra cosa, excepto la invocación de init/2 del comportamiento' websocket_client_handler'. ¡Gracias! – sad