เซิร์ฟเวอร์ TypeScript ไม่เชื่อเรื่องพระเจ้าเฟรมเวิร์ก API อย่างเป็นทางการของ Whatsapp
whatsapp-api-js เวอร์ชัน 4.0
รายการเนื้อหา
ตั้งค่า
ตัวอย่างและบทช่วยสอน
ประเภท
บันทึกการเปลี่ยนแปลง
เอกสารประกอบ
ผู้ร่วมให้ข้อมูล
ผลงาน
การเปลี่ยนแปลงที่ทำลายล้าง
รุ่นเบต้า
ก่อนอื่น คุณจะต้องมีแอป Meta Business ที่เปิดใช้งาน WhatsApp API คุณสามารถสร้างแอปแรกได้โดยทำตามขั้นตอนนี้
รับโทเค็น API เป็นแบบชั่วคราวหรือแบบถาวร
รับความลับของแอปจากแดชบอร์ดในการตั้งค่าแอป > พื้นฐาน > ความลับของแอป
ข้อมูลเชิงลึกเพิ่มเติมเกี่ยวกับวิธีตั้งค่าและรับค่านี้มีอยู่ที่เอกสารประกอบของโมดูล
ตอนนี้คุณสามารถติดตั้งโมดูลโดยใช้ npm:
npm ติดตั้ง whatsapp-api-js
ซึ่งจะให้คุณเขียนโค้ดดังนี้:
import { WhatsAppAPI } from "whatsapp-api-js";import { Document, Image, Text } from "whatsapp-api-js/messages";// คำเตือนอย่าฮาร์ดโค้ดโทเค็นของคุณและ secretconst TOKEN = "YOUR_TOKEN";const APP_SECRET = "YOUR_SECRET";/** @type WhatsAppAPI<number> */const Whatsapp = new WhatsAppAPI({ โทเค็น: TOKEN, appSecret: APP_SECRET });// สมมติว่ามีการเรียกใช้โพสต์ในคำขอ POST ไปยังฟังก์ชันเซิร์ฟเวอร์ async ของคุณ post(e) {// ยาวเกินไปใช่ไหม อ่าน https://whatsappapijs.web.app/modules/middleware.htmlreturn await Whatsapp.post(JSON.parse(e.data),e.data,e.headers["x-hub-signature-256"]); }Whatsapp.on.message = async ({ phoneID, from, message, name, Reply }) => {console.log(`User ${name} (${from}) ส่งไปยังบอท ${phoneID} ${JSON.stringify( message )}`);ให้ตอบกลับ;if (message.type === "text") {response = รอการตอบกลับ(ข้อความใหม่(`*${name}* กล่าวว่า:nn ${message.text.body}`),true);}if (message.type === "image") {response = รอการตอบกลับ(รูปภาพใหม่ (message.image.id, true, `รูปสวย, ${name}`));}if (message.type === "document") {response = await Reply(new Document(message.document.id, true, undefed, "Our document"));}คอนโซล log(response ??"มีข้อความหลายประเภท เช่น ผู้ติดต่อ " +"ตำแหน่ง เทมเพลต การโต้ตอบ การโต้ตอบ และ " +"สื่อประเภทอื่นๆ ทั้งหมด");Whatsapp.markAsRead(phoneID, message.id);return 200;};Whatsapp.on.sent = ({ phoneID, to, message }) => {console.log(`Bot ${phoneID} ส่งถึงผู้ใช้ ${to} ${message}` );};
หากต้องการรับการอัปเดตข้อความ คุณต้องตั้งค่าเว็บฮุคที่แอป Meta ของคุณ กลับมาที่แดชบอร์ด คลิก WhatsApp > การตั้งค่า จด URL เว็บฮุคของคุณ และอย่าลืมสมัครรับข้อมูลกิจกรรมข้อความ คุณจะถูกขอให้ยืนยันโทเค็นด้วย นี่อาจเป็นสตริงใดก็ได้ที่คุณต้องการ
แพคเกจนี้ยังรวมถึงตัวจัดการ GET สำหรับการตรวจสอบสิทธิ์ webhook:
นำเข้า { WhatsAppAPI } จาก "whatsapp-api-js";const TOKEN = "YOUR_TOKEN";const APP_SECRET = "YOUR_SECRET";const VERIFY_TOKEN = "YOUR_VERIFY_TOKEN";const Whatsapp = ใหม่ WhatsAppAPI({token: TOKEN,appSecret: APP_SECRET,webhookVerifyToken : : VERIFY_TOKEN});// สมมติว่า get ถูกเรียกในคำขอ GET ไปยังฟังก์ชันเซิร์ฟเวอร์ของคุณ get(e) {// ยาวเกินไป!? อ่าน https://whatsappapijs.web.app/modules/middleware.htmlreturn Whatsapp.get(e.query);}
แค่นั้นแหละ! ตอนนี้คุณมี Whatsapp Bot ที่ใช้งานได้เชื่อมต่อกับเซิร์ฟเวอร์ของคุณแล้ว หากต้องการข้อมูลเพิ่มเติมเกี่ยวกับกระบวนการตั้งค่าสำหรับรันไทม์และเฟรมเวิร์กเฉพาะ โปรดดูไฟล์ Environments.md
มีตัวอย่างบางส่วนที่ครอบคลุมถึงวิธีการสร้างข้อความแต่ละประเภท และวิธีการใช้วิธีการพื้นฐานของไลบรารี
ตรวจสอบได้ในโฟลเดอร์ตัวอย่าง
ห้องสมุดก็พิมพ์เต็มที่ ประเภทส่วนใหญ่จะใช้งานได้โดยการนำเข้าไฟล์ /types
หรือ /emitters
:
นำเข้า { GetParams, PostData } จาก "whatsapp-api-js/types"; นำเข้า { OnMessage, OnSent, OnStatus } จาก "whatsapp-api-js/emitters";
หากต้องการทราบสิ่งที่เปลี่ยนแปลงระหว่างการอัปเดต โปรดดูการเผยแพร่บน Github
เอกสารรุ่นล่าสุดมีอยู่ที่ whatsappapijs.web.app และเวอร์ชันก่อนหน้าจะถูกเก็บถาวรที่ secreto31126.github.io/whatsapp-api-js
ปุ่มอีโมจิ
ดิเอโก คาร์ริลโล | โอมาร์ | ราหุล ลานเจวาร์ | เฟลิกซ์ อรชุน |
หากคุณมีเวลาว่างและต้องการปรับปรุงห้องสมุดหรือแก้ไขข้อบกพร่องที่โง่เขลา โปรดอ่านไฟล์ CONTRIBUTING.md
คุณสามารถรับรายการการเปลี่ยนแปลงที่ไม่สมบูรณ์ทั้งหมดได้ในไฟล์ BREAKING.md
ติดตั้งรุ่นเบต้าล่าสุดด้วย npm install whatsapp-api-js@beta
เช่นเดียวกับเบต้าอื่นๆ มีแนวโน้มที่จะพัง 110% ฉันยังใช้แท็กนี้เพื่อทดสอบการเผยแพร่ npm ใช้มันเป็นความเสี่ยงของคุณเอง