لوگوی sms.ir
ورود / ثبت نام
لوگوی sms.ir
customersImage

ارسال پیامک توسط Laravel

crayon-faq

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

 

این پکیج از نسخه لاراول ۵ پشتیبانی می کند.

 

 


 نصب پکیج از طریق Composer : نسخه ۱.۰.۷

 

composer require ipecompany/smsirlaravel

 

پس از نصب از طریق composer شما باید در فایل  app.php در پوشه config اقدام به معرفی providers و aliases پکیج smsir کنید. پس به این ترتیب اقدام میکنیم :

 

// این خط را در آرایه providers اضافه نمایید


Ipecompany\Smsirlaravel\SmsirlaravelServiceProvider::class,

// این خط را در آرایه aliases اضافه نمایید


'Smsirlaravel' => Ipecompany\Smsirlaravel\SmsirlaravelFacade::class,

 

 پس از تنظیم کردن فایل app.php برای استخراج فایل تنظیمات و پنل مدیریتی کد زیر را اجرا نمایید

 

php artisan vendor:publish

 

با اجرای این کد فایل های migration برای ساخت تیبل log و فایل view و … برای نمایش پنل مدیریت sms-admin برای شما استخراج میگردد. حال میبایست کد زیر را برای ساخته شدن table مربوطه اجرا نمایید

 

php artisan migrate

 

پس از استخراج فایل تنظیمات smsirlaravel.php در پوشه config می توانید پکیج را کانفیگ کنید.
تنظیمات این بخش بسیار ساده و گویاست، وارد محیط کاربری sms.ir شده و از صفحه <برنامه نویسان> api-key و secret-key خود را دریافت کنید :

https://ip.sms.ir/#/UserApiKey

 


<?php return [ /* Important Settings */ // ====================================================================== // never remove 'web', . just put your middleware like auth or admin (if you have) here. eg: ['web','auth'] 'middlewares' => ['web'], // you can change default route from sms-admin to anything you want 'route' => 'sms-admin', // SMS.ir Web Service URL 'webservice-url' => env('SMSIR-WEBSERVICE-URL','https://ws.sms.ir/'), // SMS.ir Api Key 'api-key' => env('SMSIR-API-KEY','Your api key'), // SMS.ir Secret Key 'secret-key' => env('SMSIR-SECRET-KEY','Your secret key'), // Your sms.ir line number 'line-number' => env('SMSIR-LINE-NUMBER','Your Sms.ir Line Number'), // ====================================================================== // set true if you want log to the database 'db-log' => true, /* Admin Panel Title */ 'title' => 'مدیریت پیامک ها', // How many log you want to show in sms-admin panel ? 'in-page' => '15' ];

 

خط ۹ : این خط مربوط به middleware است . شما با تنظیم کردن middleware مورد نظر خود دسترسی مدیران را به صفحه گزارشات پیامک مشخص می نمایید . به عنوان مثال اگر قصد دارید این صفحه به کاربرانی که login کرده اند نمایش داده شود آن را به صورت [‘web’,’auth’] تنظیم نمایید

خط ۱۱ : اگر قصد دارید صفحه گزارشات را با آدرس دیگری اجرا نمایید این مقدار را تغییر دهید.

خط ۱۳ : لینک وب سرویس ارسال پیامک که آن را تغییر ندهید.

خط ۱۵ الی ۱۹ : در اینجا api-key، secret key و line-number خود را وارد نمایید. بهتر است این کار را در فایل .env خود انجام دهید. زیرا پس از بروزرسانی پکیج امکان تغییر این فایل وجود دارد. برای این کار در فایل .env خود این ۳ خط را افزوده و با api-key . secret-key و شماره ارسال پیامک خود در سامانه sms.ir تنظیم نمایید

 

SMSIR-API-KEY=api SMSIR-SECRET-KEY=secret SMSIR-LINE-NUMBER=number

 

خط ۲۳ : اگر تمایلی به لاگ شدن ارسال ها در دیتابیس ندارید می توانید این مقدار را برابر false قرار دهید.

خط ۲۶ :‌ این متن title صفحه نمایش گزارشات پیامک می باشد که می توانید به دلخواه تغییر دهید.

خط ۲۸ : این عدد مقدار بارگزاری لاگ ها در هر صفحه را مشخص می کند

 

حال وارد آدرس sms-admin/ در سایت خود شوید . اگر کلیدهای api را به درستی وارد کرده باشید موجودی پیامک شما در بالای صفحه نمایش داده می شود

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

 


مِتُدهای قابل استفاده :

 

ارسال پیامک ساده :

Smsirlaravel::send()

این متد ۳ پارامتر می گیرد. پارامتر اول و دوم باید به صورت array ست شود . array اول پیام ها و array دوم شماره هاییست که قصد ارسال پیام ها را دارید. به مثال زیر برای ارسال ۲ پیام متفاوت به ۲ شماره متفاوت توجه فرمایید:

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

Smsirlaravel::send(['test1','test2'],['09123456789','0912000000'])

پارامتر سوم زمان ارسال است و میتوانید برای ارسال در همان لحظه این پارامتر را وارد نکنید.


دریافت موجودی پیامک :

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

Smsirlaravel::credit()

دریافت لیستی از شماره های فعال شما :

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

Smsirlaravel::getLines()

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

اگر ماژول باشگاه مشتریان را فعال کرده باشید می توانید کاربران خود را با این method به لیست مخاطبین خود اضافه نمایید

Smsirlaravel::addToCustomerClub()

به مثال زیر برای افزودن مخاطب به باشگاه مشتریان توجه فرمایید:

Smsirlaravel::addToCustomerClub('mr','ali','rezayi','09120000000')

این متد ۶ پارامتر می گیرد. پارامتر اول: prefix$ که باید به عنوان مثال با (آقای، خانم) پر شود. پارامتر دوم نام فرد و پارامتر سوم نام خانوادگی می باشد. در نهایت با وارد کردن پارامتر چهارم که شماره موبایل مخطاب می باشد میتوانید این کاربر را به لیست مخاطبین باشگاه مشتریان خود بیافزایید . پارمتر پنجم مربوط به تاریخ تولد و پارامتر ششم مربوط به category باشگاه مشتریان شما می باشد که پر کردنشان ضروری نمی باشد.


حذف مخاطب از باشگاه مشتریان :

توسط این متد می توانید یک مخاطب را از باشگاه مشتریان خود حذف نمایید.

Smsirlaravel::deleteContact();

به این مثال توجه فرمایید:

Smsirlaravel::deleteContact('09120000000');

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


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

با این method می توانید به مخاطبین خود در باشگاه مشتریان پیامک ارسال نمایید.

Smsirlaravel::sendToCustomerClub();

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

Smsirlaravel::sendToCustomerClub(['hi'],['09100000000']);

این متد ۴ پارامتر دریافت می کند . پارامتر اول آرایه پیام ها و پارامتر دوم آرایه شماره ها می باشد. پارامتر سوم زمان ارسال می باشد که در صورتی که آن را وارد نکنید پیام در همان لحظه ارسال میگردد. همینطور در پارامتر چهارم اگر false بفرستید شما تعیین می کنید در صورتی که ارسال در هر جا به خطا خورد ادامه ارسال ها را انجام ندهد.

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


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

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

Smsirlaravel::addContactAndSend();

به این مثال توجه فرمایید:

Smsirlaravel::addContactAndSend('Mr','reza','ahmadi','09123456789','Hi Mr.Ahmadi');

این متد کاملا شبیه به متد addToCustomerClub است. تنها پارامتر آن $message می باشد که در واقع متن مورد نظر شما برای ارسال به این مخاطب می باشد.


ارسال کد فعال سازی به کاربران :

در صورتی که ماژول verification code را خریداری کرده باشید می توانید کد فعالسازی به کاربران خود ارسال نمایید.

Smsirlaravel::sendVerification();

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

Smsirlaravel::sendVerification('12345','09123456789')

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


ارسال سریع به همراه قالب :

در صورتی که ماژول Ultra Fast Send را خریداری کرده باشید می توانید پیام های خودتان را با قالب هایی که مشخص کرده اید به کاربرانتان ارسال نمایید.

Smsirlaravel::ultraFastSend();

در این مثال من قالبی با محتوای:   [user] عزیز کد فعالسازی موبایل شما [verificationCode] می باشد.   طراحی کرده ام که به این صورت آن را ارسال می کنم:

Smsirlaravel::ultraFastSend(['user'=>'username','verificationCode'=>'12345'],350,'09123456789');

این متد ۳ پارامتر دریافت میکند . پارامتر اول آرایه ای از پارامترهایی ست که در قالب ارسال سریع خود مشخص کرده اید. پارامتر دوم ID (شناسه) قالبی است طراحی کرده اید و تایید شده است و پارارمتر سوم نیز شماره ایست که قصد ارسال پیام سریع به آن را دارید.


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

توسط این method می توانید در بازه زمانی که مشخص می کنید لیستی از پیامک های ارسالی خود را دریافت کنید.

Smsirlaravel::getSentMessages();

به مثال زیر برای دریافت توجه نمایید:

Smsirlaravel::getSentMessages(20,1,'1397/09/01','1397/09/30');

این method چهار پارامتر دریافت می کند. پارامتر اول تعداد پیام هایی که مایل هستید در هر صفحه دریافت کنید. پارامتر دوم صفحه را مشخص میکند. دو پارامتر بعدی بازه زمانی که مایل به دریافت هستید را مشخص می کنید. به عنوان مثال در اینجا ما ۲۰ پیامک آخر را در یک صفحه و در بازه زمانی بین اول آذر سال ۹۷ تا ۳۰ آذر همان سال دریافت می کنیم.


دریافت پیامک های دریافتی در بازه زمانی مشخص :

توسط این method می توانید در بازه زمانی که مشخص می کنید لیستی از پیامک های دریافتی خود را دریافت کنید.

Smsirlaravel::getReceivedMessages();

به مثال زیر برای دریافت توجه نمایید:

Smsirlaravel::getReceivedMessages(10,1,'1397/09/01','1397/09/30');

این method چهار پارامتر دریافت می کند. پارامتر اول تعداد پیام هایی که مایل هستید در هر صفحه دریافت کنید. پارامتر دوم صفحه را مشخص میکند. دو پارامتر بعدی بازه زمانی که مایل به دریافت هستید را مشخص می کنید. به عنوان مثال در اینجا ما ۱۰ پیامک آخر را در یک صفحه و در بازه زمانی بین ۱ آذر سال ۹۷ تا ۳۰ آذر همان سال دریافت می کنیم.

 


 

سوالات و پیشنهادات خودتان را بیان کنید.

۲/۵ (۱ نظر)
ثبت نام کنید
آخرین مقالات

مشاوره رایگان ۰۲۱۲۸۵۳
146
0
Would love your thoughts, please comment.x