與 TypeScript 伺服器無關的 Whatsapp 官方 API 框架。
Whatsapp-api-js v4
內容一覽
設定
範例和教程
類型
變更日誌
文件
貢獻者
貢獻
重大變化
測試版發布
首先,您需要一個啟動了 WhatsApp API 的 Meta Business 應用程式。您可以按照以下步驟建立您的第一個應用程式。
取得 API 令牌,可以是暫存令牌,也可以是永久令牌。
從應用程式設定 > 基本 > 應用程式密鑰中的儀表板獲取您的應用程式密鑰。
有關如何設定和檢索此值的更多深入信息,請參閱模組文檔
現在您可以使用 npm 安裝該模組:
npm 安裝whatsapp-api-js
這將讓你寫這樣的程式碼:
import { WhatsAppAPI } from "whatsapp-api-js";import { Document, Image, Text } from "whatsapp-api-js/messages";// 溫馨提醒,不要對您的令牌和秘密進行硬編碼const TOKEN = "YOUR_TOKEN";const APP_SECRET = "YOUR_SECRET";/** @type WhatsAppAPI<number> */const Whatsapp = new WhatsAppAPI({ token: TOKEN, appSecret: APP_SECRET });// 請求對伺服器的假設呼叫postasync 函數post( e) {// 太長?閱讀 https://whatsappapijs.web.app/modules/middleware.htmlreturn 等待 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( 訊息)}`);let response;if (message.type === "text") {response =等待回覆(new Text(`*${name}* said:nn${message.text.body }`),true);}if (message.type === "image") {response =等待回覆(new Image(message.image.id, true, `不錯的照片,${name}`)); } if (message.type === "document") {response = wait reply(new Document(message.document.id, true, undefined, "我們的文件"));}console.log(response ??"還有更多訊息類型,例如聯絡人、「+」位置、範本、互動、反應和「+」所有其他媒體類型。 on .sent = ({phoneID, to, message }) => {console.log(`Bot ${phoneID} 已傳送給使用者 ${to} ${message}`);};
若要接收訊息更新,您必須在 Meta 應用程式中設定 Webhook。返回儀表板,點擊 WhatsApp > 設置,記下您的 Webhook URL,並確保訂閱訊息事件。您還將被要求提供驗證令牌。這可以是您想要的任何字串。
該套件還包含一個用於 webhook 身份驗證的 GET 處理程序:
從「whatsapp-api-js」匯入{ WhatsAppAPI };const TOKEN =「YOUR_TOKEN」;const APP_SECRET =「YOUR_SECRET」;const VERIFY_TOKEN =「YOUR_VERIFY_TOKEN」;const Whatsapp : VERIFY_TOKEN});// 假設在向伺服器發出GET 請求時呼叫get function get(e) {// 太長!閱讀 https://whatsappapijs.web.app/modules/middleware.htmlreturn Whatsapp.get(e.query);}
就是這樣!現在您已經有一個正常運作的 Whatsapp Bot 連接到您的伺服器。有關特定運行時和框架的設定過程的更多信息,請查看Environments.md 檔案。
有幾個範例涵蓋瞭如何建立每種類型的消息以及如何使用該庫的基本方法。
在範例資料夾中查看它們。
該庫是完全類型化的。大多數類型都可以透過匯入/types
或/emitters
檔案來獲得:
從「whatsapp-api-js/types」匯入{ GetParams,PostData };從「whatsapp-api-js/emitters」匯入{ OnMessage,OnSent,OnStatus };
若要了解更新之間發生了什麼變化,請查看 Github 上的版本。
最新版本文件可在whatsappapijs.web.app 上找到,先前的版本存檔在secreto31126.github.io/whatsapp-api-js 上。
表情符號鍵
迭戈·卡里略 | 奧馬爾 | 拉胡爾·蘭傑瓦爾 | 菲利克斯·阿朱那 |
如果您有一些空閒時間並且確實想要改進庫或修復愚蠢的錯誤,請隨時閱讀 CONTRIBUTING.md 檔案。
您可以在 BREAKING.md 檔案中取得重大變更的完整清單。
使用npm install whatsapp-api-js@beta
安裝最新的測試版。與任何 Beta 版一樣,它有 110% 的可能崩潰。我還使用此標籤來測試 npm 版本。使用它的風險由您自行承擔。