نوروز مبارک

نوروز مبارک

🔥 جشنواره نوروزی آموزش با ۷۰٪ تخفیف ویژه! 🎉

با آغاز سال نو، فرصتی استثنایی برای یادگیری فراهم شده است! 🌸

✨ از ۲۶ اسفند تا ۶ فروردین تمامی دوره‌های آموزشی ما با ۷۰٪ تخفیف ویژه در دسترس شما هستند.

اگر مدت‌هاست به دنبال یادگیری مهارتی جدید هستید، اکنون بهترین زمان است! در دوره‌های تخصصی ما، از برنامه‌نویسی و طراحی وب گرفته تا مهارت‌های دیجیتال مارکتینگ، همه چیز برای رشد شما فراهم شده است.

🚀 چرا نباید این فرصت را از دست داد؟
✅ دوره‌های متنوع و کاربردی
✅ تدریس توسط اساتید مجرب
✅ یادگیری در هر زمان و هر مکان

📌 همین حالا از این تخفیف فوق‌العاده بهره‌مند شوید! فرصت محدود است!

 

قیمت این دوره: رایگانــ
  • مدرس دوره : نیما دلیر
  • تعداد ویدیوها : 16 ویدیو
  • مدت زمان دوره : 3:17:00
  • سطح دوره : متوسط
  • وضعیت دوره : به اتمام رسیده
  • تاریخ آخرین بروزرسانی : 1402/08/09
آموزش درگاه پرداخت و ارسال ایمیل و اس ام اس در لاراول

آموزش درگاه پرداخت و ارسال ایمیل و اس ام اس در لاراول

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

شما به صورت پروژه محور و همچنین با ساده ترین روش ممکن قرار است  به دو روش تئوری و پروژه محور آموزش ببینید و تماما با لاراول نسخه 9 تست میشود و شما کافیه به صورت مبتدی با لاراول آشناییت داشته باشید

و همچنین نمونه کد ها هم به شما داده میشود

 

سرفصل های دوره :

1) آشناییت با دوره

2) درگاه پرداخت آنلاین داخل پروژه

3) ارسال کد با ایمیل در پروژه

4) ارسال کد با پیامک در لاراول



پیش نیاز های دوره :

  1. لاراول مبتدی

فهرستـــ ویدیوها

مدت زمان دوره 3:17:00
00:00
00:00
  • با مشاهده آنلاین جلسات در سایت ، هزینه اینترنت شما به صورت نیم بها محاسبه خواهد شد.

1
  • قسمت اول

00:12:22

در این بخش توضیحات درباره پکیج درگاه پرداخت داده میشود

2
  • جلسه دوم

00:10:07

قسمت دوم از فصل اول

3
  • جلسه سوم

00:08:32

برخی از ویژگی ها پکیج

4
  • قسمت چهارم

00:17:58

در این قسمت توضیحات درباره درگاه پرداخت داده میشود

5
  • قسمت پنجم

00:09:29

قسمت اخر از فصل اول و پایان قسمت درگاه پرداخت

6
  • شروع فصل اعلانیه ایمیلی

00:14:06

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

7
  • دریافت اطلاعات از جیمیل

00:06:39

در این قسمت یکسری اطلاعات را از جیمیل به دست میاوریم و کمی کد هارو جلو میبریم

8
  • معرفی پروژه برای تست ایمیل

00:17:23

در این قسمت پروژه معرفی میشود و کمی کد میزنیم

9
  • شروع فصل اعلانیه پیامکی

00:04:01

مقدمه برای شروع فصل جدید

10
  • اشنایی با سامانه ملی پیامک

00:11:56

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

11
  • معرفی پروژه برای تست پیامک

00:09:14

توضیحات راجب عملکرد کد ها و معرفی پروژه

12
  • نوشتن کد های مورد نیاز

00:14:03

در این بخش کد های مورد نیاز برخی از قسمت ها را مینویسیم

13
  • ادامه بخش کد نویسی

00:20:42

در این قسمت کد های بخش ارسال اس ام اس را تکمیل میکنیم

14
  • توضیحات پایانی و تست

00:23:41

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

15
  • مرور فصل آخر + فایل ها

00:05:09

مرور بر خلاصه کد های این فصل به همراه کد های این فصل

16
  • اعتبار سنجی بعد ارسال کد

00:12:10

در این قسمت نحوه اعتبار سنجی کد ارسال شده برسی میشود

دوره های دیگر مدرس

مشاهده همه دوره ها

نظرات کاربران در رابطه با این دوره

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

safaeiiam

ارسال شده در 1402/08/10

استاد معذرت می خوام

من طبق آموزش های شما پیش رفتم و همه چیز ok هستش و پیامک هم ارسال میشه ولی توی پنل میزنه ارسال نشده

با پشتیبانی که صحبت کردم میگن:

 کد متن های شما تایید شده و موردی از این بابت وجود ندارد.اما متدی که برای ارسال پیامک انتخاب کردید صحیح نمی باشد و لازم است از متد SendByBaseNumber2 طبق مستندات زیر استفاده فرمایید:https://www.melipayamak.com/api/sendbybasenumber2/

 

من هرچی تغییر میدم مشکلم برطرف نمیشه و همون ایراد رو دارم، من براتون کدهای خودمو می فرستم زحمت بکشین ببینید کجاش باید تغییر بدم. خیلی ممنون

 

config/sms.php


<?php


return [

'username' => '09132705505',
'password' => 'b9aeb90c-fe8a-48e9-984b-91a0e9892883',
'otp_from' => '50004001705505'


];
MessageService.php

<?php

namespace App\Http\Services\Message;

use App\Http\Interfaces\MessageInterface;

class MessageSerivce
{
    private $message;

    public function __construct(MessageInterface $message)
    {
        $this->message = $message;
    }

    public function send(){
        return $this->message->fire();
    }
}
MelipayamakService.php

<?php

namespace App\Http\Services\Message\SMS;

use Illuminate\Support\Facades\Config;


class MeliPayamakService
{

    private $username;
    private $password;
    private $bodyId;

    public function __construct(){
        $this->username = Config::get('sms.username');
        $this->password = Config::get('sms.password');
        $this->bodyId = Config::get('sms.bodyId');
    }


    public function addContact()
    {
        ini_set("soap.wsdl_cache_enabled", "0");
        $sms_client = new \SoapClient('http://api.payamak-panel.com/post/contacts.asmx?wsdl', array('encoding' => 'UTF-8'));
        $parameters['username'] = "***";
        $parameters['password'] = "***";
        $parameters['groupIds'] = "***"; //My group Id in panel
        $parameters['firstname'] = "MyUserFirstName";
        $parameters['lastname'] = "MyUserLastName";
        $parameters['nickname'] = "MyUserNickName";
        $parameters['corporation'] = "MyUserCorporation";
        $parameters['mobilenumber'] = "MyUserMobileNumber";
        $parameters['phone'] = "MyUserPhone";
        $parameters['fax'] = "MyUserFax";
        $parameters['birthdate'] = 2013 - 06 - 15; //for Example
        $parameters['email'] = "MyUserEmailAddress";
        $parameters['gender'] = 2; //For Example
        $parameters['province'] = 18; //For Example
        $parameters['city'] = 711; //For Example
        $parameters['address'] = "MyUserAddress";
        $parameters['postalCode'] = "MyUserPostalCode";
        $parameters['additionaldate'] = 2013 - 06 - 15; //For Example
        $parameters['additionaltext'] = "MyUserAdditionalText";
        $parameters['descriptions'] = "MyUserDescriptions";
        echo $sms_client->AddContact($parameters)->AddContactResult;
    }



    public function addSchedule()
    {
        ini_set("soap.wsdl_cache_enabled", "0");
        $sms_client = new \SoapClient('http://api.payamak-panel.com/post/schedule.asmx?wsdl', array('encoding' => 'UTF-8'));

        $parameters['username'] = "***";
        $parameters['password'] = "***";
        $parameters['to'] =  "912***";
        $parameters['from'] = "3000***";
        $parameters['text'] = "Test";
        $parameters['isflash'] = false;
        $parameters['scheduleDateTime'] = "2013-06-15T16:50:45";
        $parameters['period'] = "Once";
        echo $sms_client->AddSchedule($parameters)->AddScheduleResult;
    }


    public function getCredit()
    {
        ini_set("soap.wsdl_cache_enabled", "0");
        $sms_client = new \SoapClient('http://api.payamak-panel.com/post/Send.asmx?wsdl', array('encoding' => 'UTF-8'));

        $parameters['username'] = "username";
        $parameters['password'] = "password";

        echo $sms_client->GetCredit($parameters)->GetCreditResult;
    }


    public function getInboxCountSoapClient()
    {


        ini_set("soap.wsdl_cache_enabled", "0");
        $sms_client = new \SoapClient('http://api.payamak-panel.com/post/receive.asmx?wsdl', array('encoding' => 'UTF-8'));

        $parameters['username'] = "username";
        $parameters['password'] = "pass";
        $parameters['isRead'] = false;

        echo $sms_client->GetInboxCount($parameters)->GetInboxCountResult;
    }



    public function getMessageStr()
    {
        ini_set("soap.wsdl_cache_enabled", "0");
        $sms_client = new \SoapClient('http://api.payamak-panel.com/post/Receive.asmx?wsdl', array('encoding' => 'UTF-8'));
        $parameters['username'] = "username";
        $parameters['password'] = "password";
        $parameters['location'] =  1;
        $parameters['from'] = "";
        $parameters['index'] = 0;
        $parameters['count'] = 10;
        echo $sms_client->GetMessageStr($parameters)->GetMessageStrResult;
    }

    public function SendSimpleSms2SoapClient()
    {
        ini_set("soap.wsdl_cache_enabled", "0");
        $sms_client = new \SoapClient('http://api.payamak-panel.com/post/send.asmx?wsdl', array('encoding' => 'UTF-8'));

        $parameters['username'] = "demo";
        $parameters['password'] = "demo";
        $parameters['to'] = "912...";
        $parameters['from'] = "1000..";
        $parameters['text'] = "تست";
        $parameters['isflash'] = false;

        echo $sms_client->SendSimpleSMS2($parameters)->SendSimpleSMS2Result;
    }

    // public function sendSmsNuSoap()
    // {
    //     require_once('nusoap.php');
    //     $client = new nusoap_client('http://api.payamak-panel.com/post/send.asmx?wsdl');

    //     $err = $client->getError();

    //     if ($err) {

    //         echo 'Constructor error' . $err;
    //     }

    //     $parameters['username'] = "demo";
    //     $parameters['password'] = "demo";
    //     $parameters['to'] = "912...";
    //     $parameters['from'] = "1000..";
    //     $parameters['text'] = "تست";
    //     $parameters['isflash'] = false;


    //     $result = $client->call('SendSimpleSMS2', $parameters);
    //     print_r($result);
    // }


    public function sendSmsSoapClient($from, array $to, $text, $isFlash = true)
    {

        // turn off the WSDL cache
        ini_set("soap.wsdl_cache_enabled", "0");
        try {
            $client = new \SoapClient('http://api.payamak-panel.com/post/send.asmx?wsdl', array('encoding' => 'UTF-8'));
            $parameters['username'] = $this->username;
            $parameters['password'] = $this->password;
            $parameters['bodyId'] = $this->bodyId;
            $parameters['from'] = $from;
            $parameters['to'] = $to;
            $parameters['text'] = $text;
            $parameters['isflash'] = $isFlash;
            $parameters['udh'] = "";
            $parameters['recId'] = array(0);
            $parameters['status'] = 0x0;
            $GetCreditResult = $client->GetCredit(array("username" => $this->username, "password" => $this->password))->GetCreditResult;
            $sendSmsResult = $client->SendSms($parameters)->SendSmsResult;

            if($GetCreditResult == 0 && $sendSmsResult == 1){
                return true;
            }
            else{
                return false;
            }

        } catch (\SoapFault $ex) {
            echo $ex->faultstring;
        }
    }
}
SmsService.php

<?php

namespace App\Http\Services\Message\SMS;

use App\Http\Interfaces\MessageInterface;
use App\Http\Services\Message\SMS\MeliPayamakService;

class SmsService implements MessageInterface{

    private $from;
    private $text;
    private $to;
    private $isFlash = true;



    public function fire()
    {
        $meliPayamak = new MeliPayamakService();
        return $meliPayamak->sendSmsSoapClient($this->from, $this->to, $this->text,  $this->isFlash);
    }

    public function getFrom()
    {
        return $this->from;
    }

    public function setFrom($from)
    {
        $this->from = $from;
    }


  public function getText()
    {
        return $this->text;
    }

    public function setText($text)
    {
        $this->text = $text;
    }


public function getTo()
    {
        return $this->to;
    }

    public function setTo($to)
    {
        $this->to = $to;
    }

    public function getIsFlash()
    {
        return $this->to;
    }

    public function setIsFlash($flash)
    {
        $this->isFlash = $flash;
    }





}
interface/messageInterface.php

<?php

namespace App\Http\Interfaces;


interface MessageInterface
{
    public function fire();
}
RegisterController.php

use Illuminate\Support\Facades\Config;
use App\Http\Services\Message\MessageSerivce;
use App\Http\Services\Message\SMS\SmsService;

public function register(Request $request)
    {

        $phone = $request->phone;
        $otp = rand(1111, 9999);

        $smsService=new SmsService();
        $smsService->setFrom(config::get('sms.otp_from'));
        $smsService->setTo([$phone]);
        $smsService->setText("باسلام. به لسان الارض خوش آمدید. کد تأیید شما:$otp   lesanolarz.ir ");
        $smsService->setIsFlash(true);
        $messageService=new MessageSerivce($smsService);

        $messageService->send();

    }

 

بازهم ممنون

نیما دلیر (مدرس)

ارسال شده در 1402/08/10

سلام برای خط ایرانسل هم ارسال کنید ببینید ارسال میشه؟؟ بعد داخل پنل تون نشون میده که شما این متن رو میخواستین برای این خط ارسال کنید و موفق نبوده؟؟

safaeiiam

ارسال شده در 1402/08/10

با سلام

خیلی ممنون از اینکه جلسه 16 رو گذاشتید

عالی بود 

خیلی ممنون

safaeiiam

ارسال شده در 1402/08/07

آقای دلیر اگر امکانش هست یک آموزش سریع از تأیید کد دریافتی بگذارید.

هر چقدر تلاش میکنم به نتیجه نمیرسم

ضمن اینکه هرکاری کردم پیامک ارسال نشد

از لاراول 10 استفاده میکنم و خیلی گیر افتادم

خواهشاً کمکم کنید

ممنون

نیما دلیر (مدرس)

ارسال شده در 1402/08/07

برای ایمیل یا پیامک؟

safaeiiam

ارسال شده در 1402/08/07

برای پیامک

نیما دلیر (مدرس)

ارسال شده در 1402/08/07

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

safaeiiam

ارسال شده در 1402/08/07

با سلام

بله برای اعتبار سنجی مشکل دارم

ممنون میشم یک جلسه بگذارین

نیما دلیر (مدرس)

ارسال شده در 1402/08/07

باشه چشم من امشب جلسه رو ضبط میکنم ،،، تا اپلود و تایید بشه احتمالا ۲-۳ روز زمان ببره مشکلی که نداره؟

safaeiiam

ارسال شده در 1402/08/07

چه اشکالی استاد؟

دست شماهم درد نکنه

خدا خیرتون بده

من با لاراول 10 کار میکنم

ممنون میشم ریزه کاریهاشو برای تناسب با این ورژن بفرمایید

ممنون

safaeiiam

ارسال شده در 1402/08/06

با سلام

ممنون از آموزش خوب و کاربردیتون

ولی آخرش نگفتین چطوری کد تأیید که ارسال شده رو وارد سایت کنیم و چک کنیم 

نیما دلیر (مدرس)

ارسال شده در 1402/08/07

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

saman.aparat.0

ارسال شده در 1402/07/30

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

نیما دلیر (مدرس)

ارسال شده در 1402/08/02

مرسی از نظر قشنگ تون روزمو ساخت :)

mahdiar saadat

ارسال شده در 1402/06/26

سلام و تشکر 

دوره بسیار عالی بود 
خیلی ممنون بابت زحماتتون برای این دوره 

mahdiar saadat

نیما دلیر (مدرس)

ارسال شده در 1402/06/26

ممنون خوبی از خودتونه