Berikut adalah contoh kode Node.js untuk membuat plugin dengan tombol pesan WhatsApp:

const express = require('express');
const bodyParser = require('body-parser');
const { WebClient } = require('@slack/web-api');
const axios = require('axios');

// Inisialisasi Express app
const app = express();
app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());

// Konfigurasi Slack Web API
const slackToken = 'YOUR_SLACK_TOKEN';
const web = new WebClient(slackToken);

// Konfigurasi nomor WhatsApp
const whatsappNumber = 'YOUR_WHATSAPP_NUMBER';

// Handle POST request dari Slack
app.post('/slack/message_actions', async (req, res) => {
  const payload = JSON.parse(req.body.payload);

  // Memeriksa apakah button di klik
  if (payload.type === 'interactive_message' && payload.actions[0].name === 'whatsapp') {
    const user = payload.user.name;
    const channel = payload.channel.name;
    const message = payload.original_message.text;

    // Mengirim pesan ke nomor WhatsApp
    try {
      await sendWhatsAppMessage(user, channel, message);
      res.sendStatus(200);
    } catch (error) {
      console.error(error);
      res.sendStatus(500);
    }
  }
});

// Fungsi untuk mengirim pesan ke nomor WhatsApp
async function sendWhatsAppMessage(user, channel, message) {
  const formattedMessage = 'Pesan dari ' + user + ' di channel ' + channel + ': ' + message;

  // Menggunakan API WhatsApp Gateway
  const response = await axios.post('https://api.whatsapp.com/send', {
    phone: whatsappNumber,
    text: formattedMessage
  });

  if (response.status !== 200) {
    throw new Error('Gagal mengirim pesan WhatsApp');
  }
}

// Menjalankan server pada port tertentu
app.listen(3000, () => {
  console.log('Server berjalan pada port 3000');
});

Kode di atas menggunakan Express untuk membuat server yang akan menerima POST request dari Slack saat tombol pesan WhatsApp diklik. Saat tombol diklik, pesan Slack yang diklik akan dikirim ke nomor WhatsApp yang telah dikonfigurasi.

Pastikan untuk mengganti 'YOUR_SLACK_TOKEN' dengan token Slack Anda dan 'YOUR_WHATSAPP_NUMBER' dengan nomor WhatsApp yang akan menerima pesan.

Anda juga perlu menginstal modul npm yang diperlukan seperti express, body-parser, @slack/web-api, dan axios sebelum menjalankan kode ini.

Plugin Node.js untuk membuat tombol pesan WhatsApp di Slack

原文地址: https://www.cveoy.top/t/topic/paBs 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录