aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Kiryukhin <a.kiryukhin@mail.ru>2019-08-13 20:50:30 +0300
committerAlexander Kiryukhin <a.kiryukhin@mail.ru>2019-08-13 20:50:30 +0300
commit8d6c4682dbbb37e64a9f177390d3dfadd99e2ef2 (patch)
treefb9a6c8193e9e18db9c7f4d9a3a02f39d94adfc7
parent9ea34f2a2e7aa0249b73b5d9bb05795a668f270d (diff)
Update readmev0.2.2
-rw-r--r--README.md11
-rw-r--r--examples/example.go11
2 files changed, 18 insertions, 4 deletions
diff --git a/README.md b/README.md
index 75a4dae..1c3f3d2 100644
--- a/README.md
+++ b/README.md
@@ -27,6 +27,7 @@ import (
"fmt"
"log"
"os"
+ "os/signal"
"github.com/neonxp/tamtam"
)
@@ -36,8 +37,14 @@ func main() {
info, err := api.Bots.GetBot() // Простой метод
log.Printf("Get me: %#v %#v", info, err)
- go api.UpdatesLoop(context.Background()) // Запуск цикла получения обновлений
- for upd := range api.GetUpdates() { // Чтение из канала с обновлениями
+ ctx, cancel := context.WithCancel(context.Background())
+ go func() {
+ exit := make(chan os.Signal)
+ signal.Notify(exit, os.Kill, os.Interrupt)
+ <-exit
+ cancel()
+ }()
+ for upd := range api.GetUpdates(ctx) { // Чтение из канала с обновлениями
log.Printf("Received: %#v", upd)
switch upd := upd.(type) { // Определение типа пришедшего обновления
case *tamtam.MessageCreatedUpdate:
diff --git a/examples/example.go b/examples/example.go
index 8effc67..b769e8a 100644
--- a/examples/example.go
+++ b/examples/example.go
@@ -5,6 +5,7 @@ import (
"fmt"
"log"
"os"
+ "os/signal"
"github.com/neonxp/tamtam"
)
@@ -14,8 +15,14 @@ func main() {
info, err := api.Bots.GetBot() // Простой метод
log.Printf("Get me: %#v %#v", info, err)
- go api.UpdatesLoop(context.Background()) // Запуск цикла получения обновлений
- for upd := range api.GetUpdates() { // Чтение из канала с обновлениями
+ ctx, cancel := context.WithCancel(context.Background())
+ go func() {
+ exit := make(chan os.Signal)
+ signal.Notify(exit, os.Kill, os.Interrupt)
+ <-exit
+ cancel()
+ }()
+ for upd := range api.GetUpdates(ctx) { // Чтение из канала с обновлениями
log.Printf("Received: %#v", upd)
switch upd := upd.(type) { // Определение типа пришедшего обновления
case *tamtam.MessageCreatedUpdate: