1
0
telegram/send_chat_action.go

31 lines
894 B
Go
Raw Normal View History

2017-09-04 20:03:08 +00:00
package telegram
import (
"strconv"
json "github.com/pquerna/ffjson/ffjson"
http "github.com/valyala/fasthttp"
)
2017-10-06 07:55:54 +00:00
// SendChatAction tell the user that something is happening on the bot's side.
// The status is set for 5 seconds or less (when a message arrives from your bot,
// Telegram clients clear its typing status). Returns True on success.
2017-09-04 20:03:08 +00:00
//
2017-10-06 07:55:54 +00:00
// We only recommend using this method when a response from the bot will take a
// noticeable amount of time to arrive.
func (bot *Bot) SendChatAction(chatID int64, action string) (bool, error) {
2017-12-13 14:07:57 +00:00
args := http.AcquireArgs()
defer http.ReleaseArgs(args)
2017-09-04 20:03:08 +00:00
args.Add("action", action) // Type of action to broadcast
args.Add("chat_id", strconv.FormatInt(chatID, 10))
2017-09-04 20:03:08 +00:00
2017-12-13 14:07:57 +00:00
resp, err := bot.request(nil, "sendChatAction", args)
2017-09-04 20:03:08 +00:00
if err != nil {
2017-09-04 20:54:28 +00:00
return false, err
2017-09-04 20:03:08 +00:00
}
var data bool
err = json.Unmarshal(*resp.Result, &data)
return data, err
}