internal async Task <EResult> SendTypingStatus(ulong steamID) { if ((steamID == 0) || !new SteamID(steamID).IsIndividualAccount) { throw new ArgumentNullException(nameof(steamID)); } if (!Client.IsConnected) { return(EResult.NoConnection); } CFriendMessages_SendMessage_Request request = new CFriendMessages_SendMessage_Request { chat_entry_type = (int)EChatEntryType.Typing, steamid = steamID }; SteamUnifiedMessages.ServiceMethodResponse response; try { response = await UnifiedFriendMessagesService.SendMessage(x => x.SendMessage(request)).ToLongRunningTask().ConfigureAwait(false); } catch (Exception e) { ArchiLogger.LogGenericWarningException(e); return(EResult.Timeout); } return(response.Result); }
internal async Task <bool> SendMessage(ulong steamID, string message) { if ((steamID == 0) || string.IsNullOrEmpty(message)) { ArchiLogger.LogNullError(nameof(steamID) + " || " + nameof(message)); return(false); } CFriendMessages_SendMessage_Request request = new CFriendMessages_SendMessage_Request { chat_entry_type = (int)EChatEntryType.ChatMsg, contains_bbcode = true, message = message, steamid = steamID }; SteamUnifiedMessages.ServiceMethodResponse response; try { response = await UnifiedFriendMessagesService.SendMessage(x => x.SendMessage(request)); } catch (Exception e) { ArchiLogger.LogGenericWarningException(e); return(false); } if (response == null) { ArchiLogger.LogNullError(nameof(response)); return(false); } return(response.Result == EResult.OK); }
internal async Task <EResult> SendMessage(ulong steamID, string message) { if ((steamID == 0) || !new SteamID(steamID).IsIndividualAccount) { throw new ArgumentOutOfRangeException(nameof(steamID)); } if (string.IsNullOrEmpty(message)) { throw new ArgumentNullException(nameof(message)); } if (Client == null) { throw new InvalidOperationException(nameof(Client)); } if (!Client.IsConnected) { return(EResult.NoConnection); } CFriendMessages_SendMessage_Request request = new CFriendMessages_SendMessage_Request { chat_entry_type = (int)EChatEntryType.ChatMsg, contains_bbcode = true, message = message, steamid = steamID }; SteamUnifiedMessages.ServiceMethodResponse response; try { response = await UnifiedFriendMessagesService.SendMessage(x => x.SendMessage(request)).ToLongRunningTask().ConfigureAwait(false); } catch (Exception e) { ArchiLogger.LogGenericWarningException(e); return(EResult.Timeout); } return(response.Result); }
internal async Task <EResult> SendMessage(ulong steamID, string message) { if ((steamID == 0) || !new SteamID(steamID).IsIndividualAccount || string.IsNullOrEmpty(message)) { ArchiLogger.LogNullError(nameof(steamID) + " || " + nameof(message)); return(EResult.Fail); } if (!Client.IsConnected) { return(EResult.NoConnection); } CFriendMessages_SendMessage_Request request = new CFriendMessages_SendMessage_Request { chat_entry_type = (int)EChatEntryType.ChatMsg, contains_bbcode = true, message = message, steamid = steamID }; SteamUnifiedMessages.ServiceMethodResponse response; try { response = await UnifiedFriendMessagesService.SendMessage(x => x.SendMessage(request)); } catch (Exception e) { ArchiLogger.LogGenericWarningException(e); return(EResult.Timeout); } if (response == null) { ArchiLogger.LogNullError(nameof(response)); return(EResult.Fail); } return(response.Result); }