From 2b945159584b683208097af85d3b62e1ca75a98f Mon Sep 17 00:00:00 2001 From: Maxim Lebedev Date: Tue, 5 Sep 2017 01:26:07 +0500 Subject: [PATCH] :sparkles: Added deleteChatPhoto method --- delete_chat_photo.go | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 delete_chat_photo.go diff --git a/delete_chat_photo.go b/delete_chat_photo.go new file mode 100644 index 0000000..77861ec --- /dev/null +++ b/delete_chat_photo.go @@ -0,0 +1,30 @@ +package telegram + +import ( + json "github.com/pquerna/ffjson/ffjson" + http "github.com/valyala/fasthttp" +) + +// DeleteChatPhoto delete a chat photo. Photos can't be changed for private chats. The bot must be an administrator in the chat for this to work and must have the appropriate admin rights. Returns True on success. +// +// Note: In regular groups (non-supergroups), this method will only work if the ‘All Members Are Admins’ setting is off in the target group. +func (bot *Bot) DeleteChatPhoto(chat interface{}) (bool, error) { + var args http.Args + switch id := chatID.(type) { + case int64: // Unique identifier for the target chat... + args.Add("chat_id", strconv.FormatInt(id, 10)) + case string: // ...or username of the target supergroup or channel (in the format @channelusername) + args.Add("chat_id", id) + default: + return nil, errors.New(errorInt64OrString) + } + + resp, err := bot.post("deleteChatPhoto", &args) + if err != nil { + return nil, err + } + + var data bool + err = json.Unmarshal(*resp.Result, &data) + return data, err +}