Added the method setStickerMaskPosition for changing the mask position of a mask sticker.

This commit is contained in:
coder2020official 2023-03-11 23:06:57 +04:00
parent 9fa5b91e58
commit 715aabaf49
4 changed files with 49 additions and 1 deletions

View File

@ -4581,6 +4581,23 @@ class TeleBot:
"""
return apihelper.set_sticker_keywords(self.token, sticker, keywords)
def set_sticker_mask_position(self, sticker: str, mask_position: types.MaskPosition=None) -> bool:
"""
Use this method to change the mask position of a mask sticker.
The sticker must belong to a sticker set that was created by the bot.
Returns True on success.
:param sticker: File identifier of the sticker.
:type sticker: :obj:`str`
:param mask_position: A JSON-serialized object for position where the mask should be placed on faces.
:type mask_position: :class:`telebot.types.MaskPosition`
:return: Returns True on success.
:rtype: :obj:`bool`
"""
return apihelper.set_sticker_mask_position(self.token, sticker, mask_position)
def set_custom_emoji_sticker_set_thumbnail(self, name: str, custom_emoji_id: Optional[str]=None) -> bool:
"""

View File

@ -1628,6 +1628,13 @@ def set_sticker_keywords(token, sticker, keywords=None):
payload['keywords'] = json.dumps(keywords)
return _make_request(token, method_url, params=payload, method='post')
def set_sticker_mask_position(token, sticker, mask_position=None):
method_url = 'setStickerMaskPosition'
payload = {'sticker': sticker}
if mask_position:
payload['mask_position'] = mask_position.to_json()
return _make_request(token, method_url, params=payload, method='post')
def upload_sticker_file(token, user_id, sticker, sticker_format):
method_url = 'uploadStickerFile'

View File

@ -5429,6 +5429,23 @@ class AsyncTeleBot:
:rtype: :obj:`bool`
"""
return await asyncio_helper.set_sticker_keywords(self.token, sticker, keywords)
async def set_sticker_mask_position(self, sticker: str, mask_position: types.MaskPosition=None) -> bool:
"""
Use this method to change the mask position of a mask sticker.
The sticker must belong to a sticker set that was created by the bot.
Returns True on success.
:param sticker: File identifier of the sticker.
:type sticker: :obj:`str`
:param mask_position: A JSON-serialized object for position where the mask should be placed on faces.
:type mask_position: :class:`telebot.types.MaskPosition`
:return: Returns True on success.
:rtype: :obj:`bool`
"""
return await asyncio_helper.set_sticker_mask_position(self.token, sticker, mask_position)
async def get_custom_emoji_stickers(self, custom_emoji_ids: List[str]) -> List[types.Sticker]:
"""

View File

@ -1613,7 +1613,14 @@ async def set_sticker_keywords(token, sticker, keywords=None):
payload = {'sticker': sticker}
if keywords:
payload['keywords'] = json.dumps(keywords)
return await _process_request(token, method_url, params=payload, method='post')
async def set_sticker_mask_position(token, sticker, mask_position=None):
method_url = 'setStickerMaskPosition'
payload = {'sticker': sticker}
if mask_position:
payload['mask_position'] = mask_position.to_json()
return await _process_request(token, method_url, params=payload, method='post')
async def upload_sticker_file(token, user_id, sticker, sticker_format):