
รหัสนี้เป็นการใช้งาน Whiskeysockets เป็นบริการ API RESTFull ซึ่งควบคุมฟังก์ชั่น WhatsApp
ด้วยอันนี้คุณสามารถสร้างการแชทหลายบริการบอทบริการหรือระบบอื่น ๆ ที่ใช้ WhatsApp ด้วยรหัสนี้คุณไม่จำเป็นต้องรู้ JavaScript สำหรับ NodeJS เพียงเริ่มต้นเซิร์ฟเวอร์และทำคำขอภาษาที่คุณรู้สึกสะดวกสบายที่สุด
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG docker ${USER}PostgreSQL [จำเป็น]
เขียนจาก postgres
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
# or
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bashหลังจากเสร็จสิ้นให้รีสตาร์ทเทอร์มินัลเพื่อโหลดข้อมูลใหม่
nvm install 20npm i -g pm2การโคลนนิ่งที่เก็บ
git clone https://github.com/code-chat-br/whatsapp-api.git
ไปที่ไดเรกทอรีโครงการและติดตั้งการพึ่งพาทั้งหมด
ให้ความสำคัญกับ NPM เนื่องจากมีความเข้ากันได้มากขึ้น
cd whatsapp-api-v2
npm install
# or
npm install --forceดูการตั้งค่าเพิ่มเติมที่สามารถนำไปใช้ผ่านไฟล์ env โดยคลิก ที่นี่
ความสนใจ : คัดลอกไฟล์ . env.dev ไปยัง . env
cp .env.dev .envmigrate dev ในการพัฒนาเพื่อสร้างและใช้การย้ายถิ่นโดยอัตโนมัติทำให้การทำงานกับฐานข้อมูลง่ายขึ้นmigrate deploy เพื่อใช้การย้ายถิ่นในวิธีที่ควบคุมและปลอดภัยnpx prisma studioกำหนดตัวแปร database_url environment สำหรับการปรับใช้ฐานข้อมูล
bash deploy_db.shสุดท้ายเรียกใช้คำสั่งด้านล่างเพื่อเริ่มแอปพลิเคชัน:
npm run start:dev
npm run start:prod
# pm2
pm2 start ' npm run start:prod ' --name CodeChat_API_v1.3.0ในการใช้คนงานกับ API จำเป็นต้องกำหนดตัวแปรสภาพแวดล้อมต่อไปนี้ใน API:
PROVIDER_ENABLED=true : ตัวแปรนี้ช่วยให้การใช้งานของผู้ให้บริการ (คนงาน) ใน APIPROVIDER_HOST=127.0.0.1 : กำหนดโฮสต์ที่คนงานกำลังรับฟังคำขอPROVIDER_PORT=5656 : กำหนดพอร์ตที่คนงานกำลังรับฟังคำขอPROVIDER_PREFIX=codechat : ตั้งค่าคำนำหน้าสำหรับการจัดกลุ่มตัวอย่างบนคนงาน เพิ่มความเข้ากันได้ของ WebSocket อ่านที่นี่
http://localhost:8084/docsคุณสามารถกำหนดสอง ประเภท การรับรองความถูกต้องสำหรับเส้นทางใน ไฟล์ Env การรับรองความถูกต้องจะต้องแทรกในส่วนหัวคำขอ
การรับรองความถูกต้องถูกสร้างขึ้นในเวลาสร้างอินสแตนซ์
หมายเหตุ: นอกจากนี้ยังมีความเป็นไปได้ที่จะกำหนดคีย์ API ทั่วโลกซึ่งสามารถเข้าถึงและควบคุมทุกกรณี
หลังจากสร้างแอปพลิเคชันในไดเรกทอรีเดียวกับไฟล์ด้านบนให้เรียกใช้คำสั่งต่อไปนี้:
docker-compose up| ส่งข้อความ | |
| ส่งปุ่ม | ✔เท่านั้น [iOS, Android] |
| ส่งสื่อ: เสียง - วิดีโอ - รูปภาพ - เอกสาร - GIF base64: false | |
| ส่งไฟล์สื่อ | |
| ส่งประเภทเสียง whatsapp | |
| ส่งประเภทเสียง whatsapp - ไฟล์ | |
| ส่งตำแหน่ง | |
| ส่งรายการ | ✔เท่านั้น [iOS, Android] |
| ส่งลิงก์ดูตัวอย่าง | |
| ส่งติดต่อ | |
| ส่งปฏิกิริยา - อิโมจิ |
| ชื่อ | เหตุการณ์ | พิมพ์ดีด | คำอธิบาย |
|---|---|---|---|
| qrcode_updated | qrcode.updated | JSON | ส่ง base64 ของ qrcode สำหรับการอ่าน |
| connection_update | Connection.update | JSON | แจ้งสถานะของการเชื่อมต่อกับ whatsapp |
| messages_set | message.set | JSON | ส่งรายการข้อความทั้งหมดของคุณที่อัปโหลดบน whatsapp เหตุการณ์นี้เกิดขึ้นเพียงครั้งเดียว |
| messages_upsert | message.upsert | JSON | แจ้งให้คุณทราบเมื่อได้รับข้อความ |
| messages_update | message.update | JSON | บอกคุณเมื่อมีการอัปเดตข้อความ |
| send_message | SEND.Message | JSON | แจ้งเมื่อส่งข้อความ |
| contacts_set | contacts.set | JSON | ทำการโหลดเริ่มต้นของผู้ติดต่อทั้งหมด เหตุการณ์นี้เกิดขึ้นเพียงครั้งเดียว |
| contacts_upsert | contacts.upsert | JSON | โหลดผู้ติดต่อทั้งหมดพร้อมข้อมูลเพิ่มเติม เหตุการณ์นี้เกิดขึ้นเพียงครั้งเดียว |
| contacts_update | contacts.update | JSON | แจ้งให้คุณทราบเมื่อมีการอัปเดตการแชท |
| present_update | present.update | JSON | แจ้งว่าผู้ใช้ออนไลน์หรือไม่ถ้าเขาดำเนินการบางอย่างเช่นการเขียนหรือบันทึกและเห็นครั้งสุดท้ายของเขา 'ไม่พร้อมใช้งาน' |
| chats_set | แชท | JSON | ส่งรายการแชทที่โหลดทั้งหมด |
| chats_update | chats.update | JSON | แจ้งให้คุณทราบเมื่อมีการอัปเดตการแชท |
| chats_upsert | chats.upsert | JSON | ส่งข้อมูลการแชทใหม่ ๆ |
| กลุ่ม _upsert | groups.upsert | JSON | แจ้งเตือนเมื่อกลุ่มถูกสร้างขึ้น |
| กลุ่ม _update | groups.update | JSON | แจ้งให้ทราบเมื่อกลุ่มมีการอัปเดตข้อมูล |
| group_participants_update | กลุ่มผู้เข้าร่วม | JSON | แจ้งเมื่อมีการกระทำที่เกี่ยวข้องกับผู้เข้าร่วม 'เพิ่ม' |
| new_token | new.jwt | JSON | แจ้งเมื่อมีการอัปเดตโทเค็น (JWT) |
ในการติดตั้งใบรับรอง SSL ให้ทำตาม คำแนะนำ ด้านล่าง
รหัสนี้ไม่มีส่วนเกี่ยวข้องกับ WhatsApp ใช้ตามดุลยพินิจของคุณเอง อย่าสแปมนี้
รหัสนี้ผลิตขึ้นอยู่กับห้องสมุด Baileys และยังอยู่ระหว่างการพัฒนา
