وب سرویس سامانه پیام کوتاه

این راهنما جهت سهولت در کار برنامه نویسانی طراحی شده است که قصد دارند سرویس پیامهای خود را به نرم افزار های کاربردی خود ارتباط دهند.
این شرکت در حال حاضر وب سرویس ارسال پیام کوتاه و وب سرویس ارسال پیام صوتی ارئه میکند
روش های ارائه شده برای ارسال پیام کوتاه به شرح زیرمیباشد
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 دارند قابل استفاده میباش

مقداری که باید استفاده شود اپراتور مورد نظر
5700 50002 راهکار سرزمین هوشمند
50002 50002 راهکار سرزمین هوشمند
50001 50001 رهیاب پیام گستران
50004 50004 ارمغان راه طلایی
1000 1000 رهیاب
2000 2000 آتیه
3000 3000 مگفا
9821 9821 آسانک
118 اپراتور مسیر عمومی
وضعیت پیامک ها

وضعیت پیامک ها در سیستم به شرح زیر میباشد

عدد معنا
-1 پیام یافت نشد - ممکن است پیام به آرشیو منتقل شده باشد
0 بدون وضعیت - ممکن است پیام تازه ارسال شده باشد و در انتظار دریافت وضعیت باشد
1 رسیده به گوشی
2 نرسیده به گوشی
3 ارسال نشده به مخابرات
4 ارسال شده به مخابرات - ممکن است پیام ها پس از مدت زمانی برای ارسال به آرشیو به این وضعیت تبدیل شوند
5 لیست سیاه مخابرات - ممکن است به معنای بازگشت وجه نیز باشد
8 ارسال شده به مخابرات
انتقال پیامک های دریافتی به آدرس

با استفاده از این سرویس پیامک دریافتی شما بلافاصله پس از دریافت به آدرسی که در تنظیمات مشخص کرده اید به صورت POST ارسال میشود.

تذکر تمامی پارامتر هایی که خود شما در آدرس قرار میدهید به صورت GET برای شما ارسال میشوند و فقط پارامتر های زیر که غیر قابل تغییر هستند به صورت POST ارسال میشوند!

نام پارامتر توضیح
from شماره ی ارسال کننده ی پیامک مثلا 09132677411
to شماره ی دریافت کننده ی پیامک مثلا 500021
note متن پیامک مثال این یک تست است
smsid شناسه ی پیامک مثلا 1234567
فرمت تاریخ

تمامی تاریخ ها بر اساس unix timestamp میباشد

ای تاریخ شامل یک عدد میباشد که از تاریخ January 1st, 1970 at UTC شروع شده است

Example: 1493532518 (ISO 8601: 2017-04-30T06:08:38Z)

این مدل تاریخ قابل استفاده در تمامی زبانهای برنامه نویسی است

برای اطلاعات بیشتر بر روی این نوشته کلیک نمایید

مفاهیم کلی ارسال پیامک از طریق SOAP

با استفاده از وب‌سرویس این امکان برای شما وجود دارد که یک ارتباط هوشمند و دوطرفه با کاربران وب‌سایت یا نرم‌افزار خود برقرار کنید. به این ترتیب سیستم شما با توجه به نیاز می‌تواند از طریق سامانه پیامک ارسال کند، پیامک‌های دریافتی را از سامانه تحویل گرفته و تحلیل نماید، یا حتی به مدیریت پیامک‌های قبلی بپردازد.

SOAP مخفف Simple Object Access Protocol است. SOAP یک پادمان مبتنی بر XML است، برای رد و بدل کردن اطلاعات بین برنامه ها. اطلاعات در SOAP به صورت پیام (Message) و از طریق پادمان‏های موجود در اینترنت مانند HTTP منتقل می‏شود (SOAP در سایر پادمان ها، مانند SMTP یا MIME نیز قابل استفاده است). به زبان ساده‏تر، SOAP یک پادمان است برای دستیابی به یک سرویس ارایه شده در وب (Web Service). آخرین نسخه SOAP، نسخه 1.2 می‏باشد

آدرس وب سرویس SOAP

http://panel.safironline.ir/webservice/soap/smsService.php?wsdl

آدرس راهنما شامل نام متد ها و پارامتر های ورودی و مقادیر خروجی به شرح زیر میباشد :
http://panel.safironline.ir/webservice/soap/smsService.php

پیام های دریافتی

از این متد برای گرفتن لیست پیام های دریافتی استفاده می شود.

نام متد:

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 == ارسال با تاخیر )
مفاهیم کلی ارسال پیامک از طریق REST

REST بهترین روش برای وب سرویس ها میباشد و در تمامی زبان های برنامه نویسی قابلیت پیاده سازی دارد

در این روش خروجی بر اساس JSON میباشد ( توضیحات بیشتر در مورد JSON)

در این روش شما میتوانید با یکی از متد های POST یا GET اطلاعات را برای وب سرویس ارسال نمایید

آدرس وب سرویس رست به صورت زیر میباشد :

http://panel.safironline.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"}

دریافت اطلاعات کاربری

از این متد برای دریافت اطلاعات کاربری و شماره های اختصاصی و میزان شارژ استفاده می شود.

نام متد:

user_info

آدرس مورد استفاده :

http://panel.safironline.ir/webservice/rest/user_info?

پارامتر نوع توضیحات مقادیر
login_username String نام کاربری مورد استفاده در سامانه پیامک
login_password String رمز عبور مورد استفاده در سامانه پیامک

مثال :

نمونه پاسخ : مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است

ارسال پیامک

از این متد برای ارسال پیامک استفاده می شود.

نام متد:

sms_send

آدرس مورد استفاده :

http://panel.safironline.ir/webservice/rest/sms_send?

پارامتر نوع توضیحات مقادیر
login_username String نام کاربری مورد استفاده در سامانه پیامک
login_password String رمز عبور مورد استفاده در سامانه پیامک
receiver_number String شماره دریافت کننده پیامک که شماره ها باعلامت کاما , از هم جدا شده باشند
receiver_number 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

مثال :

نمونه پاسخ : در این پاسخ 92943923 شناسه ی پیامک در سیستم ما میباشد که برای دلیوری به آن احتیاج دارید
مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است

{"result":true,"list":[92943923]}

به تعداد گیرنده ها به شما شناسه ی پیامک داده خواهد شد که شناسه هابا علامت کاما , از هم جدا شده اند مانند :

{"result":true,"list":[92943981,92943982]}

اتصال وب سرویس به سیستم حسابداری هلو

از این متد برای ارسال پیامک استفاده می شود.تمامی پارامتر ها به صورت POST برای آدرس ارسال میشود











درگاه : panel.safironline.ir

لینک ارسال :
http://panel.safironline.ir/webservice/rest/sms_send?


نام کاربری : نام کاربری ورود به سامانه ارسال پیامک

رمز عبور : رمز عبور ورود به سامانه ارسال پیامک

فرستنده : خط اختصاصی سامانه ارسال پیام کوتاه خود

پس از واردنمودن اطلاعات بالا در قسمت تنظیمات مدیریتی، کامپیوتر متصل به اینترنت را انتخاب و تنظیمات را ذخیره نمایید.

پس از ایجاد درگاه ارسال پیامک panel.safironline.ir می بایست به قسمت تنظیمات پیشرفته در همان تنظیمات مدیریتی رفته و اطلاعات آن را تغییر دهید:

Username را به عبارت login_username تغییر دهید.

مقدار password را به مقدار login_password تغییر دهید .

عبارت مربوط به TO را به receiver_number به روز رسانی کنید.

مقدار from می بایست کاملا تغییر کرده و sender_number شود.

در انتها mesage را به note_arr تغییر دهید.

سپس تنظیمات را به روز رسانی نموده و در زمان ارسال پیامک درگاه panel.safironline.ir را انتخاب نمایید.

برای بررسی ارسال نیز به تنظیمات مدیریتی رفته و تقویم کاری را انتخاب نمایید.

ایجاد تقویم زده و تنظیم رخداد کاری را انتخاب کنید و در زمان ارسال درگاه را به صورت گفته شده قراردهید.

جهت بررسی گزارش های ارسال نیز به قسمت کاربران رفته و مدیریت دریافت پیامک کاربران را مشاهده نمایید.
وضعیت پیامک

از این متد برای اطلاع از وضعیت پیامک های ارسال شده استفاده می شود.
متد sms_deliver_online نیز دقیقا مانند همین متد میباشد و تنها تفاوت آن این است که sms_deliver_online در همان لحظه از اپراتور نهایی ارسال کننده ی پیامک وضعیت پیامک شما را دریافت میکند اما sms_deliver وضعیت ها را هر ۳۰ دقیقه یک بار به روز رسانی میکند و در واقع نتایج بررسی های قبلی را به شما نمایش میدهد

نام متد:

sms_deliver

آدرس مورد استفاده :

http://panel.safironline.ir/webservice/rest/sms_deliver?

پارامتر نوع توضیحات مقادیر
dargah String علامت درگاه ها که قبلا توضیح داده شده است توضیح بیشتر مانند 3000
smsid ArrayOfString شناسه های پیامک های ارسالی که میتوانید به صورت آرایه ارسال نمایید

مثال :

نمونه پاسخ : در این پاسخ 92943981 شناسه ی پیامک در سیستم ما میباشد که 5 برای دلیوری آن داده شده است
عدد ۵ به معنای بلک لیست میباشد جدول وضعیت ها

{"result":true,"list":{"92943981":"5","92943982":"1"}}

ایجاد گروه جدید در دفترتلفن

از این متد برای ایجاد گروه جدید در دفترتلفن استفاده می شود.

نام متد:

user_cat_add

آدرس مورد استفاده :

http://panel.safironline.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://panel.safironline.ir/webservice/rest/user_cat_list?

پارامتر نوع توضیحات مقادیر
login_username String نام کاربری مورد استفاده در سامانه پیامک
login_password String رمز عبور مورد استفاده در سامانه پیامک
page_number Int شماره ی صفحه از 1 شروع میشود
perpage Int تعداد نمایش در نتایج

مثال :

نمونه پاسخ : مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است

مشخصات یک گروه از دفتر تلفن

از این متد برای دریافت مشخصات یک گروه از دفتر تلفن استفاده می شود.

نام متد:

user_cat_info

آدرس مورد استفاده :

http://panel.safironline.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://panel.safironline.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":" شماره ی +989132677411 قبلا در بخش های دیگر ثبت شده است"}
{"result":false,"error":"بخش انتخاب شده مربوط به شما نمیباشد."}

دریافت شماره های دفترتلفن

از این متد برای دریافت لیست شماره های دفتر تلفن استفاده می شود.

نام متد:

sms_number_list

آدرس مورد استفاده :

http://panel.safironline.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://panel.safironline.ir/webservice/rest/sms_number_update?

پارامتر نوع توضیحات مقادیر
catid Int شماره ی بخش دفتر تلفن

مثال :

نمونه پاسخ : مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است

لیست پیامک های دریافتی

از این متد برای لیست پیامک های دریافتی استفاده می شود.

نام متد:

sms_receive_list

آدرس مورد استفاده :

http://panel.safironline.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 شماره دریافت کننده ی پیام
labelid Int شناسه ی کلمه ی کلیدی
count Int فقط تعداد را نمایش بده در صورت قرار دادن این پارامتر تعداد نتایج در count به شما نمایش داده خواهد شد
fromid Int نمایش نتایج بزرگتر از این شناسه در صورت قرار دادن این پارامتر پیامهای دارای id بزرگتر از این عدد به شما نمایش داده خواهد شد

مثال :

نمونه پاسخ : مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است

تغییر وضعیت خواندن پیام های دریافتی

از این متد برای تغییر وضعیت خوانده شدن پیام های دریافتی استفاده می شود.

نام متد:

sms_receive_change_read

آدرس مورد استفاده :

http://panel.safironline.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://panel.safironline.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://panel.safironline.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://panel.safironline.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://panel.safironline.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://panel.safironline.ir/webservice/rest/user_once_login?

پارامتر نوع توضیحات مقادیر
login_username String نام کاربری مورد استفاده در سامانه پیامک
login_password String رمز عبور مورد استفاده در سامانه پیامک
expire Int تعداد روز معتبر بودن لینک مقدار پیش فرض 1 میباشد بدین معنا که لینک تولید شده فقط تا ۲۴ ساعت بعد امکان استفاده دارد

مثال :

نمونه پاسخ : مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است

اسامی مورد استفاده برای ارسال های شهری و منطقه ای

از این متد برای دریافت اسامی شهرهای و مناطق کدپستی برای ارسال های منطقه ای استفاده می شود.

نام متد:

sms_bank_list

آدرس مورد استفاده :

http://panel.safironline.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://panel.safironline.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://panel.safironline.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 شناسه ی پیامک های ارسال شده میباشد

قرعه کشی سازمانی

از این متد برای قرعه کشی های سازمانی استفاده می شود.

نام متد:

lottery_org_new

آدرس مورد استفاده :

http://panel.safironline.ir/webservice/rest/lottery_org_new?

ارسال تمام موارد الزامی است

پارامتر نوع توضیحات مقادیر
login_username String نام کاربری مورد استفاده در سامانه پیامک
login_password String رمز عبور مورد استفاده در سامانه پیامک
sender_number String شماره ارسال
factor_num String شماره فاکتور شماره فاکتور مورد نظر
number Int شماره کاربر شماره کاربری است که برایش کد قرعه کشی ارسال می شود
price Int مبلغ فاکتور تعداد کد قرعه کشی بر اساس مبلغ صادر می شود
code Int ارسال کد قرعه کشی اضافه در صورتی که 1 باشد ارسال و در غیر اینصورت ارسال نمی شود

مثال :

نمونه پاسخ : مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است
"msg":"به تعداد 3 کد قرعه کشی ایجاد شد "

درج پترن جدید

از این متد برای ایجاد پترن استفاده می شود

نام متد:

sms_pattern_new

آدرس مورد استفاده :

http://panel.safironline.ir/webservice/rest/sms_pattern_new?

پارامتر نوع توضیحات مقادیر
login_username String نام کاربری مورد استفاده در سامانه پیامک
login_password String رمز عبور مورد استفاده در سامانه پیامک
sender_number String شماره ارسال کننده در سامانه پیامک اجباری
note String متن پترن اجباری
has_pattern String 1 وارد شود

مثال :

نمونه پاسخ :
مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است

{"result":true}

لیست پترن ها

از این متد برای دریافت لیست پترن ها استفاده می شود.

نام متد:

sms_pattern_list

آدرس مورد استفاده :

http://panel.safironline.ir/webservice/rest/sms_pattern_list?

پارامتر نوع توضیحات مقادیر
login_username String نام کاربری مورد استفاده در سامانه پیامک
login_password String رمز عبور مورد استفاده در سامانه پیامک
page_number Int شماره ی صفحه از 1 شروع میشود
perpage Int تعداد نمایش در نتایج

مثال :

نمونه پاسخ : مقدار result برابر true میباشد که نشاندهنده ی موفق بودن عملیات است

ارسال پیامک

از این متد برای ارسال پیامک استفاده می شود.تمامی پارامتر ها به صورت GET برای آدرس ارسال میشود

نام متد:

send_sms

آدرس مورد استفاده :

http://panel.safironline.ir/send_via_get/send_sms.php?

پارامتر نوع توضیحات مقادیر
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://panel.safironline.ir/send_via_get/send_sms.php?

پارامتر نوع توضیحات مقادیر
dargah String علامت درگاه ها که قبلا توضیح داده شده است توضیح بیشتر مانند 3000
smsid ArrayOfString شناسه های پیامک های ارسالی که میتوانید به صورت آرایه ارسال نمایید

مثال :

نمونه پاسخ : در این پاسخ 92943981 شناسه ی پیامک در سیستم ما میباشد که 5 برای دلیوری آن داده شده است
عدد ۵ به معنای بلک لیست میباشد جدول وضعیت ها

Array ( [0] => 5 [1] => 1 )

نمونه کدها با زبان های برنامه نویسی مختلف
در تمامی نمونه کد های قرار گرفته اطلاعات زیر به صورت پیش فرض قرار گرفته که برای استفاده باید آنها را تغییر دهید :

دامین سرویس دهنده : sms321.ir ( این دامین را با دامین سایتی که پنل ارسال پیامک را از آن تهیه کرده اید در کد ها جایگزین کنید )

نام کاربری : USERNAME

رمز عبور : PASSWORD

شماره ی ارسال کننده : 10007666

شماره ی دریافت کننده : 09132677411

متن ارسال : سلام

وب سرویس به زبان PHP

جهت دریافت از لینک زیر استفاده کنید :

دانلود نمونه کد REST دانلود نمونه کد SOAP

کامند لاین لینوکس

جهت دریافت از لینک زیر استفاده کنید :

دانلود نمونه کد REST

آندروید

جهت دریافت از لینک زیر استفاده کنید :

دانلود نمونه کد REST

وب سرویس به زبان C#

جهت دریافت از لینک زیر استفاده کنید :

دانلود نمونه کد REST

وب سرویس به زبان Asp.net

جهت دریافت از لینک زیر استفاده کنید :

دانلود نمونه کد REST

وب سرویس به زبان دلفی

جهت دریافت از لینک زیر استفاده کنید :

دانلود نمونه کد REST

وب سرویس به زبان جاوا

جهت دریافت از لینک زیر استفاده کنید :

دانلود نمونه کد REST

ارسال پیامک از اکسس

جهت دریافت از لینک زیر استفاده کنید :

دانلود نمونه کد URL

ارسال پیامک از پایتون

جهت دریافت از لینک زیر استفاده کنید :

دانلود نمونه کد REST

ارسال پیامک در postman

جهت دریافت از لینک زیر استفاده کنید :

دانلود نمونه کد REST

دانلود فیلم آموزشی

ارسال پیام صوتی

از این متد برای ارسال پیام صوتی استفاده می شود.

نام متد:

send

آدرس مورد استفاده :

http://panel.safironline.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"}