Перейти к содержанию

Как получать входящие уведомления#

Установка#

go get github.com/green-api/whatsapp-api-client-golang

Пример получения входящих уведомлений#

Чтобы начать получать уведомления, нужно передать функцию-обработчик в GreenAPIWebhook.Start(). Функция-обработчик должна содержать 1 параметр (body map[string]interface{}). При получении нового уведомления ваша функция-обработчик будет выполнена. Чтобы перестать получать уведомления, нужно вызвать функцию GreenAPIWebhook.Stop().

Ссылка на пример: main.go.

package main

import (
    "fmt"
    "log"
    //"os"

    "github.com/green-api/whatsapp-api-client-golang/pkg/api"
    "github.com/green-api/whatsapp-api-client-golang/pkg/webhook"
)

func main() {
    //You can set environment variables in your OS
    //
    //IDInstance := os.Getenv("ID_INSTANCE")
    //APITokenInstance := os.Getenv("API_TOKEN_INSTANCE")

    GreenAPI := api.GreenAPI{
        IDInstance:       "IDInstance",
        APITokenInstance: "APITokenInstance",
    }

    GreenAPIWebhook := webhook.GreenAPIWebhook{
        GreenAPI: GreenAPI,
    }

    GreenAPIWebhook.Start(func(body map[string]interface{}) {
        typeWebhook := body["typeWebhook"]
        if typeWebhook == "incomingMessageReceived" {
            senderData := body["senderData"]
            chatId := senderData.(map[string]interface{})["chatId"]

            response, err := GreenAPI.Methods().Sending().SendMessage(map[string]interface{}{
                "chatId":  chatId,
                "message": "Any message",
            })
            if err != nil {
                log.Fatal(err)
            }

            fmt.Println(response)

            GreenAPIWebhook.Stop()
        }
    })
}

Список примеров#

Описание Ссылка на пример
Как создать группу main.go
Как отправить вложение main.go
Как отправить сообщение main.go
Как получать входящие уведомления main.go