التعامل مع الأخطاء في WhatsApp API من موقع Whats360
في عالم الأعمال الحديث، أصبحت تطبيقات المراسلة الفورية مثل WhatsApp أداة أساسية للتواصل مع العملاء. سواء كنت ترغب في إرسال إشعارات، تأكيدات طلبات، أو حتى عروض ترويجية، فإن WhatsApp API يوفر طريقة فعالة لأتمتة هذه العملية. في هذا المقال، سنتعلم كيفية التعامل مع الأخطاء عند استخدام WhatsApp API من موقع Whats360، مع أمثلة برمجية بلغات مختلفة مثل Node.js، Python، PHP، وC#.
ما هي الأخطاء في WhatsApp API؟
عند إرسال رسالة عبر WhatsApp API، قد تواجه أخطاءً مختلفة تعيق عملية الإرسال. هذه الأخطاء يمكن أن تكون ناتجة عن:
- مشاكل في الشبكة: مثل انقطاع الاتصال بالإنترنت.
- مشاكل في الخادم: مثل تعطل الخادم أو صيانته.
- مشاكل في البيانات: مثل إدخال بيانات غير صحيحة (مثل رقم هاتف غير صحيح أو API Key غير صالح).
الاستجابة الناجحة تأتي عادةً بتنسيق JSON وتشمل حقولًا مثل:
- success: يشير إلى نجاح العملية (
true
أوfalse
). - message: وصف نصي للاستجابة.
- data: بيانات إضافية قد تحتوي على تفاصيل إضافية حول العملية.
مثال للاستجابة الفاشلة:
{
"success": false,
"message": "Invalid API key.",
"data": {}
}
المتطلبات الأساسية
قبل البدء، تأكد من أن لديك:
- حساب WhatsApp Business API: يمكنك الحصول عليه من خلال مزودي خدمات WhatsApp API مثل Whats360.
- API Keys: المفتاح الخاص بك للوصول إلى API.
- Client ID: معرف العميل الخاص بك.
- Endpoint URL: عنوان URL الخاص بـ API (مثل
https://toggaar.whats360.live/api/user/v2/send_message
).
خطوات التعامل مع الأخطاء
1. إرسال الرسالة والحصول على الاستجابة
عند إرسال رسالة، ستتلقى استجابة من الخادم. يمكنك التعامل مع هذه الاستجابة لمعرفة ما إذا كانت العملية ناجحة أم لا.
2. تفسير الاستجابة الفاشلة
الاستجابة الفاشلة تأتي بتنسيق JSON وتحتوي على الحقول التالية:
- success: يشير إلى فشل العملية (
false
). - message: وصف نصي للخطأ.
- data: بيانات إضافية (قد تكون فارغة في بعض الحالات).
الكود البرمجي للتعامل مع الأخطاء
سنقدم أمثلة برمجية بلغات مختلفة لإرسال رسالة والتعامل مع الأخطاء.
باستخدام Node.js
const fetch = require('node-fetch');
async function sendMessage() {
const url = 'https://toggaar.whats360.live/api/user/v2/send_message';
const clientId = 'CLIENT_ID'; // استبدل بمعرف العميل الخاص بك
const mobile = '919999999999'; // استبدل برقم الهاتف المستلم
const text = 'Hello world'; // النص المراد إرساله
const token = 'YOUR_API_KEYS'; // استبدل بمفتاح API الخاص بك
const body = {
client_id: clientId,
mobile: mobile,
text: text
};
const headers = {
'Content-Type': 'application/json',
'Authorization': `Bearer ${token}`
};
try {
const response = await fetch(url, {
method: 'POST',
headers: headers,
body: JSON.stringify(body)
});
const data = await response.json();
// التعامل مع الأخطاء
if (data.success) {
console.log('Success:', data.message);
} else {
console.error('Error:', data.message);
}
} catch (error) {
console.error('Network Error:', error);
}
}
sendMessage();
باستخدام Python
import requests
import json
def send_message():
url = 'https://toggaar.whats360.live/api/user/v2/send_message'
client_id = 'CLIENT_ID' # استبدل بمعرف العميل الخاص بك
mobile = '919999999999' # استبدل برقم الهاتف المستلم
text = 'Hello world' # النص المراد إرساله
token = 'YOUR_API_KEYS' # استبدل بمفتاح API الخاص بك
body = {
'client_id': client_id,
'mobile': mobile,
'text': text
}
headers = {
'Content-Type': 'application/json',
'Authorization': f'Bearer {token}'
}
try {
response = requests.post(url, headers=headers, json=body)
data = response.json()
// التعامل مع الأخطاء
if data.get('success'):
print('Success:', data.get('message'))
else:
print('Error:', data.get('message'))
except requests.exceptions.RequestException as error:
print('Network Error:', error)
send_message()
باستخدام PHP
function sendMessage() {
$url = 'https://toggaar.whats360.live/api/user/v2/send_message';
$clientId = 'CLIENT_ID'; // استبدل بمعرف العميل الخاص بك
$mobile = '919999999999'; // استبدل برقم الهاتف المستلم
$text = 'Hello world'; // النص المراد إرساله
$token = 'YOUR_API_KEYS'; // استبدل بمفتاح API الخاص بك
$body = [
'client_id' => $clientId,
'mobile' => $mobile,
'text' => $text
];
$headers = [
'Content-Type: application/json',
'Authorization: Bearer ' . $token
];
$options = [
'http' => [
'header' => implode("\r\n", $headers),
'method' => 'POST',
'content' => json_encode($body)
]
];
$context = stream_context_create($options);
$response = file_get_contents($url, false, $context);
if ($response === FALSE) {
echo 'Network Error: Unable to send message.';
} else {
$data = json_decode($response, true);
// التعامل مع الأخطاء
if ($data['success']) {
echo 'Success: ' . $data['message'];
} else {
echo 'Error: ' . $data['message'];
}
}
}
sendMessage();
باستخدام C#
using System;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
class Program
{
static async Task Main()
{
await SendMessage();
}
static async Task SendMessage()
{
var url = "https://toggaar.whats360.live/api/user/v2/send_message";
var clientId = "CLIENT_ID"; // استبدل بمعرف العميل الخاص بك
var mobile = "919999999999"; // استبدل برقم الهاتف المستلم
var text = "Hello world"; // النص المراد إرساله
var token = "YOUR_API_KEYS"; // استبدل بمفتاح API الخاص بك
var body = new
{
client_id = clientId,
mobile = mobile,
text = text
};
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token);
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
try
{
var response = await client.PostAsJsonAsync(url, body);
var data = await response.Content.ReadAsAsync();
// التعامل مع الأخطاء
if (data.success)
{
Console.WriteLine("Success: " + data.message);
}
else
{
Console.WriteLine("Error: " + data.message);
}
}
catch (Exception error)
{
Console.WriteLine("Network Error: " + error.Message);
}
}
}
}
نصائح للتعامل مع الأخطاء
- تحقق من صحة البيانات: تأكد من أن جميع الحقول المطلوبة (مثل
client_id
,mobile
,text
) صحيحة وقبل إرسال الطلب. - إدارة الأخطاء: تعامل مع الأخطاء بشكل صحيح، سواء كانت أخطاء في الشبكة أو أخطاء من الخادم.
- سجل الاستجابات: قم بتسجيل الاستجابات لأغراض التحليل والمراجعة لاحقًا.
- اختبار النماذج: تأكد من أن النماذج معتمدة من قبل WhatsApp قبل استخدامها.
الخاتمة
التعامل مع الأخطاء في WhatsApp API من Whats360 هو جزء أساسي من عملية أتمتة التواصل مع العملاء. من خلال فهم كيفية تفسير الاستجابات وأخذ الإجراءات المناسبة، يمكنك تحسين تجربة العملاء وضمان نجاح عمليات الإرسال.
إذا كنت تبحث عن مزيد من التفاصيل أو لديك أسئلة، فلا تتردد في التواصل مع فريق دعم Whats360 أو استشارة الوثائق الرسمية.