الترحيب
مرحبا بكم من جديد في مزود خدمة الرسائل النصية TURKEY SMS هذا القسم يضم كافة التفاصيل المتعلقة بالربط المباشر لخدمة الرسائل النصية ضمن حسابكم لتتمكنوا من الإرسال مباشرة عبر تطبيقاتكم او أي نظام برمجي لديكم نوفر لكم كافة الحلول البرمجية لتتمكنوا من القيام بعملية الربط بشكل سهل وسريع
التعريف بالخدمة
الربط البرمجي من خلال الـ API خيار يمكنك من إنشاء عملية ربط برمجي بين حسابك في خدمة الرسائل مع أي تطبيق خارجي، مثل موقع إنترنت - تطبيق موبايل - برنامج محاسبة - برنامج إدارة العملاء .. الخ نظام الرسائل النصية يدعم جميع لغات البرمجة لإستكمال عملية الربط البرمجي متل PHP - JAVA - C++ - ASP يمكنك ربط حسابك ببساطة من خلال التوجه لحسابك بعد تسجيل الدخول لخيار الربط المباشر API، وسيقوم النظام بإرشادك لطريقة الربط بسهولة - هل هناك تكلفة إضافية لطلب ربط مباشر ؟ بالطبع لن يكون هناك تكلفة إضتفية لعملية الربط البرمجي، كما ان فريق الدعم الفني سيكون متوفر لمساعدتكم في إعداد الربط المباشر وتجهيزه بشكل كامل لكم
المتطلبات والشروط
حتى تتمكنوا من إستخدام خدمة الربط المباشر يجب ان تتوفر لديكم بعض الشروط ضمن حسابكم ليكون الربط مع خدمة الرسائل صحيح وبدون أي مشكلة وهذه الشروط هي
الحساب فعال |
بحيث يكون حسابكم فعال في خدمة الرسائل ولوحة التحكم الخاصة بكم مفعلة بشكل كامل |
---|---|
الرصيد |
يجب ان يتوفر في حسابكم رصيد رسائل حتى تتمكنوا من إستخدام الربط المباشر |
عنوان الإرسال |
يجب ان يتوفر في حسابكم عنوان إرسال Sender ID مفعل بشكل كامل |
بدء الإستخدام
من أجل البدء بإستخدام الربط المباشر لمزود خدمة الرسائل النصية
تسجيل الدخول لحسابكم
والتوجه من القائمة الرئيسية لقسم حسابي - الربط المباشر api
ستشاهدون بيانات الحساب الخاصة بكم من أجل البدء بإستخدام الربط المباشر مع حسابكم
المصادقة
للاتصال بواجهة برمجة تطبيقات الرسائل النصية (SMS API)، استخدم عنوان URL التالي:
/api/v3/authenticate/login
المعلمات (Parameters)
$api_key = '';
$report = '';
$response_type = '';
وصف المعلمات
$api_key |
varchar | مفتاح API الخاص بحسابك. |
---|---|---|
$report |
int | خيار عرض تفاصيل عملية الإرسال (1 لتقرير، 0 للإلغاء). |
$response_type |
int | نوع الاستجابة (JSON أو Array). |
أمثلة على الاستجابات (إذا كان خيار التقرير مفعلاً)
رموز الاستجابة
Array
(
[result] => true
[result_code] => TS-1046
[result_message] => operation_success
[user_id] => USERID
[account_name] => ACCOUNTNAME
)
تفاصيل الاستجابة
result |
نتيجة العملية (true للنجاح، false للفشل). |
---|---|
result_code |
رمز الحالة (راجع رموز الاستجابة للحصول على قائمة الرموز). |
result_message |
رسالة بخصوص نجاح أو فشل العملية. |
user_id |
يتم عرض معرف الحساب الذي تمت عملية المصادقة من أجله عبر API. |
account_name |
يتم عرض اسم الحساب الذي تمت عملية المصادقة من أجله عبر API. |
إرسال رسالة من خلال الـ api
الخطوات التي يجب عليكم إتباعها حتى تتمكنوا من البدء بإستخدام خدمة الربط المباشر مع مزود خدمة الرسائل النصية
رابط خدمة SMS API من أجل عملية الربط المباشر هو
/api/v3/gonder/add-content
المتغيرات المرسلة من خلال الرابط هي
$title = '';
$api_key = '';
$text = '';
$sentto = '';
$report = '';
$sms_lang = '';
$response_type = '';
شرح المتغيرات المرسلة من خلال الرابط
title$ |
varchar | يكتب هنا عنوان الإرسال الخاص بكم كما موجود في حسابكم مع مراعاة حالة الأحرف |
---|---|---|
api_key$ |
varchar | مفتاح الإرسال الخاص بكم الموجود في حسابكم يوضع هنا |
text$ |
text | نص الرسالة المراد إرسال |
sentto$ |
int | الرقم المراد إرسال الرسالة له .. يجب ان لايتضمن احرف او رموز |
report$ |
int | خيار لعرض تفاصيل عملية الإرسال في حال كانت القيمة 1 يظهر التقرير او 0 للإلغاء |
sms_lang$ |
int | خيار لغة محتوى الرسالة المرسل حيث ان رقم 2 هو للغة العربية ورقم 0 للغة الإنكليزية |
response_type$ |
int | خيار عرض الرد من قبل سيرفر الإرسال بلغة برمجية معينة |
بعد إجراء عملية الإرسال سيتم ارسال رد من السيرفر على العملية
في حال كان خيار ظهور التقرير مفعل
يمكنكم متابعة أكواد الإرسال من خلال
شرح أكواد الإرسال
مثال على الرد المرسل من السيرفر بعد عملية الإرسال
Array
(
[result] => true
[sms_id] => 1000007721
[number_of_sms] => 1
[result_code] => TS-1024
[result_message] => The message was sent successfully
[sms_lang] => Arabic
[country] => Turkey-TR
)
شرح المتغيرات المرسلة من السيرفر
result |
نتيجة العملية في حال النجاح يظهر true وفي حال فشل الإرسال يظهر false |
---|---|
sms_id |
رقم العملية المسجل ID الذي يمكن من خلاله متابعة حالة الرسالة |
number_of_sms |
عدد الرسائل او الرصيد الذي سيخصم من حسابكم بعد إرسال الرسالة |
result_code |
كود العملية .. يمكنكم متابعة قسم أكواد الإرسال لمشاهدة كامل التفاصيل |
result_message |
رسالة العملية المرسلة .. تظهر لكم رسالة بالعملية في حال النجاح او الفشل |
sms_lang |
يظهر محتوى الرسالة التي ارسالت بأي لغة كانت |
country |
اسم الدولة التي تم ارسال الرسالة لها |
إرسال رسالة واحدة لأكثر من رقم - نص واحد لمجموعة من الأرقام
يتيح لك هذا الخيار إرسال رسالة واحدة لمجموعة من الأرقام، مما يسمح بالتواصل الفعّال مع عدد كبير من المستخدمين في آن واحد. بغض النظر عن عدد الأرقام، يمكنكم إرسال الرسالة بسهولة وفاعلية، مما يوفر الوقت والجهد.
رابط الإرسال الجماعي من اجل الإرسال
/api/v3/gruba-gonder/post/tek-metin-gonderimi/
تتضمن المتغيرات المرسلة من خلال الرابط ما يلي:
$title = '';
$api_key = '';
$text = '';
$sentto = '';
$report = '';
$sms_lang = '';
$response_type = '';
شرح المتغيرات المرسلة من خلال الرابط:
title$ |
varchar | يُحدد هنا عنوان الإرسال الخاص بكم كما هو موجود في حسابكم، مع مراعاة حالة الأحرف. |
---|---|---|
api_key$ |
varchar | يُحدد مفتاح الإرسال الخاص بكم الموجود في حسابكم ويُضاف هنا. |
text$ |
text | يُحدد نص الرسالة التي تُريدون إرسالها. |
sentto$ |
array | ييتم إضافة الأرقام التي سيتم الإرسال لها على شكل ARRAY مثال: array('905000000001','905000000002') |
report$ |
int | يُحدد خيار عرض تقرير عملية الإرسال، حيث يُظهر التقرير عندما يكون القيمة 1 ويُلغى عندما تكون القيمة 0. |
sms_lang$ |
int | يُحدد لغة محتوى الرسالة المرسلة، حيث يكون الرقم 2 للغة العربية والرقم 0 للغة الإنجليزية. |
response_type$ |
int | يُحدد خيار عرض الرد من قبل سيرفر الإرسال بلغة برمجية محددة. |
بعد إجراء عملية الإرسال، سيُرسل رد من السيرفر يوضح نتيجة العملية. في حال تم تفعيل خيار ظهور التقرير، يُمكنكم متابعة أكواد الإرسال من خلال شرح أكواد الإرسال.
مثال على الرد المرسل من السيرفر بعد عملية الإرسال:
Array
(
[result] => true
[rapor_id] => 123456
[total_mobile_num] => 2
[number_of_sms] => 1
[result_code] => TS-1024
[result_message] => The message was sent successfully
[sms_lang] => Arabic
[country] => Turkey-TR
)
شرح المتغيرات المرسلة من السيرفر:
result |
نتيجة العملية؛ يظهر true في حال نجاح الإرسال وfalse في حال فشله. |
---|---|
rapor_id |
رقم التقرير لعملية الإرسال. |
total_mobile_num |
عدد الأرقام التي تم إرسال الرسالة إليها. |
number_of_sms |
عدد الرسائل أو الرصيد المخصوم من حسابكم بعد إرسال الرسالة. |
result_code |
كود العملية؛ يمكنكم متابعة قسم أكواد الإرسال لمعرفة التفاصيل الكاملة. |
result_message |
رسالة توضح نتيجة العملية؛ تظهر رسالة بالعملية في حال نجاحها أو فشلها. |
sms_lang |
يوضح لغة محتوى الرسالة المرسلة. |
country |
اسم الدولة التي تم إرسال الرسالة إليها. |
إرسال رسالة جماعية - مجموعة أرقام ونصوص مختلفة لكل رقم نص خاص به
يوفر لك هذا الخيار إمكانية إرسال رسائل مخصصة لعدد كبير من الأرقام، حيث يمكن لكل رقم أن يتلقى نصًا مختلفًا برسالة واحدة. هذا يتيح لك التواصل بفعالية وسرعة مع مجموعة كبيرة من المستخدمين في وقت واحد، مما يوفر الوقت والجهد.
رابط الإرسال الجماعي من أجل الإرسال - مجموعة أرقام ونصوص مختلفة
/api/v3/gruba-gonder/post/coklu-metin-gonderimi/
تتضمن المتغيرات المرسلة من خلال الرابط ما يلي:
$title = '';
$api_key = '';
$text = '';
$sentto = '';
$report = '';
$sms_lang = '';
$response_type = '';
شرح المتغيرات المرسلة من خلال الرابط:
title$ |
varchar | يُحدد هنا عنوان الإرسال الخاص بكم كما هو موجود في حسابكم، مع مراعاة حالة الأحرف. |
---|---|---|
api_key$ |
varchar | يُحدد مفتاح الإرسال الخاص بكم الموجود في حسابكم ويُضاف هنا. |
text$ |
array | يتم إضافة النصوص في مصفوفة (ARRAY)، على سبيل المثال: array('text_01', 'text_02'). يجب التأكد من تطابق ترتيب النصوص في المصفوفة مع ترتيب الأرقام في مصفوفة الأرقام. |
sentto$ |
array | يتم إضافة الأرقام التي سيتم الإرسال إليها في مصفوفة (ARRAY)، على سبيل المثال: array('905000000001', '905000000002'). |
report$ |
int | يُحدد خيار عرض تقرير عملية الإرسال، حيث يُظهر التقرير عندما يكون القيمة 1 ويُلغى عندما تكون القيمة 0. |
sms_lang$ |
int | يُحدد لغة محتوى الرسالة المرسلة، حيث يكون الرقم 2 للغة العربية والرقم 0 للغة الإنجليزية. |
response_type$ |
int | يُحدد خيار عرض الرد من قبل سيرفر الإرسال بلغة برمجية محددة. |
بعد إجراء عملية الإرسال، سيُرسل رد من السيرفر يوضح نتيجة العملية. في حال تم تفعيل خيار ظهور التقرير، يُمكنكم متابعة أكواد الإرسال من خلال شرح أكواد الإرسال.
مثال على الرد المرسل من السيرفر بعد عملية الإرسال:
Array
(
[result] => true
[rapor_id] => 123456
[total_mobile_num] => 2
[number_of_sms] => 1
[result_code] => TS-1024
[result_message] => The message was sent successfully
[sms_lang] => Arabic
[country] => Turkey-TR
)
شرح المتغيرات المرسلة من السيرفر:
result |
نتيجة العملية؛ يظهر true في حال نجاح الإرسال وfalse في حال فشله. |
---|---|
rapor_id |
رقم التقرير لعملية الإرسال. |
total_mobile_num |
عدد الأرقام التي تم إرسال الرسالة إليها. |
number_of_sms |
عدد الرسائل أو الرصيد المخصوم من حسابكم بعد إرسال الرسالة. |
result_code |
كود العملية؛ يمكنكم متابعة قسم أكواد الإرسال لمعرفة التفاصيل الكاملة. |
result_message |
رسالة توضح نتيجة العملية؛ تظهر رسالة بالعملية في حال نجاحها أو فشلها. |
sms_lang |
يوضح لغة محتوى الرسالة المرسلة. |
country |
اسم الدولة التي تم إرسال الرسالة إليها. |
إرسال رسالة من خلال الـ api - GET
الخطوات التي يجب عليكم إتباعها حتى تتمكنوا من البدء بإستخدام خدمة الربط المباشر مع مزود خدمة الرسائل النصية
المتغيرات المرسلة من خلال الرابط هي - المتغيرات والخيارات كما ذكرت في الأعلى
api_key=API_KEY_HERE&mobile=MOBILE_HERE&title=TITLE_HERE&text=SMS_TEXT_HERE&report=1&lang=2&response_type=json
إرسال OTP SMS
خدمة ال OTP هي اختصار لكلمة ( One Time Passcode ) تكون عبارة عن كود ينشئ بشكل عشوائي ويستخدم لمرة واحدة فقط. يتم إرسال هذا الكود بواسطة خدمة الرسائل النصية SMS ويستخدم في عمليات التحقق وتسجيل الدخول وتأكيد الحساب, كما يتم استخدام هذه الخدمة مع كلمات المرور بما يعرف بالمصادقة الثنائية والتي تزيد من طبقة الأمان لعمليات تسجيل الدخول الخاصة بكم. من أهم ميزات خدمة ال OTP هي أن كلمة المرور تستخدم لمرة واحدة فقط وهذا يمنع محاولات الاختراق وتخمين كلمة المرور لأنها تتبدل بشكل دائم وعشوائي.
رابط خدمة SMS OTP من أجل عملية الربط المباشر هو [GET]
/api/v3/otp/otp_get.php
رابط خدمة SMS OTP من أجل عملية الربط المباشر هو [POST]
/api/v3/otp_post/sent-otp
المتغيرات المرسلة من خلال الرابط هي
$api_key = '';
$mobile = '';
$digits = '';
$report = '';
$lang = '';
$response_type = '';
شرح المتغيرات المرسلة من خلال الرابط
api_key$ |
varchar | مفتاح الإرسال الخاص بكم الموجود في حسابكم يوضع هنا |
---|---|---|
mobile$ |
int | الرقم المراد إرسال الرسالة له .. يجب ان لايتضمن احرف او رموز |
digits$ |
int | عدد خانات الكود المرسل للتحقق |
report$ |
int | خيار لعرض تفاصيل عملية الإرسال في حال كانت القيمة 1 يظهر التقرير او 0 للإلغاء |
lang$ |
int | خيار لغة محتوى الرسالة المرسل حيث ان رقم 2 هو للغة العربية ورقم 0 للغة الإنكليزية |
response_type$ |
int | خيار عرض الرد من قبل سيرفر الإرسال بلغة برمجية معينة |
بعد إجراء عملية الإرسال سيتم ارسال رد من السيرفر على العملية
مثال على الرد المرسل من السيرفر بعد عملية الإرسال
Array
(
[result] => true
[otp_code] => 123456
[sms_id] => 1000007721
[number_of_sms] => 1
[result_code] => TS-1024
[result_message] => The message was sent successfully
[sms_lang] => Arabic
[country] => Turkey-TR
)
شرح المتغيرات المرسلة من السيرفر
result |
نتيجة العملية في حال النجاح يظهر true وفي حال فشل الإرسال يظهر false |
---|---|
otp_code |
هو كود التحقق الذي تم إرساله في الرسالة الى الرقم |
sms_id |
رقم العملية المسجل ID الذي يمكن من خلاله متابعة حالة الرسالة |
number_of_sms |
عدد الرسائل او الرصيد الذي سيخصم من حسابكم بعد إرسال الرسالة |
result_code |
كود العملية .. يمكنكم متابعة قسم أكواد الإرسال لمشاهدة كامل التفاصيل |
result_message |
رسالة العملية المرسلة .. تظهر لكم رسالة بالعملية في حال النجاح او الفشل |
sms_lang |
يظهر محتوى الرسالة التي ارسالت بأي لغة كانت |
country |
اسم الدولة التي تم ارسال الرسالة لها |
خيارات OTP SMS
digits$ |
هو يحدد عدد خانات الكود الذي سيتم إرساله الى الرقم
في حال كانت القيمة
4
سيكون الكود مؤلف من 4 خانات [0000]
في حال كانت القيمة 5
سيكون الكود مؤلف من 5 خانات [00000]
في حال كانت القيمة 6
سيكون الكود مؤلف من 6 خانات [000000]
|
---|
خيارات لغة محتوى الرسالة
sms_lang$ |
في حال كانت القيمة لهذا المتغير
0
سيكون محتوى الرسالة باللغة الإنكليزية
وفي حال كانت قيمة هذا المتغير 1
سيكون محتوى الرسالة باللغة التركية يدعم الأحرف التركية
وفي حال كانت قيمة هذا المتغير 2
سيكون محتوى الرسالة يدعم اللغة العربية
|
---|
خيار الرد
response_type$ |
في حال كانت قيمة المتغير
json
سيكون الرد بصيغة json
وفي حال كانت قيمة المتغير php
سيكون الرد بصيغة php
|
---|
إرسال OTP SMS متقدم
خدمة ال OTP هي اختصار لكلمة ( One Time Passcode ) الخيار المتقدم يحتوي على خيارات إضافة بعملية إرسال الرسائل مثل التحكم بالنص المرسل مع خيار تحديد مكان الكود عند كتابة النص
رابط خدمة SMS OTP من أجل عملية الربط المباشر هو [POST] الخيار المتقدم
/api/v3/otp_post_detailed/sent-otp
المتغيرات المرسلة من خلال الرابط هي
$api_key = '';
$mobile = '';
$text = '';
$digits = '';
$report = '';
$lang = '';
$title = '';
$response_type = '';
شرح المتغيرات المرسلة من خلال الرابط
api_key$ |
varchar | مفتاح الإرسال الخاص بكم الموجود في حسابكم يوضع هنا |
---|---|---|
mobile$ |
int | الرقم المراد إرسال الرسالة له .. يجب ان لايتضمن احرف او رموز |
text$ |
varchar | النص المراد إرساله ضمن الرسالة النصية |
digits$ |
int | عدد خانات الكود المرسل للتحقق |
report$ |
int | خيار لعرض تفاصيل عملية الإرسال في حال كانت القيمة 1 يظهر التقرير او 0 للإلغاء |
lang$ |
int | خيار لغة محتوى الرسالة المرسل حيث ان رقم 2 هو للغة العربية ورقم 0 للغة الإنكليزية |
title$ |
varchar | يكتب هنا عنوان الإرسال الخاص بكم كما موجود في حسابكم مع مراعاة حالة الأحرف |
response_type$ |
int | خيار عرض الرد من قبل سيرفر الإرسال بلغة برمجية معينة |
بعد إجراء عملية الإرسال سيتم ارسال رد من السيرفر على العملية
مثال على الرد المرسل من السيرفر بعد عملية الإرسال
Array
(
[result] => true
[otp_code] => 123456
[sms_id] => 1000007721
[number_of_sms] => 1
[result_code] => TS-1024
[result_message] => the_SMS_has_been_sent_successfully
[sms_lang] => Arabic
[content_type] => High_quality
[country] => Turkey-TR
)
شرح المتغيرات المرسلة من السيرفر
result |
نتيجة العملية في حال النجاح يظهر true وفي حال فشل الإرسال يظهر false |
---|---|
otp_code |
هو كود التحقق الذي تم إرساله في الرسالة الى الرقم |
sms_id |
رقم العملية المسجل ID الذي يمكن من خلاله متابعة حالة الرسالة |
number_of_sms |
عدد الرسائل او الرصيد الذي سيخصم من حسابكم بعد إرسال الرسالة |
result_code |
كود العملية .. يمكنكم متابعة قسم أكواد الإرسال لمشاهدة كامل التفاصيل |
result_message |
رسالة العملية المرسلة .. تظهر لكم رسالة بالعملية في حال النجاح او الفشل |
sms_lang |
يظهر محتوى الرسالة التي ارسالت بأي لغة كانت |
country |
اسم الدولة التي تم ارسال الرسالة لها |
خيارات OTP SMS المتقدمة
text$ |
النص المراد إرساله ضمن الرسالة النصية يدمج مع الكود المرسل
طريقة الدمج تكون بكتابة الكلمة التالية بالمكان المراد اضافة الكود ضمن محتوى الرسالة
مثال: النص المراد إرساله هو مرحبا بك في خدمتنا كود التفعيل الخاص بك هو 0000
بدل الكود نضيف الكلمة التالية
TS_CODE
في المكان المراد طباعة الكود ضمن المحتوى
وسيقوم النظام بإستبدال هذه الكلمة بكود التحقق تلقائيا مثال: مرحبا بك في خدمتنا كود التفعيل الخاص بك هو TS_CODE كما يمكن إضافة سطر بين الكود والنص المراد عن طريق إضافة الأحرف التالية TS-L
سيتم إستبدالها بسطر ليكون النص المضاف بهذا الشكل
مرحبا بك في خدمتنا كود التفعيل الخاص بك هو TS_CODE TS-L وستكون النتيجة مرحبا بك في خدمتنا كود التفعيل الخاص بك هو 00000 |
---|
digits$ |
هو يحدد عدد خانات الكود الذي سيتم إرساله الى الرقم
في حال كانت القيمة
4
سيكون الكود مؤلف من 4 خانات [0000]
في حال كانت القيمة 5
سيكون الكود مؤلف من 5 خانات [00000]
في حال كانت القيمة 6
سيكون الكود مؤلف من 6 خانات [000000]
|
---|
خيارات لغة محتوى الرسالة
sms_lang$ |
في حال كانت القيمة لهذا المتغير
0
سيكون محتوى الرسالة باللغة الإنكليزية
وفي حال كانت قيمة هذا المتغير 1
سيكون محتوى الرسالة باللغة التركية يدعم الأحرف التركية
وفي حال كانت قيمة هذا المتغير 2
سيكون محتوى الرسالة يدعم اللغة العربية
|
---|
خيار الرد
response_type$ |
في حال كانت قيمة المتغير
json
سيكون الرد بصيغة json
وفي حال كانت قيمة المتغير php
سيكون الرد بصيغة php
|
---|
شرح أكواد الرد
عند القيام بعملية الإرسال من خلال الربط المباشر api سيرسل لكم السيرفر رد بالعملية عبارة عن كود
هذه الاكواد تشرح لكم نتيجة العملية التي قمتم بها
هل تم الإرسال بنجاح ام لم يتم وفي حال لم يتم ماهو السبب
شرح ومعاني أكواد الإرسال
TS-1024 |
تم إرسال الرسالة بنجاح |
---|---|
TS-1025 |
رقم الموبايل لم يتم كتابته .. رقم الموبايل فارغ |
TS-1026 |
نص الرسالة فارغ .. لم تتم كتابة نص للرسالة |
TS-1027 |
لايوجد في حسابكم رصيد كافي من أجل عملية الإرسال |
TS-1028 |
عنوان الإرسال Sender ID غير فعال في حسابكم |
TS-1029 |
عنوان الإرسال غير موجود .. يرجى التأكد من كتابة العنوان بشكل صحيح |
TS-1030 |
حسابكم غير فعال في مزود خدمة الرسائل النصية |
TS-1031 |
مفتاح الإتصال api-key غير صحيح |
TS-1032 |
الرقم المرسل له الرسالة دولي خارج تركيا وحسابكم غير مفعل للإرسال الدولي |
TS-1033 |
البيانات المرسلة من خلال الرابط غير صحيحة |
TS-1034 |
رقم الموبايل المرسل له الرسالة غير صحيح |
TS-1060 |
لقد تجاوزت عدد الرسائل المرسلة في آخر دقيقة |
TS-1061 |
مفتاح API غير مفعل للإرسال (POST) |
TS-1062 |
مفتاح API غير مفعل للإرسال (GET) |
TS-1050 |
مفتاح API فارغ وغير مكتوب |
TS-1051 |
عنوان الإرسال فارغ وغير مكتوب |
TS-1052 |
عنوان الإرسال SenderID غير مكتوب |
TS-1063 |
التحقق من حالة الرسالة لم يتم تفعيله لمفتاح API |
TS-1064 |
التحقق من حالة الرسالة ناجح |
TS-1065 |
التحقق من الرصيد لم يتم تفعيله لمفتاح API الخاص بحسابك |
TS-1022 |
الرقم لم يتلق الرسالة |
TS-1023 |
الرقم خارج نطاق التغطية ولم يتلق الرسالة بعد |
TS-1070 |
الإرسال المجدول - لم يتم كتابة التاريخ. يرجى تحديد التاريخ أو كتابته بشكل صحيح. |
TS-1071 |
الإرسال المجدول - لم يتم كتابة الوقت. يرجى تحديد التوقيت أو كتابته بشكل صحيح. |
TS-1072 |
لا يمكن إرسال رسالة مجدولة بتاريخ أو توقيت من الماضي. يرجى التحقق من التاريخ والتوقيت مجدداً. |
الإستعلام عن حالة الرسالة المرسلة SMS Status GET
يمكن الاستعلام عن حالة الرسالة المرسلة من خلال الرابط المباشر ومعرفة تفاصيل الرسالة والرصيد وتأكيد الوصول
/api/v3/sms-durumu/sms_durumu.php
المتغيرات المرسلة من خلال الرابط هي
$api_key = '';
$sms_id = '';
$response_type = '';
شرح المتغيرات المرسلة من خلال الرابط
api_key$ |
varchar | مفتاح الإرسال الخاص بكم الموجود في حسابكم يوضع هنا |
---|---|---|
sms_id$ |
int | المعرف الخاص بالرسالة |
response_type$ |
int | خيار عرض الرد من قبل سيرفر الإرسال بلغة برمجية معينة |
بعد إجراء عملية الإرسال سيتم ارسال رد من السيرفر على العملية
مثال على الرد المرسل من السيرفر
Array
(
[result] => true
[sender_id] => SenderID
[date_of_sending] => 2021-01-01
[time_of_sending] => 13:10:00
[sms_status] => Number received the message
[sms_status_code] => TS-1024
[sms_balance] => 1 SMS
[operator] => Turkcell
)
شرح المتغيرات المرسلة من السيرفر
result |
نتيجة العملية في حال النجاح يظهر true وفي حال فشل الإرسال يظهر false |
---|---|
sender_id |
معرف الارسال او عنوان الارسال الذي تم ارسال الرسالة من خلاله |
date_of_sending |
تاريخ إرسال الرسالة |
time_of_sending |
وقت إرسال الرسالة |
sms_status |
رسالة بحالة الرسالة - تم التسليم - لم يتم التسليم - الرقم خارج التغطية |
sms_status_code |
كود عملية الحالة |
sms_balance |
الرصيد المخصوم من الحساب نتيجة عملية الارسال |
operator |
اسم شركة الإتصال التابع لها الرقم |
الاستعلام عن حالة التقرير
تتيح لك خدمة الاستعلام عن حالة التقرير من خلال واجهة API إمكانية متابعة حالة الرسائل النصية التي تم إرسالها. يوجد طريقتان للاستعلام: الطريقة الأساسية والطريقة التفصيلية. يمكن استخدام هذه الخدمة بسهولة عن طريق إرسال طلب POST
إلى واجهة API مع مجموعة من المتغيرات.
الخيار الأول: الاستعلام عن التقرير (بسيط)
يتيح لك هذا الخيار الاستعلام عن حالة التقرير دون التطرق إلى عرض الأرقام الفردية المرسلة. يمكن الحصول على ملخص التقرير عن طريق إرسال طلب إلى الرابط التالي:
turkeysms.com.tr/api/v3/rapor/temel
المتغيرات التي يجب إرسالها مع الطلب:
$api_key = ''; // مفتاح API الخاص بحسابك
$raporid = ''; // رقم تعريف التقرير
$response_type = ''; // نوع الاستجابة (JSON أو PHP)
وصف المتغيرات:
$api_key |
API Key الخاص بحسابك. هذا المفتاح يضمن أن الطلب يأتي من مصدر موثوق به. |
---|---|
$raporid |
معرف التقرير الذي تريد الاستعلام عنه. |
$response_type |
تنسيق الاستجابة (JSON أو PHP) بناءً على حاجة التطبيق. |
مثال على استجابة بسيطة:
Array
(
"result" => true,
"status_code" => "TS-1064",
"report_id" => "123456",
"sending_date" => "2024-09-19",
"sending_time" => "19:35:38",
"report_status" => "Report dispatched successfully.",
"number_verification_status" => "Undergoing number verification.",
"total_mobile_numbers" => "2492",
"sms_sender_id" => "TURKEY SMS",
"numbers_received" => "1968",
"numbers_not_received" => "0",
"invalid_numbers" => "0",
"blocked_numbers" => "0",
"turkcell_count" => "860",
"turktelekom_count" => "566",
"vodafone_count" => "320",
"message_validity_duration" => "1440"
)
الخيار الثاني: الاستعلام عن التقرير (تفصيلي)
يتيح لك هذا الخيار الاستعلام عن التقرير بشكل تفصيلي، بما في ذلك عرض الأرقام الفردية التي تم إرسال الرسائل إليها. يمكن استخدام هذا الخيار عبر الرابط التالي:
turkeysms.com.tr/api/v3/rapor/detayli
المتغيرات المرسلة هي نفسها مثل الخيار الأول، لكن الرد سيكون أكثر تفصيلاً ويشمل قائمة الأرقام وحالة كل منها.
مثال على استجابة تفصيلية:
Array
(
"result" => true,
"status_code" => "TS-1064",
"report_id" => "123456",
"sending_date" => "2024-09-19",
"sending_time" => "19:35:38",
"report_status" => "Report dispatched successfully.",
"number_verification_status" => "Undergoing number verification.",
"total_mobile_numbers" => "2492",
"sms_sender_id" => "TURKEY SMS",
"numbers" => array(
array(
"number_id" => 1,
"phone_number" => "5551234567",
"sent_at" => "2024-09-19 19:35:38",
"done_at" => "2024-09-19 19:36:01",
"sms_count" => 1,
"sms_status" => "Number received the message",
"operator" => "TURKCELL"
),
// يتم عرض باقي الأرقام بنفس التنسيق
)
)
يمكنك استخدام هذه الخدمة لتتبع حالة الرسائل النصية الجماعية والتأكد من إيصالها إلى الأرقام المستهدفة. الخيار التفصيلي يعد الأمثل عند الحاجة إلى معلومات دقيقة عن حالة كل رقم على حدة.
الإستعلام عن الرصيد [POST]
يمكن الإستعلام عن الرصيد المتوفر في حسابكم - الرصيد المحلي والرصيد الدولي
turkeysms.com.tr/api/v3/bakiye_sorgulama/add-content
المتغيرات المرسلة للإستعلام
$api_key = '';
$response_type = '';
شرح المتغيرات المرسلة من خلال الرابط
api_key$ |
varchar | مفتاح الإرسال الخاص بكم الموجود في حسابكم يوضع هنا |
---|---|---|
response_type$ |
int | خيار عرض الرد من قبل سيرفر الإرسال بلغة برمجية معينة |
بعد إجراء عملية الإرسال سيتم ارسال رد من السيرفر على العملية
مثال على الرد المرسل من السيرفر
Array
(
[result] => true
[result_code] => TS-1040
[result_message] => operation_success
[api_key] => api_key
[local_balance_sms] => 1
[international_balance_tl] => 1
)
شرح المتغيرات المرسلة من السيرفر
result |
نتيجة العملية في حال النجاح يظهر true وفي حال فشل الإرسال يظهر false |
---|---|
result_code |
كود العملية |
result_message |
محتوى رسالة العملية |
api_key |
هنا يظهر مفتاح الإتصال الخاص بالحساب |
local_balance_sms |
الرصيد المحلي - داخل تركيا يظهر كعدد رسائل |
international_balance_tl |
الرصيد الدولي - يظهر كقيمة مالية بالليرة |
الإرسال الدولي
يقصد بمصطلح ( الرسائل الدولية ) الرسائل التي يتم إرسالها خارج حدود الجمهورية التركية
تشمل كل الأرقام التي ( لاتبدأ ) بالرمز الدولي ( 90+ - 0090 )
خدمة Turkey SMS تمكنك من إرسال رسالة نصية من خلال حسابك إلى أي دولة في العالم
لكن يتوجب عليك أن تقوم بشحن رصيدك بحساب دولي حتى تتمكن من الإرسال لأي دولة في العالم
تختلف سعر الرسالة بين دولة وآخرى كما يختلف زمن وصول الرسالة الدولية من دولة لآخرى أيضا.
لتتمكن من الإرسال بشكل دولي يجب ان تقوم بالتواصل مع مركز الدعم الفني بخدمة الرسائل النصية Turkey SMS
ليتم تفعيل حسابك للتتمكن من الإرسال الدولي.
كيف يتم حساب الرسائل الدولية؟
الرصيد الدولي فيتم استخدامه خارج الجمهورية التركية، ويكون طلبه من خلال شحن رصيد مالي _قيمة مالية_ وليس عدد رسائل، وذلك لأن القيمة المالية لإرسال الرسائل تحتلف من دولة لأخرى ويكون سعر الرسالة ثابت مهما بلغ العدد.
كيف أرسل رسالة دولية من خلال الـ api
نفس طريقة إرسال الرسالة المحلية داخل تركيا .. بنفس الرابط وكامل الخيارات
لكن يجب عليكم ان تقوموا بشحن حسابكم برصيد دولي
ويجب كتابة الرقم المرسل له الرسالة بالرمز الدولي
لغات البرمجة المدعومة
نظام الرسائل النصية يدعم جميع لغات البرمجة لإستكمال عملية الربط البرمجي متل
PHP Java JavaScript NodeJS Python CSharp C(LibCURL) Go ObjectiveC Ruby SwiftPHP
function sendRequest($site, $data)
{
$json = json_encode($data);
$ch = curl_init($site);
$header = array('Content-Type: application/json');
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $json);
$result = curl_exec($ch);
curl_close($ch);
return $result;
}
$api_key = '';
$title = '';
$text = '';
$sentto = '';
$body = array("api_key" => $api_key, "title"=>$title, "text"=>$text,"sentto"=>$sentto);
$result = sendRequest('api/v3/gonder/add-content', $body);
//http://www.lalit.org/lab/convert-xml-to-array-in-php-xml2array/
JAVA
Unirest.setTimeouts(0, 0);
HttpResponse response = Unirest.post("/api/v3/gonder/add-content")
.header("Content-Type", "application/json")
.body("{\"api_key\":\"API_KEY_HERE\",\"title\":\"SMS_TITLE_HERE\",\"text\":\"TEXT_SMS\",\"sentto\":\"90500000000\"}")
.asString();
JavaScript
var myHeaders = new Headers();
myHeaders.append("Content-Type", "application/json");
var raw = JSON.stringify({"api_key":"API_KEY_HERE","title":"SMS_TITLE_HERE","text":"TEXT_SMS","sentto":"90500000000"});
var requestOptions = {
method: 'POST',
headers: myHeaders,
body: raw,
redirect: 'follow'
};
fetch("/api/v3/gonder/add-content", requestOptions)
.then(response => response.text())
.then(result => console.log(result))
.catch(error => console.log('error', error));
Python
import requests
url = "/api/v3/gonder/add-content"
payload = "{\"api_key\":\"API_KEY_HERE\",\"title\":\"SMS_TITLE_HERE\",\"text\":\"TEXT_SMS\",\"sentto\":\"90500000000\"}"
headers = {
'Content-Type': 'application/json'
}
response = requests.request("POST", url, headers=headers, data = payload)
print(response.text.encode('utf8'))
Ruby
require "uri"
require "net/http"
url = URI("/api/v3/gonder/add-content")
https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = "application/json"
request.body = "{\"api_key\":\"API_KEY_HERE\",\"title\":\"SMS_TITLE_HERE\",\"text\":\"TEXT_SMS\",\"sentto\":\"90500000000\"}"
response = https.request(request)
puts response.read_body
CSharp
var client = new RestClient("/api/v3/gonder/add-content");
client.Timeout = -1;
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");
request.AddParameter("application/json", "{\"api_key\":\"API_KEY_HERE\",\"title\":\"SMS_TITLE_HERE\",\"text\":\"TEXT_SMS\",\"sentto\":\"90500000000\"}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
C(LibCURL)
CURL *curl;
CURLcode res;
curl = curl_easy_init();
if(curl) {
curl_easy_setopt(curl, CURLOPT_CUSTOMREQUEST, "POST");
curl_easy_setopt(curl, CURLOPT_URL, "/api/v3/gonder/add-content");
curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
curl_easy_setopt(curl, CURLOPT_DEFAULT_PROTOCOL, "https");
struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Content-Type: application/json");
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
const char *data = "{\"api_key\":\"API_KEY_HERE\",\"title\":\"SMS_TITLE_HERE\",\"text\":\"TEXT_SMS\",\"sentto\":\"90500000000\"}";
curl_easy_setopt(curl, CURLOPT_POSTFIELDS, data);
res = curl_easy_perform(curl);
}
curl_easy_cleanup(curl);
NodeJS
var unirest = require('unirest');
var req = unirest('POST', '/api/v3/gonder/add-content')
.headers({
'Content-Type': 'application/json'
})
.send(JSON.stringify({"api_key":"API_KEY_HERE","title":"SMS_TITLE_HERE","text":"TEXT_SMS","sentto":"90500000000"}))
.end(function (res) {
if (res.error) throw new Error(res.error);
console.log(res.raw_body);
});
ObjectiveC
#import Foundation/Foundation.h>
dispatch_semaphore_t sema = dispatch_semaphore_create(0);
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"/api/v3/gonder/add-content"]
cachePolicy:NSURLRequestUseProtocolCachePolicy
timeoutInterval:10.0];
NSDictionary *headers = @{
@"Content-Type": @"application/json"
};
[request setAllHTTPHeaderFields:headers];
NSData *postData = [[NSData alloc] initWithData:[@"{\"api_key\":\"API_KEY_HERE\",\"title\":\"SMS_TITLE_HERE\",\"text\":\"TEXT_SMS\",\"sentto\":\"90500000000\"}" dataUsingEncoding:NSUTF8StringEncoding]];
[request setHTTPBody:postData];
[request setHTTPMethod:@"POST"];
NSURLSession *session = [NSURLSession sharedSession];
NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:request
completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
if (error) {
NSLog(@"%@", error);
} else {
NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *) response;
NSError *parseError = nil;
NSDictionary *responseDictionary = [NSJSONSerialization JSONObjectWithData:data options:0 error:&parseError];
NSLog(@"%@",responseDictionary);
dispatch_semaphore_signal(sema);
}
}];
[dataTask resume];
dispatch_semaphore_wait(sema, DISPATCH_TIME_FOREVER);
Go
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := ""/api/v3/gonder/add-content"
method := "POST"
payload := strings.NewReader("{\"api_key\":\"API_KEY_HERE\",\"title\":\"SMS_TITLE_HERE\",\"text\":\"TEXT_SMS\",\"sentto\":\"90500000000\"}")
client := &http.Client {
}
req, err := http.NewRequest(method, url, payload)
if err != nil {
fmt.Println(err)
}
req.Header.Add("Content-Type", "application/json")
res, err := client.Do(req)
defer res.Body.Close()
body, err := ioutil.ReadAll(res.Body)
fmt.Println(string(body))
}
Swift
import Foundation
var semaphore = DispatchSemaphore (value: 0)
let parameters = "{\"api_key\":\"API_KEY_HERE\",\"title\":\"SMS_TITLE_HERE\",\"text\":\"TEXT_SMS\",\"sentto\":\"90500000000\"}"
let postData = parameters.data(using: .utf8)
var request = URLRequest(url: URL(string: "/api/v3/gonder/add-content")!,timeoutInterval: Double.infinity)
request.addValue("application/json", forHTTPHeaderField: "Content-Type")
request.httpMethod = "POST"
request.httpBody = postData
let task = URLSession.shared.dataTask(with: request) { data, response, error in
guard let data = data else {
print(String(describing: error))
return
}
print(String(data: data, encoding: .utf8)!)
semaphore.signal()
}
task.resume()
semaphore.wait()
أمثلة جاهزة للإستخدام
يمكنكم تحميل ملفات جاهزة بلغة البرمجة التي تريدونها لإستخدامها من قبلكم