حالة صوتية

انشر حالة صوتية (قصة) على واتساب.

POST
https://api.wawp.net/v2/status/voice?access_token=YOUR_ACCESS_TOKEN&caption=Listen+to+this%21&convert=true&file%5Bfilename%5D=note.ogg&file%5Bmimetype%5D=audio%2Fogg%3B+codecs%3Dopus&file%5Burl%5D=https%3A%2F%2Fwawp.net%2Fsamples%2Ffile_example_OOG_1MG.ogg&instance_id=123456789

تسجيل الدخول مطلوب

سجل الدخول لاستبدال المعرفات (Instance ID) ورمز الوصول (Access Token) بمعلومات حسابك الحقيقي لاختبار ال API مباشرة.

تسجيل الدخول
اختبار /v2/status/voice
POST
POST

لا توجد معاملات استعلام مطلوبة

هذه النهاية الطرفية لا تتوقع بيانات في الرابط.

توصيات

  • استخدم صوتًا واضحًا؛ يمكن أن تكون ضوضاء الخلفية مشتتة للانتباه.

  • أضف لون خلفية يطابق علامتك التجارية.

اللمسة الشخصية: الحالة الصوتية

تسمح لك نقطة النهاية /v2/status/voice بنشر تسجيلات صوتية مباشرة في موجز الحالة الخاص بك. يرى المستخدمون مشغل صوت مع تشكيل موجي (Waveform)، مما يجعلها مختلفة عن ملفات الفيديو أو الموسيقى القياسية.


🎙️ لماذا الصوت؟

1. الحميمية على نطاق واسع

الملاحظات الصوتية هي أكثر أشكال التواصل الرقمي خصوصية. سماع صوت مؤسس الشركة وهو يوضح سبباً للتأخير أو يهنئ بـ "عام جديد سعيد" يخلق اتصالاً لا يمكن للنص محاكاته.

  • الثقة: يثبت وجود إنسان خلف الأتمتة.
  • الفروق الدقيقة: نبرة الصوت والحماس والتعاطف تُفقد في النص ولكنها تُحفظ في الصوت.

🎧 المتطلبات التقنية

واتساب صارم للغاية بشأن صيغ الصوت للحالة الصوتية.

قاعدة "Opus inside OGG"

للحصول على مظهر "الملاحظة الصوتية" الحقيقي (مع التشكيل الموجي)، لا يمكنك مجرد رفع ملف MP3.

  • الحاوية: OGG.
  • الترميز: Opus.
  • القنوات: Mono (قناة واحدة). القنوات الستيريو تجعل التشكيل الموجي يبدو مسطحاً.
  • معدل العينة: 16000 هرتز أو 48000 هرتز.

حل convert

إذا كنت لا تريد التعامل مع التحويل يدوياً، اضبط convert: true في استدعاء الواجهة. ستقوم الواجهة بتحويل ملفات MP3/WAV/AAC إلى OGG/Opus نيابة عنك، مع زيادة طفيفة في وقت الاستجابة.


🎨 التخصيص البصري

على عكس الفيديو، الحالة الصوتية هي في الأساس مشغل صوت فوق خلفية ملونة.

  • ألوان الخلفية: يمكنك (ويجب عليك) تحديد backgroundColor بدقة.
  • الهوية: استخدم كود اللون السداسي (Hex) الخاص بعلامتك التجارية للحفاظ على الاتساق البصري.

⚠️ القيود

حد الـ 30 ثانية (مرة أخرى)

تماماً مثل الفيديو، الحالات الصوتية محدودة بـ 30 ثانية.

  • الاقتطاع: إذا رفعت بودكاست مدته 5 دقائق، سيتم تشغيل أول 30 ثانية فقط، وسيتم تجاهل الباقي بصمت.
  • توصية: ابقَ موجزاً ومركزاً في رسالتك الصوتية.

البارامترات

قم بتهيئة المعاملات المطلوبة للتفاعل مع نقطة النهاية هذه. جميع وسائط الاستعلام والبيانات مدرجة أدناه مع تفاصيلها.

محتوى الطلب

يرسل كـ JSON
string

WhatsApp Instance ID

مثال:
string

API Access Token

مثال:
string

رابط ملف الصوت (يوصى بـ ogg/opus)

مثال:
string

اسم الملف

مثال:
string

نوع MIME

مثال:
boolean

تمكين التحويل التلقائي

مثال:
string

تعليق نصي للحالة الصوتية

مثال:

أمثلة الكود

استخدم أمثلة الكود الجاهزة لدمج واجهة برمجة التطبيقات (API) في مشروعك بسرعة وكفاءة. اختر لغة البرمجة والمكتبة التي تفضلها.

1const baseUrl = "https://api.wawp.net";
2const endpoint = "/v2/status/voice";
3const params = new URLSearchParams({
4 "instance_id": "123456789",
5 "access_token": "YOUR_ACCESS_TOKEN"
6}).toString();
7const body = {
8 "file[url]": "https://wawp.net/samples/file_example_OOG_1MG.ogg",
9 "file[filename]": "note.ogg",
10 "file[mimetype]": "audio/ogg; codecs=opus",
11 "convert": "true",
12 "caption": "Listen to this!"
13};
14
15fetch(`${baseUrl}${endpoint}${params ? '?' + params : ''}`, {
16 method: "POST",
17 headers: { "Content-Type": "application/json" },
18 body: JSON.stringify(body)
19})
20 .then(async (response) => {
21 if (response.ok) {
22 const data = await response.json();
23 console.log("Success:", data);
24 return data;
25 }
26
27 // Error Handling
28 if (response.status === 400) {
29 console.error("Error 400: طلب غير صالح - معاملات مطلوبة مفقودة");
30 }
31 if (response.status === 400) {
32 console.error("Error 400: طلب غير صالح (تنسيق XML)");
33 }
34 if (response.status === 400) {
35 console.error("Error 400: طلب غير صالح (نص عادي)");
36 }
37 if (response.status === 401) {
38 console.error("Error 401: غير مصرح - مفتاح الوصول غير صالح أو مفقود");
39 }
40 if (response.status === 401) {
41 console.error("Error 401: غير مصرح (تنسيق XML)");
42 }
43 if (response.status === 404) {
44 console.error("Error 404: غير موجود - الجلسة غير موجودة");
45 }
46 if (response.status === 404) {
47 console.error("Error 404: غير موجود (تنسيق XML)");
48 }
49 if (response.status === 500) {
50 console.error("Error 500: خطأ في الخادم الداخلي - فشل غير متوقع");
51 }
52 if (response.status === 500) {
53 console.error("Error 500: خطأ في الخادم الداخلي (HTML)");
54 }
55 if (response.status === 502) {
56 console.error("Error 502: بوابة غير صالحة - فشل الاتصال بالخادم الرئيسي");
57 }
58 if (response.status === 502) {
59 console.error("Error 502: بوابة غير صالحة (تنسيق XML)");
60 }
61
62 const errorText = await response.text();
63 console.error(`Error ${response.status}: ${errorText}`);
64 })
65 .catch((error) => console.error("Network Error:", error));
عينات تفاعلية
Ln 65, Col 1javascript

الردود المتوقعة

استكشف كافة الردود والنتائج المحتملة من الخادم. قمنا بتوثيق كل كود حالة (Status Code) مع أمثلة للبيانات لتسهيل معالجة الأخطاء والنجاح.

ناجح - تم إكمال الطلب بنجاح
النوع:
application/json
boolean *
string *

Example

{
"success": true,
"message": "Operation completed successfully"
}
طلب غير صالح - معاملات مطلوبة مفقودة
غير مصرح - مفتاح الوصول غير صالح أو مفقود
غير موجود - الجلسة غير موجودة
خطأ في الخادم الداخلي - فشل غير متوقع
بوابة غير صالحة - فشل الاتصال بالخادم الرئيسي
الموضوع السابقحالة صورة
الموضوع التاليحالة فيديو

Command Palette

Search for a command to run...