sendMessage method

void sendMessage(
  1. String message, {
  2. String? type,
})

Implementation

void sendMessage(String message, {String? type}) {
  if (_socket == null || _channelId == null) {
    print('Cannot send message: WebSocket is not connected');
    return;
  }

  final timestamp = DateTime.now().millisecondsSinceEpoch / 1000;

  if (message.isNotEmpty) {
    // Determine the message type
    String messageType = type ?? "text";

    // Handle different message types
    switch (messageType) {
      case "text":
      case "image":
      case "file":
      case "location":
      case "form":
      case "button":
        _sendToSocket(
          data: _buildMessageData(message: message, type: messageType),
          appendData: _buildAppendData(
            message: message,
            displayType: messageType == 'button' ? 'text' : messageType,
            timestamp: timestamp,
          ),
        );
        break;
      default:
        print('Unsupported message type: $messageType');
        break;
    }
  }
}