send method
Send a message to the server
Implementation
@override
Future<void> send(Map<String, dynamic> message) async {
_logger.info('WebSocket: Sending message: $message');
_logger.info(
'WebSocket: Connected state: $connected, Channel: ${_channel != null}');
if (!connected || _channel == null) {
_logger.severe('WebSocket: Cannot send message - not connected');
throw FayeError.network('Not connected');
}
try {
final jsonMessage = jsonEncode(message);
_logger.info('WebSocket: Sending JSON: $jsonMessage');
_channel!.sink.add(jsonMessage);
recordMessageSent(message);
_logger.info('WebSocket: Message sent successfully');
} catch (e) {
_logger.severe('WebSocket: Failed to send message: $e');
emitError(FayeError.network('Failed to send message: $e'));
rethrow;
}
}