این راهنما جهت سهولت در کار برنامه نویسانی
طراحی شده است که قصد دارند سرویس پیامهای خود را به نرم افزار های کاربردی
خود ارتباط دهند.
این شرکت در حال حاضر وب سرویس ارسال پیام کوتاه و وب سرویس ارسال پیام صوتی ارئه میکند
روش های ارائه شده برای ارسال پیام کوتاه به شرح زیرمیباشد
1- وب سرویس REST
2- وب سرویس SOAP
3- ارسال از طریق URL
که از بین روش های ذکر شده این شرکت روش وب سرویس REST را پیشنهاد میدهد
روش های ارائه شده برای ارسال پیام صوتی به شرح زیرمیباشد
1- وب سرویس REST
برخی از ارور هایی که در وب سرویس ها داده میشود به شرح زیر میباشد
کد خطا | توضیح |
error_login_user_not_found | چنین کاربری یافت نشد |
error_login_not_like_username | نام کاربری مشکلی دارد مانند وجود فاصله |
error_login_not_like_password | پسورد مشکلی دارد |
error_login_not_like_accept | دسترسی شما مسدود شده است و یا کد تایید پیامکی را وارد نکرده اید |
error_register_taken_email | چنین ایمیلی قبلا استفاده شده است |
error_register_taken_user_username | نام کاربری قبلا اسفتاده شده است |
error_register_taken_user_mobile | موبایل قبلا استفاده شده است |
error_no_receiver | گیرنده های خالی میباشد |
error_sender_number_is_not_allow | شماره ی ارسال کننده مجاز نمیباشد |
error_long_request_uniqueid | طول کد یکتا بیشتر از جد مجاز است |
error_sender_number_is_disable | شماره ی ارسال کننده غیرفعال میباشد |
error_number_format_error | فرمت شماره ی گیرنده مشکل دارد |
error_number_whois_error | شماره ی ارسال کننده اجراز هویت نشده است |
error_sms_receiver_number_limit | تعداد گیرنده ها بیشتر از حد مجاز میباشد |
error_sms_send_config_is_disable | ارسال از این پیش شماره موقتا غیر فعال میباشد |
error_sms_price_not_found_for_admin | هزینه ی اراسال پیامک مدیر مشخص نمیباشد |
error_sms_price_packageid_not_found_for_admin | پکیج قیمت مدیر یافت نشد |
error_sms_price_not_found_for_user | هزینه ی اراسال پیامک برای کاربر مشخص نمیباشد |
error_credit_admin_error | شارژ مدیر کم است |
error_credit_admin_empty_error | هزینه ی ارسال برای مدیر اشتباه محاسبه شده است |
error_credit_error | کمبود شارژ کاربر |
مقادیر ذکر شده در جدول برای تمامی متدهایی که پارامتر dargahha یا dargah دارند قابل استفاده میباش
مقداری که باید استفاده شود | اپراتور مورد نظر |
---|---|
3000 | 3000 |
1000 | 1000 |
50002 | 50002 |
9821 | ثابت |
2000 | 2000 |
50001 | 50001 |
6758 | 6758 |
110 | ویژه |
10001 | رهیاب دی |
118 | عمومی |
8000 | سیم کارت |
2221 | آسانک مسیر دوم |
2222 | ارمغان مسیر دوم |
8002 | مسیر دوم سیم کارت |
30002 | 3000 مسیر دوم |
100011 | رهیاب دی - بالک |
9000 | 9000 |
999800 | آرینتل - خدماتی |
999810 | سامانتل مستقیم |
999820 | آرینتل تبلیغاتی نوع 2 |
90002 | 9000 - تبلیغاتی نوع دو |
999801 | تلیرکو - آرینتل - خدماتی |
999811 | jiring |
999821 | تلیرکو-آرینتل تبلیغاتی نوع 2 |
5000410 | 50004 - مسیر اصلی |
5000420 | 50004 - مسیر اصلی - تبلغاتی نوع دو |
9998210 | آرینتل جدید |
وضعیت پیامک ها در سیستم به شرح زیر میباشد
عدد | معنا |
---|---|
-1 | پیام یافت نشد - ممکن است پیام به آرشیو منتقل شده باشد |
0 | بدون وضعیت - ممکن است پیام تازه ارسال شده باشد و در انتظار دریافت وضعیت باشد |
1 | رسیده به گوشی |
2 | نرسیده به گوشی |
3 | ارسال نشده به مخابرات |
4 | ارسال شده به مخابرات - ممکن است پیام ها پس از مدت زمانی برای ارسال به آرشیو به این وضعیت تبدیل شوند |
5 | لیست سیاه مخابرات - ممکن است به معنای بازگشت وجه نیز باشد |
8 | ارسال شده به اپراتور پیامکی |
9 | بازگشت هزینه به دلیل ترافیک مخابرات |
10 | صف ارسال |
11 | اسپم |
12 | اکسپایر |
13 | بدون روت |
14 | ریجکت شده |
16 | نرسیده به مخابرات |
17 | بدون وضعیت دلیوربیس |
با استفاده از این سرویس پیامک دریافتی شما بلافاصله پس از دریافت به آدرسی که در تنظیمات مشخص کرده اید به صورت POST ارسال میشود.
تذکر تمامی پارامتر هایی که خود شما در آدرس قرار میدهید به صورت GET برای شما ارسال میشوند و فقط پارامتر های زیر که غیر قابل تغییر هستند به صورت POST ارسال میشوند!
نام پارامتر | توضیح |
---|---|
from | شماره ی ارسال کننده ی پیامک مثلا 09132125459 |
to | شماره ی دریافت کننده ی پیامک مثلا 10007666 |
note | متن پیامک مثال این یک تست است |
smsid | شناسه ی پیامک مثلا 1234567 |
تمامی تاریخ ها بر اساس unix timestamp میباشد
ای تاریخ شامل یک عدد میباشد که از تاریخ January 1st, 1970 at UTC شروع شده است
Example: 1493532518 (ISO 8601: 2017-04-30T06:08:38Z)
این مدل تاریخ قابل استفاده در تمامی زبانهای برنامه نویسی است
با استفاده از وبسرویس این امکان برای شما وجود دارد که یک ارتباط هوشمند و دوطرفه با کاربران وبسایت یا نرمافزار خود برقرار کنید. به این ترتیب سیستم شما با توجه به نیاز میتواند از طریق سامانه پیامک ارسال کند، پیامکهای دریافتی را از سامانه تحویل گرفته و تحلیل نماید، یا حتی به مدیریت پیامکهای قبلی بپردازد.
SOAP مخفف Simple Object Access Protocol است. SOAP یک پادمان مبتنی بر XML است، برای رد و بدل کردن اطلاعات بین برنامه ها. اطلاعات در SOAP به صورت پیام (Message) و از طریق پادمانهای موجود در اینترنت مانند HTTP منتقل میشود (SOAP در سایر پادمان ها، مانند SMTP یا MIME نیز قابل استفاده است). به زبان سادهتر، SOAP یک پادمان است برای دستیابی به یک سرویس ارایه شده در وب (Web Service). آخرین نسخه SOAP، نسخه 1.2 میباشد
آدرس وب سرویس SOAP
از این متد برای گرفتن لیست پیام های دریافتی استفاده می شود.
نام متد:
sms_receive
پارامتر | نوع | توضیحات | مقادیر |
---|---|---|---|
username | String | نام کاربری مورد استفاده در سامانه پیامک | |
password | String |
رمز عبور مورد استفاده در سامانه پیامک |
|
number | String | شماره خط اختصاصی کاربر مورد استفاده در سامانه | |
catid | int | شناسه دسته بندی پیامک های دریافتی | |
start | int | شناسه شروع لیست پیامک ها | از 1 شروع میشود |
perpage | int | تعداد پیامک های دریافتی در هر صفحه | 30=پیش فرض |
read | int | نوع خواندن | '-1'=مهم نیست
'0' =خوانده نشده '1'=خوانده شده |
order | string | نوع مرتب سازی |
'ASC' = از اول به آخر
'DESC' = از آخر به اول |
از این متد برای ارسال پیامک استفاده می شود.
نام متد:
send_sms
پارامتر | نوع | توضیحات | مقادیر |
---|---|---|---|
username | String | نام کاربری مورد استفاده در سامانه پیامک | |
password | String | رمز عبور مورد استفاده در سامانه پیامک | |
sender_number | ArrayOfString | شماره ارسال کننده در سامانه پیامک | |
receiver_number | ArrayOfString | شماره دریافت کننده پیامک | |
note | ArrayOfString | متن پیامک ارسالی | |
date | ArrayOfString | تاریخ ارسال پیامک ( ارسال در آینده ) - این متغیر به صورت آرایه ارسال میشود و میتواند شامل یک یا بیش از یک تاریخ باشد | 0=هم اکنون ارسال شود |
request_uniqueid | ArrayOfString | جهت جلوگیری از ارسال پیامک تکراری از منبع کد , میتوانید این متغیر را با یک عدد یا متن منحصر به فرد مقداردهی کنید . در صورت ارسال درخواست تکراری در پاسخ این متد smsid های قبلی ارسال خواهند شد | 0=نیازی به چک کردن ندارد |
flash | ArrayOfString | آیا پیامک به صورت فلش ارسال شود یا خیر | ok , no |
onlysend | String | جهت ارسال سریع بدون وقفه در زمان ارسال پیامک ( ارسال پیامک با تاخیر 30 ثانیه به مشترک انجام خواهد شد) | ok , no ( ok == ارسال با تاخیر ) |
نمونه کد ارسال یک متن برای 2 گیرنده
<?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="sms_webservice_wsdl" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns2="urn:sms_webservice_wsdl" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"> <SOAP-ENV:Body> <ns1:send_sms> <username xsi:type="xsd:string">username here</username> <password xsi:type="xsd:string">password here</password> <sender_number SOAP-ENC:arrayType="xsd:string[1]" xsi:type="ns2:ArrayOfString"> <item xsi:type="xsd:string">10007666</item> </sender_number> <receiver_number SOAP-ENC:arrayType="xsd:string[1]" xsi:type="ns2:ArrayOfString"> <item xsi:type="xsd:string">+989126133361</item> </receiver_number> <note SOAP-ENC:arrayType="xsd:string[1]" xsi:type="ns2:ArrayOfString"> <item xsi:type="xsd:string">تست</item> </note> <date SOAP-ENC:arrayType="xsd:string[1]" xsi:type="ns2:ArrayOfString"> <item xsi:type="xsd:string">0</item> </date> <request_uniqueid SOAP-ENC:arrayType="xsd:string[1]" xsi:type="ns2:ArrayOfString"> <item xsi:type="xsd:string"></item> </request_uniqueid> <flash SOAP-ENC:arrayType="xsd:string[1]" xsi:type="ns2:ArrayOfString"> <item xsi:type="xsd:string">no</item> </flash> <onlysend xsi:type="xsd:string">ok</onlysend> </ns1:send_sms> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
REST بهترین روش برای وب سرویس ها میباشد و در تمامی زبان های برنامه نویسی قابلیت پیاده سازی دارد
در این روش خروجی بر اساس JSON میباشد ( توضیحات بیشتر در مورد JSON)
در این روش شما میتوانید با یکی از متد های POST یا GET اطلاعات را برای وب سرویس ارسال نمایید
نمونه کد ارسال با استفاده از متد POST و استفاده از APIKEY
curl --location -k --request POST 'http://shahtootpayam.ir/webservice/rest/sms_send' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'api_key=2:628fa6a500d3b' \
--data-urlencode 'receiver_number=09132125459' \
--data-urlencode 'sender_number=10007666' \
--data-urlencode 'note_arr[]=hi' \
--data-urlencode 'date=0' \
--data-urlencode 'request_uniqueid=0' \
--data-urlencode 'flash=no' \
--data-urlencode 'onlysend=no' \
--data-urlencode 'show_faktor=no'
نمونه کد نظیر به نظیر با استفاده از متد POST و استفاده از APIKEY
curl --location -k --request POST 'http://shahtootpayam.ir/webservice/rest/sms_send' \نمونه پاسخ دریافتی برای نظیر به نظیر
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'api_key=2:628fa6a500d3b' \
--data-urlencode 'sender_number=10007666' \
--data-urlencode 'note_arr[]=hi' \
--data-urlencode 'receiver_number[]=091321254591' \
--data-urlencode 'note_arr[]=hi1' \
--data-urlencode 'receiver_number[]=091321254592' \
--data-urlencode 'note_arr[]=hi2' \
--data-urlencode 'receiver_number[]=091321254593' \
--data-urlencode 'note_arr[]=hi3' \
--data-urlencode 'date=0' \
--data-urlencode 'request_uniqueid=0' \
--data-urlencode 'flash=no' \
--data-urlencode 'onlysend=no' \
--data-urlencode 'show_faktor=no'
{"result":true,"list":["2_63295d1d86c63_0","2_63295d1d86c63_1","2_63295d1d86c63_2"]}
نمونه کد ارسال با استفاده از متد POST و استفاده از هدر توکن
curl --location -k --request POST 'http://shahtootpayam.ir/webservice/rest/sms_send' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--header 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpZCI6IjExIiwiZHQiOjE2OTcwMzAwMTUsImV4cCI6MTY5NzAzMTIxNSwiaSI6IjEiLCJwIjoiZWU2NGY0NmVhY2E3Y2E4YTIyZDgzZWZkZDY4NDM5ZjQiLCJpcCI6IjEyNy4wLjAuMSJ9.gn4FSUvIZdgguEVQLZerLdzNGySqTYas2OBN7bVoPj2S6PxJvA-OpjkndCSWdAy3tjvhOWPY_EeQRe5rAmYkQvCcC39y9msB7ZngcFq5gcJLPZeragVQAoT0PL9XiX-XHwk69GpaYeuAK6QYun6YSwk6ke91OKJw3BU1wB809bnhVeSBYPIQQ0MwMeWtPTOCM-OjBUI2T3G7erUWDIcuGM-gQbFQ9bqpjpvOIk3wqgvbUuZGPapt7YBoIxK5pWmK3Ajz9wFukhj8Np4ICaNGO9kMNqZ5Mxk5Bg3fn0_amAQOMZAUIeDqBmFq8tYoERaQZR-NoKHwVw4OKb60qfVkGQ
--data-urlencode 'api_key=2:628fa6a500d3b' \
--data-urlencode 'receiver_number=09132125459' \
--data-urlencode 'sender_number=10007666' \
--data-urlencode 'note_arr[]=hi' \
--data-urlencode 'date=0' \
--data-urlencode 'request_uniqueid=0' \
--data-urlencode 'flash=no' \
--data-urlencode 'onlysend=no' \
--data-urlencode 'show_faktor=no'
آدرس وب سرویس رست به صورت زیر میباشد :
http://shahtootpayam.ir/webservice/rest/
در تمامی فانکشن ها میتوانید به جای login_username و login_password از api_key استفاده نمایید
api_key را از قسمت تنظیمات در پنل کاربری میتوانید بدست آورید
api_key برای همیشه ثابت است و فقط برای وب سرویس REST استفاده میشود
مثال :
برای پاسخ تمامی متد ها result با ۲ مقدار true و false وجود دارند که مقدار false نشانه ی ناموفق بودن عملیات است
به طور مثال وقتی نام کاربری و رمز عبور اشتباه باشد چنین خطایی دریافت خواهید کرد
{"result":false,"error":"error_login_user_not_found"}
از این متد برای دریافت توکن برای احراز هویت استفاده می شود.
نام متد:
getLoginAccessToken
آدرس مورد استفاده :
http://shahtootpayam.ir/webservice/rest/getLoginAccessToken?
پارامتر | نوع | توضیحات | مقادیر |
---|---|---|---|
token_username | String | نام کاربری مورد استفاده در سامانه پیامک | |
token_password | String | رمز عبور مورد استفاده در سامانه پیامک | |
grant_type | String | مقدار password |
مثال :
نمونه پاسخ : مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است
از این متد برای دریافت توکن جدید با استفاده از مقدار refresh_token استفاده می شود.
از آنجاییکه عمر توکن ها محدود است و مقدار آن در فیلد expires_in همراه توکن ارسال شده است، باید قبل از منقضی شدن توکن با ارسال رفرش توکن، توکن جدید را دریافت کنید
نام متد:
RefreshLoginToken
آدرس مورد استفاده :
http://shahtootpayam.ir/webservice/rest/RefreshLoginToken?
پارامتر | نوع | توضیحات | مقادیر |
---|---|---|---|
refresh_token | String | مقدار کلید refresh_token از خروجی متد getLoginAccessToken | |
grant_type | String | مقدار refresh_token |
مثال :
نمونه پاسخ : مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است
از این متد برای دریافت اطلاعات کاربری و شماره های اختصاصی و میزان شارژ استفاده می شود.
نام متد:
user_info
آدرس مورد استفاده :
http://shahtootpayam.ir/webservice/rest/user_info?
پارامتر | نوع | توضیحات | مقادیر |
---|---|---|---|
login_username | String | نام کاربری مورد استفاده در سامانه پیامک | |
login_password | String | رمز عبور مورد استفاده در سامانه پیامک |
مثال :
نمونه پاسخ : مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است
از این متد برای ارسال پیامک استفاده می شود.
نام متد:
sms_send
آدرس مورد استفاده :
http://shahtootpayam.ir/webservice/rest/sms_send?
پارامتر | نوع | توضیحات | مقادیر |
---|---|---|---|
login_username | String | نام کاربری مورد استفاده در سامانه پیامک | |
login_password | String | رمز عبور مورد استفاده در سامانه پیامک | |
receiver_number | String | شماره دریافت کننده پیامک که شماره ها باعلامت کاما , از هم جدا شده باشند | |
receiver_number | ArrayOfString | شماره دریافت کننده پیامک که میتوانید به صورت آرایه ارسال نمایید | |
clientids | ArrayOfString | شناسه پیامک برای دریافت دلیوری که میتوانید به صورت آرایه ارسال نمایید | |
sender_number | String | شماره ارسال کننده در سامانه پیامک | |
note_arr | String | متن پیامک ارسالی میتواند به صورت استرینگ ارسال شود | |
note_arr | ArrayOfString | متن پیامک ارسالی میتواند به صورت آرایه ارسال شود | |
date | String | تاریخ ارسال پیامک ( ارسال در آینده ) | 0=هم اکنون ارسال شود |
request_uniqueid | String | جهت جلوگیری از ارسال پیامک تکراری از منبع کد , میتوانید این متغیر را با یک عدد یا متن منحصر به فرد مقداردهی کنید . در صورت ارسال درخواست تکراری در پاسخ این متد smsid های قبلی ارسال خواهند شد | 0=نیازی به چک کردن ندارد |
flash | String | آیا پیامک به صورت فلش ارسال شود یا خیر | ok , no |
onlysend | String | جهت ارسال سریع بدون وقفه در زمان ارسال پیامک ( ارسال پیامک با تاخیر 30 ثانیه به مشترک انجام خواهد شد) | ok , no ( ok == ارسال با تاخیر ) |
show_faktor | String | عدم ارسال و فقط نمایش میزان هزینه | ok , no |
tb_name_in_smsid | String | در صورت ارسال این پارامتر شناسه پیامک های شما حاوی اطلاعات بیشتری است و برای دریافت دلیوری باید از متد sms_deliver_tb_name_in_smsid استفاده نمایید | ok |
مثال :
نمونه پاسخ : در این پاسخ '788137_5fcc745d14604_0' شناسه ی پیامک در سیستم ما میباشد که برای دلیوری به آن احتیاج دارید
مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است
{"result":true,"list":['788137_5fcc745d14604_0']}
به تعداد گیرنده ها به شما شناسه ی پیامک داده خواهد شد که شناسه هابا علامت کاما , از هم جدا شده اند مانند :
{"result":true,"list":['788137_5fcc745d14604_0','788137_5fcc745d14604_1']}
مثال با api_key :
از این متد برای ارسال پیامک استفاده می شود.تمامی پارامتر ها به صورت POST برای آدرس ارسال میشود
از این متد برای اطلاع از وضعیت پیامک های ارسال شده استفاده می شود.
متد sms_deliver_online نیز دقیقا مانند همین متد میباشد و تنها تفاوت آن این است که sms_deliver_online در همان لحظه از اپراتور نهایی ارسال کننده ی پیامک وضعیت پیامک شما را دریافت میکند اما
sms_deliver وضعیت ها را هر ۳۰ دقیقه یک بار به روز رسانی میکند و در واقع نتایج بررسی های قبلی را به شما نمایش میدهد
نام متد:
sms_deliver
آدرس مورد استفاده :
http://shahtootpayam.ir/webservice/rest/sms_deliver?
پارامتر | نوع | توضیحات | مقادیر |
---|---|---|---|
dargah | String | علامت درگاه ها که قبلا توضیح داده شده است توضیح بیشتر | مانند 1000 |
smsid | ArrayOfString | شناسه های پیامک های ارسالی که میتوانید به صورت آرایه ارسال نمایید | |
archive_year | Int | برای جستجو در آرشیو سال ارسال پیامک مانند 1400 ارسال گردد | |
archive_month | Int | برای جستجو در آرشیو ماه ارسال پیامک مانند 3 ارسال گردد |
مثال :
نمونه پاسخ : در این پاسخ 92943981 شناسه ی پیامک در سیستم ما میباشد که 5 برای دلیوری آن داده شده است
عدد ۵ به معنای بلک لیست میباشد
جدول وضعیت ها
در صورتی که در جدول جاری جستجو میکردید و عدد -1 را به عنوان دلیوری دریافت کردید باید در آرشیو جستجو نمایید
{"result":true,"list":{"92943981":"5","92943982":"1"}}
از این متد برای اطلاع از وضعیت پیامک های ارسال شده استفاده می شود.
متد sms_deliver_online نیز دقیقا مانند همین متد میباشد و تنها تفاوت آن این است که sms_deliver_online در همان لحظه از اپراتور نهایی ارسال کننده ی پیامک وضعیت پیامک شما را دریافت میکند اما
sms_deliver وضعیت ها را هر ۳۰ دقیقه یک بار به روز رسانی میکند و در واقع نتایج بررسی های قبلی را به شما نمایش میدهد
نام متد:
sms_deliver_tb_name_in_smsid
آدرس مورد استفاده :
http://shahtootpayam.ir/webservice/rest/sms_deliver_tb_name_in_smsid?
پارامتر | نوع | توضیحات | مقادیر |
---|---|---|---|
smsid | ArrayOfString | شناسه های پیامک های ارسالی که میتوانید به صورت آرایه ارسال نمایید |
مثال :
نمونه پاسخ : در این پاسخ 92943981 شناسه ی پیامک در سیستم ما میباشد که 5 برای دلیوری آن داده شده است
عدد ۵ به معنای بلک لیست میباشد
جدول وضعیت ها
در صورتی که در جدول جاری جستجو میکردید و عدد -1 را به عنوان دلیوری دریافت کردید باید در آرشیو جستجو نمایید
{"result":true,"list":{"92943981":"5","92943982":"1"}}
curl --location -k --request POST 'http://crmsms.ariantel.ir/webservice/rest/sms_deliver_tb_name_in_smsid' \ --header 'Content-Type: application/x-www-form-urlencoded' \ --data-urlencode 'smsid[]=999810@1401@10@27_293675_0@+989355090501' \ --data-urlencode 'smsid[]=999810@1401@10@27_293675_0@+989355090502' \ --data-urlencode 'smsid[]=999810@1401@10@27_293675_0@+989355090503'
از این متد برای ایجاد گروه جدید در دفترتلفن استفاده می شود.
نام متد:
user_cat_add
آدرس مورد استفاده :
http://shahtootpayam.ir/webservice/rest/user_cat_add?
پارامتر | نوع | توضیحات | مقادیر |
---|---|---|---|
login_username | String | نام کاربری مورد استفاده در سامانه پیامک | |
login_password | String | رمز عبور مورد استفاده در سامانه پیامک | |
title | String | عنوان گروه |
مثال :
نمونه پاسخ :
addedid شناسه ی گروه جدید ایجاد شده در سیستم ما میباشد
مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است
{"result":true,"addedid":"160335"}
نمونه پاسخ عملیات ناموفق :
{"result":false,"error":"error_complete_all"}
از این متد برای دریافت لیست گروه های دفتر تلفن استفاده می شود.
نام متد:
user_cat_list
آدرس مورد استفاده :
http://shahtootpayam.ir/webservice/rest/user_cat_list?
پارامتر | نوع | توضیحات | مقادیر |
---|---|---|---|
login_username | String | نام کاربری مورد استفاده در سامانه پیامک | |
login_password | String | رمز عبور مورد استفاده در سامانه پیامک | |
page_number | Int | شماره ی صفحه | از 1 شروع میشود |
perpage | Int | تعداد نمایش در نتایج |
مثال :
نمونه پاسخ : مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است
از این متد برای دریافت مشخصات یک گروه از دفتر تلفن استفاده می شود.
نام متد:
user_cat_info
آدرس مورد استفاده :
http://shahtootpayam.ir/webservice/rest/user_cat_info?
پارامتر | نوع | توضیحات | مقادیر |
---|---|---|---|
login_username | String | نام کاربری مورد استفاده در سامانه پیامک | |
login_password | String | رمز عبور مورد استفاده در سامانه پیامک | |
id | Int | شناسه ی گروه |
مثال :
نمونه پاسخ : مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است
{"result":true,"list":{"id":"156487","userid":"48","title":"علیپور","date":"1481012960","number":"1942","adminid":"1","receive_catid":"0","parentid":"0"}}
نمونه پاسخ عملیات ناموفق :
{"result":false,"error":"error_not_found"}
از این متد برای اضافه کردن شماره ی جدید به دفترتلفن استفاده می شود.
نام متد:
sms_number_add
آدرس مورد استفاده :
http://shahtootpayam.ir/webservice/rest/sms_number_add?
پارامتر | نوع | توضیحات | مقادیر |
---|---|---|---|
login_username | String | نام کاربری مورد استفاده در سامانه پیامک | |
login_password | String | رمز عبور مورد استفاده در سامانه پیامک | |
catid | Int | شناسه ی گروه | |
number | String | شماره موبایل | |
fullname | String | اسم و فامیل | |
repeat | String |
چک شدند برای جلوگیری از ثبت تکراری
1- در صورتی ثبت شود که فقط در همین بخش این شماره قبلا ثبت نشده باشد 2- در صورتی ثبت شود که این شماره قبلا در هیچ بخشی ثبت نشده باشد 3- در همه ی شرایط ثبت شود |
1,2,3 |
gender | String | جنسیت |
1=مرد
2-زن |
fullname_en | String | اسم و فامیل لاتین | |
gender_en | String | جنسیت برای لاتین |
1=مرد
2-زن |
blacklist_no_check | String | چک شود درصورتی که در بلک لیست بود اضافه نشود
در صورتی که مقدار "true" ارسال شود چک نمیشود
پیش فرض false میباشد |
true,false |
مثال :
نمونه پاسخ : مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است
{"result":true,"addedid":"35719269"}
نمونه پاسخ عملیات ناموفق :
{"result":false,"error":"شماره نامعتبر میباشد \n\t\t\t[کد۰]\n\t\t\t"}
{"result":false,"error":" شماره ی xxxxx قبلا در بخش های دیگر ثبت شده است"}
{"result":false,"error":"بخش انتخاب شده مربوط به شما نمیباشد."}
از این متد برای دریافت لیست شماره های دفتر تلفن استفاده می شود.
نام متد:
sms_number_list
آدرس مورد استفاده :
http://shahtootpayam.ir/webservice/rest/sms_number_list?
پارامتر | نوع | توضیحات | مقادیر |
---|---|---|---|
login_username | String | نام کاربری مورد استفاده در سامانه پیامک | |
login_password | String | رمز عبور مورد استفاده در سامانه پیامک | |
page_number | Int | شماره ی صفحه | از 1 شروع میشود |
perpage | Int | تعداد نمایش در نتایج | |
catid | Int | شماره ی بخش دفتر تلفن | برای فیلتر کردن نتایح |
fullname | String | اسم و فامیل فارسی | برای فیلتر کردن نتایح |
number | Int | شماره تلفن | برای فیلتر کردن نتایح |
مثال :
نمونه پاسخ : مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است
از این متد برای به روز کردن تعداد شماره های گروه های دفتر تلفن استفاده می شود.
نام متد:
sms_number_update
آدرس مورد استفاده :
http://shahtootpayam.ir/webservice/rest/sms_number_update?
پارامتر | نوع | توضیحات | مقادیر |
---|---|---|---|
catid | Int | شماره ی بخش دفتر تلفن |
مثال :
نمونه پاسخ : مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است
از این متد برای لیست پیامک های دریافتی استفاده می شود.
نام متد:
sms_receive_list
آدرس مورد استفاده :
http://shahtootpayam.ir/webservice/rest/sms_receive_list?
پارامتر | نوع | توضیحات | مقادیر |
---|---|---|---|
login_username | String | نام کاربری مورد استفاده در سامانه پیامک | |
login_password | String | رمز عبور مورد استفاده در سامانه پیامک | |
page_number | Int | شماره ی صفحه | از 1 شروع میشود |
perpage | Int | تعداد نمایش در نتایج | |
catid | Int | شماره گروه پیامکهای دریافتی | در صورتی که نیاز به فیلتر کردن بر اساس این پارامتر ندارید پارامتر را ارسال ننمایید |
read | Int | نوع خوانده شدن پیامک |
1=خوانده شده ها
0=خوانده نشده ها در صورتی که خالی ارسال شود تمامی پیام ها را میدهد |
number | Int | شماره دریافت کننده ی پیام |
درصورتی که بیشتر از 1 خط اختصاصی دارید ارسال نمایید.
در غیر این صورت نیاز به ارسال این پارامتر نمیباشد در صورت عدم ارسال این پارامتر پیام های دریافتی کلیه خطوط اختصاصی کاربر شما در نتایج ظاهر خواهند شد |
labelid | Int | شناسه ی کلمه ی کلیدی | در صورتی که نیاز به فیلتر کردن بر اساس این پارامتر ندارید پارامتر را ارسال ننمایید |
count | Int | فقط تعداد را نمایش بده | در صورت قرار دادن این پارامتر تعداد نتایج در count به شما نمایش داده خواهد شد
در صورتی که لیست پیام های دریافتی را نیاز دارید این پارامتر را ارسال ننمایید |
fromid | Int | نمایش نتایج بزرگتر از این شناسه | در صورت قرار دادن این پارامتر پیامهای دارای id بزرگتر از این عدد به شما نمایش داده خواهد شد |
مثال :
نمونه پاسخ : مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است
از این متد برای تغییر وضعیت خوانده شدن پیام های دریافتی استفاده می شود.
نام متد:
sms_receive_change_read
آدرس مورد استفاده :
http://shahtootpayam.ir/webservice/rest/sms_receive_change_read?
پارامتر | نوع | توضیحات | مقادیر |
---|---|---|---|
login_username | String | نام کاربری مورد استفاده در سامانه پیامک | |
login_password | String | رمز عبور مورد استفاده در سامانه پیامک | |
id | ArrayOfString | شناسه ی پیامک ها به صورت آرایه | |
read | Int | وضعیت جدید |
1=خوانده شده
0=خوانده نشده |
مثال :
نمونه پاسخ : مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است
{"result":true,"list":{"id":"156487","userid":"48","title":"علیپور","date":"1481012960","number":"1942","adminid":"1","receive_catid":"0","parentid":"0"}}
نمونه پاسخ عملیات ناموفق :
{"result":false,"error":"error_not_found"}
از این متد برای دریافت لیست کلمات کلیدی مورد استفاده در منشی پیامک و مسابقه و نظرسنجی استفاده می شود.
نام متد:
label_list
آدرس مورد استفاده :
http://shahtootpayam.ir/webservice/rest/label_list?
پارامتر | نوع | توضیحات | مقادیر |
---|---|---|---|
login_username | String | نام کاربری مورد استفاده در سامانه پیامک | |
login_password | String | رمز عبور مورد استفاده در سامانه پیامک | |
page_number | Int | شماره ی صفحه | از 1 شروع میشود |
perpage | Int | تعداد نمایش در نتایج | |
state | Int | وضعیت | 0,1 |
kind | Int | نوع کلمه ی کلیدی | پس از مثال جدول اعداد و مفاهیم قرار داده شده است |
refferid | Int | شناسه ی رکورد مرتبط | مثلا شناسه ی نظرسنجی اصلی ایجاد شده |
number | String | شماره ی دریافت کننده |
مثال :
نمونه پاسخ : مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است
مفهوم label کلمه ی کلیدی مورد نظر میباشد
مفهوم count تعداد دفعات استفاده از این کلمه توسط کاربران میباشد
مفهوم kind موجود در پاسخ در جدول زیر آمده است
علامت اختصاص یافته | مفهوم |
---|---|
1 | منشی پیامک |
2 | نظرسنجی |
3 | مسابقه |
4 | پیشنهاد |
از این متد برای ایجاد کلمات کلیدی مورد استفاده در منشی پیامک و مسابقه و نظرسنجی استفاده می شود.
نام متد:
label_new
آدرس مورد استفاده :
http://shahtootpayam.ir/webservice/rest/label_new?
پارامتر | نوع | توضیحات | مقادیر |
---|---|---|---|
login_username | String | نام کاربری مورد استفاده در سامانه پیامک | |
login_password | String | رمز عبور مورد استفاده در سامانه پیامک | |
title | String | عنوان در نظر گرفته شده برای این کلمه ی کلیدی | از |
label | String | کلمه کلیدی مورد نظر | |
note | String | متن پاسخ | 0,1 |
repeat | Int | تعداد دریافت پاسخ از یک شماره | 0=فقط ۱ پاسخ از کاربر دریافت شود |
kind | Int | نوع کلمه ی کلیدی | پس از مثال جدول اعداد و مفاهیم قرار داده شده است |
refferid | Int | شناسه ی رکورد مرتبط | مثلا شناسه ی نظرسنجی اصلی ایجاد شده |
number | String | شماره ی دریافت کننده | |
time_limit | Int | محدودیت زمانی | 0=بدون محدودیت زمانی
1=در بازه زمانی مشخص شده فعال باشد |
date_start | BigInt | شروع محدودیت زمانی بر اساس unix timestamp | |
date_end | BigInt | پایان محدودیت زمانی بر اساس unix timestamp | |
catid | Int | شماره رکورد گروه دفترتلفن برای ذخیره ی شماره در دفترچه تلفن | |
catid_delete | Int | شماره رکورد گروه دفترتلفن برای حذف شماره از دفترچه تلفن | |
reply | Int | ارسال متن پس از دریافت پیامک |
0=خیر (پیش فرض)
1=بلی |
مثال :
نمونه پاسخ : مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است
از این متد برای ویرایش کلمات کلیدی مورد استفاده در منشی پیامک و مسابقه و نظرسنجی استفاده می شود.
نام متد:
label_edit
آدرس مورد استفاده :
http://shahtootpayam.ir/webservice/rest/label_edit?
پارامتر | نوع | توضیحات | مقادیر |
---|---|---|---|
login_username | String | نام کاربری مورد استفاده در سامانه پیامک | |
login_password | String | رمز عبور مورد استفاده در سامانه پیامک | |
id | Int | شناسه ی کلمه ی کلیدی ای که میخواهید آن را ویرایش کنید | |
title | String | عنوان در نظر گرفته شده برای این کلمه ی کلیدی | |
label | String | کلمه کلیدی مورد نظر | |
note | String | متن پاسخ | 0,1 |
repeat | Int | تعداد دریافت پاسخ از یک شماره | 0=فقط ۱ پاسخ از کاربر دریافت شود |
number | String | شماره ی دریافت کننده | |
time_limit | Int | محدودیت زمانی | 0=بدون محدودیت زمانی
1=در بازه زمانی مشخص شده فعال باشد |
date_start | BigInt | شروع محدودیت زمانی بر اساس unix timestamp | |
date_end | BigInt | پایان محدودیت زمانی بر اساس unix timestamp | |
catid | Int | شماره رکورد گروه دفترتلفن برای ذخیره ی شماره در دفترچه تلفن | |
catid_delete | Int | شماره رکورد گروه دفترتلفن برای حذف شماره از دفترچه تلفن | |
reply | Int | ارسال متن پس از دریافت پیامک |
0=خیر (پیش فرض)
1=بلی |
مثال :
نمونه پاسخ : مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است
از این متد برای حذف کلمه ی کلیدی استفاده می شود.
نام متد:
label_remove
آدرس مورد استفاده :
http://shahtootpayam.ir/webservice/rest/label_remove?
پارامتر | نوع | توضیحات | مقادیر |
---|---|---|---|
login_username | String | نام کاربری مورد استفاده در سامانه پیامک | |
login_password | String | رمز عبور مورد استفاده در سامانه پیامک | |
id | Int | شناسه ی کلمه ی کلیدی |
مثال :
نمونه پاسخ : مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است
{"result":true}
نمونه پاسخ عملیات ناموفق :
{"result":false,"error":"error_not_found"}
از این متد برای ایجاد لینک ورود مدت دارد یک بار مصرف استفاده می شود.
نام متد:
user_once_login
آدرس مورد استفاده :
http://shahtootpayam.ir/webservice/rest/user_once_login?
پارامتر | نوع | توضیحات | مقادیر |
---|---|---|---|
login_username | String | نام کاربری مورد استفاده در سامانه پیامک | |
login_password | String | رمز عبور مورد استفاده در سامانه پیامک | |
expire | Int | تعداد روز معتبر بودن لینک | مقدار پیش فرض 1 میباشد بدین معنا که لینک تولید شده فقط تا ۲۴ ساعت بعد امکان استفاده دارد |
مثال :
نمونه پاسخ : مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است
از این متد برای دریافت اسامی شهرهای و مناطق کدپستی برای ارسال های منطقه ای استفاده می شود.
نام متد:
sms_bank_list
آدرس مورد استفاده :
http://shahtootpayam.ir/webservice/rest/sms_bank_list?
پارامتر | نوع | توضیحات | مقادیر |
---|---|---|---|
bank_type | String | نوع بانک درخواستی |
postal_code = برای اسامی کدپستی همراه اول
etebari = شماره های اعتباری همراه اول daemi = شماره های دایمی همراه اول |
OstnCode | Int | شماره رکورد استان
برای دریافت لیست شهر های یک استان |
در صورتی که bank_type=etebari یا bank_type=daemi باشد |
مثال :
نمونه پاسخ : مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است
مثال برای دریافت لیست استان ها :
مثال برای دریافت لیست شهر های استان اصفهان :
از این متد برای دریافت اسامی شهرهای و مناطق کدپستی برای ارسال های منطقه ای استفاده می شود.
نام متد:
sms_bank_count
آدرس مورد استفاده :
http://shahtootpayam.ir/webservice/rest/sms_bank_count?
پارامتر | نوع | توضیحات | مقادیر |
---|---|---|---|
bank_type | String | نوع بانک درخواستی | postal_code = برای اسامی کدپستی |
postalcode_city | String | اسم لاتین شهر درخواستی | در صورتی که bank_type=postal_code باشد |
postalcode | Int | کدپستی مورد نظر | در صورتی که bank_type=postal_code باشد |
مثال :
نمونه پاسخ :
مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است
number نشاندهنده تعداد شماره های موجود میباشد
از این متد برای ارسال های منطقه ای استفاده می شود.
نام متد:
sms_bank_send
آدرس مورد استفاده :
http://shahtootpayam.ir/webservice/rest/sms_bank_send?
پارامتر | نوع | توضیحات | مقادیر |
---|---|---|---|
login_username | String | نام کاربری مورد استفاده در سامانه پیامک | |
login_password | String | رمز عبور مورد استفاده در سامانه پیامک | |
bank_type | String | نوع بانک درخواستی |
postal_code = برای اسامی کدپستی همراه اول
etebari = شماره های اعتباری همراه اول daemi = شماره های دایمی همراه اول |
postalcode_city | String | اسم لاتین شهر درخواستی | در صورتی که bank_type=postal_code باشد |
postalcode | Int | کدپستی مورد نظر | در صورتی که bank_type=postal_code باشد |
OstnCode | Int | شماره رکورد استان | در صورتی که bank_type=etebari یا bank_type=daemi باشد |
CityCode | Int | شماره رکورد شهر | در صورتی که bank_type=etebari یا bank_type=daemi باشد |
record_start | Int | شروع تعداد از این رکورد | |
receiver_count | Int | تعداد کل گیرنده ها | |
sender_number | Int | شماره ی ارسال کننده | |
note | String | متن پیامک |
مثال :
نمونه پاسخ :
مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است
smsid شناسه ی پیامک های ارسال شده میباشد
از این متد برای ارسال پیامک استفاده می شود.تمامی پارامتر ها به صورت GET برای آدرس ارسال میشود
نام متد:
send_sms
آدرس مورد استفاده :
http://shahtootpayam.ir/send_via_get/send_sms.telir?
پارامتر | نوع | توضیحات | مقادیر |
---|---|---|---|
username | String | نام کاربری مورد استفاده در سامانه پیامک | |
password | String | رمز عبور مورد استفاده در سامانه پیامک | |
receiver_number | String | شماره دریافت کننده پیامک که شماره ها باعلامت کاما , از هم جدا شده باشند | |
sender_number | String | شماره ارسال کننده در سامانه پیامک | |
note | String | متن پیامک ارسالی میتواند به صورت استرینگ ارسال شود | |
request_uniqueid | String | جهت جلوگیری از ارسال پیامک تکراری از منبع کد , میتوانید این متغیر را با یک عدد یا متن منحصر به فرد مقداردهی کنید . در صورت ارسال درخواست تکراری در پاسخ این متد smsid های قبلی ارسال خواهند شد | 0=نیازی به چک کردن ندارد |
ersal_flash | String | آیا پیامک به صورت فلش ارسال شود یا خیر | ok , no |
onlysend | String | جهت ارسال سریع بدون وقفه در زمان ارسال پیامک ( ارسال پیامک با تاخیر 30 ثانیه به مشترک انجام خواهد شد) | ok , no |
مثال :
نمونه پاسخ : در این پاسخ 92943923 شناسه ی پیامک در سیستم ما میباشد که برای دلیوری به آن احتیاج دارید
مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است
92943923
به تعداد گیرنده ها به شما شناسه ی پیامک داده خواهد شد که شناسه هابا علامت کاما , از هم جدا شده اند مانند :
92943981,92943982
از این متد برای ارسال پیامک استفاده می شود.تمامی پارامتر ها به صورت GET برای آدرس ارسال میشود
نام متد:
sms_deliver
آدرس مورد استفاده :
http://shahtootpayam.ir/send_via_get/send_sms.telir?
پارامتر | نوع | توضیحات | مقادیر |
---|---|---|---|
dargah | String | علامت درگاه ها که قبلا توضیح داده شده است توضیح بیشتر | مانند 1000 |
smsid | ArrayOfString | شناسه های پیامک های ارسالی که میتوانید به صورت آرایه ارسال نمایید |
مثال :
نمونه پاسخ : در این پاسخ 92943981 شناسه ی پیامک در سیستم ما میباشد که 5 برای دلیوری آن داده شده است
عدد ۵ به معنای بلک لیست میباشد
جدول وضعیت ها
Array ( [0] => 5 [1] => 1 )
از این متد برای ارسال پیام صوتی استفاده می شود.
نام متد:
send
آدرس مورد استفاده :
http://shahtootpayam.ir/webservice/vms/api.php
پارامتر | نوع | توضیحات | مقادیر |
---|---|---|---|
login_username | String | نام کاربری مورد استفاده در سامانه پیامک | |
login_password | String | رمز عبور مورد استفاده در سامانه پیامک | |
api | String | برای ارسال پیام صوتی مقدار send را وارد نمایید | send |
receiver_number | String | شماره دریافت کننده پیامک که شماره ها باعلامت کاما , از هم جدا شده باشند | |
uniqid | String | جهت جلوگیری از ارسال پیام تکراری از منبع کد , میتوانید این متغیر را با یک عدد یا متن منحصر به فرد مقداردهی کنید . در صورت ارسال درخواست تکراری در پاسخ این متد smsid های قبلی ارسال خواهند شد | 0=نیازی به چک کردن ندارد |
kind | String | کانال ارسال پیام صوتی در حال حاضر مقدار yek مورد قبول است | yek |
billing_note | String | توضیحات برای درج در امور مالی | |
fileToUpload | File | فايل ارسالي انكود شده بصورت multipart/form-data |
نمونه کد PHP :
نمونه پاسخ : در این پاسخ 4 شناسه ی پیام صوتی در سیستم ما میباشد که برای دلیوری به آن احتیاج دارید
مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است
{"result":true,"list":"4"}
از این متد برای احراز هویت از طریق تماس صوتی استفاده می شود.
نام متد:
otp
آدرس مورد استفاده :
http://shahtootpayam.ir/webservice/vms/api.php
پارامتر | نوع | توضیحات | مقادیر |
---|---|---|---|
login_username | String | نام کاربری مورد استفاده در سامانه پیامک | |
login_password | String | رمز عبور مورد استفاده در سامانه پیامک | |
api | String | برای احراز هویت صوتی مقدار otp را وارد نمایید | otp |
receiver_number | String | شماره دریافت کننده | |
clientid | String | جهت جلوگیری از ارسال پیام تکراری از منبع کد , میتوانید این متغیر را با یک عدد یا متن منحصر به فرد مقداردهی کنید . در صورت ارسال درخواست تکراری در پاسخ این متد smsid های قبلی ارسال خواهند شد | 0=نیازی به چک کردن ندارد |
kind | String | کانال ارسال پیام صوتی در حال حاضر مقدار yek مورد قبول است | yek |
billing_note | String | توضیحات برای درج در امور مالی | |
otp_code | Int | کدی که برای کاربر به صورت صوتی پخش میشود |
نمونه کد PHP :
نمونه پاسخ : در این پاسخ 4 شناسه ی احراز هویت صوتی در سیستم ما میباشد که برای دلیوری به آن احتیاج دارید
مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است
{"result":true,"list":"4"}