Pythonでsocket.io 2.0のクライアントはsocketIO-client-nexusに限定されているかもしれない
Python用のsocket.ioのクライアントは結構更新が遅くなっていて,今ではsocket.io 2.xに対応していないものばかりになってしまった。
この前の記事にあるsocket.ioの例につなげるクライアントだけを書いてみた。
まず,socketIO-client-nexusにならsocket.io 2.xの対応が盛り込まれている。(リンク先にもあるが,それ以外のsocket.ioのクライアントライブラリはsocket.io 1.xにしか対応してないことが多いよう。)
ただし,すべてが実装されているかどうかはわからない。
とりあえず,pip install socketIO-client-nexusを実行してから,つくってみた例だが,以下のようになる。
from socketIO_client_nexus import SocketIO, LoggingNamespace
def on_connect():
print('connect')
def on_disconnect():
print('disconnect')
def on_reconnect():
print('reconnect')
def on_date_response(*args):
print('on_date', args)
socketIO = SocketIO('localhost', 8081, LoggingNamespace)
socketIO.on('connect', on_connect)
socketIO.on('disconnect', on_disconnect)
socketIO.on('reconnect', on_reconnect)
# Listen
socketIO.on('date', on_date_response)
socketIO.emit('test', {'value': 'test3'})
socketIO.wait(seconds=10)

