Integrasi Messenger API & Webhook untuk Bot (Tutorial 2026)

Pembangun mencipta bot messenger dengan editor kod dan gambar rajah seni bina webhook

Mengautomasikan pemberitahuan melalui bot messenger menjadikan aliran kerja pembangunan lebih pantas dan mudah. Awak akan menerima amaran segera apabila binaan selesai, ralat berlaku, atau deployment berjaya. Panduan ini menunjukkan cara menyediakan bot yang menghantar mesej automatik melalui webhook pada platform pemesejan popular. Perlu memaklumkan pasukan tentang keputusan CI/CD, amaran pelayan, atau penyelesaian proses? Integrasi ini memudahkan segalanya. Kami hanya merangkumi platform dengan sokongan bot yang mudah. Sesetengah messenger yang mengutamakan privasi tidak menyokong automasi - platform tersebut disenaraikan secara berasingan.

Memahami Automasi Bot Berasaskan Webhook

Bot berasaskan webhook beroperasi atas konsep yang mudah. Aplikasi awak menghantar permintaan HTTP POST ke sebuah URL. Platform pemesejan kemudiannya menyampaikan kandungan tersebut ke saluran atau pengguna yang ditentukan.

Pendekatan ini sesuai untuk pelbagai tugas automasi:

  • Pemberitahuan binaan - Amaran apabila binaan berjaya atau gagal, lengkap dengan butiran ralat
  • Kemas kini deployment - Maklumkan pasukan apabila kod mencapai staging atau persekitaran pengeluaran
  • Amaran pemantauan - Hantar amaran kesihatan pelayan atau notis masa henti
  • Laporan berjadual - Sampaikan metrik harian atau ringkasan status

Aliran kerja asas mempunyai tiga langkah:

  1. Cipta bot atau URL webhook pada platform sasaran
  2. Konfigurasikan alat automasi awak (CI/CD, sistem pemantauan, atau skrip tersuai) untuk menghantar permintaan HTTP
  3. Formatkan payload mesej mengikut keperluan platform

Pemilihan platform yang tepat juga bergantung pada ciri keselamatannya. Untuk penelitian lebih lanjut tentang keselamatan platform, lihat Panduan Lengkap tentang Messenger dalam 2026 kami.

Panduan Integrasi Bot Messenger

Berikut adalah panduan langkah demi langkah untuk setiap platform yang menyokong integrasi bot berasaskan webhook dengan mudah.

Bot Webhook Discord

How to setup different webhook bots in 2026 simple and easy

Discord mempunyai persediaan webhook yang paling mudah. Awak tidak memerlukan aplikasi bot atau token pengesahan untuk penghantaran mesej asas.

Persediaan Langkah demi Langkah

  1. Buka Tetapan Pelayan - Klik kanan nama pelayan awak dan pilih "Server Settings"
  2. Pergi ke Integrations - Klik "Integrations" di bar sisi kiri
  3. Cipta Webhook - Klik "Webhooks" kemudian "New Webhook"
  4. Konfigurasikan Webhook - Namakan webhook awak (contoh: "Build Bot"), pilih saluran, dan tambah avatar jika perlu
  5. Salin URL Webhook - Klik "Copy Webhook URL" dan simpan dengan selamat

Menghantar Mesej melalui Webhook

curl -X POST -H "Content-Type: application/json" \
  -d '{"content": "✅ Build completed successfully!\n\nProject: MyApp\nBranch: main\nDuration: 3m 42s"}' \
  https://discord.com/api/webhooks/YOUR_WEBHOOK_ID/YOUR_WEBHOOK_TOKEN

Contoh Rich Embed untuk Pemberitahuan Ralat

curl -X POST -H "Content-Type: application/json" \
  -d '{
    "embeds": [{
      "title": "❌ Build Failed",
      "color": 15158332,
      "fields": [
        {"name": "Project", "value": "MyApp", "inline": true},
        {"name": "Branch", "value": "feature/login", "inline": true},
        {"name": "Error", "value": "```TypeError: Cannot read property of undefined```"}
      ],
      "timestamp": "2026-01-15T10:30:00.000Z"
    }]
  }' \
  YOUR_WEBHOOK_URL

Dokumentasi Rasmi: Dokumentasi Webhook Discord

Bot Webhook Slack

How to setup different webhook bots in 2026 simple and easy

Slack menggunakan Incoming Webhooks sebagai sebahagian daripada sistem Slack Apps. Ia menyokong pemformatan mesej yang kaya dan penargetan saluran yang fleksibel.

Persediaan Langkah demi Langkah

  1. Cipta Aplikasi Slack - Pergi ke api.slack.com/apps dan klik "Create New App"
  2. Pilih Kaedah Penciptaan - Pilih "From scratch" dan berikan nama untuk aplikasi awak (contoh: "CI/CD Notifications")
  3. Aktifkan Incoming Webhooks - Pergi ke "Incoming Webhooks" di bar sisi dan togol untuk mengaktifkannya
  4. Tambah Webhook ke Ruang Kerja - Klik "Add New Webhook to Workspace"
  5. Pilih Saluran - Pilih saluran untuk pemberitahuan dan klik "Allow"
  6. Salin URL Webhook - URL webhook unik awak akan dipaparkan pada skrin

Menghantar Mesej melalui Webhook

curl -X POST -H "Content-Type: application/json" \
  -d '{"text": "✅ Deployment to production completed successfully!"}' \
  https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXX

Mesej Block Kit untuk Pemberitahuan Terperinci

curl -X POST -H "Content-Type: application/json" \
  -d '{
    "blocks": [
      {
        "type": "header",
        "text": {"type": "plain_text", "text": "🚨 Build Failed"}
      },
      {
        "type": "section",
        "fields": [
          {"type": "mrkdwn", "text": "*Project:*\nMyApp"},
          {"type": "mrkdwn", "text": "*Branch:*\nmain"},
          {"type": "mrkdwn", "text": "*Error:*\n`Module not found`"}
        ]
      }
    ]
  }' \
  YOUR_WEBHOOK_URL

Dokumentasi Rasmi: Panduan Incoming Webhooks Slack

Bot Webhook Microsoft Teams

How to setup different webhook bots in 2026 simple and easy

Microsoft Teams menyokong Incoming Webhooks untuk pemberitahuan saluran. Ia disediakan melalui sistem penyambung (connectors).

Persediaan Langkah demi Langkah

  1. Buka Tetapan Saluran - Pergi ke saluran sasaran dan klik tiga titik (•••) di sebelah nama saluran
  2. Pilih Connectors - Klik "Connectors" (atau "Manage channel" kemudian "Connectors" dalam versi terbaru)
  3. Cari Incoming Webhook - Cari "Incoming Webhook" dan klik "Configure"
  4. Namakan Webhook Awak - Masukkan nama (contoh: "Build Alerts") dan muat naik imej jika perlu
  5. Cipta dan Salin URL - Klik "Create" dan salin URL webhook

Menghantar Mesej melalui Webhook

curl -X POST -H "Content-Type: application/json" \
  -d '{"text": "✅ Build #1234 completed successfully on main branch"}' \
  YOUR_TEAMS_WEBHOOK_URL

Adaptive Card untuk Pemberitahuan Kaya

curl -X POST -H "Content-Type: application/json" \
  -d '{
    "type": "message",
    "attachments": [{
      "contentType": "application/vnd.microsoft.card.adaptive",
      "content": {
        "type": "AdaptiveCard",
        "version": "1.2",
        "body": [
          {"type": "TextBlock", "size": "Large", "weight": "Bolder", "text": "❌ Build Failed"},
          {"type": "FactSet", "facts": [
            {"title": "Project:", "value": "MyApp"},
            {"title": "Error:", "value": "Compilation failed"}
          ]}
        ]
      }
    }]
  }' \
  YOUR_TEAMS_WEBHOOK_URL

Dokumentasi Rasmi: Incoming Webhooks Microsoft Teams

Bot Telegram

How to setup different webhook bots in 2026 simple and easy

Telegram mempunyai Bot API yang berkuasa untuk menghantar mesej secara aturcara. Berbeza dengan platform lain, awak menghantar permintaan terus ke API Telegram dan bukannya menggunakan URL webhook.

Persediaan Langkah demi Langkah

  1. Cipta Bot melalui BotFather - Buka Telegram dan cari @BotFather
  2. Mulakan Bot Baru - Hantar arahan /newbot
  3. Namakan Bot Awak - Ikuti arahan untuk menetapkan nama paparan dan nama pengguna (mesti berakhir dengan "bot")
  4. Simpan Token API - BotFather akan memberikan token seperti 123456789:ABCdefGHIjklMNOpqrsTUVwxyz
  5. Dapatkan ID Sembang - Tambah bot ke kumpulan atau saluran awak, hantar mesej, kemudian lawati https://api.telegram.org/bot<TOKEN>/getUpdates untuk mencari ID sembang

Menghantar Mesej melalui Bot API

curl -X POST \
  "https://api.telegram.org/bot/sendMessage" \
  -d "chat_id=" \
  -d "text=✅ Build completed successfully!%0A%0AProject: MyApp%0ABranch: main" \
  -d "parse_mode=HTML"

Mesej Berformat dengan HTML

curl -X POST \
  "https://api.telegram.org/bot/sendMessage" \
  -H "Content-Type: application/json" \
  -d '{
    "chat_id": "",
    "text": "❌ Build Failed\n\nProject: MyApp\nBranch: main\nError: Module not found",
    "parse_mode": "HTML"
  }'

Dokumentasi Rasmi: Telegram Bot API

Bot Webhook Mattermost

How to setup different webhook bots in 2026 simple and easy

Mattermost ialah alternatif sumber terbuka kepada Slack. Ia mempunyai sokongan webhook yang kukuh dan sesuai untuk komunikasi pasukan yang dihoskan sendiri.

Persediaan Langkah demi Langkah

  1. Akses Integrations - Klik menu hamburger, kemudian "Integrations"
  2. Cipta Incoming Webhook - Pilih "Incoming Webhooks" kemudian "Add Incoming Webhook"
  3. Konfigurasikan Webhook - Tetapkan tajuk, penerangan, dan saluran lalai
  4. Simpan dan Salin URL - Klik "Save" dan salin URL webhook

Menghantar Mesej melalui Webhook

curl -X POST -H "Content-Type: application/json" \
  -d '{"text": "✅ Build completed successfully!"}' \
  https://your-mattermost-server.com/hooks/YOUR_WEBHOOK_ID

Mesej dengan Lampiran Kaya

curl -X POST -H "Content-Type: application/json" \
  -d '{
    "attachments": [{
      "fallback": "Build Failed",
      "color": "#FF0000",
      "title": "❌ Build Failed",
      "fields": [
        {"short": true, "title": "Project", "value": "MyApp"},
        {"short": true, "title": "Branch", "value": "main"},
        {"short": false, "title": "Error", "value": "```Module not found```"}
      ]
    }]
  }' \
  YOUR_WEBHOOK_URL

Dokumentasi Rasmi: Incoming Webhooks Mattermost

Bot Matrix/Element

How to setup different webhook bots in 2026 simple and easy

Matrix ialah protokol sumber terbuka untuk komunikasi terpencar. Element adalah klien paling popular untuknya. Untuk mengintegrasikan bot, awak menggunakan Matrix Client-Server API.

Persediaan Langkah demi Langkah

  1. Cipta Akaun Bot - Daftarkan akaun Matrix baharu untuk bot awak pada pelayan rumah atau matrix.org
  2. Dapatkan Token Akses - Log masuk dan cari token akses dalam Element: Tetapan - Help & About - Advanced - Access Token
  3. Dapatkan ID Bilik - Sertai bilik sasaran dengan bot awak, kemudian cari ID bilik dalam Tetapan Bilik - Advanced
  4. Jemput Bot ke Bilik - Pastikan akaun bot telah menyertai bilik di mana ia akan menghantar mesej

Menghantar Mesej melalui Matrix API

curl -X PUT \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"msgtype": "m.text", "body": "✅ Build completed successfully!"}' \
  "https://matrix.org/_matrix/client/r0/rooms/YOUR_ROOM_ID/send/m.room.message/$(date +%s)"

Mesej Berformat dengan HTML

curl -X PUT \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "msgtype": "m.text",
    "body": "Build Failed\nProject: MyApp\nError: Module not found",
    "format": "org.matrix.custom.html",
    "formatted_body": "

❌ Build Failed

Project: MyApp
Error: Module not found

" }' \ "https://matrix.org/_matrix/client/r0/rooms/YOUR_ROOM_ID/send/m.room.message/$(date +%s)"

Petua: Untuk pembangunan bot Matrix yang lebih mudah, cuba gunakan pustaka seperti matrix-nio (Python) atau matrix-bot-sdk (JavaScript).

Dokumentasi Rasmi: Spesifikasi Matrix Client-Server API

Bot WhatsApp Business

How to setup different webhook bots in 2026 simple and easy

WhatsApp menawarkan Business API untuk penghantaran mesej automatik. Ia memerlukan pengesahan perniagaan dan lebih kompleks untuk disediakan berbanding platform lain.

Persediaan Langkah demi Langkah

  1. Cipta Akaun Meta Business - Lawati business.facebook.com dan cipta akaun perniagaan
  2. Sediakan WhatsApp Business - Pergi ke developers.facebook.com, cipta aplikasi, dan tambah produk WhatsApp
  3. Konfigurasikan Nombor Telefon - Tambah nombor telefon untuk bot awak (nombor ujian tersedia untuk pembangunan)
  4. Dapatkan Token Akses - Jana token akses kekal dari papan pemuka aplikasi
  5. Sahkan Perniagaan - Lengkapkan pengesahan perniagaan sebelum melancarkan secara langsung

Menghantar Mesej melalui Cloud API

curl -X POST \
  "https://graph.facebook.com/v17.0/YOUR_PHONE_NUMBER_ID/messages" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "messaging_product": "whatsapp",
    "to": "RECIPIENT_PHONE_NUMBER",
    "type": "text",
    "text": {"body": "✅ Build completed successfully!"}
  }'

Penting: WhatsApp memerlukan templat mesej apabila memulakan perbualan dengan pengguna. Awak hanya boleh menghantar mesej bebas dalam tempoh 24 jam selepas interaksi pengguna. Untuk pemberitahuan automatik, cipta dan dapatkan kelulusan templat mesej awak terlebih dahulu.

Dokumentasi Rasmi: Dokumentasi WhatsApp Cloud API

Bot Facebook Messenger

How to setup different webhook bots in 2026 simple and easy

Bot Facebook Messenger memerlukan Aplikasi Facebook dan Halaman. Mesej dihantar melalui Send API.

Persediaan Langkah demi Langkah

  1. Cipta Aplikasi Facebook - Pergi ke developers.facebook.com dan cipta aplikasi baharu (pilih jenis "Business")
  2. Tambah Produk Messenger - Dalam papan pemuka aplikasi, klik "Add Product" dan pilih Messenger
  3. Sambungkan Halaman Facebook - Pautkan Halaman Facebook ke aplikasi awak (cipta satu jika perlu)
  4. Jana Token Akses Halaman - Dalam tetapan Messenger, jana token untuk halaman awak
  5. Dapatkan PSID - Pengguna mesti menghantar mesej ke halaman awak terlebih dahulu. Tangkap Page-Scoped ID (PSID) mereka daripada acara webhook

Menghantar Mesej melalui Send API

curl -X POST \
  "https://graph.facebook.com/v17.0/me/messages" \
  -H "Content-Type: application/json" \
  -d '{
    "recipient": {"id": "USER_PSID"},
    "message": {"text": "✅ Build completed successfully!"},
    "access_token": "YOUR_PAGE_ACCESS_TOKEN"
  }'

Nota: Facebook Messenger mempunyai peraturan ketat tentang penghantaran mesej automatik. Bot hanya boleh menghantar mesej promosi dalam tempoh 24 jam selepas interaksi pengguna. Untuk pemberitahuan di luar tetingkap ini, mohon tag mesej khusus atau gunakan ciri pemberitahuan satu kali.

Dokumentasi Rasmi: Dokumentasi Platform Facebook Messenger

Messenger Tanpa Sokongan Bot Yang Mudah

Messenger berikut mengutamakan privasi dan keselamatan. Ini bermakna integrasi bot berasaskan webhook sama ada tidak mungkin atau tidak praktikal:

  • Signal - Tiada Bot API rasmi. Signal memberi tumpuan kepada enkripsi hujung ke hujung dan mengelakkan ciri automasi yang boleh mengurangkan keselamatan.
  • Session - Messenger terpencar tanpa infrastruktur bot. Reka bentuk onion routing-nya menjadikan penghantaran mesej automatik tidak praktikal.
  • Briar - Messenger peer-to-peer yang dibina untuk aktivis dan wartawan. Tiada infrastruktur pelayan bermakna tiada sokongan webhook.
  • Wire - Mempunyai beberapa ciri API perusahaan, tetapi tiada sistem webhook mudah untuk pemberitahuan automatik.
  • Wickr - Berorientasikan perusahaan tanpa Bot API awam. Automasi memerlukan Wickr Enterprise dengan integrasi tersuai.
  • SimpleX - Direka tanpa pengecam pengguna, yang menjadikan integrasi bot tidak serasi dengan seni binanya.
  • Threema - Menawarkan Threema Gateway untuk perniagaan, tetapi ia adalah perkhidmatan berbayar yang memerlukan kontrak - bukan persediaan webhook yang mudah.
  • Viber - Mempunyai Bot API, tetapi memerlukan kelulusan akaun perniagaan dan dibina untuk perkhidmatan pelanggan, bukan pemberitahuan pembangun.
  • LINE - Menawarkan Messaging API, tetapi memerlukan pengesahan akaun perniagaan dan agak kompleks untuk kes penggunaan pemberitahuan mudah.
  • WeChat - Mempunyai Official Account API, tetapi memerlukan pendaftaran perniagaan China dan kelulusan kerajaan.

Jika awak lebih suka platform ini untuk komunikasi selamat, pertimbangkan untuk menggabungkannya dengan platform yang disokong untuk tujuan automasi. Awak juga boleh membaca panduan kami tentang cara memastikan mesej peribadi benar-benar selamat.

Contoh Pelaksanaan Praktikal

Berikut adalah contoh Node.js lengkap yang menghantar pemberitahuan binaan ke pelbagai platform pada masa yang sama:

const axios = require('axios');

const notifiers = {
  discord: async (message, webhookUrl) => {
    await axios.post(webhookUrl, { content: message });
  },

  slack: async (message, webhookUrl) => {
    await axios.post(webhookUrl, { text: message });
  },

  telegram: async (message, token, chatId) => {
    await axios.post(`https://api.telegram.org/bot${token}/sendMessage`, {
      chat_id: chatId,
      text: message,
      parse_mode: 'HTML'
    });
  },

  teams: async (message, webhookUrl) => {
    await axios.post(webhookUrl, { text: message });
  }
};

async function notifyBuildResult(success, project, branch, error = null) {
  const emoji = success ? '✅' : '❌';
  const status = success ? 'succeeded' : 'failed';
  let message = `${emoji} Build ${status}\n\nProject: ${project}\nBranch: ${branch}`;
  if (error) message += `\nError: ${error}`;

  const notifications = [
    notifiers.discord(message, process.env.DISCORD_WEBHOOK),
    notifiers.slack(message, process.env.SLACK_WEBHOOK),
    notifiers.telegram(message, process.env.TELEGRAM_TOKEN, process.env.TELEGRAM_CHAT_ID),
    notifiers.teams(message, process.env.TEAMS_WEBHOOK)
  ];

  await Promise.allSettled(notifications);
}

// Penggunaan dalam saluran paip CI/CD awak
notifyBuildResult(false, 'MyApp', 'main', 'Module not found: @utils/helper');

Rumusan Utama:

  • Discord, Slack, dan Mattermost mempunyai persediaan paling mudah - hanya cipta dan gunakan URL
  • Telegram memerlukan token bot dan ID sembang, tetapi menawarkan kebolehpercayaan dan pemformatan yang baik
  • Microsoft Teams menggunakan Adaptive Cards untuk pemberitahuan yang kaya
  • Matrix/Element memerlukan lebih banyak persediaan tetapi sesuai untuk persekitaran yang dihoskan sendiri
  • WhatsApp dan Facebook Messenger mempunyai peraturan dan dasar penghantaran mesej yang lebih ketat
  • Messenger yang berorientasikan privasi tidak mempunyai Bot API secara reka bentuk, untuk melindungi keselamatan pengguna

Kesimpulan

Menyediakan pemberitahuan bot berasaskan webhook merentas platform messenger menambah automasi yang berkuasa kepada aliran kerja pembangunan awak. Discord dan Slack adalah yang paling mudah untuk dimulakan - hanya gunakan URL webhook yang mudah. Telegram pula boleh dipercayai dan senang dikonfigurasikan. Untuk pasukan perusahaan, Microsoft Teams dan Mattermost sesuai dengan alat sedia ada. Matrix memberi awak pilihan yang dihoskan sendiri dan mesra privasi dengan akses API penuh.

Mulakan dengan satu platform. Uji aliran kerja pemberitahuan awak. Kemudian tambah lebih banyak saluran mengikut keperluan. Contoh kod di atas boleh terus digunakan. Langkah seterusnya awak adalah mencipta webhook pada platform pilihan dan menghantar mesej automatik pertama - ia mengambil masa kurang daripada 10 minit.

Soalan Lazim

Discord adalah yang paling mudah. Cipta webhook dalam tetapan saluran dan awak akan mendapat URL yang boleh dihantar mesej POST dengan serta-merta. Tiada token, tiada penciptaan aplikasi, tiada pengesahan diperlukan. Slack juga mudah, tetapi awak perlu mencipta Aplikasi Slack terlebih dahulu.

Tidak. Messenger berorientasikan privasi seperti Signal, Session, Briar, dan SimpleX tidak mempunyai Bot API. Ini adalah pilihan yang disengajakan untuk melindungi privasi pengguna. Platform ini memberi tumpuan kepada enkripsi hujung ke hujung dan pengumpulan data yang minimum, yang tidak serasi dengan penghantaran mesej automatik. Untuk pemberitahuan, gunakan platform yang disokong bersama-sama messenger selamat awak untuk perbualan peribadi.

Ya, layani URL webhook seperti kata laluan. Sesiapa yang mempunyai URL tersebut boleh menghantar mesej ke saluran awak. Simpan dalam pemboleh ubah persekitaran, jangan sekali-kali komit ke kawalan versi, dan jana semula jika terdedah. Sesetengah platform seperti Slack membenarkan awak mencipta URL webhook baharu jika diperlukan.

Webhook adalah sehala. Awak menghantar mesej ke URL dan ia muncul dalam saluran. Bot API pula berfungsi dua hala. Awak boleh menghantar mesej dan juga menerima serta membalas mesej pengguna. Untuk pemberitahuan mudah seperti amaran binaan atau pemantauan, webhook sudah mencukupi. Untuk bot yang bertindak balas terhadap arahan pengguna, awak memerlukan Bot API penuh dengan endpoint webhook pada pelayan awak.

Kebanyakan platform mempunyai had kadar. Discord membenarkan 30 mesej seminit bagi setiap webhook. Slack mempunyai had yang serupa. Gunakan baris gilir mesej dengan exponential backoff untuk percubaan semula. Untuk jumlah yang tinggi, gabungkan pelbagai acara dalam satu mesej atau gunakan bulk API khusus platform di mana tersedia.