public static void QueueTexts(string[] texts, int duration, Chatters chatter) { foreach (string text in texts) { QueueText(Strings.GetString(text), duration, chatter); } }
private void ViewerListUpdate() // Getting all viewers of the stream and adding them to the viewersBox { viewersBox.Items.Clear(); Chatters AllChatters = ChatClient.GetChatters("streamer"); chatBox.Text += "Checking the viewer list..." + Environment.NewLine; foreach (string admin in AllChatters.Admins) { viewersBox.Items.Add(admin + Environment.NewLine); } foreach (string staff in AllChatters.Staff) { viewersBox.Items.Add(staff + Environment.NewLine); } foreach (string globalmod in AllChatters.GlobalMods) { viewersBox.Items.Add(globalmod + Environment.NewLine); } foreach (string moderator in AllChatters.Moderators) { viewersBox.Items.Add(moderator + Environment.NewLine); } foreach (string viewer in AllChatters.Viewers) { viewersBox.Items.Add(viewer + Environment.NewLine); } }
public static void QueueText(string text, int duration, Chatters chatter) { ChatMessage message = new ChatMessage(); message.text = text; message.duration = duration; message.chatter = chatter; chatQueue.Enqueue(message); }
private void OnFriendMsg(SteamFriends.FriendMsgCallback callback) { if (callback.EntryType == EChatEntryType.ChatMsg) { var sender = callback.Sender; Friend currentChatter = Chatters.FirstOrDefault(chatter => chatter.SteamID.AccountID == sender.AccountID); if (currentChatter == null) { currentChatter = new Friend() { WelcomedDate = DateTime.Now, ChatState = ChatState.NoInteraction, SteamID = sender, IsReceivingAdvInfo = false }; Chatters.Add(currentChatter); } TimeSpan timeSpan = DateTime.Now - currentChatter.WelcomedDate; if (timeSpan.Minutes >= 5) { currentChatter.ChatState = ChatState.NoInteraction; } string responseMessage = String.Empty; if (BasicCommands.ContainsKey(callback.Message)) { responseMessage = BasicCommands[callback.Message]; currentChatter.ChatState = ChatState.Welcomed; } else if (currentChatter.ChatState == ChatState.NoInteraction) { currentChatter.ChatState = ChatState.Welcomed; responseMessage = WelcomeMessage; } else if (currentChatter.ChatState == ChatState.Welcomed) { responseMessage = CommandNotFoundMessage; } SteamFriends.SendChatMessage(sender, EChatEntryType.ChatMsg, responseMessage); Console.WriteLine($"{SteamFriends.GetFriendPersonaName(sender)}: {callback.Message}"); Console.WriteLine($"BOT: {responseMessage}"); } }
override public void HandleMessage(Message message) { Channel channel = ModuleManager.channels.Find(x => x.Name == message.channel); string uptime = "!" + channel.utilConfig.uptime; string viewers = "!" + channel.utilConfig.viewers; if (message.msg.StartsWith(uptime)) { TimeSpan timeSpan = CheckStream.Uptime(message.channel); message.msg = (timeSpan.Hours - 2) + " hours " + timeSpan.Minutes + " minutes."; irc.SendResponse(message); } else if (message.msg.StartsWith(viewers)) { List <string> chatters = Chatters.GetViewers(message.channel); if (chatters != null) { if (chatters.Count > 20) { string response = "Widzowie: "; for (int i = 0; i < 10; i++) { response += chatters[i] + ", "; } response += "... jeszcze " + (chatters.Count - 10) + "."; message.msg = response; irc.SendResponse(message); } else { string response = "Widzowie: "; for (int i = 0; i < chatters.Count; i++) { if (i != (chatters.Count - 1)) { response += chatters[i] + ", "; } else { response += chatters[i] + "."; } } message.msg = response; irc.SendResponse(message); } } } }
static public void AddPointsIfOnChannel(string channel) { if (CheckStream.isRunning(channel)) { List <string> v = Chatters.GetViewers(channel); if (v != null) { for (int i = 0; i < v.Count; i++) { addUserIfNotExist(channel, v[i]); addPoints(channel, v[i], 1); } } } }
private static void ChattersDowload(out Chatters c) { var req = WebRequest.Create( new Uri($@"http://tmi.twitch.tv/group/user/{Channel}/chatters")); // req.Headers.Add($"Client-ID:{TwitchClientId}"); var response = req.GetResponseAsync(); try { using (System.IO.Stream s = response.Result.GetResponseStream()) using (StreamReader sr = new StreamReader(s)) using (JsonReader reader = new JsonTextReader(sr)) { JsonSerializer serializer = new JsonSerializer(); c = serializer.Deserialize <Chatters>(reader); } } catch (Exception) { ChattersDowload(out c); } }
/// <summary> /// Set a full list of chatters broken up by each type /// </summary> private async Task ResetChatterListsAsync() { try { // Grab user's chatter info (viewers, mods, etc.) using (HttpResponseMessage message = await _twitchInfo.GetChattersAsync()) { if (!message.IsSuccessStatusCode) { return; } string body = await message.Content.ReadAsStringAsync(); ChatterInfoJSON chatterInfo = JsonConvert.DeserializeObject <ChatterInfoJSON>(body); _twitchChatterListInstance.ChattersByName.Clear(); _twitchChatterListInstance.ChattersByType.Clear(); if (chatterInfo.ChatterCount > 0) { Chatters chatters = chatterInfo.Chatters; // Grab and divide chatters from tmi.twitch.tv if (chatters.Viewers.Count > 0) { _twitchChatterListInstance.ChattersByType.Add ( new TwitchChatterType { TwitchChatters = GroupTmiTwitchChatters(chatters.Viewers), ChatterType = ChatterType.Viewer } ); } if (chatters.VIPs.Count > 0) { _twitchChatterListInstance.ChattersByType.Add ( new TwitchChatterType { TwitchChatters = GroupTmiTwitchChatters(chatters.VIPs), ChatterType = ChatterType.VIP } ); } if (chatters.Moderators.Count > 0) { _twitchChatterListInstance.ChattersByType.Add ( new TwitchChatterType { TwitchChatters = GroupTmiTwitchChatters(chatters.Moderators), ChatterType = ChatterType.Moderator } ); } if (chatters.GlobalMods.Count > 0) { _twitchChatterListInstance.ChattersByType.Add ( new TwitchChatterType { TwitchChatters = GroupTmiTwitchChatters(chatters.GlobalMods), ChatterType = ChatterType.GlobalModerator } ); } if (chatters.Admins.Count > 0) { _twitchChatterListInstance.ChattersByType.Add ( new TwitchChatterType { TwitchChatters = GroupTmiTwitchChatters(chatters.Admins), ChatterType = ChatterType.Admin } ); } if (chatters.Staff.Count > 0) { _twitchChatterListInstance.ChattersByType.Add ( new TwitchChatterType { TwitchChatters = GroupTmiTwitchChatters(chatters.Staff), ChatterType = ChatterType.Staff } ); } // Set followers, regular followers, and subscribers if (_twitchChatterListInstance.TwitchFollowers.Count > 0) { _twitchChatterListInstance.ChattersByType.Add ( new TwitchChatterType { TwitchChatters = _twitchChatterListInstance.TwitchFollowers, ChatterType = ChatterType.Follower } ); } if (_twitchChatterListInstance.TwitchRegularFollowers.Count > 0) { _twitchChatterListInstance.ChattersByType.Add ( new TwitchChatterType { TwitchChatters = _twitchChatterListInstance.TwitchRegularFollowers, ChatterType = ChatterType.RegularFollower } ); } if (_twitchChatterListInstance.TwitchSubscribers.Count > 0) { _twitchChatterListInstance.ChattersByType.Add ( new TwitchChatterType { TwitchChatters = _twitchChatterListInstance.TwitchSubscribers, ChatterType = ChatterType.Subscriber } ); } } } } catch (Exception ex) { Console.WriteLine("Error inside TwitchChatterListener ResetChatterLists(): " + ex.Message); if (ex.InnerException != null) { Console.WriteLine($"Inner Exception: {ex.InnerException.Message}"); } } }