string getAuthorName(DiscordMsg msg)
 {
     if (msg.Author.Id == User.Id)
     {
         return(User.Name);
     }
     if (msg.Author.IsWebhook || msg.Author.IsBot)
     {
         return(msg.Author.Username);
     }
     return("[Administrator]");
 }
 string getRoleColour(DiscordMsg msg)
 {
     if (msg.Author.Id == User.Id)
     {
         return("blue");
     }
     if (msg.Author.IsWebhook)
     {
         return("blue");
     }
     if (msg.Author.IsBot)
     {
         return("orange");
     }
     return("red");
 }
        void NewMessage(IUserMessage message)
        {
            if (message.Author.Id == Program.Client.CurrentUser.Id)
            {
                if (message.Embeds.Count > 0 && message.Embeds.First().Color == Color.Red)
                {
                    return;
                }
            }
            if (message.Content.StartsWith("$") || message.Content.StartsWith("^"))
            {
                return;
            }
            var json = new JObject();

            json["id"] = message.Id.ToString();
            var dMsg = new DiscordMsg(MService, message);
            var msg  = DiscordBot.MLAPI.Modules.VPN.getMessage(dMsg,
                                                               Appeal.Guild, getAuthorName(dMsg), getRoleColour(dMsg), User.Id, false, false);

            json["html"]   = msg.ToString();
            json["author"] = (dMsg.Author.IsWebhook ? User.Id : dMsg.Author.Id).ToString();
            Send(json.ToString(Newtonsoft.Json.Formatting.None));
        }