رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
مشکل با ارسال sms
#1
سلام عزیزان من در Yii2 از این کلاس برای ارسال وب سرویس استفاده کردم

class Sms
{

   private static $url = '=======';
   private static $number = '======';
   private static $username = '=====';
   private static $password = '====';

   public static function send($to, $text)
   {
       ini_set('soap.wsdl_cache_enabled', '0');
       try {
           $soapClient = new SoapClient(self::$url);
           $parameters = array(
               'sender_number'=>self::$number,
               'ersal_flash'=>false,
               'password'=>self::$password,
               'note'=>iconv('UTF-8', 'UTF-8//TRANSLIT', $text),
               'reciever_number'=>array($to),
               'username'=>self::$username,
           );
           if($soapClient->sms_send($parameters)->SendSmsResult == 1) {
               return true;
           }
           return false;
       }
       catch (Exception $e) {
           return false;
       }
   }
}

اما این اررور را دریافت میکنم

SoapFault

Function ("sms_send") is not a valid method for this service

در Yii2 از کدام کلاس استفاده کنم یا چطوری مشکل را حل کنم ؟


این هم متدی که سایت بم داده

نام متد sms_send : این متد برای ارسال پیامک از طریق وب سرویس استفاده خواهد شد . این متد 8 پارامتر ورودی دریافت میکند که شامل : username,password,sender_number,reciever_number,note,ersal_flash,onlysend,date خواهد بود . 

پارامتر ها : 

- username : نام کاربری مورد استفاده در سامانه پیامک  [اجباری]

- password : رمز عبور مورد استفاده در سامانه پیامک [اجباری]

- sender_number : شماره ارسال کننده در سامانه پیامک  [اجباری]

- reciever_number : شماره دریافت کننده پیامک  [اجباری]

- note : متن پیامک ارسالی  [اجباری]

- ersal_flash : آیا پیامک به صورت فلش ارسال شود یا خیر ( مقدار true یا false دریافت میکند ) [اختیاری]

- onlysend : جهت ارسال سریع بدون وقفه در زمان ارسال پیامک ( ارسال پیامک با تاخیر 15 ثانیه به مشترک انجام خواهد شد) [اختیاری]

- date : تاریخ ارسال پیامک ( مورد استفاده جهت پیامک های ارسال در آینده ) [اختیاری]
پاسخ
تشکر شده توسط:
#2
ارتباطی به Yii2 نداره. آدرس وب‌سرویس رو بگذارین تا بررسی بشه. متد send_sms تعریف نشده توی وب‌سرویس. ببینید چی بوده اسم متد. ممکنه API رو تغییر داده باشن ولی داکیومنت رو بروزرسانی نکرده باشن.
پاسخ
تشکر شده توسط:
#3
http://www.sms.ardindata.com/webservice/...e.php?wsdl
پاسخ
تشکر شده توسط:
#4
بله مشکل از تغییرات در API بود که در مستندات تغییر نکرده بود ...
پاسخ
تشکر شده توسط:
#5
این چرا اینقدر WSDL اش داغونه؟ واسه وب‌سرویس خودمون رو ببینید:
http://sms.ncis.ir/post/send.asmx?wsdl

البته مشکل از اون نیست. شما SendSms رو صدا زدین که اشتباهه و باید send_sms رو صدا بزنین.
پاسخ
تشکر شده توسط: mehdi king




کاربران در حال بازدید این موضوع: 1 مهمان