Update README.md.

bot-api-6.1
Syfaro 2017-12-29 01:26:54 -06:00
parent ef374648bf
commit 8b7b15afc2
3 changed files with 24 additions and 26 deletions

View File

@ -16,9 +16,6 @@ without any additional features. There are other projects for creating
something with plugins and command handlers without having to design something with plugins and command handlers without having to design
all that yourself. all that yourself.
Use `github.com/go-telegram-bot-api/telegram-bot-api` for the latest
version, or use `gopkg.in/telegram-bot-api.v4` for the stable build.
Join [the development group](https://telegram.me/go_telegram_bot_api) if Join [the development group](https://telegram.me/go_telegram_bot_api) if
you want to ask questions or discuss development. you want to ask questions or discuss development.
@ -32,7 +29,8 @@ package main
import ( import (
"log" "log"
"gopkg.in/telegram-bot-api.v4"
"github.com/go-telegram-bot-api/telegram-bot-api"
) )
func main() { func main() {
@ -72,9 +70,10 @@ you may use a slightly different method.
package main package main
import ( import (
"gopkg.in/telegram-bot-api.v4"
"log" "log"
"net/http" "net/http"
"github.com/go-telegram-bot-api/telegram-bot-api"
) )
func main() { func main() {
@ -87,7 +86,7 @@ func main() {
log.Printf("Authorized on account %s", bot.Self.UserName) log.Printf("Authorized on account %s", bot.Self.UserName)
_, err = bot.SetWebhook(tgbotapi.NewWebhookWithCert("https://www.google.com:8443/"+bot.Token, "cert.pem")) _, err = bot.Request(tgbotapi.NewWebhookWithCert("https://www.google.com:8443/"+bot.Token, "cert.pem"))
if err != nil { if err != nil {
log.Fatal(err) log.Fatal(err)
} }
@ -108,5 +107,5 @@ properly signed.
openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 3560 -subj "//O=Org\CN=Test" -nodes openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 3560 -subj "//O=Org\CN=Test" -nodes
Now that [Let's Encrypt](https://letsencrypt.org) has entered public beta, Now that [Let's Encrypt](https://letsencrypt.org) is available, you may
you may wish to generate your free TLS certificate there. wish to generate your free TLS certificate there.

32
bot.go
View File

@ -243,23 +243,7 @@ func (bot *BotAPI) IsMessageToMe(message Message) bool {
return strings.Contains(message.Text, "@"+bot.Self.UserName) return strings.Contains(message.Text, "@"+bot.Self.UserName)
} }
// Send will send a Chattable item to Telegram. // Request sends a Chattable to Telegram, and returns the APIResponse.
//
// It requires the Chattable to send.
func (bot *BotAPI) Send(c Chattable) (Message, error) {
resp, err := bot.Request(c)
if err != nil {
return Message{}, err
}
var message Message
err = json.Unmarshal(resp.Result, &message)
return message, err
}
// Request makes a request to Telegram that returns an APIResponse, rather than
// a Message.
func (bot *BotAPI) Request(c Chattable) (APIResponse, error) { func (bot *BotAPI) Request(c Chattable) (APIResponse, error) {
switch t := c.(type) { switch t := c.(type) {
case Fileable: case Fileable:
@ -288,6 +272,20 @@ func (bot *BotAPI) Request(c Chattable) (APIResponse, error) {
} }
} }
// Send will send a Chattable item to Telegram and provides the
// returned Message.
func (bot *BotAPI) Send(c Chattable) (Message, error) {
resp, err := bot.Request(c)
if err != nil {
return Message{}, err
}
var message Message
err = json.Unmarshal(resp.Result, &message)
return message, err
}
// debugLog checks if the bot is currently running in debug mode, and if // debugLog checks if the bot is currently running in debug mode, and if
// so will display information about the request and response in the // so will display information about the request and response in the
// debug log. // debug log.

View File

@ -1,8 +1,9 @@
package tgbotapi_test package tgbotapi_test
import ( import (
"github.com/go-telegram-bot-api/telegram-bot-api"
"testing" "testing"
"github.com/go-telegram-bot-api/telegram-bot-api"
) )
func TestNewInlineQueryResultArticle(t *testing.T) { func TestNewInlineQueryResultArticle(t *testing.T) {