def actual_sending(self, sender: PytgbotApiBot, receiver, reply_id): return sender.send_sticker( receiver, self.file_id, reply_to_message_id=reply_id, reply_markup=self.reply_markup, disable_notification=self.disable_notification)
def actual_sending(self, sender: PytgbotApiBot, ignore_reply: bool = False) -> PytgbotApiMessage: return sender.send_sticker( chat_id=self.receiver, sticker=self.file_id, reply_to_message_id=self.reply_id if not ignore_reply else None, disable_notification=self.disable_notification )
def actual_sending(self, sender: PytgbotApiBot, receiver, reply_id): return sender.send_sticker( receiver, self.file_id, reply_to_message_id=reply_id, reply_markup=self.reply_markup, disable_notification=self.disable_notification )
def test_send_sticker(self): original_file_id = 'CAACAgIAAx0EUh03EAADDl-oWPT0MOIQZ93aktaAu8hU8rPEAAK2BgACAoujAAFGAUWZ6DSbtR4E' try: from pytgbot import Bot except ImportError: return self.fail('pytgbot dependency missing') # end try if not API_KEY: return self.fail('API_KEY not set') # end if if not CHAT_ID: return self.fail('CHAT_ID not set') # end if bot = Bot(API_KEY) msg = bot.send_sticker(chat_id=CHAT_ID, sticker=original_file_id) print(msg) sticker_file = FileId.from_file_id(msg.sticker.file_id) sticker_file_unique_id = FileUniqueId.from_file_id( msg.sticker.file_id).to_unique_id() self.assertEqual(msg.sticker.file_unique_id, sticker_file_unique_id) self.assertEqual(FileId.TYPE_STICKER, sticker_file.type_id) self.assertEqual('sticker', sticker_file.type_detailed) self.assertEqual('document', sticker_file.type_generic) self.assertEqual(sticker_file.version, FileId.MAX_VERSION[0], 'sticker should be supported max (sub_)version') self.assertEqual(sticker_file.sub_version, FileId.MAX_VERSION[1], 'sticker should be supported max (sub_)version') self.assertEqual(46033261910034102, sticker_file.id) self.assertEqual(-5360632757845950138, sticker_file.access_hash) self.assertEqual(2, sticker_file.dc_id) # self.assertEqual(b64decode('BFIdNxAAAAAOX6hY9PQw4hBn3dqS1oC7yFTys8Q='), sticker_file.file_reference) thumb_file = FileId.from_file_id(msg.sticker.thumb.file_id) # 'AAMCAgADGQMAAQHUiF-oKLkvxChbEROPTTw6Aagft9bPAAK2BgACAoujAAFGAUWZ6DSbtUufgioABAEAB20AAwpQAAIeBA' thumb_file_unique_id = FileUniqueId.from_file_id( thumb_file).to_unique_id() self.assertEqual(msg.sticker.thumb.file_unique_id, thumb_file_unique_id) self.assertEqual(FileId.TYPE_THUMBNAIL, thumb_file.type_id) self.assertEqual('thumbnail', thumb_file.type_detailed) self.assertEqual('photo', thumb_file.type_generic) self.assertEqual(sticker_file.version, thumb_file.version) self.assertEqual(sticker_file.sub_version, thumb_file.sub_version) self.assertEqual(sticker_file.id, thumb_file.id) self.assertEqual(sticker_file.access_hash, thumb_file.access_hash) self.assertEqual(sticker_file.dc_id, thumb_file.dc_id) self.assertEqual(sticker_file.file_reference, thumb_file.file_reference) # PhotosizeSource self.assertIsInstance(thumb_file.photosize, PhotoFileId.PhotosizeSource) self.assertEqual(20490, thumb_file.photosize.location_local_id) self.assertEqual(713203531, thumb_file.photosize.volume_id) self.assertEqual(PhotoFileId.PHOTOSIZE_SOURCE_THUMBNAIL, thumb_file.photosize.type_id) # PhotosizeSourceThumbnail self.assertIsInstance(thumb_file.photosize, PhotoFileId.PhotosizeSourceThumbnail) self.assertEqual(b'm', thumb_file.photosize.thumbnail_type) self.assertEqual(FileId.TYPE_THUMBNAIL, thumb_file.photosize.file_type)