إطار عمل API الرسمي لـ Whatsapp الخاص بخادم TypeScript.
واتساب-api-js v4
قائمة المحتويات
يثبت
أمثلة ودروس
أنواع
سجل التغيير
التوثيق
المساهمين
المساهمات
كسر التغييرات
إصدارات بيتا
قبل كل شيء، ستحتاج إلى تطبيق Meta Businesss مع تنشيط 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: TOKEN, appSecret: APP_SECRET });// بافتراض أنه تم استدعاء النشر بناءً على طلب POST إلى وظيفة serverasync post(e) {// طويل جدًا؟ اقرأ https://whatsappapijs.web.app/modules/middleware.htmlreturn wait Whatsapp.post(JSON.parse(e.data),e.data,e.headers["x-hub-signature-256"]); }Whatsapp.on.message = async ({ معرف الهاتف، من، رسالة، اسم، رد }) => تم إرسال {console.log(`User ${name} (${from}) إلى الروبوت ${phoneID} ${JSON.stringify( message )}`);let Response;if (message.type === "text") {response = انتظار الرد(new Text(`*${name}* قال:nn ${message.text.body}`),true);}if (message.type === "image") {response = انتظار الرد(new Image(message.image.id, true, `صورة جميلة، ${name}`));}if (message.type === "document") {response = انتظار الرد(new Document(message.document.id, true, unified, "مستندنا"));}console. log(response ??؟" هناك المزيد من أنواع الرسائل، مثل جهات الاتصال والمواقع "+" والقوالب والتفاعلية والتفاعلات و"+"جميع أنواع الوسائط الأخرى.");Whatsapp.markAsRead(phoneID, message.id) ؛يعود 200;};Whatsapp.on.sent = ({ phoneID, to, message }) => {console.log(`Bot ${phoneID} send to user ${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 = new 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. استخدامه على مسؤوليتك الخاصة.