public ParsedLine(string from, string line, string room, IChatUser user, BotMessageType messageType) { this.User = user; this.Tokens = new Tokens(); ParseLine(from, room, line, messageType); }
private void SendMessage(string text, string jid, BotMessageType messageType) { //msg.from or jid if (!jid.Contains("@")) { jid = jid + "@" + _config.Server; } SendMessage(new Jid(jid), text, (MessageType)messageType); }
private void ParseLine(string from, string room, string line, BotMessageType messageType) { this.Room = room; this.From = from; this.Raw = line; this.MessageType = messageType; this.IsCommand = line.StartsWith("!"); line = line.TrimStart('!'); string[] parts = line.Split(' '); if (parts.Length <= 0) { this.Command = "invalid"; this.Args = new string[] { }; this.IsCommand = false; return; } this.Command = parts[0]; this.Args = parts.Skip(1).ToArray(); TokenizeLine(line); }
public void ProcessMessage(SocketUser user, BotMessageType type) { try { var guildUser = user as SocketGuildUser; DatabaseManager.AddCommandStatistic(type, guildUser.Id); } catch (Exception ex) { _logger.LogError(ex, ex.Message); } /* * if (!Program.BotStats.DiscordUsers.Any(i => i.DiscordId == user.Id)) * { * Program.BotStats.DiscordUsers.Add(new Stats.DiscordUser() * { * DiscordId = guildUser.Id, * DiscordDiscriminator = guildUser.DiscriminatorValue, * DiscordName = guildUser.Username, * ServerUserName = guildUser.Nickname ?? guildUser.Username, // User Nickname -> Update * Stats = new Stats.UserStats() * }); * } * * var statUser = Program.BotStats.DiscordUsers.Single(i => i.DiscordId == user.Id); * * if (guildUser != null && statUser.ServerUserName != guildUser.Nickname) * { * // To update username changes * statUser.ServerUserName = guildUser.Nickname ?? guildUser.Username; * } * * // To prevent stats format from breaking * statUser.ServerUserName = statUser.ServerUserName.Replace("*", "").Replace("~", "").Replace("|", ""); * statUser.DiscordName = statUser.DiscordName.Replace("*", "").Replace("~", "").Replace("|", ""); * * switch (type) * { * case BotMessageType.Neko: * statUser.Stats.TotalNeko++; * break; * case BotMessageType.Search: * statUser.Stats.TotalSearch++; * break; * case BotMessageType.NekoGif: * statUser.Stats.TotalNekoGif++; * break; * case BotMessageType.Holo: * statUser.Stats.TotalHolo++; * break; * case BotMessageType.Waifu: * statUser.Stats.TotalWaifu++; * break; * case BotMessageType.Baka: * statUser.Stats.TotalBaka++; * break; * case BotMessageType.Smug: * statUser.Stats.TotalSmug++; * break; * case BotMessageType.Fox: * statUser.Stats.TotalFox++; * break; * case BotMessageType.Avatar: * statUser.Stats.TotalAvatar++; * break; * case BotMessageType.NekoAvatar: * statUser.Stats.TotalNekoAvatar++; * break; * case BotMessageType.Wallpaper: * statUser.Stats.TotalWallpaper++; * break; * case BotMessageType.Animalears: * statUser.Stats.TotalAnimalears++; * break; * case BotMessageType.Foxgirl: * statUser.Stats.TotalFoxgirl++; * break; * default: * break; * } * * statUser.Stats.TotalCommands++; * * if (LastUpdate < DateTime.Now.AddSeconds(-30)) * { * LastUpdate = DateTime.Now; * Program.SaveStats(); * }*/ }
private void SendMessage(string text, string jid, BotMessageType messageType) { //msg.from or jid if (!jid.Contains("@")) jid = jid + "@" + _config.Server; SendMessage(new Jid(jid), text, (MessageType)messageType); }
/// <summary> /// Actually send a message. /// </summary> protected void SendMessage(string text, string jid, BotMessageType messageType) { this.SentMessage(text, jid, messageType); }