سرویس پیامدهی

وب سرویس soap

دسترسی: https://dev.homais.com/services/sms

متدها

getStatus singleSMS OTPGenerator getInbox getDeliveryStatus

شرح متدها

پارامترهای عمومی

1.PortalCode As Integer : کد پرتال سیستم

2.UserName As String : نام کاربری فعال و معتبر

3.PassWord As String : کلمه عبور

getStatus

این متد مجهز به کد کنترل جهت تنظیم مقدار بازگشتی بوده و جهت موارد ذیل کاربرد دارد:

1. به دست آوردن موجودی لحظه‌ای اعتبار پیامک به ریال

Full style:

getStatus(PortalCode As Integer, UserName As String, PassWord As String, returnType As Integer) Return As Long Integer

Set Return Type:

1.Set returnType=1 : Get Account Balance

singleSMS

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

Full style:
singleSMS(PortalCode As Integer, UserName As String, PassWord As String, Mobile As String, Message As String, ServerType As Integer) Returns a Long

Set Server Type:

1.Set Server=1 : Send by operator 3000

2.Set Server=4 : Send by operator 9821(or 9826)

3.Set Server=6 : Send by operator 50004

4.Set Server=100 : Send by Black List Reference(Important: In this case, system automatically add header and footer to your message body. If you want to remove this setting, Email US 'Support@ShahreNovin.com')

Set Mobile: Please set this parameter just in simple and full format ,With 11-length English Characters (example:09121234567)

Set Message: Any string format and unicode

OTP Generator

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

Full style:

OTPGenerate(PortalCode As Integer, UserName As String, PassWord As String, Mobile As String, Key As String, ServerType As Integer) Returns a Long

Set Server Type:

1.Set Server=1 : Send by operator 3000

2.Set Server=4 : Send by operator 9821(or 9826)

3.Set Server=6 : Send by operator 50004

4.Set Server=100 : Send by Black List Reference(Important: In this case, system automatically add header and footer to your message body. If you want to remove this setting, Email US 'Support@ShahreNovin.com')

Set Mobile:

Please set this parameter just in simple and full format ,With 11-length English Characters (example:09121234567)

Set Key:

Leave this empty to auto generate the password

getInbox

این متد خواندن محتوای صندوق دریافت پیامک‌ها Inbox را بر عهده دارد.

1. Full style:

getInbox(PortalCode As Integer, UserName As String, PassWord As String, lastItems As Integer, indexID As Long Integer, resultCode As Integer(This parameter posts by reference)) Return As DataTable

Set lastItems:

This paratemer specifies the number of records you need to have for a request(Orders by Id descent).

Set indexID:

This parameter specifies the Identity of start record for query.

Set resultCode:

You should not set this parameter. Just post it by reference so method can fill the result status on it, Then you can read the new value.

Return Type Fields Structure:

This is a dataTable and these are fields of a sample row:

id,Mobile,Message,InsDate,Reference,Number

Real Sample:

22979930 # 09128353112 # Off # 2019-06-18 14:25:07.820 # 4 # 982188341182


2. Get Unread Messages:

Set indexID: Set this to -1, then you have the unread messages.

getDeliveryStatus

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

1. Full style:

getDeliveryStatus(PortalCode As Integer, UserName As String, PassWord As String, localID As Long Integer, cpID As Long Integer)Returns an Integer

Set localID: Record ID in delivery box on your panel.

Set cpID: Returned Identity from singleSMS Method before you used.

2. Get Unread Messages:

Set indexID: Set this to -1, then you have the unread messages.

رابط برنامه‌نویسی api برای ارسال پیامک

ارسال پیام تکی Single SMS

1. ارسال پیام عادی

شرح عملکرد

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

Full style:

https://api.homais.com/services/messaging/sms/api/sendMessage/direct/?username=XXXX&password=YYYY&PortalCode=ZZZZ&mobile=AAAAAAAAAAA&message=textMessage&ServerType=100

نکات مهم

1. مقدار بازگشتی این api به شکل یک عدد صحیح بزرگتر از 1000 و یا کد خطا(عدد مثبت کوچکتر از 1000 و یا عدد منفی) خواهد بود.

2. این متد را علاوه بر کدنویسی، می‌توانید مستقیما در نوار آدرس مرورگر وارد نموده، استفاده و یا تست کنید.

3. راهنمای کدهای خطا را از قسمت "جدول کدهای بازگشتی" ببینید.

4. پارامتر ServerType را می‌توانید به 1 یا 4 یا 6 هم تغییر دهید. در این صورت مرجع ارسال پیام‌های شما تغییر کرده، از شماره‌های شخصی خود پیام را ارسال می‌کنید و ارسال به لیست سیاه را از دست خواهید داد.


2. ارسال رمز یکبار مصرف OTP:

شرح عملکرد

این متد به‌منظور ارسال رمز یکبار مصرف کاربرد دارد:

Full style:
https://api.homais.com/services/messaging/sms/api/sendMessage/OTP/?username=XXXX&password=YYYY&PortalCode=ZZZZ&mobile=AAAAAAAAAAA&message=textMessage&ServerType=100
نکات مهم

1. مقدار بازگشتی این api به شکل یک عدد صحیح بزرگتر از 1000 و یا کد خطا(عدد مثبت کوچکتر از 1000 و یا عدد منفی) خواهد بود.

2. این متد را علاوه بر کدنویسی، می‌توانید مستقیما در نوار آدرس مرورگر وارد نموده، استفاده و یا تست کنید.

3. این متد پس از ارسال رمز یکبار مصرف OTP(یک عدد 6رقمی)، رمز ارسال شده را نیز بر‌می‌گرداند.

4. راهنمای کدهای خطا را از قسمت "جدول کدهای بازگشتی" ببینید.

5. پارامتر ServerType را می‌توانید به 1 یا 4 یا 6 هم تغییر دهید. در این صورت مرجع ارسال پیام‌های شما تغییر کرده، از شماره‌های شخصی خود پیام را ارسال می‌کنید و ارسال به لیست سیاه را از دست خواهید داد.


3. استفاده از متد GET:

برای ارسال پارامترها از طریق متد GET-POST بدین طریق عمل کنید

شرح عملکرد

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

Post these parameters directly to the api:
username(Your credential)
password(Your credential)
PortalCode(Your portal code)
mobile(A mobile number starts with 09)
message(A text message in any language)
ServerType (100)

رابط برنامه‌نویسی api برای دریافت پیامک

نحوه ایجاد دسترسی api برای دریافت ترافیک ورودی پیامک(Relay Service)

برای شروع لازم است یک آدرس معتبر اینترنتی ایجاد و بر روی آن پارامترهای ورودی را مطابق با لیست زیر تنظیم و پیاده سازی کنید:

Full style:

yourURL/?portalcode=$value&reference=$value&smsNumber=$value&from=$value&body=$value

لیست پارامترهای ورودی

portalcode: کد پرتال

reference: نوع مرجع شماره دریافت کننده

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

from: شماره موبایل فرستنده

body: متن پیامک

نحوه عملکرد این سریس بدین گونه است که به محض دریافت پیامک روی شماره مرجع پیامک، علاوه بر دخیره در صندوق دریافت سیستم پیامدهی، یک نسخه از آن نیز به URL تعریف شده ارسال خواهد شد.

نحوه تعریف کردن URL جهت درج پیامک‌های ورودی:

1. تنظیمات سیستم

2. تب 'تنظیمات پایه'

3. SYSTEM REGISTERY

4. کد رجیستری 'MODULES_SMS_RELAY_FORWARDING_URL' را جستجو و پیدا کنید

5. رکورد یافته را ویرایش نموده و در قسمت 'Value 1' آدرس URL دقیق خود را وارد کنید. این آدرس در واقع همانی است که تمایل دارید پیامک‌های دریافتی Inbox را بر روی آن دریافت کنید. لطفا دقت کنید که به انتهای این آدرس هیچ پارامتری اضافه نشود و تنها URL مطلق لازم است. همانند مثال زیر:
https://relay.homais.com/Relay

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

اتصال سایت‌های WordPress به سیستم ارسال پیامک هُما

تنظیمات افزونه Digits برای اتصال به هُما

پیش از هر اقدامی لازم است افزونه Digits را نصب کنید. سپس مراحل ذیل را به ترتیب اجرا نمائید:

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

1. وارد پنل مدیریت وردپرس سایت خود شوید.

2. از منوی اصلی بر روی نام افزونه digits کلیک کنید.

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

این مقادیر را تنظیم کنید:

نام کاربری: نام کاربری

پسورد: رمز عبور

Portal: کد اشتراک(کد پرتال)

ServerType: عدد 100 برای ارسال به لیست سیاه

4. تنظیمات را ذخیره و تست کنید.

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

نمونه کد فراخوانی وب سرویس پیامدهی هُما

نمونه کد PHP
نمونه کد PHP برای ارسال پیامک از طریق وب سریس SOAP:

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

سایر موارد

به منظور درج کاراکتر ENTER و ادامه متن در یک خط جدید از کد دستوری n\ در جای مشخص از متن خود استفاده نمائید.

جدول کدهای بازگشتی ارسال پیامک وب سرویس و api
** درصورت موفقیت آمیز بودن ارسال پیام، کد رهگیری از سمت مخابرات بازگشت داده خواهد شد.
کد بازگشتی شرح
-1 متن پیامک معتبر نیست.
-2 نام کاربری یا کلمه عبور یا کد اشتراک معتبر نیست.
-4 شماره موبایل معتبر نیست.
-5 خطای داخلی وب سرویس. به پشتیانی گزارش کنید.
-6 میزان شارژ/اعتبار پنل کافی نیست/ یا محدودیتی از این دست مانع ارسال می‌شود.
-7 ارسال پیام تکراری تا 5 دقیقه مجاز نیست.
-8 محدودیت در ارسال با مرجع بلک لیست/اندکی صبر کنید.
-13 مرجع ارسال انتخاب شده معتبر نیست. اعداد 1و4و6و100 فعال می‌باشند.
-20 شماره فعال نیست / لطفا فرم WhoIS مخابراتی را تکمیل کنید.
-31 متن پیام حاوی کلمات یا حروف غیرمجاز است.
-32 برای ارسال پیام حاوی لینک، پروفایل WhoIS خود را تکمیل و از تائید آن مطمئن شوید.
-33 برای ارسال از طریق شماره عمومی، ابتدا پروفایل WhoIS را تکمیل و از تائید آن مطمئن شوید.
-50 خطای نامشخص. لطفا به پشتیبانی گزارش دهید.
-99 خطای نامشخص. لطفا به پشتیبانی گزارش دهید.
-100 شماره در لیست سیاه پرتال شما قرار دارد.
-101 شماره در لیست سیاه مشترک سیستم قرار دارد.
-103 شماره مرجع 5000 برای ارسال معتبر نیست.
-137 متن پیام حاوی کلمات غیرمجاز می‌باشد.
1,14,15,20,27,28,-111 شماره در لیست سیاه مخابرات قرار دارد.
12 شماره مرجع 9821 برای ارسال معتبر نیست.
52 متن پیام و شماره موبایل تکراری است. لطفا چند ثانیه صبر کنید و مجددا ارسال نمائید.
سایر کدهای خطا عموما به دلایل مرتبط با غیرمجاز بودن پارامترهای ورودی رخ می‌دهند. از قبیل نامعتبر بودن شماره موبایل، متن پیام طولانی، غیرمجاز بودن سرشماره مخابراتی، عدم تکمیل فرم WhoIS اطلاعات فردی و غیره. در این گونه مواقع برای بررسی، کد خطای دریافتی را به‌همراه توضیحات لازم(و مشخص نمودن کد مرجع ارسال ServerType) برای بخش پشتیبانی بصورت تیکت ارسال نمائید.