diff options
Diffstat (limited to 'telegram')
-rw-r--r-- | telegram/handlers.go | 12 | ||||
-rw-r--r-- | telegram/utils.go | 9 |
2 files changed, 11 insertions, 10 deletions
diff --git a/telegram/handlers.go b/telegram/handlers.go index a28d5da..cf8b3d8 100644 --- a/telegram/handlers.go +++ b/telegram/handlers.go @@ -134,11 +134,7 @@ func (c *Client) updateUserStatus(update *client.UpdateUserStatus) { func (c *Client) updateNewChat(update *client.UpdateNewChat) { go func() { if update.Chat != nil && update.Chat.Photo != nil && update.Chat.Photo.Small != nil { - _, err := c.client.DownloadFile(&client.DownloadFileRequest{ - FileId: update.Chat.Photo.Small.Id, - Priority: 32, - Synchronous: false, - }) + _, err := c.DownloadFile(update.Chat.Photo.Small.Id, 32, true) if err != nil { log.Error("Failed to download the chat photo") @@ -196,11 +192,7 @@ func (c *Client) updateNewMessage(update *client.UpdateNewMessage) { // download file(s) if file != nil && !file.Local.IsDownloadingCompleted { - c.client.DownloadFile(&client.DownloadFileRequest{ - FileId: file.Id, - Priority: 10, - Synchronous: false, - }) + c.DownloadFile(file.Id, 10, false) } // OTR support (I do not know why would you need it, seriously) if !strings.HasPrefix(text, "?OTR") { diff --git a/telegram/utils.go b/telegram/utils.go index 63a880e..be48497 100644 --- a/telegram/utils.go +++ b/telegram/utils.go @@ -635,3 +635,12 @@ func (c *Client) getLastMessages(id int64, query string, from int64, count int32 Limit: count, }) } + +// DownloadFile actually obtains a file by id given by TDlib +func (c *Client) DownloadFile(id int32, priority int32, synchronous bool) (*client.File, error) { + return c.client.DownloadFile(&client.DownloadFileRequest{ + FileId: id, + Priority: priority, + Synchronous: synchronous, + }) +} |