Skip to content

next-africa/go-messenger-bot

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Golang bindings for the Messenger Bot API

The scope of this project is just to provide a wrapper around the API without any additional features.

Example

This is a very simple bot that just displays any gotten updates, then replies it to it.

package main

import (
	"log"
    "net/http"
	"github.com/abhinavdahiya/go-messenger-bot"
)

func main() {
	bot := mbotapi.NewBotAPI("ACCESS_TOKEN", "VERIFY_TOKEN")

	callbacks, mux := bot.SetWebhook("/webhook")
	go http.ListenAndServeTLS("0.0.0.0:8443", "cert.pem", "key.pem", mux)

    for callback := range callbacks {
        log.Printf("[%#v] %s", callback.Sender, callback.Message.Text)

        msg := mbotapi.NewMessage(callback.Message.Text)
        bot.Send(callback.Sender, msg, mbotapi.RegularNotif)
    }
}

Facebook messenger webhook needs a certificate certified by known CA, Now that Let's Encrypt has entered public beta, you may wish to generate your free TLS certificate there.

Inspiration

Messenger takes design cues from:

Releases

No releases published

Packages

No packages published

Languages

  • Go 100.0%