وثائق API للرسائل القصيرة

الإصدار - 1.0
info

يرجى ملاحظة أنك ستحتاج إلى مساعدة فريقنا لبدء حملات الرسائل القصيرة الخاصة بك حتى بعد تكامل API. لذا، أطلب منك ذلك ابقى على اتصال بعد الاندماج.

مقدمة

Message Now عبارة عن واجهة برمجة تطبيقات مراسلة متعددة الاستخدامات مصممة لتسهيل إرسال الرسائل عبر SMS و RCS.

المساعدة والدعم

للحصول على دعم التنفيذ وأي ملاحظات، يرجى التواصل معنا على: support@messagecentral.com

معلمة API للرسالة الآن

المعلمة API
النوع
القيمة
نوع التدفق
سلسلة
الرسائل القصيرة/الواتس اب/
الصليب الأحمر الدولي/الجنوب
نوع
سلسلة
قمة

أوضاع إرسال الرسائل

يوفر Message Central وضعين أساسيين لإرسال الرسائل من خلال واجهة برمجة تطبيقات Message Now:

  1. إرسال رسالة إلى رقم واحد

    • لإرسال رسالة إلى رقم واحد، قم بتعبئة حقول API التالية:

    • رقم الهاتف المحمول: رقم الهاتف المحمول للمستلم.

    • الرسالة: المحتوى النصي للرسالة التي سيتم إرسالها.

  2. إرسال رسالة إلى أرقام متعددة 


    هناك طريقتان لإرسال رسائل إلى أرقام متعددة:

أ. استخدام تحميل ملف متعدد الأجزاء

  • تحميل الملف: استخدم معلمة API (ملف) لتحميل ملف متعدد الأجزاء.

  • الرسالة: استخدم معلمة API (الرسالة) للنص الذي سيتم إرساله.

  • تنسيق الملف: يتم دعم ملفات.xlsx فقط.

  • التخصيص: تدعم هذه الطريقة الرسائل المخصصة لكل مستخدم، مما يسمح بمحتوى رسالة مختلف لكل مستلم مدرج في الملف.

ب. استخدام حقل API لأرقام متعددة

  • أرقام الهاتف: استخدم معلمة API (PhoneNumbers) لتحديد قائمة أرقام المستلمين. (الشكل: البلد، <space>الهاتف المحمول: على سبيل المثال - 91 9816111111، 91 7715131105،...)

  • الرسالة: استخدم معلمة API (الرسالة) للنص الذي سيتم إرساله.

  • تنسيق الملف: يتم دعم ملفات.xlsx فقط.

  • التخصيص: تدعم هذه الطريقة الرسائل المخصصة لكل مستخدم، مما يسمح بمحتوى رسالة مختلف لكل مستلم مدرج في الملف.

الفرق بين تحميل الملفات متعددة الأجزاء وحقل أرقام الهواتف:

  • تحميل ملف متعدد الأجزاء (.xlsx): يسمح برسائل مخصصة لكل مستخدم. يمكن لكل مستلم تلقي رسالة فريدة كما هو محدد في ملف .xlsx الذي تم تحميله.

  • حقل أرقام الهاتف: يرسل نفس النص إلى جميع المستلمين. سيتم تسليم الرسالة المحددة في حقل الرسالة بشكل موحد إلى كل شخص مدرج في حقل PhoneNumbers.

يرجى العثور على نموذج الملف بتنسيق XLXS أدناه:

البلد
التليفون المحمول
عربة التسوق 1
فار 2
فار 3
91
12345678901
أميت
35 دولارًا
الخصم 20
91
23456789012
كونال
60 دولارًا
الخصم 20
91
12345678901
براكاش
35 دولارًا
الخصم 20

حيث تكون 'var1' و 'var2' و 'var3' عناصر نائبة للمتغيرات.

إذا أرادت مؤسسة إرسال رسالة مخصصة باستخدام تحميل الملفات، فيجب تنسيق حقل الرسالة على النحو التالي:

رسالة نموذجية - «مرحبًا # #var ##، رصيدك هو # #var2 ## في التاريخ # #var3 ##

اغتنم الفرصة

إذا كنت مطورًا أو وكالة تطوير ويب، شارك معنا لتسريع أرباحك.

كن شريكًا
ملف css

إرسال رسالة نصية

عنوان الطلب
النوع
إلزامي؟
رمز المصادقة
سلسلة
الرسائل القصيرة/الواتس اب/
الصليب الأحمر الدولي/الجنوب

لإرسال رسالة نصية قصيرة إلى رقم هاتف محمول، تكون معايير الطلب التالية مطلوبة. يعد رمز المصادقة، الذي تم إنشاؤه بواسطة واجهة برمجة تطبيقات إنشاء الرمز المميز، ضروريًا لإرسال الرسائل القصيرة.

https://cpaas.messagecentral.com

عند استخدام واجهة برمجة تطبيقات التحقق من الرسائل القصيرة الخاصة بـ Verify Now لإرسال رموز التحقق عبر الرسائل القصيرة، يجب أن تكون المكالمة الأولية إلى واجهة برمجة تطبيقات إنشاء الرمز المميز.

تقوم واجهة برمجة التطبيقات هذه بإرجاع رمز مميز يجب تضمينه في جميع المكالمات اللاحقة. يلزم وجود رمز مصادقة للتحقق من صحة المستخدم ويجب تضمينه في قسم العنوان لكل طلب.

الحقل
النوع
إلزامي؟
وصف
معرف العميل
سلسلة
نعم
معرف العميل (تحتاج إلى التسجيل للحصول على معرف العميل الخاص بك)
بلد
سلسلة
كلا
رمز البلد لإرسال OTP إليه
البريد الإلكتروني
سلسلة
كلا
البريد الإلكتروني
مفتاح
سلسلة
سلسلة
كلمة مرور Base-64 المشفرة
نطاق
سلسلة
كلا
استخدم «جديد» لأول مرة

مسار عنوان URL للطلب:

ستؤدي الاستجابة الناجحة إلى إرجاع رمز الحالة 200.

/verification/v3/send

معايير الطلب:

ستؤدي الاستجابة الناجحة إلى إرجاع رمز الحالة 200.

الحقل
النوع
إلزامي؟
وصف
نوع
سلسلة
نعم
استخدم «SMS» أثناء إرسال الرسائل القصيرة
ملف
إكس إل إس
كلا
يجب إرسال هذا كبيانات نموذج
رمز البلد
سلسلة
نعم (في حالة الرسائل القصيرة الواحدة وتحقق الآن)
رمز البلد
الطول العلوي
عدد صحيح
لا
كلمة مرور Base-64 المشفرة
رقم الهاتف المحمول
سلسلة
نعم (في حالة الرسائل القصيرة الفردية)
رقم الهاتف المحمول للنص المفرد
نوع التدفق
سلسلة
نعم
أرسل «رسالة نصية قصيرة»
نوع الرسالة
سلسلة
لا (الإعداد الافتراضي هو OTP)
نوع الرسالة التي سيتم إرسالها (القيم المسموح بها هي المعاملة والترويج وكلمة المرور لمرة واحدة)
معرف المرسل
سلسلة
نعم (في حالة الرسائل القصيرة)
معرف المرسل
أرقام الهواتف
سلسلة
لا
قائمة بأرقام الهواتف لإرسال الرسائل القصيرة (التنسيق: البلد، <space>الهاتف المحمول: 
91 9876111111)
رسالة
سلسلة
لا
الرسالة المخصصة التي سيتم إرسالها
معرف القالب
سلسلة
لا
معرف القالب الخاص بالقالب المعتمد
معرف الكيان
سلسلة
لا
معرف الكيان لعلامتك التجارية

ملاحظة: معرف القالب ومعرف الكيان مطلوبان إذا لم يتم تسجيل القالب في Message Central. أيضًا، يجب أن يكون كل من TemplateId و EntityID حاضرين أو يجب أن يكون كلاهما غائبًا.

cURL

1curl --location --request POST 'https://cpaas.messagecentral.com/verification/v3/send?countryCode=91&flowT ype=SMS&mobileNumber=9999999999&senderId=UTOMOB&type=SMS&message=%3CYour%20 Message%20Template%3E&messageType=PROMOTIONAL' \--header 'authToken: eyJhbGciOiJIUzUxMiJ9.thisisatesttoken.IgGu7Sb4lovBSql5LIXZU3jlwPG4giAMZ2kTI Mg_EAaKVsVcCdpW_TYzyzdTd94GdEJMt5WntEGcEX4w0hITng'

ملاحظة: لتحويل أمر cURL إلى كود باستخدام Postman، افتح Postman، واستورد الأمر cURL عبر زر «استيراد»، ثم قم بإنشاء الكود بلغتك المفضلة بالنقر فوق الزر «Code» على الجانب الأيمن من الطلب.

الاستجابة: جسون

ستؤدي الاستجابة الناجحة إلى إرجاع رمز الحالة 200.

1{
2	"responseCode": 200,
3	"message": "SUCCESS",
4	"data": {
5		"verificationId": "1234",
6		"mobileNumber": "9999999999",
7		"responseCode": "200",
8		"errorMessage": null,
9		"timeout": "30.0",
10		"smsCLI": null,
11		"transactionId": "1c9c56ec-5cd3-48b5-9e32-a15499fb77a2"
12	}
13}

أمثلة على الرموز

curl --location 'https://cpaas.messagecentral.com/verification/v3/send?countryCode=91&flowType=SMS&mobileNumber=9999999999&senderId=UTOMOB&type=SMS&message=%3CYour%20Message%20Template%3E&messageType=PROMOTIONAL' \
--header 'authToken: eyJhbGciOiJIUzUxMiJ9.thisisatesttoken.IgGu7Sb4lovBSql5LIXZU3jlwPG4giAMZ2kTIMg_EAaKVsVcCdpW_TYzyzdTd94GdEJMt5WntEGcEX4w0hITng' \
--form 'file=@"/C:/Users/Kunal Suryawanshi/Downloads/Sample_MessageNow.xlsx"'
OkHttpClient client = new OkHttpClient().newBuilder()
  .build();
MediaType mediaType = MediaType.parse("text/plain");
RequestBody body = RequestBody.create(mediaType, "");
Request request = new Request.Builder()
  .url("https://cpaas.messagecentral.com/auth/v1/authentication/token?customerId=<CustomerId>&key=<Base64 Encrypted password>&scope=NEW&country=91&email=test@messagecentral.com")
  .method("GET", body)
  .addHeader("accept", "*/*")
  .build();
Response response = client.newCall(request).execute();
var request = require('request');
var options = {
  'method': 'GET',
  'url': 'https://cpaas.messagecentral.com/auth/v1/authentication/token?customerId=<CustomerId>&key=<Base64 Encrypted password>&scope=NEW&country=91&email=test@messagecentral.com',
  'headers': {
    'accept': '*/*'
  }
};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});
<?php
require_once 'HTTP/Request2.php';
$request = new HTTP_Request2();
$request->setUrl('https://cpaas.messagecentral.com/auth/v1/authentication/token?customerId=<CustomerId>&key=<Base64 Encrypted password>&scope=NEW&country=91&email=test@messagecentral.com');
$request->setMethod(HTTP_Request2::METHOD_GET);
$request->setConfig(array(
  'follow_redirects' => TRUE
));
$request->setHeader(array(
  'accept' => '*/*'
));
try {
  $response = $request->send();
  if ($response->getStatus() == 200) {
    echo $response->getBody();
  }
  else {
    echo 'Unexpected HTTP status: ' . $response->getStatus() . ' ' .
    $response->getReasonPhrase();
  }
}
catch(HTTP_Request2_Exception $e) {
  echo 'Error: ' . $e->getMessage();
}
import requests

url = "https://cpaas.messagecentral.com/auth/v1/authentication/token?customerId=<CustomerId>&key=<Base64 Encrypted password>&scope=NEW&country=91&email=test@messagecentral.com"

payload = {}
headers = {
  'accept': '*/*'
}

response = requests.request("GET", url, headers=headers, data=payload)

print(response.text)
require "uri"
require "net/http"

url = URI("https://cpaas.messagecentral.com/auth/v1/authentication/token?customerId=<CustomerId>&key=<Base64 Encrypted password>&scope=NEW&country=91&email=test@messagecentral.com")

https = Net::HTTP.new(url.host, url.port)
https.use_ssl = true

request = Net::HTTP::Get.new(url)
request["accept"] = "*/*"

response = https.request(request)
puts response.read_body

var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://cpaas.messagecentral.com/auth/v1/authentication/token?customerId=<CustomerId>&key=<Base64 Encrypted password>&scope=NEW&country=91&email=test@messagecentral.com");
request.Headers.Add("accept", "*/*");
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());

تكامل رد الاتصال عبر الرسائل القصيرة مع Message Central

لتلقي عمليات إعادة الاتصال عبر الرسائل القصيرة والاحتفاظ بها على نظامك الخاص لتلقي تحديثات الحالة لجميع الرسائل المرسلة من خلال خدمتنا، يرجى اتباع الخطوات التالية:

1. المعلومات المطلوبة:
أ. معرف العميل
ب. اسم العلامة التجارية
ج. معرف البريد الإلكتروني المسجل
د. عنوان URL الخاص برد الاتصال

2. تعليمات التقديم: يرجى إرسال المعلومات الواردة أعلاه إلى operations@messagecentral.com مع سطر الموضوع «تكامل رد الاتصال عبر الرسائل القصيرة مع Message Central».

3. مواصفات عنوان URL الخاص برد الاتصال: تأكد من أن عنوان URL الخاص برد الاتصال الخاص بك يمكن الوصول إليه وقادر على تلقي طلبات HTTP POST التي تحتوي على حمولات JSON مع تحديثات الحالة لرسائل SMS المرسلة. عند التشغيل، ستتلقى نقطة النهاية حمولة JSON التالية.

1{ 
2"apiKey": null, 
3"clientId": null, 
4"messageId": "a2e87214-d18c-4a2e-b7f4-802c4465a9b9", 
5"status": "DELIVRD", 
6"errorCode": 0, 
7"countryCode": null, 
8"mobile": "919999999999", 
9"submitDate": "2023-11-02 13:59:18", 
10"doneDate": "2023-11-02 13:59:22" 
11}

4. الحالة القياسية: هذه هي الحالة التالية التي ستتلقاها لجميع الرسائل المرسلة.
(أ) تم التوصيل 

ب. منتهية الصلاحية
(ج) UNDELIV
(د) غير معروف
(هـ) مرفوض

لمزيد من المساعدة أو التوضيح، يرجى الاتصال بفريق الدعم لدينا على: -support@messagecentral.com

كيف أقوم بمصادقة الطلبات على SMS API؟

تتم مصادقة طلبات SMS API باستخدام بيانات اعتماد API، عادةً ما يتم تمرير مفتاح API أو رمز مميز في رأس الطلب أو المعلمات. تضمن المصادقة أن التطبيقات المعتمدة فقط يمكنها إرسال رسائل SMS والوصول إلى تقارير التسليم. يتم إنشاء بيانات الاعتماد في لوحة المعلومات ويجب أن تظل آمنة.

هذه هي القيمة النصية الافتراضية

ما تنسيق الطلب الذي تستخدمه واجهة برمجة تطبيقات SMS؟

معظم واجهات برمجة تطبيقات الرسائل القصيرة استخدم تنسيق الطلب المستند إلى REST عبر HTTPS. عادةً ما يتم إرسال الطلبات كمكالمات HTTP POST مع المعلمات المنسقة في شكل JSON أو نموذج مشفر بعنوان URL. هذا يجعل هذه واجهات برمجة تطبيقات الرسائل القصيرة المجمعة سهل الدمج مع تطبيقات الويب والجوال.

هذه هي القيمة النصية الافتراضية

ما المعلمات المطلوبة لإرسال رسالة نصية قصيرة باستخدام API؟

لإرسال رسالة نصية قصيرة باستخدام API أو بوابة الرسائل القصيرة، تتضمن المعلمات المطلوبة عادةً رقم هاتف المستلم، محتوى الرسالة، معرف المرسل، و بيانات اعتماد المصادقة. تتطلب بعض واجهات برمجة التطبيقات أيضًا نوع رسالة، مثل الرسائل القصيرة للمعاملات أو الرسائل القصيرة الترويجية.

هذه هي القيمة النصية الافتراضية

كيف يمكنني إرسال OTP باستخدام واجهة برمجة تطبيقات SMS؟

يمكنك أرسل كلمة مرور لمرة واحدة استخدام واجهة برمجة تطبيقات SMS عن طريق تمرير رقم المستلم ومحتوى رسالة OTP ونوع الرسالة كمعاملات في طلب API. تقوم واجهة برمجة التطبيقات بإنشاء معرف رسالة، مما يسمح للتطبيقات بتتبع التسليم والتحقق من OTP أثناء مصادقة المستخدم.

هذه هي القيمة النصية الافتراضية

كيف يمكنني إرسال رسائل نصية مجمعة باستخدام SMS API؟

رسائل نصية مجمعة يمكن إرسالها باستخدام واجهة برمجة تطبيقات SMS عن طريق الإرسال أرقام مستلمين متعددة في طلب واحد أو عن طريق تحميل حمولة دفعية. تقوم API بمعالجة الرسائل بشكل غير متزامن وتوفر تقارير التسليم لكل مستلم.

هذه هي القيمة النصية الافتراضية

كيف أتحقق من حالة تسليم الرسائل القصيرة باستخدام API؟

يمكن التحقق من حالة تسليم الرسائل القصيرة باستخدام معرف الرسالة تم إرجاعها بواسطة API. يمكن للتطبيقات الاستعلام عن نقطة نهاية تقرير التسليم أو تلقي تحديثات التسليم من خلال عمليات رد الاتصال أو روابط الويب التي تم تكوينها أثناء تكامل API.

هذه هي القيمة النصية الافتراضية

هل تدعم واجهة برمجة تطبيقات SMS روابط الويب أو عمليات رد الاتصال؟

نعم. تدعم معظم واجهات برمجة تطبيقات الرسائل القصيرة webhooks أو عمليات الاسترجاعات تقوم بإعلام التطبيق الخاص بك عند تسليم الرسالة أو فشلها أو انتهاء صلاحيتها. تسمح عمليات رد الاتصال بتتبع التسليم في الوقت الفعلي دون استطلاع واجهة برمجة التطبيقات بشكل متكرر.

هذه هي القيمة النصية الافتراضية

ما حالات التسليم التي تعيدها واجهة برمجة تطبيقات SMS؟

عادةً ما تقوم واجهة برمجة تطبيقات SMS بإرجاع حالات التسليم مثل في قائمة الانتظار، أرسلت، تم التوصيل، فشل، أو منتهية الصلاحية. تساعد هذه الحالات التطبيقات على مراقبة تقدم الرسائل واتخاذ الإجراءات عند حدوث مشكلات التسليم.

هذه هي القيمة النصية الافتراضية

ما رموز الخطأ التي تعيدها واجهة برمجة تطبيقات SMS؟

تعود واجهات برمجة تطبيقات SMS بشكل موحد رموز الخطأ لمشكلات مثل فشل المصادقة أو الأرقام غير الصالحة أو الرصيد غير الكافي أو المسارات المحظورة. كل رمز خطأ مصحوب بوصف لمساعدة المطورين على تصحيح الأخطاء ومعالجتها برمجيًا.

هذه هي القيمة النصية الافتراضية

هل معدل SMS API محدود؟

نعم. عادةً ما يتم فرض واجهات برمجة تطبيقات SMS حدود الأسعار لمنع إساءة الاستخدام وضمان استقرار النظام. تحدد حدود الأسعار عدد الطلبات التي يمكن للتطبيق إجراؤها خلال فترة زمنية معينة وقد تختلف بناءً على نوع الحساب أو مستوى الاستخدام.

هذه هي القيمة النصية الافتراضية

هل أنت جاهز للبدء؟

قم بحماية حسابات المستخدمين الخاصة بك وبناء الثقة مع عملائك باستخدام التحقق من الرسائل القصيرة. جرب التحقق الآن بدون أي بطاقة ائتمان.

+17178379132
phone-callphone-call