public void OnPrivateMessage(PrivateMessageHandler handler) { AddHandler("PRIVMSG", (msg) => { if(msg.Arguments[0][0] != '#') handler(msg.Sender, msg.Arguments[1]); }); }
private void AddFriend_One(string[] segments) { string idFrom = segments[2]; AccountManager.SyncFriendToList(idFrom, AccountManager.GetAccountById(idFrom)); ClientManager.Post (() => PrivateMessageHandler.NotifyFriendRequestAccepted(idFrom)); }
public TopBar( WindowManager windowManager, CnCNetManager connectionManager, PrivateMessageHandler privateMessageHandler ) : base(windowManager) { downTimeWaitTime = TimeSpan.FromSeconds(DOWN_TIME_WAIT_SECONDS); this.connectionManager = connectionManager; this.privateMessageHandler = privateMessageHandler; }
public PrivateMessagingWindow( WindowManager windowManager, CnCNetManager connectionManager, GameCollection gameCollection, CnCNetUserData cncnetUserData, PrivateMessageHandler privateMessageHandler ) : base(windowManager) { this.gameCollection = gameCollection; this.connectionManager = connectionManager; this.cncnetUserData = cncnetUserData; this.privateMessageHandler = privateMessageHandler; }
void OpenPrivateMessage() { if (m_AccountRelative.Identity == AccountManager.AccountInstance.Identity) { return; } if (m_AccountRelative != null && !PrivateMessageHandler.PrivateMessageInstanceExists(m_AccountRelative.Identity)) { EventSink.InvokeStartPrivateMessageEvent (new StartPrivateMessageEventArgs(m_AccountRelative)); } }
internal void SetAccountRelative(Account account, PrivateMessageHandler handler) { if (account != null) { m_Handler = handler; m_AccountToFrom = account; m_NotificationText.text = GetRequestContentString(); } else { Debug.LogError ("Attempting To Set Account Relative Of Friend Request To Null!"); } }
private static async Task <bool> OnFriendMessage(MiraiHttpSession sender, IFriendMessageEventArgs e) { var qq = e.Sender.Id; var msg = e.Chain.GetPlain(); var(matched, result) = new PrivateMessageHandler(qq, msg).ProcessCommandInput(); var img = e.Chain.OfType <ImageMessage>().FirstOrDefault(); if (img != null) { if (QQsReceivesImageSet.Any(s => s.QQ == qq.ToString())) { var student = QQsReceivesImageSet.First(s => s.QQ == qq.ToString()); QQsReceivesImageSet.RemoveWhere(s => s.QQ == qq.ToString()); var url = img.Url; var client = new HttpClient(); var image = await client.GetByteArrayAsync(url); if (ImageManager.ExistsAndIfRemove(student)) { SendPrivate(qq.ToString(), "注意: 你已经上传过照片, 这张照片将被覆盖"); } if (ImageManager.GetExtension(image) == null) { SendPrivate(qq.ToString(), "图片格式不支持."); return(true); } ImageManager.SaveImage(student, image); SendPrivate(qq.ToString(), "图片成功保存!"); } else { if (!Config.Instance.SentImageHint.Contains(qq.ToString())) { SendPrivate(qq.ToString(), "图片不能直接发送, 输入 help 或 帮助 来查看使用方法."); Config.Instance.SentImageHint.Add(qq.ToString()); Config.Save(); } } } return(true); }
public async Task <List <PrivateMessage> > GetPrivateMessageListAsync(int page) { if (!_webManager.IsAuthenticated) { throw new Exception("User must be authenticated before using this method."); } var url = EndPoints.PrivateMessages; if (page > 0) { url = EndPoints.PrivateMessages + string.Format(EndPoints.PageNumber, page); } var result = await _webManager.GetDataAsync(url); var document = await _webManager.Parser.ParseAsync(result.ResultHtml); return(PrivateMessageHandler.ParseList(document)); }
public async Task <List <PrivateMessage> > GetPrivateMessageListAsync(int page, CancellationToken token = default) { if (!this.webManager.IsAuthenticated) { throw new UserAuthenticationException(Awful.Core.Resources.ExceptionMessages.UserAuthenticationError); } var url = EndPoints.PrivateMessages; if (page > 0) { url = EndPoints.PrivateMessages + string.Format(CultureInfo.InvariantCulture, EndPoints.PageNumber, page); } var result = await this.webManager.GetDataAsync(url, token).ConfigureAwait(false); var document = await this.webManager.Parser.ParseDocumentAsync(result.ResultHtml, token).ConfigureAwait(false); return(PrivateMessageHandler.ParseList(document)); }
void MinimizeMessage() { PrivateMessageHandler.MinimizeMessage(m_AccountToFrom.Identity); }
void ExitPrivateMessage() { PrivateMessageHandler.RemovePrivateMessage(m_AccountToFrom.Identity); }
private void Finish() { ProgramConstants.GAME_VERSION = ClientConfiguration.Instance.ModMode ? "N/A" : CUpdater.GameVersion; DiscordHandler discordHandler = null; if (!string.IsNullOrEmpty(ClientConfiguration.Instance.DiscordAppId)) { discordHandler = new DiscordHandler(WindowManager); } var gameCollection = new GameCollection(); gameCollection.Initialize(GraphicsDevice); var lanLobby = new LANLobby(WindowManager, gameCollection, mapLoader.GameModes, mapLoader, discordHandler); var cncnetUserData = new CnCNetUserData(WindowManager); var cncnetManager = new CnCNetManager(WindowManager, gameCollection); var tunnelHandler = new TunnelHandler(WindowManager, cncnetManager); var privateMessageHandler = new PrivateMessageHandler(cncnetManager, cncnetUserData); var topBar = new TopBar(WindowManager, cncnetManager, privateMessageHandler); var optionsWindow = new OptionsWindow(WindowManager, gameCollection, topBar); var pmWindow = new PrivateMessagingWindow(WindowManager, cncnetManager, gameCollection, cncnetUserData, privateMessageHandler); privateMessagingPanel = new PrivateMessagingPanel(WindowManager); var cncnetGameLobby = new CnCNetGameLobby(WindowManager, "MultiplayerGameLobby", topBar, mapLoader.GameModes, cncnetManager, tunnelHandler, gameCollection, cncnetUserData, mapLoader, discordHandler, pmWindow); var cncnetGameLoadingLobby = new CnCNetGameLoadingLobby(WindowManager, topBar, cncnetManager, tunnelHandler, mapLoader.GameModes, gameCollection, discordHandler); var cncnetLobby = new CnCNetLobby(WindowManager, cncnetManager, cncnetGameLobby, cncnetGameLoadingLobby, topBar, pmWindow, tunnelHandler, gameCollection, cncnetUserData, optionsWindow); var gipw = new GameInProgressWindow(WindowManager); var skirmishLobby = new SkirmishLobby(WindowManager, topBar, mapLoader.GameModes, discordHandler); topBar.SetSecondarySwitch(cncnetLobby); var mainMenu = new MainMenu(WindowManager, skirmishLobby, lanLobby, topBar, optionsWindow, cncnetLobby, cncnetManager, discordHandler); WindowManager.AddAndInitializeControl(mainMenu); DarkeningPanel.AddAndInitializeWithControl(WindowManager, skirmishLobby); DarkeningPanel.AddAndInitializeWithControl(WindowManager, cncnetGameLoadingLobby); DarkeningPanel.AddAndInitializeWithControl(WindowManager, cncnetGameLobby); DarkeningPanel.AddAndInitializeWithControl(WindowManager, cncnetLobby); DarkeningPanel.AddAndInitializeWithControl(WindowManager, lanLobby); DarkeningPanel.AddAndInitializeWithControl(WindowManager, optionsWindow); WindowManager.AddAndInitializeControl(privateMessagingPanel); privateMessagingPanel.AddChild(pmWindow); topBar.SetTertiarySwitch(pmWindow); topBar.SetOptionsWindow(optionsWindow); WindowManager.AddAndInitializeControl(gipw); skirmishLobby.Disable(); cncnetLobby.Disable(); cncnetGameLobby.Disable(); cncnetGameLoadingLobby.Disable(); lanLobby.Disable(); pmWindow.Disable(); optionsWindow.Disable(); WindowManager.AddAndInitializeControl(topBar); topBar.AddPrimarySwitchable(mainMenu); mainMenu.PostInit(); if (UserINISettings.Instance.AutomaticCnCNetLogin && NameValidator.IsNameValid(ProgramConstants.PLAYERNAME) == null) { cncnetManager.Connect(); } if (!UserINISettings.Instance.PrivacyPolicyAccepted) { WindowManager.AddAndInitializeControl(new PrivacyNotification(WindowManager)); } WindowManager.RemoveControl(this); Cursor.Visible = visibleSpriteCursor; }
void MaximizePrivateMessage() { PrivateMessageHandler.MaximizeMessage(m_MessageInstance.AccountToFrom.Identity); }