@@ -269,56 +269,26 @@ def video(self, video_file=None, link=None, name=None, description=None,
269269 files = f or None
270270 ).json ()
271271
272- def audio_message (self , audio , group_id = None ):
273- """ Загрузка аудио-сообщения
274-
275- :param audio: путь к аудиофайлу или file-like объект
276- :param group_id: идентификатор сообщества
277- (если используется токен сообщества)
278- """
279-
280- return self .document (
281- audio ,
282- audio_message = True ,
283- group_id = group_id ,
284- to_wall = group_id is not None
285- )
286-
287- def graffiti (self , image , group_id = None ):
288- """ Загрузка граффити
289-
290- :param image: путь к png изображению или file-like объект.
291- :param group_id: идентификатор сообщества
292- (если используется токен сообщества)
293- """
294-
295- return self .document (
296- image ,
297- graffiti = True ,
298- group_id = group_id ,
299- to_wall = group_id is not None
300- )
301-
302272 def document (self , doc , title = None , tags = None , group_id = None ,
303- to_wall = False , audio_message = False , graffiti = False ):
273+ to_wall = False , message_peer_id = None , doc_type = None ):
304274 """ Загрузка документа
305275
306276 :param doc: путь к документу или file-like объект
307277 :param title: название документа
308278 :param tags: метки для поиска
309279 :param group_id: идентификатор сообщества (если загрузка идет в группу)
310- :param to_wall: загрузить на стену
311280 """
312281
313- values = {'group_id' : group_id }
314-
315- if audio_message :
316- values ['type' ] = 'audio_message'
317- elif graffiti :
318- values ['type' ] = 'graffiti'
282+ values = {
283+ 'group_id' : group_id ,
284+ 'peer_id' : message_peer_id ,
285+ 'type' : doc_type
286+ }
319287
320288 if to_wall :
321289 method = 'docs.getWallUploadServer'
290+ elif message_peer_id :
291+ method = 'docs.getMessagesUploadServer'
322292 else :
323293 method = 'docs.getUploadServer'
324294
@@ -345,7 +315,43 @@ def document_wall(self, doc, title=None, tags=None, group_id=None):
345315 :param group_id: идентификатор сообщества (если загрузка идет в группу)
346316 """
347317
348- return self .document (doc , title , tags , group_id , True )
318+ return self .document (doc , title , tags , group_id , to_wall = True )
319+
320+ def document_message (self , doc , title = None , tags = None , peer_id = None ):
321+ """ Загрузка документа для отправки личным сообщением.
322+
323+ :param doc: путь к документу или file-like объект
324+ :param title: название документа
325+ :param tags: метки для поиска
326+ :param peer_id: peer_id беседы
327+ """
328+
329+ return self .document (doc , title , tags , message_peer_id = peer_id )
330+
331+ def audio_message (self , audio , peer_id = None , group_id = None ):
332+ """ Загрузка аудио-сообщения.
333+
334+ :param audio: путь к аудиофайлу или file-like объект
335+ :param peer_id: идентификатор диалога
336+ :param group_id: для токена группы, можно передавать ID группы,
337+ вместо peer_id
338+ """
339+
340+ return self .document (
341+ audio ,
342+ doc_type = 'audio_message' ,
343+ message_peer_id = peer_id ,
344+ group_id = group_id ,
345+ to_wall = group_id is not None
346+ )
347+
348+ def graffiti (self , image ):
349+ """ Загрузка граффити
350+
351+ :param image: путь к png изображению или file-like объект.
352+ """
353+
354+ return self .document (image , doc_type = 'graffiti' )
349355
350356 def photo_cover (self , photo , group_id ,
351357 crop_x = None , crop_y = None ,
0 commit comments