/// <summary> /// Sends a non-text message. /// </summary> /// <param name="peer">User or group to receive the message</param> /// <param name="media">Message contents</param> /// <returns> /// Returns a <see cref="IUpdates"/> object containing a service message sent during the action. /// </returns> public async Task <IUpdates> SendMediaAsync(IInputPeer peer, IInputMedia media) { EnsureUserAuthorized(); var sendMedia = new RequestSendMedia { RandomId = TlHelpers.GenerateRandomLong(), Peer = peer, Media = media, Background = false, ClearDraft = false }; return(await SenderService.SendRequestAsync(sendMedia).ConfigureAwait(false)); }
/// <inheritdoc /> public async Task <IUpdates> SendMediaAsync(IInputPeer peer, IInputMedia media, string message, CancellationToken cancellationToken = default(CancellationToken)) { ClientSettings.EnsureUserAuthorized(); var sendMedia = new RequestSendMedia { RandomId = Random.NextLong(), Peer = peer, Media = media, Message = message, Background = false, ClearDraft = false }; return(await RequestSender.SendRequestAsync(sendMedia, cancellationToken).ConfigureAwait(false)); }