jrconlin/pushgo

sending hello from ws4py results in Websocket Error {error: EOF}

Closed this issue · 4 comments

this only happens with my AWS instance ec2-54-244-206-75.us-west-2.compute.amazonaws.com, not localhost.

  1. send a
    message like this:
    {"messageType": "hello", "uaid":"bad08099-40ab-481f-8513-77f2b18aed8f", "channelIDs":[]}
  2. run the test again

actual: on the second time, the test fails to get a closed even from the server upon closing the socket from the client.
server log:
2013/09/18 22:35:29 [1] worker: Websocket Error {error: EOF}
2013/09/18 22:35:29 Stopping 59fee178-5b21-4db4-8ada-bb8dfea756d6 49508896333ns...

This appears to be a problem with the particular configuration of that AWS instance. Verified that behaviour is as expected with other instances.

Looks like it's something with ws4py, as running wsdump.py doesn't repro the issue.

I'm getting EOFs using https://github.com/liris/websocket-client sending something like this:
{'uaid': '06b068e0a38744dbb1ef8bf2767bb569', 'messageType': 'hello', 'channelIDs': []}

Is the EOF being reported by the pushgo server after the client sends at least one application level message(presumably a hello)? If so then chances are very high that the test code is sending a websocket layer Close frame. At which point there is just something incorrect about your invocation of the Python websocket lib.