public async void StickerSendExecute(Sticker sticker, bool?schedule, bool?silent) { Delegate?.HideStickers(); var chat = _chat; if (chat == null) { return; } var restricted = await VerifyRightsAsync(chat, x => x.CanSendOtherMessages, Strings.Resources.GlobalAttachStickersRestricted, Strings.Resources.AttachStickersRestrictedForever, Strings.Resources.AttachStickersRestricted); if (restricted) { return; } var options = await PickSendMessageOptionsAsync(schedule, silent); if (options == null) { return; } var reply = GetReply(true); var input = new InputMessageSticker(new InputFileId(sticker.StickerValue.Id), sticker.Thumbnail?.ToInput(), sticker.Width, sticker.Height); await SendMessageAsync(reply, input, options); }
public async void SendAnimationExecute(Animation animation) { var chat = _chat; if (chat == null) { return; } var restricted = await VerifyRightsAsync(chat, x => x.CanSendOtherMessages, Strings.Resources.AttachStickersRestrictedForever, Strings.Resources.AttachStickersRestricted); if (restricted) { return; } var reply = GetReply(true); var input = new InputMessageSticker(new InputFileId(animation.AnimationValue.Id), null, 0, 0); await SendMessageAsync(reply, input); }
public async void StickerSendExecute(Sticker sticker, bool?schedule, bool?silent, string emoji = null) { Delegate?.HideStickers(); var chat = _chat; if (chat == null) { return; } if (sticker.PremiumAnimation != null && ProtoService.IsPremiumAvailable && !ProtoService.IsPremium) { await new UniqueStickersPopup(ProtoService, sticker).ShowQueuedAsync(); return; } var restricted = await VerifyRightsAsync(chat, x => x.CanSendOtherMessages, Strings.Resources.GlobalAttachStickersRestricted, Strings.Resources.AttachStickersRestrictedForever, Strings.Resources.AttachStickersRestricted); if (restricted) { return; } var options = await PickMessageSendOptionsAsync(schedule, silent); if (options == null) { return; } var reply = GetReply(true); var input = new InputMessageSticker(new InputFileId(sticker.StickerValue.Id), sticker.Thumbnail?.ToInput(), sticker.Width, sticker.Height, emoji ?? string.Empty); await SendMessageAsync(chat, reply, input, options); }