راهنما و مستندات محصول ثبت نام پیامکی جوملا

مشاهده و خرید محصول

چگونه وب سرویس ارسال پیامک ثبت نام پیامکی را تغییر دهیم

تاریخ ایجاد : 1397/09/27

در این مقاله ما سعی داریم نحوه تغییر وب سرویس یا به اصطلاح API ارسال پیامک را در این کامپوننت به شما آموزش دهیم؛

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

 وب سرویس ارسال پیامک چیست ؟

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

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

 

تغییر وب سرویس کامپوننت ثبت نام پیامکی

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

YOUR_JOOMLA_ROOT/administrator/components/com_smsregistration/helpers/sendsms.php

 سپس فایل مربوطه را با یک ویرایشگر متنی باز کنید که کد زیر را در یک کلاس مشاهده خواهید کرد :

$config = JComponentHelper::getParams('com_smsregistration');
$username = $config->get('username');
$password = $config->get('password');
$smsline = $config->get('line');
$reseller = $config->get('reseller');
		
if(!class_exists('nusoap_client')) {
	require JPATH_ADMINISTRATOR.'/components/com_smsregistration/helpers/nusoap.php';
}

$client = new nusoap_client('http://'.$reseller.'/post/send.asmx?wsdl',true);
$err = $client->getError();
if ($err) 
{
	echo 'Constructor error' . $err;
}

$parameters['username'] = $username; 
$parameters['password'] = $password; 
$parameters['to'] = $mobile;
$parameters['from'] = $smsline; 
$parameters['text'] = $text;
$parameters['isflash'] =false;

$res = $client->call('SendSimpleSMS2', $parameters);  

return $res;

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

 خط 7 تا 9 برای فراخوانی کتابخانه Nusoap می باشد که در صورت عدم نیاز می توانید پاک کنید.

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

 نکته : این تابع در بازگشت کد پیامک ارسال شده را بر میگرداند که وب سرویس شما هم باید کد پیامک ارسال شده را به متغیر $res داده تا در پایگاه داده به عنوان آرشیو ذخیره شود؛ در صورتی که آگاهی نسبت به این موضوع ندارید می توانید خط 27 که return می باشد را با کد زیر جایگزین کنید :

return rand(111111,999999);

 تا یک عدد تصادفی را برگرداند.

 نکته : متغیر $reseller ممکن است در وب سرویس شما قابل استفاده نباشد فلذا در صورت تمایل می توانید اصلا از آن استفاده نکنید.