Esempio n. 1
0
        public async Task <IMessage> SendAsync(IMessage message)
        {
            IMessage result = null;

            if (message.Attachments?.Count > 0)
            {
                foreach (IAttachment attachment in message.Attachments)
                {
                    try
                    {
                        result = new DiscordMessage(await _channel.SendFileAsync(attachment.Contents, attachment.Name,
                                                                                 message.Attachments?.Count == 1 ? message.Text : null));
                        break;
                    }
                    catch (Exception e)
                    {
                        Log.Exception(e, "Discord file send fail");
                        return(null);
                    }
                }
                message.Attachments.ForEach(x => x.Contents?.Dispose());
                IsTyping = false;
            }
            else
            {
                result   = new DiscordMessage(await _channel.SendMessageAsync(message.Text));
                IsTyping = false;
            }

            return(result);
        }
Esempio n. 2
0
        public void Send(IMessage message)
        {
#pragma warning disable 4014
            SendAsync(message);
#pragma warning restore 4014
        }