private void MenuItem_RunBotClicked(object sender, RoutedEventArgs e) { if (!IsBotRunning) { var connectionConfig = SuiBot_Core.Storage.ConnectionConfig.Load(); var coreConfig = SuiBot_Core.Storage.CoreConfig.Load(); if (!connectionConfig.IsValidConfig) { MessageBox.Show("Invalid connection config!", "Error", MessageBoxButton.OK, MessageBoxImage.Exclamation); return; } RemoveNonLogTabs(); SuiBotInstance = new SuiBot_Core.SuiBot(connectionConfig, coreConfig); SuiBotInstance.OnChannelJoining += SuiBotInstance_OnChannelJoining; SuiBotInstance.OnChannelLeaving += SuiBotInstance_OnChannelLeaving; SuiBotInstance.OnChannelStatusUpdate += SuiBotInstance_OnChannelStatusUpdate; SuiBotInstance.OnChatMessageReceived += SuiBotInstance_OnChatMessageReceived; SuiBotInstance.OnChatSendMessage += SuiBotInstance_OnChatSendMessage; SuiBotInstance.OnIrcFeedback += SuiBotInstance_OnIrcFeedback; SuiBotInstance.OnModerationActionPerformed += SuiBotInstance_OnModerationActionPerformed; SuiBotInstance.OnShutdown += SuiBotInstance_OnShutdown; IsBotRunning = true; MenuItem_BotIsRunning.IsChecked = IsBotRunning; UpdateChannelsBranchEnable(); SuiBotSlaveThread = new Thread(SuiBotInstance.Connect); SuiBotSlaveThread.Start(); } else { SuiBotInstance.Shutdown(); } }
internal void ShutdownTask() { ConfigInstance.Save(); QuotesInstance.Dispose(); IntervalMessagesInstance.Dispose(); ChatFiltering.Dispose(); Cvars.Dispose(); SuiBotInstance.LeaveChannel(Channel); }
public void SendChatMessageResponse(ChatMessage messageToRespondTo, string message, bool noPersonMention = false) { SetUserCooldown(messageToRespondTo, DefaultCooldown); if (!noPersonMention) { var msgResponse = string.Format("@{0}: {1}", messageToRespondTo.Username, message); SuiBotInstance.SendChatMessageFeedback("#" + Channel, msgResponse); SuiBotInstance.MeebyIrcClient.SendMessage(Meebey.SmartIrc4net.SendType.Message, "#" + Channel, msgResponse); } else { SuiBotInstance.SendChatMessageFeedback("#" + Channel, message); SuiBotInstance.MeebyIrcClient.SendMessage(Meebey.SmartIrc4net.SendType.Message, "#" + Channel, message); } }
public void SendChatMessage(string message) { SuiBotInstance.SendChatMessageFeedback("#" + Channel, message); SuiBotInstance.MeebyIrcClient.SendMessage(Meebey.SmartIrc4net.SendType.Message, "#" + Channel, message); }