all repos — telegram-bot-api @ b2d2f4f5b0280ee1fd44e45a4c56619f1d5a5ac9

Golang bindings for the Telegram Bot API

add a http listener for webhooks that uses the normal updates chan
Syfaro syfaro@foxpaw.in
Mon, 07 Sep 2015 13:09:08 -0500
commit

b2d2f4f5b0280ee1fd44e45a4c56619f1d5a5ac9

parent

3b466def718ef0685de17e626a0369450425d247

1 files changed, 23 insertions(+), 0 deletions(-)

jump to
A webhook.go

@@ -0,0 +1,23 @@

+package tgbotapi + +import ( + "encoding/json" + "io/ioutil" + "net/http" +) + +// ListenForWebhook registers a http handler for a webhook. +// Useful for Google App Engine or other places where you cannot +// use a normal update chan. +func (bot *BotAPI) ListenForWebhook() { + bot.Updates = make(chan Update, 100) + + http.HandleFunc("/"+bot.Token, func(w http.ResponseWriter, r *http.Request) { + bytes, _ := ioutil.ReadAll(r.Body) + + var update Update + json.Unmarshal(bytes, &update) + + bot.Updates <- update + }) +}