برای اطلاع از وضعیت پیامک های ارسال شده از این متد استفاده کنید . با توجه به جدول ذیل پارامتر های این متد را مقدار دهی کنید .
| نام | نوع | اجباری / اختیاری | توضیح |
|---|---|---|---|
| UserName | String | اجباری | نام کاربری |
| Password | String | اجباری | کلمه عبور |
| MessageID | String | اجباری | شناسه پیامک |
| نوع | توضیح |
|---|---|
| Array Of Long Integer | آرایه ای شامل وضعیت پیامک تا این لحظه و یا کد خطا |
- شما با استفاده از شناسه پیامک ( MessageID که خروجی متد SendArray یا GetMessageID می باشد ) به عنوان پارامتر ورودی متد GetMessageStatus ، می توانید از وضعیت پیامک ارسال شده مطلع شوید .
- خروجی این متد وضعیت پیامک ارسالی می باشد ، دقت کنید که وضعیت پیامک یک عدد کوچکتر از 50 می باشد ، در غیر این صورت مقدار بازگشتی نشان دهنده یک کد خطا می باشد . کد و توضیحات مربوط به وضعیت پیامک در جدول ذیل ذکر شده است:
| کد | توضیح |
|---|---|
| 0 | شناسه پیامک نامعتبر است ( یا ممکن است شناسه پیامک ارسال شده مربوط به پیامکی باشد که بیش از یک ماه از ارسال آن می گذرد ) وضعیت این پیامک را مجددا بررسی نفرمایید زیرا تغییری در وضعیت آن حاصل نمی شود |
| 1 | هنوز وضعیتی دریافت نشده است ، سیستم در حال پیگیری وضعیت پیامک از مخابرات است می توانید وضعیت این پیامک را مجددا بررسی فرمایید زیرا تغییر خواهد کرد |
| 2 | پیامک به موبایل گیرنده رسیده است وضعیت این پیامک را مجددا بررسی نفرمایید زیرا تغییری در وضعیت آن حاصل نمی شود |
| 3 | پیامک به موبایل گیرنده نرسیده است ، به یکی از دلایل ذیل : ۱. پر بودن Inbox موبایل گیرنده پیام ۲. خاموش بودن موبایل گیرنده پیام ۳. در دسترس نبودن موبایل گیرنده پیام ۴. اختلال در شبکه BTS وضعیت این پیامک را مجددا بررسی نفرمایید زیرا تغییری در وضعیت آن حاصل نمی شود |
| 4 | پیامک به مرکز مخابراتی رسیده است ( در صف ارسال مخابرات قرار گرفته است و بزودی به موبایل گیرنده ارسال می گردد ) می توانید وضعیت این پیامک را مجددا بررسی فرمایید زیرا تغییر خواهد کرد |
| 5 | پیامک به مرکز مخابراتی نرسیده است ( این وضعیت زمانی رخ می دهد که مرکز مخابراتی نتواند به اپراتور تلفن همراه شماره گیرنده ، پیامک ارسال کند ) وضعیت این پیامک را مجددا بررسی نفرمایید زیرا تغییری در وضعیت آن حاصل نمی شود |
| 6 | شماره موبایل گیرنده پیامک به درخواست کاربر در لیست غیر فعال مخابرات قرار گرفته است هزینه این ارسال به کاربر برگردانده می شود وضعیت این پیامک را مجددا بررسی نفرمایید زیرا تغییری در وضعیت آن حاصل نمی شود |
| 7 | پیامک در صف ارسال قرار دارد ( سرور هنوز شروع به ارسال پیامک نکرده است ) می توانید وضعیت این پیامک را مجددا بررسی فرمایید زیرا تغییر خواهد کرد |
| 8 | سرور در حال ارسال پیامک می باشد می توانید وضعیت این پیامک را مجددا بررسی فرمایید زیرا تغییر خواهد کرد |
| 9 | در زمان ارسال به علت کمبود اعتبار پیام کوتاه ، این پیامک ارسال نشده است وضعیت این پیامک را مجددا بررسی نفرمایید زیرا تغییری در وضعیت آن حاصل نمی شود |
| 10 | پیامک ارسال نشده است ( به دلیل اختلالات ارتباطی پیامک ارسال نشده است اما سرور به مدت 2 ساعت تلاش به ارسال مجدد این پیامک می کند و اگر طی این 2 ساعت نتواند پیامک را ارسال کند ، هزینه آن را به کاربر برمی گرداند می توانید وضعیت این پیامک را مجددا بررسی فرمایید زیرا تغییر خواهد کرد |
| 11 | پیامک هنوز توسط اپراتور تأیید نشده است می توانید وضعیت این پیامک را مجددا بررسی فرمایید زیرا تغییر خواهد کرد |
| 12 | پیامک در لیست کنسل شده یا فیلتر شده قرار دارد وضعیت این پیامک را مجددا بررسی نفرمایید زیرا تغییری در وضعیت آن حاصل نمی شود |
class SMS
{
public $Username = '';
public $Password = '';
private $SoapAddress = 'https://sms.sunwaysms.com/SMSWS/SOAP.asmx?wsdl';
private $client;
function __construct()
{
$this->client = new SoapClient($this->SoapAddress);
}
public Function GetClient(){
return $this->client;
}
public Function GetClientEx($option){
return new SoapClient($this->SoapAddress, $option);
}
public Function GetMethods(){
$arr = array();
$client = GetClient();
return $client->__getFunctions();
}
public Function GetMessageStatus($MessageIDArray){
$option = array('UserName'=> $this->Username,'Password'=> $this->Password,'MessageID'=> $MessageIDArray);
$client = $this->GetClient();
return $client->GetMessageStatus($option)->GetMessageStatusResult;
}
}/**
Get Message Status
@param UserName String
@param Password String
@param MessageID long[] MessageIDs
@return
*/
public final long[] GetMessageStatus(String UserName, String Password, long[] MessageID)
{
try (SOAP.SMS SMSService = new SOAP.SMS())
{
return SMSService.GetMessageStatus(UserName, Password, MessageID);
}
catch (RuntimeException ex){}
}public static class API {
/// <summary>
/// Get Message Status
/// </summary>
/// <param name="UserName">String</param>
/// <param name="Password">String</param>
/// <param name="MessageID">long[] MessageIDs</param>
/// <returns></returns>
public static long[] GetMessageStatus(string UserName, string Password, long[] MessageID) {
using (SOAP.SMS SMSService = new SOAP.SMS()) {
return SMSService.GetMessageStatus(UserName, Password, MessageID);
}
}
}Imports System.Net Imports System.IO Imports System.Text Imports System.Web.Script.Serialization
public Class API
'''
End Class