API Messenger & Integrasi Webhook untuk Bot (Tutorial 2026)

Mengautomasikan pemberitahuan melalui bot messenger mempermudahkan alur kerja pembangunan, membolehkan pemberitahuan segera apabila pembinaan selesai, ralat berlaku, atau penerapan selesai. Panduan ini menyediakan arahan langkah demi langkah untuk menyepadukan bot yang boleh menghantar mesej automatik melalui webhook di pelbagai platform pesanan. Sama ada anda perlu memberitahu pasukan anda tentang hasil saluran paip CI/CD, amaran pemantauan pelayan, atau penyelesaian sebarang proses automatik, integrasi ini menjadikannya mungkin. Kami hanya meliputi platform dengan keupayaan integrasi bot yang mudah - beberapa pesanan selamat mengutamakan privasi berbanding ciri automasi dan sengaja dikecualikan.

Memahami Automasi Bot Berasaskan Webhook

Bot berasaskan webhook beroperasi mengikut prinsip yang mudah: aplikasi anda menghantar permintaan HTTP POST ke URL tertentu, dan platform pesanan menyampaikan kandungan tersebut ke saluran atau pengguna. Seni bina ini sesuai untuk senario automasi seperti:

  • Pemberitahuan pembinaan - Amaran apabila kompilasi berjaya atau gagal dengan butiran ralat
  • Kemas kini penerapan - Beritahu pasukan apabila kod mencapai peringkat pementasan atau pengeluaran
  • Amaran pemantauan - Hantar amaran kesihatan pelayan atau pemberitahuan gangguan
  • Laporan berjadual - Sampaikan metrik harian atau ringkasan status

Aliran kerja teras melibatkan:

  1. Mencipta bot atau URL webhook pada platform sasaran
  2. Mengkonfigurasi alat automasi anda (CI/CD, sistem pemantauan, skrip kustom) untuk menghantar permintaan HTTP
  3. Memformat muatan mesej mengikut spesifikasi platform

Memahami bagaimana platform messenger yang berbeza menangani keselamatan dan penyulitan adalah penting untuk memilih platform yang sesuai untuk pemberitahuan anda. Untuk penjelasan lebih mendalam tentang pertimbangan keselamatan khusus platform, lihat Panduan Lengkap tentang Messenger pada 2026.

Panduan Integrasi Bot Messenger

Di bawah adalah panduan langkah demi langkah untuk setiap platform yang menyokong integrasi bot berasaskan webhook yang mudah untuk menghantar mesej automatik.

Bot Webhook Discord

How to setup different webhook bots in 2026 simple and easy

Discord menawarkan salah satu pelaksanaan webhook yang paling mudah, tanpa memerlukan aplikasi bot atau token pengesahan untuk penghantaran mesej asas.

Persediaan Langkah demi Langkah

  1. Buka Tetapan Pelayan - Klik kanan pada nama pelayan anda dan pilih "Server Settings"
  2. Navigasi ke Integrasi - Klik "Integrations" dalam bar sisi kiri
  3. Cipta Webhook - Klik "Webhooks" kemudian "New Webhook"
  4. Konfigurasi Webhook - Namakan webhook anda (cth., "Build Bot"), pilih saluran sasaran, dan secara pilihan muat naik avatar
  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 Sematan Kaya 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 menyediakan Incoming Webhooks sebagai sebahagian daripada sistem Slack Apps mereka, menawarkan format mesej yang kaya dan fleksibiliti saluran.

Persediaan Langkah demi Langkah

  1. Cipta Slack App - Lawati api.slack.com/apps dan klik "Create New App"
  2. Pilih Kaedah Penciptaan - Pilih "From scratch" dan namakan aplikasi anda (cth., "CI/CD Notifications")
  3. Aktifkan Incoming Webhooks - Navigasi ke "Incoming Webhooks" di bar sisi kiri dan hidupkannya
  4. Tambah Webhook ke Workspace - Klik "Add New Webhook to Workspace"
  5. Pilih Saluran - Pilih saluran di mana pemberitahuan harus muncul dan klik "Allow"
  6. Salin URL Webhook - URL webhook unik anda kini dipaparkan

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, diintegrasikan melalui sistem penyambung.

Persediaan Langkah demi Langkah

  1. Buka Tetapan Saluran - Navigasi ke saluran sasaran, klik tiga titik (•••) di sebelah nama saluran
  2. Pilih Penyambung - Klik "Connectors" (atau "Manage channel" kemudian "Connectors" dalam versi terbaru)
  3. Cari Incoming Webhook - Cari "Incoming Webhook" dan klik "Configure"
  4. Namakan Webhook Anda - Berikan nama (cth., "Build Alerts") dan secara pilihan muat naik imej
  5. Cipta dan Salin URL - Klik "Create" dan salin URL webhook yang disediakan

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 menawarkan Bot API yang berkuasa yang membolehkan penghantaran mesej secara programatik. Tidak seperti webhook, anda menghantar permintaan terus ke API Telegram.

Persediaan Langkah demi Langkah

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

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 Terformat 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: API Bot Telegram

Bot Webhook Mattermost

How to setup different webhook bots in 2026 simple and easy

Mattermost adalah alternatif Slack sumber terbuka dengan sokongan webhook yang sangat baik, sesuai untuk komunikasi pasukan yang dihoskan sendiri.

Persediaan Langkah demi Langkah

  1. Akses Integrasi - Klik menu hamburger, kemudian "Integrations"
  2. Cipta Incoming Webhook - Pilih "Incoming Webhooks" kemudian "Add Incoming Webhook"
  3. Konfigurasi Webhook - Tetapkan tajuk, penerangan, dan pilih 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 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 adalah protokol terbuka untuk komunikasi terdesentralisasi, dengan Element menjadi klien yang paling popular. Integrasi bot memerlukan penggunaan API Klien-Pelayan Matrix.

Persediaan Langkah demi Langkah

  1. Cipta Akaun Bot - Daftarkan akaun Matrix baru untuk bot anda di homeserver anda atau matrix.org
  2. Dapatkan Token Akses - Log masuk dan ambil token akses dari Element: Settings → Help & About → Advanced → Access Token
  3. Dapatkan ID Bilik - Sertai bilik sasaran dengan bot anda, kemudian cari ID bilik dalam Room Settings → Advanced
  4. Jemput Bot ke Bilik - Pastikan akaun bot telah menyertai bilik di mana anda ingin menghantar mesej

Menghantar Mesej melalui API Matrix

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 Terformat 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)"

Tip: Untuk pembangunan bot Matrix yang lebih mudah, pertimbangkan untuk menggunakan pustaka seperti matrix-nio (Python) atau matrix-bot-sdk (JavaScript).

Dokumentasi Rasmi: Spesifikasi API Klien-Pelayan Matrix

Bot WhatsApp Business

How to setup different webhook bots in 2026 simple and easy

WhatsApp menawarkan API Business untuk penghantaran mesej automatik, walaupun ia memerlukan pengesahan perniagaan dan mempunyai persediaan yang lebih kompleks berbanding platform lain.

Persediaan Langkah demi Langkah

  1. Cipta Akaun Perniagaan Meta - Lawati business.facebook.com dan cipta akaun perniagaan
  2. Sediakan WhatsApp Business - Navigasi ke developers.facebook.com, cipta aplikasi, dan tambah produk WhatsApp
  3. Konfigurasi Nombor Telefon - Tambah nombor telefon untuk bot anda (nombor ujian tersedia untuk pembangunan)
  4. Dapatkan Token Akses - Hasilkan token akses kekal dari papan pemuka aplikasi
  5. Sahkan Perniagaan - Selesaikan pengesahan perniagaan untuk penggunaan pengeluaran

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 untuk memulakan perbualan dengan pengguna. Anda hanya boleh menghantar mesej bentuk bebas dalam tempoh 24 jam interaksi pengguna. Untuk pemberitahuan automatik, cipta dan luluskan templat mesej terlebih dahulu.

Dokumentasi Rasmi: Dokumentasi WhatsApp Cloud API

Bot Facebook Messenger

How to setup different webhook bots in 2026 simple and easy

Facebook Messenger bot memerlukan Aplikasi Facebook dan Halaman, dengan mesej dihantar melalui Send API.

Persediaan Langkah demi Langkah

  1. Cipta Aplikasi Facebook - Lawati developers.facebook.com dan cipta aplikasi baru (pilih jenis "Business")
  2. Tambah Produk Messenger - Di papan pemuka aplikasi anda, klik "Add Product" dan pilih Messenger
  3. Sambungkan Halaman Facebook - Hubungkan Halaman Facebook ke aplikasi anda (cipta satu jika perlu)
  4. Jana Token Akses Halaman - Di tetapan Messenger, jana token untuk halaman anda
  5. Dapatkan PSID - Pengguna mesti menghantar mesej ke halaman anda terlebih dahulu; tangkap Page-Scoped ID (PSID) mereka dari peristiwa 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 dasar ketat tentang penghantaran mesej automatik. Bot hanya boleh menghantar mesej promosi dalam tempoh 24 jam selepas interaksi pengguna. Untuk pemberitahuan di luar tetingkap ini, anda perlu memohon tag mesej tertentu atau menggunakan ciri pemberitahuan sekali.

Dokumentasi Rasmi: Dokumentasi Platform Facebook Messenger

Messenger Tanpa Sokongan Bot Mudah

Messenger berikut mengutamakan privasi dan keselamatan berbanding ciri automasi, menjadikan integrasi bot berasaskan webhook sama ada mustahil atau tidak praktikal:

  • Signal - Tiada API bot rasmi. Signal mengutamakan penyulitan hujung-ke-hujung dan privasi pengguna, sengaja mengelakkan ciri automasi yang boleh menjejaskan keselamatan.
  • Session - Messenger terdesentralisasi tanpa infrastruktur bot. Seni bina penghalaan bawang menjadikan penghantaran mesej automatik tidak praktikal.
  • Briar - Messenger rakan-ke-rakan direka untuk aktivis dan wartawan. Tiada infrastruktur pelayan bermakna tiada keupayaan webhook.
  • Wire - Walaupun Wire mempunyai beberapa ciri API perusahaan, tiada sistem webhook mudah untuk pemberitahuan automatik.
  • Wickr - Fokus perusahaan tanpa API bot awam. Automasi memerlukan Wickr Enterprise dengan integrasi kustom.
  • SimpleX - Reka bentuk keutamaan privasi tanpa pengecam pengguna menjadikan integrasi bot tidak serasi secara seni bina.
  • Threema - Menawarkan Threema Gateway untuk perniagaan, tetapi ia adalah perkhidmatan berbayar yang memerlukan kontrak, bukan persediaan webhook mudah.
  • Viber - Mempunyai API bot tetapi memerlukan kelulusan akaun perniagaan dan terutamanya direka untuk perkhidmatan pelanggan, bukan pemberitahuan pembangun.
  • LINE - Menawarkan Messaging API tetapi memerlukan pengesahan akaun perniagaan dan kompleks untuk kes penggunaan pemberitahuan mudah.
  • WeChat - API Akaun Rasmi wujud tetapi memerlukan pendaftaran perniagaan China dan kelulusan kerajaan.

Untuk keperluan komunikasi selamat di mana platform ini lebih disukai, pertimbangkan untuk menggunakannya bersama platform yang disokong untuk automasi, atau terokai panduan kami tentang menjaga mesej peribadi benar-benar selamat.

Contoh Pelaksanaan Praktikal

Berikut adalah contoh Node.js lengkap yang menghantar pemberitahuan pembinaan ke pelbagai platform secara serentak:

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