Dev DOC - SMSMobileAPI
 

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

تتيح لك هذه النقطة النهائية إرسال رسالة نصية قصيرة من هاتفك المحمول.

نقطة النهاية: 

يحصل بريد https://api.smsmobileapi.com/sendsms/

حدود:

المعلمةوصف
apikey
مطلوب
مفتاح API الفريد الخاص بك.
recipients
مطلوب
رقم هاتف المستلم.
message
مطلوب
الرسالة المراد إرسالها (لا يوجد حد أقصى 160 حرفًا).
port حدد منفذ شريحة SIM المراد استخدامه لإرسال الرسائل النصية القصيرة: 1, 2أو اتركه فارغاً.
في حال ترك الحقل فارغاً، سيتم إرسال الرسائل النصية القصيرة تلقائياً باستخدام منفذ شريحة SIM المتاح.

هذه الخاصية متاحة بدءًا من إصدار Android 4.1.15.0 ويعمل عندما يكون التطبيق في المقدمة.
shorturl 1 = تحويل عناوين URL إلى روابط مختصرة
صفر أو فارغ = لا يوجد تحويل
sIdentifiant حدد الهاتف المتصل الذي سيرسل الرسالة النصية. اترك هذا الحقل فارغًا لاختيار أول جهاز متاح. يتطلب التطبيق الإصدار 3.0.35.3 أو أحدث.
sendwa 1 = إرسال عبر واتساب.
sendsms 1 = إرسال عبر الرسائل النصية (الوضع الافتراضي في حال كان الحقل فارغًا). اضبطه على 0 لحظر الرسائل النصية.
encrypt_message نعم = يحتاج المستلم إلى مفتاح لفك التشفير. يتعلم أكثر
schedule_timestamp الطابع الزمني لنظام يونكس (GMT 0) الذي يجب إرسال الرسالة النصية القصيرة منه.

مثال على الطلب:

GET https://api.smsmobileapi.com/sendsms/?apikey=YOUR_API_KEY&recipients=+1234567890&message=HelloWorld
ملاحظة: في حالة حدوث خطأ في التسليم بسبب المشغل الخاص بك، تقوم وظيفة افتراضية بإعادة المحاولة حتى 3 مرات.

مثال على استجابة JSON:

{ "result": { "error": 0, "sent": "1", "id": "c319d3b35e8f8712cde20dae39ac3c19f86eda25", "note": "sent by mobile", "datetime": "2026-03-20T21:07:44Z", "datetimeLocal": "2026-03-20T22:07:44+01:00", "port": null, "iac_control": "1", "iac_authorized": "1", "send_with_whatsapp": "0", "encrypted": { "status": "0" }, "trial_account": { "status": "0", "sms_sent": 0 } } }

شرح الرد:

مجالوصف
result.error 0 = لا يوجد خطأ. إذا تم إرجاع قيمة أخرى، فهذا يعني أن الطلب قد فشل أو تم حظره.
result.sent 1 تم قبول الرسالة للإرسال من قبل الهاتف المحمول.
result.id معرّف رسالة فريد يتم إنشاؤه بواسطة واجهة برمجة التطبيقات (API). يمكنك تخزينه لأغراض التتبع أو التسجيل.
result.note معلومات إضافية حول كيفية معالجة الرسالة. مثال: تم الإرسال عبر الهاتف المحمول.
result.datetime تاريخ/وقت استجابة واجهة برمجة التطبيقات (API) بالتوقيت العالمي المنسق (UTC).
result.datetimeLocal يعتمد التاريخ/الوقت المحلي على إعدادات الهاتف المحمول أو الخادم.
result.port يُستخدم منفذ شريحة SIM للإرسال. 1, 2، أو باطل إذا لم يتم تحديده أو لم يتم إرجاعه.
result.iac_control حالة التحكم الداخلي في واجهة برمجة التطبيقات (API). 1 هذا يعني أن الطلب اجتاز عمليات التحقق الداخلية.
result.iac_authorized 1 هذا يعني أن مفتاح API مصرح له باستخدام نقطة النهاية هذه.
result.send_with_whatsapp 1 = تتم معالجة الرسالة عبر واتساب. 0 = إرسال الرسائل النصية القصيرة القياسية.
result.encrypted.status 1 تم تفعيل التشفير. 0 = رسالة مرسلة بدون تشفير.
result.trial_account.status 1 = الحساب هو حساب تجريبي. 0 = حساب عادي.
result.trial_account.sms_sent عدد الرسائل النصية القصيرة التي تم إرسالها بالفعل من الحساب التجريبي، عند الاقتضاء.
عادةً ما يتم الرد بنجاح الخطأ = 0 و تم الإرسال = 1.
 

إعادة إرسال رسالة نصية قصيرة غير مرسلة

تتيح لك هذه النقطة النهائية إعادة إرسال رسالة نصية قصيرة لم يتم إرسالها مسبقًا، فقط إذا كانت الرسالة حاليًا في حالة خطأ.

نقطة النهاية:

يحصل بريد https://api.smsmobileapi.com/resend/

حدود: 

المعلمةوصف
apikey
مطلوب
مفتاح API الفريد الخاص بك.
guid
مطلوب
معرّف فريد عالمي (GUID) للرسالة المراد إعادة إرسالها.

مثال على الطلب: 

احصل على https://api.smsmobileapi.com/resend/?apikey=YOUR_API_KEY&guid=GUID_OF_THE_MESSAGE

مثال على استجابة JSON:

{ "result": { "error": "0", "sms": "تمت إعادة الإرسال بنجاح", "attempt": 1 } }

شرح الرد:

مجالوصف
result.error 0 لا يوجد خطأ. تم قبول طلب إعادة الإرسال بنجاح.
result.sms رسالة الحالة التي يُعيدها واجهة برمجة التطبيقات. في هذا المثال، تؤكد هذه الرسالة إعادة إرسال الرسالة النصية القصيرة بنجاح.
result.attempt يشير إلى رقم محاولة إعادة الإرسال.
ملاحظة: تعمل نقطة النهاية هذه فقط مع الرسائل التي تكون في حالة خطأ ومؤهلة لإعادة الإرسال.
 

سجل الرسائل النصية القصيرة المرسلة من واجهة برمجة التطبيقات

تتيح لك هذه النقطة النهائية استرداد سجل رسائل SMS المرسلة عبر واجهة برمجة التطبيقات (API).

نقطة النهاية: 

يحصل https://api.smsmobileapi.com/log/sent/sms/

حدود:

المعلمةوصف
apikey
مطلوب
مفتاح API الفريد الخاص بك.
guid_message قم بالتصفية حسب مُعرّف الرسالة الفريد.
before استرجع الرسائل المرسلة قبل هذه القيمة. وبحسب تطبيقك، قد تكون هذه القيمة عبارة عن طابع زمني أو مرجع رسالة.
error_api 1 = عرض رسائل SMS التي تحتوي على خطأ في طلب واجهة برمجة التطبيقات فقط.
error_mobile 1 = عرض رسائل SMS التي بها خطأ في معالجة الهاتف المحمول فقط.
keyword قم بالتصفية حسب رقم المستلم أو محتوى الرسالة.

مثال على الطلب:

GET https://api.smsmobileapi.com/log/sent/sms/?apikey=YOUR_API_KEY

مثال على استجابة JSON:

{ "result": { "error": "0", "sms": [ { "sIdentifiantPhone": "abbg00055x5", "port": 0, "date_add": "2026-03-20", "hour_add": "22:07:44", "timestamp": 1774044464, "send_from_mobile": 1, "send_from_mobile_date": "2026-03-20", "send_from_mobile_heure": "22:10:05", "send_from_mobile_timestamp": 1774044605, "recipients": "32495898697", "sms": "test", "error_api": "", "send_from_mobile_erreur": "", "guid_message": "c319d3b35e8f8712cde20dae39ac3c19f86eda25", "timearea": "UTC+01", "date_add_server": "2026-03-20", "hour_add_server": "21:07:44", "timestamp_server": 1774040864, "send_from_mobile_date_server": "2026-03-20", "send_from_mobile_heure_server": "21:10:05" } ] } }

شرح الرد:

مجالوصف
result.error 0 = لا يوجد خطأ. تمت معالجة الطلب بنجاح.
result.sms مصفوفة تحتوي على سجلات الرسائل النصية القصيرة المرسلة التي تم إرجاعها بواسطة واجهة برمجة التطبيقات (API).
result.sms[].sIdentifiantPhone معرف الهاتف المستخدم للإرسال، عند توفره.
result.sms[].port منفذ شريحة SIM يُستخدم لإرسال الرسائل النصية القصيرة (SMS).
result.sms[].date_add التاريخ المحلي الذي تمت فيه إضافة الرسالة النصية القصيرة إلى قائمة الانتظار.
result.sms[].hour_add التوقيت المحلي عند إضافة الرسالة النصية القصيرة إلى قائمة الانتظار.
result.sms[].timestamp الطابع الزمني لنظام يونكس للتاريخ/الوقت المحلي الموجود في قائمة الانتظار.
result.sms[].send_from_mobile 1 = تم إرسال الرسالة النصية القصيرة من الهاتف المحمول. 0 = لم يتم الإرسال بعد أو فشل الإرسال.
result.sms[].send_from_mobile_date التاريخ المحلي الذي أرسل فيه الهاتف المحمول الرسالة النصية القصيرة فعلياً.
result.sms[].send_from_mobile_heure التوقيت المحلي الذي أرسل فيه الهاتف المحمول الرسالة النصية القصيرة فعلياً.
result.sms[].send_from_mobile_timestamp الطابع الزمني لنظام يونكس لوقت الإرسال الفعلي من الهاتف المحمول.
result.sms[].recipients رقم هاتف المستلم.
result.sms[].sms محتوى الرسالة.
result.sms[].error_api تم إرجاع خطأ أثناء معالجة طلب واجهة برمجة التطبيقات، إن وجد. القيمة الفارغة تعني عدم وجود خطأ في واجهة برمجة التطبيقات.
result.sms[].send_from_mobile_erreur خطأ تم إرجاعه من الهاتف المحمول أثناء الإرسال، إن وجد. عدم وجود خطأ يعني عدم وجود خطأ من الهاتف المحمول.
result.sms[].guid_message معرّف فريد للرسالة.
result.sms[].timearea المنطقة الزمنية المستخدمة لحقول التاريخ والوقت المحليين.
result.sms[].date_add_server تاريخ إضافة الرسائل النصية القصيرة من جانب الخادم.
result.sms[].hour_add_server الوقت من جانب الخادم عند إضافة الرسائل النصية القصيرة.
result.sms[].timestamp_server الطابع الزمني لنظام يونكس على جانب الخادم عند إضافة الرسائل النصية القصيرة.
result.sms[].send_from_mobile_date_server تاريخ إرسال الرسالة النصية القصيرة من الهاتف المحمول من جانب الخادم.
result.sms[].send_from_mobile_heure_server الوقت من جانب الخادم عندما تم إرسال الرسالة النصية القصيرة من الهاتف المحمول.
عادةً ما يتم الرد بنجاح الخطأ = 0 وقائمة بالمدخلات في الداخل result.sms.
 

قائمة الرسائل النصية المرسلة من الهاتف المحمول

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

مهم: هذه الميزة متاحة بدءًا من إصدار Android 4.1.20.

مهم: هذه الميزة هي غير مفعل افتراضياً في تطبيق أندرويد.

خصوصية: جميع المعلومات المتزامنة مجهولة المصدر وسرية ويتم التعامل معها بشكل آمن.

الحد الأقصى للسجل: لا تُرجع واجهة برمجة التطبيقات هذه إلا البيانات من آخر إصدار. 7 أيام.

ملحوظة: إذا كنت ترسل رسائل نصية قصيرة باستخدام نقطة نهاية واجهة برمجة التطبيقات القياسية https://api.smsmobileapi.com/sendsms/قد تظهر هذه الرسائل النصية القصيرة أيضًا في هذه القائمة لأنها تُرسل فعليًا من جهازك المحمول.

نقطة النهاية:

يحصل بريد https://api.smsmobileapi.com/log/sent/frommobile/

حدود: 

المعلمة وصف
apikey
مطلوب
مفتاح API الفريد الخاص بك.
date اختياري. فلتر التاريخ الدقيق في YYYY-MM-DD شكل.
date_from اختياري. تاريخ بدء الفترة في YYYY-MM-DD شكل.
date_to اختياري. تاريخ انتهاء الفترة في YYYY-MM-DD شكل.
period اختياري. فلتر فترة زمنية محددة مسبقًا. القيم المسموح بها: today, yesterday, last_24h, last_3days, last_7days.
number اختياري. تصفية النتائج حسب رقم هاتف المستلم.
sIdentifiant اختياري. تصفية حسب مُعرّف الهاتف المحمول.
message اختياري. تصفية حسب محتوى الرسائل النصية القصيرة.
search اختياري. بحث عالمي على sIdentifiant, number, message, mobile_date_formatted، و synchro_time.
sort_by اختياري. حقل الفرز. القيم المسموح بها: sIdentifiant, number, message, mobile_date_ms, mobile_date_formatted, synchro_time.
sort_order اختياري. ترتيب الفرز: ASC أو DESC.
limit اختياري. الحد الأقصى لعدد الصفوف المُعادة. القيمة القصوى المسموح بها: 200.

الحقول المُعادة: 

مجال وصف
sIdentifiant معرف الهاتف المحمول المرتبط بالرسالة النصية القصيرة المرسلة.
number رقم هاتف المستلم.
message محتوى الرسائل النصية القصيرة.
mobile_date_ms الطابع الزمني الأصلي للرسالة النصية القصيرة بالمللي ثانية.
mobile_date_formatted تم استلام التاريخ المنسق من الجهاز المحمول.
synchro_time تاريخ ووقت مزامنة الرسائل النصية القصيرة مع SMSMobileAPI.

مثال على الطلب: 

GET https://api.smsmobileapi.com/log/sent/frommobile/?apikey=YOUR_API_KEY

مثال مع المرشحات:

طلب GET إلى https://api.smsmobileapi.com/log/sent/frommobile/?apikey=YOUR_API_KEY&date=2026-03-13&number=+15551234567&sort_by=synchro_time&sort_order=DESC

مثال بفترة زمنية محددة مسبقاً:

GET https://api.smsmobileapi.com/log/sent/frommobile/?apikey=YOUR_API_KEY&period=last_7days&limit=200

مثال على استجابة JSON:

{ "result": { "error": "0", "count": 200, "limit": 200, "history_limit_days": 7, "sort_by": "mobile_date_ms", "sort_order": "DESC", "sms": [ { "sIdentifiant": "508b004b4aadacc4", "number": "+15551234567", "message": "مرحباً، تم تأكيد موعدك.", "mobile_date_ms": 1774041004692, "mobile_date_formatted": "2026-03-20 22:10:04", "synchro_time": "2026-03-20 21:10:05" }, { "sIdentifiant": "e5b70a8a28b2ec3d", "number": { "+447700900123", "message": "رمز التحقق الخاص بك هو 482915.", "mobile_date_ms": 1774040902284, "mobile_date_formatted": "2026-03-20 22:08:22", "synchro_time": "2026-03-20 21:08:35" }, { "sIdentifiant": "e5b70a8a28b2ec3d", "number": "+33198765432", "message": "نشكرك على طلبك. جارٍ معالجته الآن.", "mobile_date_ms": 1774026491230, "mobile_date_formatted": "2026-03-20 18:08:11", "synchro_time": "2026-03-20 17:19:19" } ] } }

شرح الرد:

مجالوصف
result.error 0 = لا يوجد خطأ. تمت معالجة الطلب بنجاح.
result.count عدد رسائل SMS الواردة في الاستجابة الحالية.
result.limit الحد الأقصى لعدد الصفوف المطلوبة أو المطبقة بواسطة واجهة برمجة التطبيقات (API).
result.history_limit_days أقصى نطاق زمني متاح من خلال هذه النقطة النهائية، بالأيام.
result.sort_by تم تطبيق حقل الفرز على الاستجابة.
result.sort_order تم تطبيق اتجاه الفرز على الاستجابة: مركز الجراحة التلطيفية أو الوصف.
result.sms مصفوفة تحتوي على رسائل SMS المتزامنة المرسلة من الجهاز المحمول.
result.sms[].sIdentifiant معرّف الجهاز المحمول الذي أرسل الرسالة النصية القصيرة.
result.sms[].number رقم هاتف المستلم.
result.sms[].message محتوى رسالة SMS.
result.sms[].mobile_date_ms الطابع الزمني الأصلي للهاتف المحمول بالمللي ثانية.
result.sms[].mobile_date_formatted التاريخ والوقت بصيغة قابلة للقراءة البشرية من الجهاز المحمول.
result.sms[].synchro_time تاريخ ووقت مزامنة إدخال الرسائل النصية القصيرة مع SMSMobileAPI.
عادةً ما يتم الرد بنجاح الخطأ = 0 وقائمة بالمدخلات في الداخل result.sms.
 

تم استلام الرسالة النصية القصيرة

تتيح لك هذه النقطة النهائية استرداد رسائل SMS التي تم استلامها على الهاتف الذكي. 

نقطة النهاية:

يحصل https://api.smsmobileapi.com/getsms/

حدود: 

المعلمةوصف
apikey
مطلوب
مفتاح API الفريد الخاص بك.
sIdentifiantPhone اختياري. تصفية الرسائل الواردة على هاتف مرتبط محدد.
after_timestamp_unix اختياري. استرجاع الرسائل النصية القصيرة الواردة فقط بعد طابع زمني محدد لنظام يونكس.
onlyunread نعم = إرجاع الرسائل التي لم يتم وضع علامة "مقروء" عليها بعد بواسطة حالة واجهة برمجة التطبيقات.

مثال على الطلب:

احصل على https://api.smsmobileapi.com/getsms/?apikey=YOUR_API_KEY

مثال على استجابة JSON:

{ "result": { "error": "", "sms": [ { "id": 466340, "sIdentifiantPhone": "e5b70a8a28b2ec3d", "date": "2026-03-20", "hour": "21:23:34", "timestamp_unix": 1774041814, "time_received": "20260320222332804", "indice": "27593", "message": "مرحباً، تم تسليم طردك.", "number": "+15551234567", "guid": "6BFD7DC7-3492-422D-8D02-4AF4E614F122", "alias": null, "apikey": "YOUR_API_KEY_HASH" }, { "id": 466341، "sIdentifiantPhone": "e5b70a8a28b2ec3d"، "date": "2026-03-20"، "hour": "21:23:34"، "timestamp_unix": 1774041814، "time_received": "20260320221005892"، "indice": "27591"، "message": "تم تأكيد موعدك غدًا."، "number": "+447700900123"، "guid": "BF3B38D7-8401-4A8C-8BA6-D8D58ACBB23E"، "alias": null، "apikey": "YOUR_API_KEY_HASH" }، { "id": 466324، "sIdentifiantPhone": { "e5b70a8a28b2ec3d", "date": "2026-03-20", "hour": "21:08:24", "timestamp_unix": 1774040904, "time_received": "20260320220822763", "indice": "27590", "message": "يرجى الاتصال بنا عند توفرنا.", "number": "+33198765432", "guid": "08C88E20-9B98-453F-B361-9BB06D3275D6", "alias": null, "apikey": "YOUR_API_KEY_HASH" }, { "id": 466156, "sIdentifiantPhone": "e5b70a8a28b2ec3d", "date": "2026-03-20", "الساعة": "19:05:22", "الطابع الزمني يونكس": 1774033522, "وقت الاستلام": "20260320200026246", "الفهرس": "27588", "الرسالة": "تذكير: مراجعة حسابك قيد الانتظار.", "الرقم": "10001", "المعرف الفريد": "551B2CF4-9330-4DD2-B2BA-5A4026EEEB15", "الاسم المستعار": null, "مفتاح API": "YOUR_API_KEY_HASH" } ] } }

شرح الرد:

مجالوصف
result.error القيمة الفارغة تعني عادةً عدم وجود خطأ تم إرجاعه بواسطة واجهة برمجة التطبيقات (API).
result.sms مصفوفة تحتوي على إدخالات الرسائل النصية القصيرة المستلمة.
result.sms[].id المعرف الداخلي الفريد لإدخال الرسائل النصية القصيرة المستلمة.
result.sms[].sIdentifiantPhone معرّف الهاتف الذي استقبل الرسالة النصية القصيرة.
result.sms[].date تاريخ استلام الرسالة النصية القصيرة.
result.sms[].hour الوقت الذي تم فيه استلام الرسالة النصية القصيرة.
result.sms[].timestamp_unix الطابع الزمني لنظام يونكس للرسالة النصية القصيرة المستلمة.
result.sms[].time_received تم توفير الطابع الزمني الأصلي للاستلام الداخلي بواسطة الهاتف المحمول/التطبيق.
result.sms[].indice فهرس الرسائل الداخلية أو مرجع من عملية المزامنة.
result.sms[].message محتوى الرسالة النصية القصيرة المستلمة.
result.sms[].number رقم هاتف المرسل أو الرمز المختصر.
result.sms[].guid معرّف فريد مخصص للرسالة النصية القصيرة المستلمة.
result.sms[].alias اسم مستعار اختياري مرتبط بالمرسل، إن وجد. يمكن أن يكون باطل.
result.sms[].apikey مفتاح API المرتبط بسجل الرسالة. في أمثلة التوثيق، يجب إخفاء هذه القيمة.
عادةً ما تُرجع الاستجابة الناجحة قيمة فارغة خطأ القيمة وقائمة الإدخالات بالداخل result.sms.
 

وضع علامة على رسائل SMS المستلمة كمقروءة

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

نقطة النهاية:

يحصل https://api.smsmobileapi.com/getsms/set-read/

المعلمة: 

المعلمةوصف
apikey
مطلوب
مفتاح API الذي لديك أو سوف تتلقاه.
guid_message
مطلوب
معرّف فريد عالمي (GUID) للرسالة المراد وضع علامة عليها كمقروءة.

مثال:

احصل على https://api.smsmobileapi.com/getsms/set-read/?apikey=YOUR_APIKEY&guid_message=GUID_MESSAGE
 

تحديث اسم مستعار للرسائل النصية

تُستخدم نقطة نهاية واجهة برمجة التطبيقات هذه لتحديث اسم مستعار لرسالة نصية قصيرة مستلمة باستخدام معرّفها الفريد العالمي (GUID).

ملحوظة: ال alias يمكن أن تكون المعلمة فارغة. في هذه الحالة، سيتم مسح الاسم المستعار.

نقطة النهاية:

يحصل بريد https://api.smsmobileapi.com/getsms/update/

حدود: 

المعلمة وصف
apikey
مطلوب
مفتاح API الخاص بك.
guid
مطلوب
معرف GUID الخاص بالرسالة النصية القصيرة المستلمة لتحديثها.
alias
مطلوب
الاسم المستعار الذي سيتم تعيينه لهذه الرسالة النصية. يمكن ترك هذه القيمة فارغة لمسح الاسم المستعار الحالي.

مثال: 

GET https://api.smsmobileapi.com/getsms/update/?apikey=YOUR_API_KEY&guid=GUID_OF_THE_MESSAGE&alias=JohnDoe

مثال لمسح الاسم المستعار:

GET https://api.smsmobileapi.com/getsms/update/?apikey=YOUR_API_KEY&guid=GUID_OF_THE_MESSAGE&alias=
 

حذف الرسائل النصية القصيرة

تتيح لك هذه النقطة النهائية حذف رسائل SMS من سجل خادم SMSMobileAPI.

نقطة النهاية: 

يحصل https://api.smsmobileapi.com/deletesms/

حدود:

المعلمةوصف
apikey
مطلوب
مفتاح API الفريد الخاص بك.
guid_message حذف رسالة معينة باستخدام معرّفها الفريد (GUID).
date_start في حال استخدامه بمفرده، يقوم بحذف جميع الرسائل المسجلة من التاريخ المحدد.
date_end يستخدم مع تاريخ_البداية لحذف الرسائل ضمن نطاق زمني محدد.

مثال على الطلب:

GET https://api.smsmobileapi.com/deletesms/?apikey=YOUR_API_KEY&guid_message=GUID_OF_THE_MESSAGE

مثال على استجابة JSON:

{ "result": { "error": null, "count_delete": 1 } }

شرح الرد:

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

ملاحظة: يتم حذف الرسائل النصية القصيرة المخزنة في سجلات خادم SMSMobileAPI فقط. أما الرسائل النصية القصيرة المخزنة مسبقًا على الجهاز المحمول فلا يتم حذفها.

 

قائمة محادثات الرسائل النصية القصيرة

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

يتم تجميع كل محادثة حسب رقم الهاتف وتحتوي على رسائل SMS الواردة والصادرة ذات الصلة.

ملحوظة: تُحدد نقطة بدء المحادثة بواسطة origineConversation المعلمة:

  • receivedيتم اكتشاف المحادثات أولاً من الرسائل النصية القصيرة الواردة في logsmsreceive
  • sentيتم اكتشاف المحادثات أولاً من الرسائل النصية القصيرة المرسلة في logsmssent

ملحوظة: لو numero في حال عدم توفيرها، تُعيد واجهة برمجة التطبيقات (API) أحدث المحادثات فقط. بشكل افتراضي، تُعرض آخر المحادثات فقط. 20 يتم الرد على المحادثات.

ملحوظة: بالنسبة للرسائل النصية الصادرة، إذا timearea_of_message متاح (مثال: UTC+02يتم تحويل التاريخ المعروض تلقائيًا باستخدام هذه القيمة. ويُستخدم هذا التاريخ المُحوّل أيضًا في عملية الفرز.

ملحوظة: لو resume=1يتم عرض أحدث الرسائل فقط من كل محادثة. استخدم resume_line_how لتحديد عدد الرسائل الأخيرة التي يجب تضمينها.

نقطة النهاية:

يحصل بريد https://api.smsmobileapi.com/conversation/sms/list/

حدود: 

المعلمة وصف
apikey
مطلوب
مفتاح API الخاص بك.
origineConversation
مطلوب
يُحدد هذا الخيار نقطة بداية قائمة المحادثات. القيم المسموح بها: received أو sent.
numero
خياري
قم بتصفية النتائج لعرض رقم هاتف محدد واحد فقط.
date_from
خياري
فلتر تاريخ البدء للمحادثات والرسائل. التنسيق المقبول: YYYY-MM-DD أو قيمة التاريخ والوقت الكاملة.
date_to
خياري
فلتر تاريخ انتهاء المحادثات والرسائل. التنسيق المقبول: YYYY-MM-DD أو قيمة التاريخ والوقت الكاملة.
sort
خياري
ترتيب فرز المحادثات. القيم المسموح بها: DESC أو ASC. تقصير: DESC.
limit
خياري
الحد الأقصى لعدد المحادثات التي يجب الرد عليها عند numero غير متوفر. القيمة الافتراضية: 20.
resume
خياري
إذا تم ضبطه على 1يتم إرجاع أحدث الرسائل فقط من كل محادثة.
resume_line_how
خياري
عدد الرسائل الأخيرة التي يجب إرجاعها لكل محادثة عند resume=1. تقصير: 1.

تفاصيل السلوك: 

  • يتم قراءة الرسائل النصية الواردة من logsmsreceive.
  • يتم قراءة الرسائل النصية الصادرة من logsmssent.
  • الرسائل الواردة تعود دائمًا direction = "incoming".
  • الرسائل الصادرة تعود دائمًا direction = "outgoing".
  • اسم جهة الاتصال مأخوذ من logsmsreceive.alias عند توفرها.
  • بالنسبة للرسائل النصية القصيرة الواردة، يأتي معرف الجهاز المحمول من sIdentifiant_pour_read.
  • بالنسبة للرسائل النصية القصيرة الصادرة، يأتي معرف الجهاز المحمول من send_from_mobile_sIdentifiant.
  • بالنسبة للرسائل النصية القصيرة الصادرة، يتم تعديل التاريخ المعروض باستخدام timearea_of_message إذا لم يكن هذا الحقل فارغًا.

مثال 1 - عرض آخر المحادثات الواردة من الرسائل النصية القصيرة: 

GET https://api.smsmobileapi.com/conversation/sms/list/?apikey=YOUR_API_KEY&origineConversation=received

مثال 2 - عرض آخر المحادثات من الرسائل النصية القصيرة المرسلة:

GET https://api.smsmobileapi.com/conversation/sms/list/?apikey=YOUR_API_KEY&origineConversation=sent

مثال 3 - تصفية رقم هاتف محدد:

GET https://api.smsmobileapi.com/conversation/sms/list/?apikey=YOUR_API_KEY&origineConversation=received&numero=32470000001

مثال 4 - التصفية حسب نطاق التاريخ:

GET https://api.smsmobileapi.com/conversation/sms/list/?apikey=YOUR_API_KEY&origineConversation=received&date_from=2026-03-01&date_to=2026-03-31

مثال 5 - وضع الاستئناف مع آخر 3 رسائل لكل محادثة:

GET https://api.smsmobileapi.com/conversation/sms/list/?apikey=YOUR_API_KEY&origineConversation=sent&resume=1&resume_line_how=3

مثال على استجابة ناجحة: 

{ "success": true, "origineConversation": "received", "resume": 0, "resume_line_how": null, "conversations": [ { "phone_number": "+10470000001", "contact_alias": "John Doe", "messages": [ { "direction": "incoming", "message_id": "msg_1001", "date": "2026-03-13 08:45:12", "timestamp_utc": "2026-03-13T08:45:12Z", "message": "Hello, I would like more information.", "status": "received", "mobile_sid": "device_sid_1" }, { "direction": "outgoing", "message_id": "msg_1002", "date": "2026-03-13 10:46:03", "timestamp_utc": "2026-03-13T08:46:03Z", "message": "بالتأكيد، ماذا تريد أن تعرف؟", "status": "sent", "mobile_sid": "device_sid_2" } ] } ] }

حقول الاستجابة:

مجال وصف
success يشير إلى ما إذا كان الطلب قد تم بنجاح.
origineConversation الوضع الابتدائي المستخدم لإنشاء قائمة المحادثات.
resume يشير إلى ما إذا كان وضع الاستئناف مفعلاً.
resume_line_how عدد الأسطر الأخيرة التي تم إرجاعها لكل محادثة عند تفعيل وضع الاستئناف.
conversations مجموعة من المحادثات.
phone_number رقم الهاتف المستخدم لتحديد المحادثة.
contact_alias الاسم المستعار المرتبط برقم الهاتف عند توفره.
messages مجموعة من رسائل SMS داخل المحادثة.
direction incoming بالنسبة للرسائل النصية القصيرة المستلمة، outgoing بالنسبة للرسائل النصية القصيرة المرسلة.
message_id المعرف الفريد للرسالة.
date عرض تاريخ الرسالة. بالنسبة للرسائل النصية القصيرة الصادرة، يمكن تعديل هذه القيمة باستخدام timearea_of_message.
timestamp_utc الطابع الزمني للرسالة بتوقيت UTC.
message محتوى الرسالة.
status received بالنسبة للرسائل النصية الواردة، sent لإرسال الرسائل النصية القصيرة.
mobile_sid معرف الجهاز المحمول الذي استقبل الرسالة أو أرسلها.

مثال على الخطأ:

{ "success": false, "error": "المعامل المطلوب مفقود: apikey" }

ملحوظات:

  • لو numero في حال توفير رقم الهاتف هذا، فإن واجهة برمجة التطبيقات (API) لا تُرجع سوى المحادثة المرتبطة بهذا الرقم.
  • لو numero في حال عدم توفيرها، تقوم واجهة برمجة التطبيقات (API) بإرجاع أحدث المحادثات وفقًا لوضع المصدر المحدد.
  • يتم دمج الرسائل الواردة والصادرة في جدول زمني واحد لكل رقم هاتف.
  • يأخذ فرز الرسائل الصادرة التاريخ المحلي المعدل في الاعتبار عند timearea_of_message متوفر.
  • يُعد وضع الاستئناف مفيدًا للوحات المعلومات، والأدوات، والمعاينات، وملخصات المحادثات.

البوابة - قائمة الهواتف المحمولة المتصلة

قائمة الهواتف المحمولة المتصلة بشبكتك بوابة الرسائل القصيرة.

نقطة النهاية:

يحصل بريد https://api.smsmobileapi.com/gateway/mobile/list/

حدود:

المعلمةوصف
apikey
مطلوب
مفتاح API الخاص بك.
sidقم بالتصفية حسب معرف النظام المحدد (sIdentifiant_pour_check).
searchابحث في الحقول (المعرف، التاريخ، البطارية، الإصدار، الملصق...).

مثال:

GET https://api.smsmobileapi.com/gateway/mobile/list/?apikey=YOUR_API_KEY
ملاحظة: تتوفر إحصائيات الرسائل النصية القصيرة المستلمة بدءًا من الإصدار 3.0.33.3+ من تطبيق الهاتف المحمول.

بوابة - تحديث ملصق الهاتف المحمول

قم بتحديث التسمية (nom_reference) لجهاز جوال متصل.

نقطة النهاية:

يحصل بريد https://api.smsmobileapi.com/gateway/mobile/update/

حدود:

المعلمةوصف
apikey
مطلوب
مفتاح API الخاص بك.
sid
مطلوب
معرف الجهاز (sIdentifiant_pour_check).
label ملصق جديد
phone_number رقم هاتف جديد

مثال:

GET https://api.smsmobileapi.com/gateway/mobile/update/?apikey=YOUR_API_KEY&sid=SID&label=OfficePhone

مهم: الملصق مطلوب ولكن يمكن أن يكون فارغًا (label=).

البوابة - حذف جهاز جوال متصل

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

نقطة النهاية:

يحصل بريد https://api.smsmobileapi.com/gateway/mobile/delete/

حدود:

المعلمةوصف
apikey
مطلوب
مفتاح API الخاص بك.
sid
مطلوب
معرف الجهاز (sIdentifiant_pour_check).

مثال:

GET https://api.smsmobileapi.com/gateway/mobile/delete/?apikey=YOUR_API_KEY&sid=SID
 

Webhook – الرسائل القصيرة المستلمة

يرسل نظام webhook هذا طلب POST إلى عنوان URL المُهيأ كلما تم استلام رسالة نصية قصيرة. ويضمن النظام التحديثات في الوقت الفعلي من خلال تسليم تفاصيل الرسائل النصية القصيرة إلى عنوان URL الخاص بـ webhook المحدد.

كيفية تكوين Webhook في لوحة المعلومات

اتبع الخطوات التالية لإعداد عنوان URL الخاص بـ webhook في لوحة المعلومات:

  1. قم بتسجيل الدخول إلى حسابك على لوحة معلومات واجهة برمجة تطبيقات SMS Mobile.
  2. انتقل إلى إعدادات الويب هوك قسم.
  3. أدخل عنوان URL لخطاف الويب الخاص بك (على سبيل المثال، https://example.com/webhook-endpoint).
  4. انقر على حفظ Webhook زر. 
  5. بمجرد الحفظ، سيبدأ النظام في إرسال تفاصيل الرسائل القصيرة إلى عنوان URL الذي تم تكوينه.

حمولة الويب هوك

عند استلام رسالة نصية قصيرة، يرسل النظام الحمولة JSON التالية إلى عنوان URL الخاص بـ webhook الخاص بك:

{ "date": "2025-01-20", "hour": "10:15:00", "time_received": "2025-01-20 10:14:50", "message": "مرحباً، هذه رسالة اختبار.", "number": "+123456789", "guid": "abcde12345" }

حقول الحمولة:

  • تاريخ: التاريخ الذي تمت فيه إضافة الرسائل القصيرة (YYYY-MM-DD).
  • ساعة: الساعة التي تمت فيها إضافة الرسالة النصية القصيرة (ساعة:دقيقة:ثانية).
  • الوقت المستلم: الوقت الذي تم فيه استلام الرسالة النصية القصيرة.
  • رسالة: محتوى الرسالة النصية القصيرة. 
  • رقم: رقم هاتف المرسل.
  • الدليل: معرف فريد للرسالة القصيرة.

مثال على نقطة نهاية Webhook

يجب أن يكون الخادم جاهزًا للتعامل مع طلبات POST الواردة. فيما يلي مثال لنص PHP لمعالجة حمولة webhook:

اختبار Webhook

لاختبار تكوين خطاف الويب الخاص بك، استخدم أدوات مثل:

استكشاف الأخطاء وإصلاحها

  • تأكد من أن عنوان URL الخاص بـ webhook صحيح ويمكن الوصول إليه علنًا.
  • تأكد من أن الخادم الخاص بك يقوم بإرجاع رمز الحالة HTTP 200 للطلبات الناجحة.
  • تحقق من سجلات الخادم لديك بحثًا عن أي أخطاء في معالجة الحمولة.

الرسائل النصية القصيرة المُحسّنة

قريباً

المصادقة

 

تدعم واجهة برمجة تطبيقات SMSMobile طريقتين للمصادقة: استخدام مفتاح API بسيط أو بروتوكول OAuth2 مع معرف العميل وسر العميل.

1. مصادقة مفتاح API

 تتطلب هذه الطريقة مفتاح API يمكن تضمينه كمعامل في طلب GET أو POST.

2. مصادقة OAuth2

يوفر OAuth2 طريقة مصادقة أكثر أمانًا.
استخدم معرّف العميل وسر العميل للحصول على رمز الوصول، ثم قم بتضمينه في التفويض رأس الصفحة.

معرف العميل وسر العميل متاحان في لوحة المعلومات الخاصة بك.
قم بتنزيل التطبيق المحمول الآن أو ادخل إلى لوحة التحكم الخاصة بك.

الحصول على رمز الوصول

curl -X POST https://api.smsmobileapi.com/oauth2/token \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=client_credentials" \
-d "client_id=YOUR_CLIENT_ID" \
-d "client_secret=YOUR_CLIENT_SECRET"

استخدام رمز الوصول:

curl -X POST https://api.smsmobileapi.com/sendsms \
-H "التفويض: حامل رمز الوصول الخاص بك" \
-H "نوع المحتوى: application/x-www-form-urlencoded" \
-d "المستلمون=+1234567890" \
-d "الرسالة=مرحبا"

ما هي الطريقة التي يجب عليك استخدامها؟

- يستخدم مصادقة مفتاح API للتكامل السريع والمباشر.

- يستخدم مصادقة OAuth2 لتعزيز الأمان وقابلية التوسع.

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

عنوان URL لـ WSDL

https://api.smsmobileapi.com/sendsms/wsdl/sendsms.wsdl

حدود:

- recipients: رقم الهاتف المحمول للمستلم.
- message: الرسالة المراد إرسالها.
- apikey: مفتاح API الذي لديك أو سوف تتلقاه.

مثال

require_once "lib/nusoap.php";

$client = new nusoap_client("https://api.smsmobileapi.com/sendsms/wsdl/sendsms.wsdl", true);
$error = $client->getError();

$result = $client->call("sendSms", array("recipients" =>$_GET['recipients'],"message" =>$_GET['message'],"apikey" =>$_GET['apikey']));

print_r($result);

إرسال الرسائل القصيرة وواتساب

أمر cURL الأساسي

curl -X POST https://api.smsmobileapi.com/sendsms/ \
-d "recipients=PHONE_NUMBER" \
-d "message=YOUR_MESSAGE" \
-d "apikey=YOUR_API_KEY"
-d "sendwa=1"
-d "sendsms=1"

إرسال الرسائل القصيرة وواتساب

استخدم وحدة بايثون الرسمية الخاصة بنا: https://smsmobileapi.com/python/

import requests

url = "https://api.smsmobileapi.com/sendsms/"

payload = {"recipients":"PHONE_NUMBER","message":"YOUR_MESSAGE","apikey":"YOUR_API_KEY"}

response = requests.post(url, data=payload)
print(response.text)

SMS Mobile API - PHP SDK (Composer)

يتطلب الملحن smsmobileapi/sdk

جيت هاب: https://github.com/SmsMobileApi/smsmobileapi-php/tree/main

إرسال الرسائل القصيرة وواتساب

const url = "https://api.smsmobileapi.com/sendsms/";
const data = {recipients:"PHONE_NUMBER", message:"YOUR_MESSAGE", apikey:"YOUR_API_KEY"};
fetch(url,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams(data)})
.then(r=>r.text()).then(console.log);

إرسال الرسائل القصيرة وواتساب

const axios = require("axios");
axios.post("https://api.smsmobileapi.com/sendsms/", {recipients:"PHONE_NUMBER", message:"YOUR_MESSAGE", apikey:"YOUR_API_KEY"})
.then(r=>console.log(r.data));

إرسال الرسائل القصيرة وواتساب

require "net/http"
require "uri"
uri = URI.parse("https://api.smsmobileapi.com/sendsms/")
req = Net::HTTP::Post.new(uri)
req.set_form_data({"recipients"=>"PHONE_NUMBER","message"=>"YOUR_MESSAGE","apikey"=>"YOUR_API_KEY"})
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true){|http| http.request(req)}
puts res.body
اعتمادًا على إصدار Android المثبت على الهاتف المحمول، قد يعيق نظام التشغيل الأداء السليم لإرسال واستقبال رسائل SMS تلقائيًا عندما لا يكون تطبيق SmsMobileApi في المقدمة.
تنشأ هذه المشكلة من عملية تحاول التشغيل في الخلفية عندما لا يتم تشغيل التطبيق بشكل نشط. ومع ذلك، نظرًا لإجراءات تحسين البطارية في Android، والتي تختلف عبر الإصدارات المختلفة، فقد لا يتم تشغيل هذه العملية في الخلفية بشكل صحيح. تم تصميم تحسين البطارية في Android للحد من نشاط التطبيقات في الخلفية للحفاظ على عمر البطارية، وهو ما قد يؤثر عن غير قصد على التطبيقات التي تتطلب عمليات خلفية للعمل بشكل صحيح.

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


الأسئلة الشائعة للمطورين

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

ابدأ مع SMSmobileAPI اليوم!

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

تنزيل التطبيق
💬 الدردشة المباشرة
💬 الدردشة المباشرة متاحة
هل لديك أي أسئلة أو تحتاج إلى مساعدة؟
فريقنا هنا لمساعدتك!

أدخل عنوان بريدك الإلكتروني
لمساعدتنا في متابعة طلبك:
لوحة القيادة