sendDiscordMessage method

Future<String> sendDiscordMessage({
  1. required String message,
  2. required String username,
  3. required String userId,
  4. String? avatarUrl,
  5. String? nickname,
  6. String? replyMessageUUID,
})

Implementation

Future<String> sendDiscordMessage(
    {required String message,
    required String username,
    required String userId,
    String? avatarUrl,
    String? nickname,
    String? replyMessageUUID}) async {
  _connectCheck();

  String? uuid;

  _socket!.emitWithAck(
      'discordMessage',
      utf8.encode(json.encode({
        'message': message,
        'username': username,
        'userId': userId,
        if (avatarUrl != null) 'avatarUrl': avatarUrl,
        if (nickname != null) 'nickname': nickname,
        if (replyMessageUUID != null) 'replyMessageUUID': replyMessageUUID
      })), ack: (_uuid) {
    uuid = _uuid;
  });

  while (uuid == null) {
    await Future.delayed(Duration(milliseconds: 100));
  }
  return uuid!;
}