public override TLObject FromStream(Stream input) { Peer = GetObject <TLInputPeerBase>(input); Media = GetObject <TLInputMediaBase>(input); return(this); }
public IAsyncOperation <ContentDialogBaseResult> ShowAsync(TLInputMediaBase inputMedia) { ViewModel.ShareLink = null; ViewModel.ShareTitle = null; ViewModel.Message = null; ViewModel.InputMedia = inputMedia; ViewModel.IsWithMyScore = false; if (inputMedia is TLInputMediaGame gameMedia && gameMedia.Id is TLInputGameShortName shortName) { // TODO: maybe? } return(ShowAsync()); }
public void EditMessageAsync(TLInputPeerBase peer, TLInt id, TLString message, TLVector <TLMessageEntityBase> entities, TLInputMediaBase media, TLReplyKeyboardBase replyMarkup, bool noWebPage, bool stopGeoLive, TLInputGeoPointBase geoPoint, Action <TLUpdatesBase> callback, Action <TLRPCError> faultCallback = null) { var obj = new TLEditMessage { Flags = new TLInt(0), Peer = peer, Id = id, Message = message, NoWebPage = noWebPage, Entities = entities, Media = media, ReplyMarkup = replyMarkup, StopGeoLive = stopGeoLive, GeoPoint = geoPoint }; const string caption = "messages.editMessage"; SendInformativeMessage <TLUpdatesBase>(caption, obj, result => { var multiPts = result as IMultiPts; if (multiPts != null) { _updatesService.SetState(multiPts, caption); } else { ProcessUpdates(result, null, true); } callback.SafeInvoke(result); }, faultCallback); }