Webhook ve Node.js kullanarak WhatsApp mesajları alın

Tanıtım

Bu eğitimde, Node.js kullanarak gelen WhatsApp mesaj web kancalarını işlemek için bir sayfa oluşturacağız.

bağımlılıklar

yerel kalkınma amaçları için bir tünel açma hizmeti gereklidir. Bu örnekte ngrok kullanılmaktadır, ngrok’u buradan indirebilirsiniz: https://ngrok.com/download

Projenizi kurun

ekspres ve vücut ayrıştırıcısını kurun:

npm install express body-parser

Ultramsg’den WhatsApp mesajları almanın basit bir örneği

const express = require('express')
const bodyParser = require('body-parser')
const app = express()
const PORT = 3000
// Setup a webhook route
app.use(bodyParser.json())
app.post('/ultramsgwebhook', (req, res) => {
  console.log(req.body) // print all response

  //messageFrom=req.body['data']['from'] // sender number
  //messageMsg=req.body['data']['body'] // Message text
  res.status(200).end()
})

app.use(bodyParser.json())
app.listen(PORT, () => console.log(`🚀 Server running on port ${PORT}🚀 `))

ngrok & Node.js projesini başlatın

Windows için Ngrok’u başlatın:

ngrok http 3000

Mac için Ngrok’u başlatın:

./ngrok http 3000

Nodejs projesini başlatın:

node index.js

Ultramsg’deki örneğinize Webhook URL’sini ayarlayın

İsteği işlemek için yeni bir webhook uç noktası oluşturuyoruz: http://your-ngrok.io.com/ultramsgwebhook, Şimdi webhook url’leri Ultramsg’deki örneğe yerleştirilmeli ve aşağıdaki resimde olduğu gibi Webhook on Received seçeneğini etkinleştirmelidir:

Webhook ve Node.js kullanarak WhatsApp mesajları alın - WhatsApp API
Webhook ve Node.js kullanarak WhatsApp mesajları alın 3

ÖRNEK JSON YANIT

{
  event_type: 'message_received',
  instanceId: '1150',
  data: {
    id: '[email protected]_3EB0FF54790702367270',
    from: '[email protected]',
    to: '[email protected]',
    ack: '',
    type: 'chat',
    body: 'Hello, World!',
    fromMe: false,
    time: 1644957719
  }
}

Tebrikler. İlk WhatsApp mesajınızı aldınız.

WhatsApp API ve Ultramsg ile kullanılacak web kancası türleri

  • webhook_message_received : mesaj alındığında webhook’lardaki bildirimler.
  • webhook_message_create : mesaj oluşturulduğunda web kancalarındaki bildirimler .
  • webhook_message_ack : webhook’larda ack (mesaj teslim edildi ve mesaj görüntülendi) bildirimleri.

Bu videoda önceki adımları görebilirsiniz: