mirror of
https://github.com/LonamiWebs/Telethon.git
synced 2024-11-13 04:56:35 +03:00
Add voice/video note parameters to send_file
This commit is contained in:
parent
37436bdeee
commit
392508c78d
|
@ -1190,6 +1190,7 @@ class TelegramClient(TelegramBareClient):
|
||||||
return msgs
|
return msgs
|
||||||
|
|
||||||
def get_message_history(self, *args, **kwargs):
|
def get_message_history(self, *args, **kwargs):
|
||||||
|
"""Deprecated, see :meth:`get_messages`."""
|
||||||
warnings.warn(
|
warnings.warn(
|
||||||
'get_message_history is deprecated, use get_messages instead'
|
'get_message_history is deprecated, use get_messages instead'
|
||||||
)
|
)
|
||||||
|
@ -1444,6 +1445,8 @@ class TelegramClient(TelegramBareClient):
|
||||||
thumb=None,
|
thumb=None,
|
||||||
allow_cache=True,
|
allow_cache=True,
|
||||||
parse_mode='md',
|
parse_mode='md',
|
||||||
|
voice_note=False,
|
||||||
|
video_note=False,
|
||||||
**kwargs):
|
**kwargs):
|
||||||
"""
|
"""
|
||||||
Sends a file to the specified entity.
|
Sends a file to the specified entity.
|
||||||
|
@ -1500,9 +1503,18 @@ class TelegramClient(TelegramBareClient):
|
||||||
parse_mode (`str`, optional):
|
parse_mode (`str`, optional):
|
||||||
The parse mode for the caption message.
|
The parse mode for the caption message.
|
||||||
|
|
||||||
Kwargs:
|
voice_note (`bool`, optional):
|
||||||
If "is_voice_note" in kwargs, despite its value, and the file is
|
If ``True`` the audio will be sent as a voice note.
|
||||||
sent as a document, it will be sent as a voice note.
|
|
||||||
|
Set `allow_cache` to ``False`` if you sent the same file
|
||||||
|
without this setting before for it to work.
|
||||||
|
|
||||||
|
video_note (`bool`, optional):
|
||||||
|
If ``True`` the video will be sent as a video note,
|
||||||
|
also known as a round video message.
|
||||||
|
|
||||||
|
Set `allow_cache` to ``False`` if you sent the same file
|
||||||
|
without this setting before for it to work.
|
||||||
|
|
||||||
Notes:
|
Notes:
|
||||||
If the ``hachoir3`` package (``hachoir`` module) is installed,
|
If the ``hachoir3`` package (``hachoir`` module) is installed,
|
||||||
|
@ -1541,7 +1553,8 @@ class TelegramClient(TelegramBareClient):
|
||||||
entity, x, allow_cache=allow_cache,
|
entity, x, allow_cache=allow_cache,
|
||||||
caption=caption, force_document=force_document,
|
caption=caption, force_document=force_document,
|
||||||
progress_callback=progress_callback, reply_to=reply_to,
|
progress_callback=progress_callback, reply_to=reply_to,
|
||||||
attributes=attributes, thumb=thumb, **kwargs
|
attributes=attributes, thumb=thumb, voice_note=voice_note,
|
||||||
|
video_note=video_note, **kwargs
|
||||||
) for x in documents
|
) for x in documents
|
||||||
)
|
)
|
||||||
return result
|
return result
|
||||||
|
@ -1602,6 +1615,7 @@ class TelegramClient(TelegramBareClient):
|
||||||
hachoir.parser.createParser(file)
|
hachoir.parser.createParser(file)
|
||||||
)
|
)
|
||||||
attr_dict[DocumentAttributeAudio] = DocumentAttributeAudio(
|
attr_dict[DocumentAttributeAudio] = DocumentAttributeAudio(
|
||||||
|
voice=voice_note,
|
||||||
title=m.get('title') if m.has('title') else None,
|
title=m.get('title') if m.has('title') else None,
|
||||||
performer=m.get('author') if m.has('author') else None,
|
performer=m.get('author') if m.has('author') else None,
|
||||||
duration=int(m.get('duration').seconds
|
duration=int(m.get('duration').seconds
|
||||||
|
@ -1614,13 +1628,16 @@ class TelegramClient(TelegramBareClient):
|
||||||
hachoir.parser.createParser(file)
|
hachoir.parser.createParser(file)
|
||||||
)
|
)
|
||||||
doc = DocumentAttributeVideo(
|
doc = DocumentAttributeVideo(
|
||||||
|
round_message=video_note,
|
||||||
w=m.get('width') if m.has('width') else 0,
|
w=m.get('width') if m.has('width') else 0,
|
||||||
h=m.get('height') if m.has('height') else 0,
|
h=m.get('height') if m.has('height') else 0,
|
||||||
duration=int(m.get('duration').seconds
|
duration=int(m.get('duration').seconds
|
||||||
if m.has('duration') else 0)
|
if m.has('duration') else 0)
|
||||||
)
|
)
|
||||||
else:
|
else:
|
||||||
doc = DocumentAttributeVideo(0, 0, 0)
|
doc = DocumentAttributeVideo(0, 0, 0,
|
||||||
|
round_message=video_note)
|
||||||
|
|
||||||
attr_dict[DocumentAttributeVideo] = doc
|
attr_dict[DocumentAttributeVideo] = doc
|
||||||
else:
|
else:
|
||||||
attr_dict = {
|
attr_dict = {
|
||||||
|
@ -1629,7 +1646,7 @@ class TelegramClient(TelegramBareClient):
|
||||||
getattr(file, 'name', None) or 'unnamed'))
|
getattr(file, 'name', None) or 'unnamed'))
|
||||||
}
|
}
|
||||||
|
|
||||||
if 'is_voice_note' in kwargs:
|
if voice_note:
|
||||||
if DocumentAttributeAudio in attr_dict:
|
if DocumentAttributeAudio in attr_dict:
|
||||||
attr_dict[DocumentAttributeAudio].voice = True
|
attr_dict[DocumentAttributeAudio].voice = True
|
||||||
else:
|
else:
|
||||||
|
@ -1678,7 +1695,9 @@ class TelegramClient(TelegramBareClient):
|
||||||
return msg
|
return msg
|
||||||
|
|
||||||
def send_voice_note(self, *args, **kwargs):
|
def send_voice_note(self, *args, **kwargs):
|
||||||
"""Wrapper method around :meth:`send_file` with is_voice_note=True."""
|
"""Deprecated, see :meth:`send_file`."""
|
||||||
|
warnings.warn('send_voice_note is deprecated, use '
|
||||||
|
'send_file(..., voice_note=True) instead')
|
||||||
kwargs['is_voice_note'] = True
|
kwargs['is_voice_note'] = True
|
||||||
return self.send_file(*args, **kwargs)
|
return self.send_file(*args, **kwargs)
|
||||||
|
|
||||||
|
@ -2390,6 +2409,7 @@ class TelegramClient(TelegramBareClient):
|
||||||
return [(callback, event) for event, callback in self._event_builders]
|
return [(callback, event) for event, callback in self._event_builders]
|
||||||
|
|
||||||
def add_update_handler(self, handler):
|
def add_update_handler(self, handler):
|
||||||
|
"""Deprecated, see :meth:`add_event_handler`."""
|
||||||
warnings.warn(
|
warnings.warn(
|
||||||
'add_update_handler is deprecated, use the @client.on syntax '
|
'add_update_handler is deprecated, use the @client.on syntax '
|
||||||
'or add_event_handler(callback, events.Raw) instead (see '
|
'or add_event_handler(callback, events.Raw) instead (see '
|
||||||
|
|
Loading…
Reference in New Issue
Block a user