connect method
void
connect({})
Implementation
void connect({
required String socketUrl,
required int appId,
required Function(Map<String, dynamic>) onNewMessage,
}) {
if (_socket != null) {
dispose();
}
_socket = socket_io.io(
socketUrl,
socket_io.OptionBuilder().setTransports(['websocket']).setExtraHeaders(
{'appid': '$appId'}).build(),
);
_socket!.onConnect((_) {
debugPrint('Socket CONNECTED → JOIN APP $appId');
_socket!.emit('join-app', appId);
});
_socket!.on('NewMessage', (data) {
// debugPrint("📩 Message received");
if (data is Map<String, dynamic>) {
onNewMessage(data);
}
});
_socket!.onDisconnect((_) => debugPrint('Socket DISCONNECTED'));
_socket!.onConnectError((err) => debugPrint('Socket ERROR: $err'));
}