private void Client_OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e) { var message = e.ChatMessage.Message; if (message[0] == '#') { if (message.Contains("추가") == true) { client.SendMessage(channel, $"귀여운 차차가 노래를 추가 했어!! : \t{new Random().NextDouble()}"); MusicQueue.Add(message.Split()[1]); ChangedMusicQueue?.Invoke(this, MusicQueue); } else if (message.Contains("다음")) { var p = MusicQueue.Next(); client.SendMessage(channel, $"차차가 {p.Title} 노래를 재생하기 시작했어! : \t{new Random().NextDouble()}"); NextMusicQueue?.Invoke(this, p); ChangedMusicQueue?.Invoke(this, MusicQueue); } else if (message.Contains("중지")) { StopMusicQueue?.Invoke(this, null); } else { client.SendMessage(channel, $"차차가 알아 듣지 못하는 명령어를 받아 버렸어..! : \t{new Random().NextDouble()}"); } } }
private void _TwitchClient_OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e) { if (e.ChatMessage.Message.StartsWith("!") || e.ChatMessage.Username.ToLower().Equals("streamlabs")) { return; } }
private void TwitchClient_OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e) { string msg = e.ChatMessage.Message; switch (msg) { case "1": case "2": case "3": case "4": case "5": case "6": case "7": case "8": case "9": case "y": case "Y": case "n": case "N": AnswerQuiz(msg, e.ChatMessage); break; } CommandExpansion commandExpansion = GetCommandExpansion(msg); if (commandExpansion != null) { HandleCommand(commandExpansion.Command, commandExpansion.Arguments, e.ChatMessage); } }
private void TwitchClient_OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e) { if (e.ChatMessage.Message[0] == '!') { twitchClient.SendMessage(e.ChatMessage.Channel, LogColor(e.ChatMessage.Message.Substring(1))); } }
private void TwitchClient_OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e) { if (e?.ChatMessage?.Message?.StartsWith("!") == true) { OnCommandReceived?.Invoke(this, e.ChatMessage.Message); } }
void CountBits(object source, TwitchLib.Client.Events.OnMessageReceivedArgs args) { if (args.ChatMessage.Bits > 0) { bits += args.ChatMessage.Bits / 100f; UpdateFiles().GetAwaiter().GetResult(); } }
private void Client_OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e) { var msg = e.ChatMessage.Message.Trim().ToUpper(); if (options.Contains(msg)) { voteResult[e.ChatMessage.DisplayName] = msg; } }
// Register a message in the All Messages List private void _client_OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e) { // Remove useless characters at the start and end var message = e.ChatMessage.Message.Trim(); _allMessages.Add(message); if (_allMessages.Count >= MaxCapacity) { EvaluateAllMessages(); } }
private void Client_OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e) { if (e.ChatMessage.Channel == Settings.Default.TwitchUsername) { if (e.ChatMessage.Message.StartsWith('!')) { Console.WriteLine($"{e.ChatMessage.Username} has typed {e.ChatMessage.Message}"); } if (e.ChatMessage.Message.Contains("badword")) { client.TimeoutUser(e.ChatMessage.Channel, e.ChatMessage.Username, TimeSpan.FromSeconds(5)); client.SendMessage(e.ChatMessage.Channel, $"Naughty {e.ChatMessage.Username}!"); } } }
private void Client_OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e) { IChatMessageRule chatmessageRule = _listChatMessageRules.FirstOrDefault(rule => rule.IsTextMatched(e.ChatMessage.Message)); if (!(chatmessageRule is null)) { string messageReturnedFromRule = chatmessageRule.ReturnedMessage(e); _twitchLibClient.SendMessage(_twitchConfiguration.ChannelName, messageReturnedFromRule); } if (e.ChatMessage.Message.StartsWith("!uptime", StringComparison.InvariantCultureIgnoreCase)) { var upTime = GetUpTime().Result; _twitchLibClient.SendMessage(_twitchConfiguration.ChannelName, upTime?.ToString() ?? "Offline"); } }
private void Client_OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e) { update(); CommandRecived(e.ChatMessage.Message); try { if (e.ChatMessage.Bits >= DashConfig.MinBits) { CommandRecived("!" + e.ChatMessage.Message.Split('!')[1]); } } catch (Exception E) { } if (GestioneFileXml.ReadConfig().TestEnable == true) { CommandRecived(e.ChatMessage.ToString()); } }
public string HandleBotCommands(TwitchLib.Client.Events.OnMessageReceivedArgs e) { IChatMessageRule chatmessageRule = _listChatMessageRules.FirstOrDefault(rule => rule.IsTextMatched(e.ChatMessage.Message.Trim())); if (chatmessageRule != null) { return(chatmessageRule.ReturnedMessage(e)); } //if (e.ChatMessage.Message.StartsWith("!uptime", StringComparison.InvariantCultureIgnoreCase)) //{ // var upTime = GetUpTime().Result; // _twitchLibClient.SendMessage(_twitchConfiguration.ChannelName, upTime?.ToString() ?? "Offline"); //} return(string.Empty); }
private void Client_OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e) { #region oldCommands //if(CheckDBCommands("!notranked", e) || CheckDBCommands("!removeranked", e) || CheckDBCommands("!undoranked", e)) //{ // sheet.RemoveLastRanked(); // SendTwitchMessage("Last ranked match removed"); //} //else if (CheckDBCommands("!song ", e) && newSongIncoming) //{ // string songTitle = e.ChatMessage.Message.Remove(0, 6); // DirectoryInfo dirInfo = new DirectoryInfo(@"D:\My Stuff\My Programs\Taiko\TaikoLogging\TaikoLogging\Data\Title Bitmaps\BaseTitles\"); // var result = dirInfo.GetFiles(); // int numScreenshots = 0; // for (int i = 0; i < result.Length; i++) // { // if (result[i].Name.Remove(result[i].Name.IndexOf('.')) == songTitle) // { // numScreenshots++; // } // } // newSongBitmap.Save(@"D:\My Stuff\My Programs\Taiko\TaikoLogging\TaikoLogging\Data\Title Bitmaps\BaseTitles\" + songTitle + ".png"); // newSongIncoming = false; // newSongBitmap = null; // SendTwitchMessage(songTitle + " has been added!"); // Program.analysis.NewSongAdded(); //} //else if (CheckDBCommands("!random mode", e)) //{ // Program.analysis.RandomModeToggle(); //} //else if (CheckDBCommands("!random", e)) //{ // sheet.GetRandomSong(); //} #endregion if (e.ChatMessage.IsBroadcaster == true) { Program.commands.CheckCommands(e.ChatMessage.Message); } }
private void ChatClient_OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e) { // Check if message contains an emote that is on the list. if (EmotesList.Any(x => e.ChatMessage.Message.Contains(x))) { // Send a signal. try { #if DEBUG Trace.WriteLine("Emote received!"); #endif SerialPortHelper.SendMessage(PortName, Alerts[5].Signal, Alerts[5].SignalType); } catch (Exception ex) { #if DEBUG Trace.WriteLine(ex.Message); #endif } } }
private void Client_OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e) { if (e.ChatMessage.Message.StartsWith("hi", StringComparison.InvariantCultureIgnoreCase)) { client.SendMessage(TwitchInfo.ChannelName, $"Hey there { e.ChatMessage.DisplayName }."); } else if (e.ChatMessage.Message.StartsWith("!uptime", StringComparison.InvariantCultureIgnoreCase)) { var upTime = GetUpTime().Result; client.SendMessage(TwitchInfo.ChannelName, upTime?.ToString() ?? "Offline"); } else if (e.ChatMessage.Message.StartsWith("!project", StringComparison.InvariantCultureIgnoreCase)) { client.SendMessage(TwitchInfo.ChannelName, $"I'm working on {TwitchInfo.ProjectDescription}."); } else if (e.ChatMessage.Message.StartsWith("!instagram", StringComparison.InvariantCultureIgnoreCase)) { client.SendMessage(TwitchInfo.ChannelName, $"Follow me on Instagram: {TwitchInfo.Instagram}"); } else if (e.ChatMessage.Message.StartsWith("!twitter", StringComparison.InvariantCultureIgnoreCase)) { client.SendMessage(TwitchInfo.ChannelName, $"Follow me on Twitter: {TwitchInfo.Twitter}"); } else if (e.ChatMessage.Message.StartsWith("!blog", StringComparison.InvariantCultureIgnoreCase)) { client.SendMessage(TwitchInfo.ChannelName, $"My blog: {TwitchInfo.Blog}"); } else if (e.ChatMessage.Message.StartsWith("!playlist", StringComparison.InvariantCultureIgnoreCase)) { client.SendMessage(TwitchInfo.ChannelName, $"Playlist for my live on Twitch: {TwitchInfo.Playlist}"); } else if (e.ChatMessage.Message.StartsWith("!discord", StringComparison.InvariantCultureIgnoreCase)) { client.SendMessage(TwitchInfo.ChannelName, $"Vieni sul mio canale Discord: {TwitchInfo.Discord}"); } }
private void TwitchClient_OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e) { throw new NotImplementedException(); }
public override string ReturnedMessage(TwitchLib.Client.Events.OnMessageReceivedArgs e) { //return $"I'm working on revealing as many credentials to the internet as possible"; return($"{base._chatConfiguration.ProjectDescription}"); }
private void Client_OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e) { string message = e.ChatMessage.Message.ToLower(); if (message.Length == 0 || message[0] != '!') { return; } if (e.ChatMessage.Message.ToLower() == "!commentators" || e.ChatMessage.Message.ToLower() == "!commentary") { if (Comm1Name.Text != "") { string response = "Commentator 1: " + Comm1Name.Text; if (Comm1Twitter.Text != "") { message += " Twitter: https://twitter.com/" + Comm1Twitter.Text.Replace("@", ""); } client.SendMessage(client.JoinedChannels[0], response); } if (Comm2Name.Text != "") { string response = "Commentator 2: " + Comm2Name.Text; if (Comm2Twitter.Text != "") { message += " Twitter: https://twitter.com/" + Comm2Twitter.Text.Replace("@", ""); } client.SendMessage(client.JoinedChannels[0], response); } } // if (!e.ChatMessage.IsModerator && !e.ChatMessage.IsBroadcaster) { return; } List <string> messageWords = e.ChatMessage.Message.Replace("!", "").Split(' ').ToList(); if (messageWords[0] == "scene") { if (!obs) { return; } var scenes = _obs.ListScenes(); string sceneName = messageWords[1]; foreach (var s in scenes) { if (s.Name.ToLower() == sceneName) { _obs.SetCurrentScene(s.Name); return; } } client.SendMessage(client.JoinedChannels[0], "Could not find scene"); return; } if (message == "!scoreboard") { List <string> controlNames = new List <string>(); controls.Where(c => c is TextBox || c is NumericUpDown || c is ComboBox).ToList().ForEach(c => controlNames.Add(c.Name)); client.SendWhisper(e.ChatMessage.Username, "To operate the scoreboard, type the name of a field (not case sensitive) followed by the value. Here is a list of fields: " + string.Join(", ", controlNames) + ". Other commands include !scoreboard and !reset"); return; } else if (message.equalsIgnoreCase("!reset")) { resetButton.Invoke((MethodInvoker)(() => resetButton.PerformClick())); return; } message = message.Replace("!", ""); if (messageWords.Count >= 2) { string controlName = messageWords[0]; Console.WriteLine(controlName); Control control = controls.Find(c => c.Name.ToLower() == controlName.ToLower()); if (control != null) { int messageValue; int.TryParse(messageWords[1], out messageValue); if (messageValue != null && control is NumericUpDown) { NumericUpDown c = control as NumericUpDown; c.Invoke((MethodInvoker)(() => c.Value = messageValue)); SendUpdateButton.Invoke((MethodInvoker)(() => SendUpdateButton.PerformClick())); return; } control.Invoke((MethodInvoker)(() => control.Text = string.Join(" ", messageWords.GetRange(1, messageWords.Count - 1)))); SendUpdateButton.Invoke((MethodInvoker)(() => SendUpdateButton.PerformClick())); } } }
public string ReturnedMessage(TwitchLib.Client.Events.OnMessageReceivedArgs e) { return($"Did you REALLY just clip that! !?!?!??"); }
private async void Client_OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e) { try { if (e.ChatMessage.Username == client.TwitchUsername) { return; } CommandMessage command = new CommandMessage(e.ChatMessage.Message, true, $"@{config.BotUsername.ToLower()}"); ChatMessage message = e.ChatMessage; string channelNameL = message.Channel.ToLower(); ChannelConfig channelConfig = config.JoinedChannels.ContainsKey(message.Channel.ToLower()) ? config.JoinedChannels[channelNameL] : new ChannelConfig(); if (channelConfig.MentionOnly && !command.Mentioned) { return; } switch (command.Command.ToLower()) { case "!uptime": { var uptime = GetUptime(message.Channel); client.SendMessage(message.Channel, uptime == null ? $"{message.Channel} is op dit moment niet aan het streamen! lekkerKonkie" : $"{message.Channel} is al {(int)(uptime?.TotalMinutes ?? 0)} minuten aan het streamen"); break; } case "!join": { string channelName = command.ReadString(); if (!string.IsNullOrEmpty(channelName) && !config.JoinedChannels.ContainsKey(channelName.ToLower())) { var channel = api.Users.v5.GetUserByNameAsync(channelName).Result.Matches; if (channel != null && channel.Length >= 1) { config.JoinedChannels.Add(channelName.ToLower(), new ChannelConfig()); client.JoinChannel(channelName); client.SendMessage(message.Channel, $"lekkerRichard ik kom naar het kanaal {channelName} lekkerSicko "); botConfigs.Save(); } } break; } case "lekkerrichard": { if (channelConfig.RichardEmoteEnabled) { client.SendMessage(message.Channel, $"lekkerRichard lekkerRichard lekkerRichard lekkerSicko {k++}"); } break; } case "avond": { if (channelConfig.EveningEnabled && (!botEveningTimeout.ContainsKey(message.UserId) || (DateTime.Now - botEveningTimeout[message.UserId]).TotalMinutes > channelConfig.EveningTimeout)) { botEveningTimeout[message.UserId] = DateTime.Now; client.SendMessage(message.Channel, $"/me Avond @{e.ChatMessage.DisplayName} malse makker! lekkerRichard lekkerDag"); } break; } case "middag": { if (channelConfig.EveningEnabled && !botEveningTimeout.ContainsKey(message.UserId) || (DateTime.Now - botEveningTimeout[message.UserId]).TotalMinutes > channelConfig.EveningTimeout) { botEveningTimeout[message.UserId] = DateTime.Now; client.SendMessage(message.Channel, $"/me Middag @{e.ChatMessage.DisplayName} malse makker! lekkerRichard lekkerDag"); } break; } case "!enable": case "!disable": { if (IsAdmin(message)) { switch (command.ReadString().ToLower()) { case "mention": { channelConfig.MentionOnly = command.Command.ToLower() == "!enable"; SendMessage($"Ik reageer " + (channelConfig.MentionOnly ? $"nu alleen op @{client.TwitchUsername}" : "nu gewoon op alle chat berichten"), message.Channel); break; } case "emote": { channelConfig.RichardEmoteEnabled = command.Command.ToLower() == "!enable"; SendMessage($"Ik reageer " + (channelConfig.RichardEmoteEnabled ? "weer op lekkerRichard lekkerSicko" : "niet meer op lekkerRichard lekkerAppie"), message.Channel); break; } case "evening": case "avond": { channelConfig.EveningEnabled = command.Command.ToLower() == "!enable"; SendMessage($"Ik reageer " + (channelConfig.EveningEnabled ? "weer op 'avond' lekkerRichard" : "niet meer op 'avond' lekkerAppie"), message.Channel); break; } } botConfigs.Save(); } break; } default: { //Need to move stuff around to make this less italian rrly need to if (message.Message.ToLower().Contains(" avond") || message.Message.ToLower().Contains(" avond ")) { goto case "avond"; } else if (message.Message.ToLower().Contains(" middag") || message.Message.ToLower().Contains(" middag ")) { goto case "middag"; } break; } } } catch (Exception ex) { await BotWrapper.DiscordBot.sendDebugMessage(ex.ToString()); } }
private static void Client_OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e) { SendMessage(e.ChatMessage.Username, e.ChatMessage.Message); }
public override string ReturnedMessage(TwitchLib.Client.Events.OnMessageReceivedArgs e) { return($"{base._chatConfiguration.Instagram}"); }
private void Client_OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e) { string user = e.ChatMessage.Username; string message = e.ChatMessage.Message; string[] parts = message.Split(' '); List <string> words = new List <string>(parts); int unique = words.Distinct().Count(); int wordCount = words.Count; float uniquePercent = (float)unique / (float)wordCount; //Loop through and remove spam words List <int> removeIndexes = new List <int>(); for (int i = 0; i < wordCount; i++) { if (words[i].Length > 25) { removeIndexes.Add(i); } } for (int i = removeIndexes.Count - 1; i >= 0; i--) { words.RemoveAt(removeIndexes[i]); } //Reconstruct message string newMessage = ""; foreach (string word in words) { newMessage += word + " "; } newMessage = Regex.Replace(newMessage, @"[^\w\s0-9\.,`!;]", " "); newMessage = Regex.Replace(newMessage, @"http[^\s]*", "link"); if (!message.StartsWith("!") && (uniquePercent > 0.5f || wordCount <= 3) && words.Count > 0) { chats.Add($"{user}: {message}"); window.Dispatcher.Invoke(new Action(() => { window.Chat.ItemsSource = null; window.Chat.ItemsSource = chats; })); if (!voices.ContainsKey(user)) { ReadOnlyCollection <InstalledVoice> installed = speech.GetInstalledVoices(); int randomName = random.Next(0, 2); int randomRate = random.Next(0, 4); Console.WriteLine($"Name index ({randomName}) Rate value ({randomRate})"); voices.Add(user, new ChatVoice() { name = installed[randomName].VoiceInfo.Name, rate = randomRate }); } speech.SelectVoice(voices[user].name); speech.Rate = voices[user].rate; string userToSay = (lastUser == user) ? "" : $"{user.Replace("_", " ")} says: "; Prompt p = speech.SpeakAsync($"{userToSay}{newMessage}"); lastUser = user; } }
/// <summary> /// Event handler for the TwitchClient OnMessageReceived event. /// </summary> private void TwitchClient_OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e) { // We want to take the contents from chat and format them and send them to the front-end via the hub. SendChatMessage($"{e.ChatMessage.DisplayName}: {e.ChatMessage.Message}"); }
private void OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e) { Debug.Log($"Message received from {e.ChatMessage.Username}: {e.ChatMessage.Message}"); }
public string ReturnedMessage(TwitchLib.Client.Events.OnMessageReceivedArgs e) { return($"Hey there { e.ChatMessage.DisplayName }."); }
private void OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e) { Debug.Log("MESSAGE"); Debug.Log(e.ChatMessage.Message); }
public string ReturnedMessage(TwitchLib.Client.Events.OnMessageReceivedArgs e) { return($"Surly likes rusty spoons"); }
private void Client_OnMessageReceived(object sender, TwitchLib.Client.Events.OnMessageReceivedArgs e) { HandleReceivedMessage(e.ChatMessage); }
public string ReturnedMessage(TwitchLib.Client.Events.OnMessageReceivedArgs e) { return($"Stop bloody destroying things!"); }