Skip to content

Latest commit

 

History

History
164 lines (132 loc) · 9.31 KB

File metadata and controls

164 lines (132 loc) · 9.31 KB

راهنمای متد GetMessageStatus

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

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

نامنوعاجباری / اختیاریتوضیح
UserNameStringاجبارینام کاربری
PasswordStringاجباریکلمه عبور
MessageIDStringاجباریشناسه پیامک

خروجی متد

نوعتوضیح
Array Of Long Integerآرایه ای شامل وضعیت پیامک تا این لحظه و یا کد خطا

نکات مهم در مورد کار با متد GetMessageStatus

  • شما با استفاده از شناسه پیامک ( MessageID که خروجی متد SendArray یا GetMessageID می باشد ) به عنوان پارامتر ورودی متد GetMessageStatus ، می توانید از وضعیت پیامک ارسال شده مطلع شوید .
  • خروجی این متد وضعیت پیامک ارسالی می باشد ، دقت کنید که وضعیت پیامک یک عدد کوچکتر از 50 می باشد ، در غیر این صورت مقدار بازگشتی نشان دهنده یک کد خطا می باشد . کد و توضیحات مربوط به وضعیت پیامک در جدول ذیل ذکر شده است:

وضعیت پیامک های ارسال شده

کدتوضیح
0شناسه پیامک نامعتبر است ( یا ممکن است شناسه پیامک ارسال شده مربوط به پیامکی باشد که بیش از یک ماه از ارسال آن می گذرد )
وضعیت این پیامک را مجددا بررسی نفرمایید زیرا تغییری در وضعیت آن حاصل نمی شود
1هنوز وضعیتی دریافت نشده است ، سیستم در حال پیگیری وضعیت پیامک از مخابرات است
می توانید وضعیت این پیامک را مجددا بررسی فرمایید زیرا تغییر خواهد کرد
2پیامک به موبایل گیرنده رسیده است
وضعیت این پیامک را مجددا بررسی نفرمایید زیرا تغییری در وضعیت آن حاصل نمی شود
3پیامک به موبایل گیرنده نرسیده است ، به یکی از دلایل ذیل :
۱. پر بودن Inbox موبایل گیرنده پیام
۲. خاموش بودن موبایل گیرنده پیام
۳. در دسترس نبودن موبایل گیرنده پیام
۴. اختلال در شبکه BTS
وضعیت این پیامک را مجددا بررسی نفرمایید زیرا تغییری در وضعیت آن حاصل نمی شود
4پیامک به مرکز مخابراتی رسیده است ( در صف ارسال مخابرات قرار گرفته است و بزودی به موبایل گیرنده ارسال می گردد )
می توانید وضعیت این پیامک را مجددا بررسی فرمایید زیرا تغییر خواهد کرد
5پیامک به مرکز مخابراتی نرسیده است ( این وضعیت زمانی رخ می دهد که مرکز مخابراتی نتواند به اپراتور تلفن همراه شماره گیرنده ، پیامک ارسال کند )
وضعیت این پیامک را مجددا بررسی نفرمایید زیرا تغییری در وضعیت آن حاصل نمی شود
6شماره موبایل گیرنده پیامک به درخواست کاربر در لیست غیر فعال مخابرات قرار گرفته است
هزینه این ارسال به کاربر برگردانده می شود
وضعیت این پیامک را مجددا بررسی نفرمایید زیرا تغییری در وضعیت آن حاصل نمی شود
7پیامک در صف ارسال قرار دارد ( سرور هنوز شروع به ارسال پیامک نکرده است )
می توانید وضعیت این پیامک را مجددا بررسی فرمایید زیرا تغییر خواهد کرد
8سرور در حال ارسال پیامک می باشد
می توانید وضعیت این پیامک را مجددا بررسی فرمایید زیرا تغییر خواهد کرد
9در زمان ارسال به علت کمبود اعتبار پیام کوتاه ، این پیامک ارسال نشده است
وضعیت این پیامک را مجددا بررسی نفرمایید زیرا تغییری در وضعیت آن حاصل نمی شود
10پیامک ارسال نشده است ( به دلیل اختلالات ارتباطی پیامک ارسال نشده است اما سرور به مدت 2 ساعت تلاش به ارسال مجدد این پیامک می کند و اگر طی این 2 ساعت نتواند پیامک را ارسال کند ، هزینه آن را به کاربر برمی گرداند
می توانید وضعیت این پیامک را مجددا بررسی فرمایید زیرا تغییر خواهد کرد
11پیامک هنوز توسط اپراتور تأیید نشده است
می توانید وضعیت این پیامک را مجددا بررسی فرمایید زیرا تغییر خواهد کرد
12پیامک در لیست کنسل شده یا فیلتر شده قرار دارد
وضعیت این پیامک را مجددا بررسی نفرمایید زیرا تغییری در وضعیت آن حاصل نمی شود

نمونه کد

PHP

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;
    }
    
}

Java

/** 
    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){}
}

C#

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);
    }
}

}

VB.net

Imports System.Net Imports System.IO Imports System.Text Imports System.Web.Script.Serialization

public Class API

'''

''' Get Message Status ''' ''' String ''' String ''' long[] MessageIDs ''' public Shared Function GetMessageStatus(UserName As String, Password As String, MessageID As Long()) As Long() Using SMSService As New SOAP.SMS() Return SMSService.GetMessageStatus(UserName, Password, MessageID) End Using End Function

End Class