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.
Jadual Kandungan
- Memahami Automasi Bot Berasaskan Webhook
- Panduan Integrasi Bot Messenger
- Bot Webhook Discord
- Bot Webhook Slack
- Bot Webhook Microsoft Teams
- Bot Telegram
- Bot Webhook Mattermost
- Bot Matrix/Element
- Bot WhatsApp Business
- Bot Facebook Messenger
- Messenger Tanpa Sokongan Bot Mudah
- Contoh Pelaksanaan Praktikal
- Kesimpulan
- Soalan Lazim
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:
- Mencipta bot atau URL webhook pada platform sasaran
- Mengkonfigurasi alat automasi anda (CI/CD, sistem pemantauan, skrip kustom) untuk menghantar permintaan HTTP
- 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
Discord menawarkan salah satu pelaksanaan webhook yang paling mudah, tanpa memerlukan aplikasi bot atau token pengesahan untuk penghantaran mesej asas.
Persediaan Langkah demi Langkah
- Buka Tetapan Pelayan - Klik kanan pada nama pelayan anda dan pilih "Server Settings"
- Navigasi ke Integrasi - Klik "Integrations" dalam bar sisi kiri
- Cipta Webhook - Klik "Webhooks" kemudian "New Webhook"
- Konfigurasi Webhook - Namakan webhook anda (cth., "Build Bot"), pilih saluran sasaran, dan secara pilihan muat naik avatar
- 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
Slack menyediakan Incoming Webhooks sebagai sebahagian daripada sistem Slack Apps mereka, menawarkan format mesej yang kaya dan fleksibiliti saluran.
Persediaan Langkah demi Langkah
- Cipta Slack App - Lawati api.slack.com/apps dan klik "Create New App"
- Pilih Kaedah Penciptaan - Pilih "From scratch" dan namakan aplikasi anda (cth., "CI/CD Notifications")
- Aktifkan Incoming Webhooks - Navigasi ke "Incoming Webhooks" di bar sisi kiri dan hidupkannya
- Tambah Webhook ke Workspace - Klik "Add New Webhook to Workspace"
- Pilih Saluran - Pilih saluran di mana pemberitahuan harus muncul dan klik "Allow"
- 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
Microsoft Teams menyokong Incoming Webhooks untuk pemberitahuan saluran, diintegrasikan melalui sistem penyambung.
Persediaan Langkah demi Langkah
- Buka Tetapan Saluran - Navigasi ke saluran sasaran, klik tiga titik (•••) di sebelah nama saluran
- Pilih Penyambung - Klik "Connectors" (atau "Manage channel" kemudian "Connectors" dalam versi terbaru)
- Cari Incoming Webhook - Cari "Incoming Webhook" dan klik "Configure"
- Namakan Webhook Anda - Berikan nama (cth., "Build Alerts") dan secara pilihan muat naik imej
- 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
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
- Cipta Bot melalui BotFather - Buka Telegram dan cari
@BotFather - Mulakan Bot Baru - Hantar arahan
/newbot - Namakan Bot Anda - Ikuti arahan untuk menetapkan nama paparan dan nama pengguna (mesti berakhir dengan "bot")
- Simpan Token API - BotFather menyediakan token API seperti
123456789:ABCdefGHIjklMNOpqrsTUVwxyz - Dapatkan ID Chat - Tambahkan bot ke kumpulan/saluran anda, hantar mesej, kemudian lawati
https://api.telegram.org/bot<TOKEN>/getUpdatesuntuk 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
Mattermost adalah alternatif Slack sumber terbuka dengan sokongan webhook yang sangat baik, sesuai untuk komunikasi pasukan yang dihoskan sendiri.
Persediaan Langkah demi Langkah
- Akses Integrasi - Klik menu hamburger, kemudian "Integrations"
- Cipta Incoming Webhook - Pilih "Incoming Webhooks" kemudian "Add Incoming Webhook"
- Konfigurasi Webhook - Tetapkan tajuk, penerangan, dan pilih saluran lalai
- 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
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
- Cipta Akaun Bot - Daftarkan akaun Matrix baru untuk bot anda di homeserver anda atau matrix.org
- Dapatkan Token Akses - Log masuk dan ambil token akses dari Element: Settings → Help & About → Advanced → Access Token
- Dapatkan ID Bilik - Sertai bilik sasaran dengan bot anda, kemudian cari ID bilik dalam Room Settings → Advanced
- 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
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
- Cipta Akaun Perniagaan Meta - Lawati business.facebook.com dan cipta akaun perniagaan
- Sediakan WhatsApp Business - Navigasi ke developers.facebook.com, cipta aplikasi, dan tambah produk WhatsApp
- Konfigurasi Nombor Telefon - Tambah nombor telefon untuk bot anda (nombor ujian tersedia untuk pembangunan)
- Dapatkan Token Akses - Hasilkan token akses kekal dari papan pemuka aplikasi
- 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
Facebook Messenger bot memerlukan Aplikasi Facebook dan Halaman, dengan mesej dihantar melalui Send API.
Persediaan Langkah demi Langkah
- Cipta Aplikasi Facebook - Lawati developers.facebook.com dan cipta aplikasi baru (pilih jenis "Business")
- Tambah Produk Messenger - Di papan pemuka aplikasi anda, klik "Add Product" dan pilih Messenger
- Sambungkan Halaman Facebook - Hubungkan Halaman Facebook ke aplikasi anda (cipta satu jika perlu)
- Jana Token Akses Halaman - Di tetapan Messenger, jana token untuk halaman anda
- 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