×ðÁú¿­Ê±¹ÙÍøµÇ¼

Laravel¿ª·¢£ºÔõÑùʹÓÃLaravel Notification·¢ËͶÌÐź͵ç×ÓÓʼþ£¿

laravel¿ª·¢£ºÔõÑùʹÓÃlaravel notification·¢ËͶÌÐź͵ç×ÓÓʼþ£¿

LaravelÊÇÒ»¸öÊ¢ÐеĻùÓÚPHPµÄWebÓ¦ÓóÌÐò¿ò¼Ü £¬ËüÌṩÁË´ó×ڵĹ¦Ð§ºÍ¹¤¾ßÀ´¼ò»¯WebÓ¦ÓóÌÐò¿ª·¢ ¡£Laravel NotificationÊÇLaravel¿ò¼ÜµÄÒ»ÏîÖ÷Òª¹¦Ð§ £¬ËüÌṩÁËÒ»ÖÖ¼òÆÓ¶ø¿ì½ÝµÄ·½·¨À´·¢ËÍ֪ͨ £¬°üÀ¨¶ÌÐź͵ç×ÓÓʼþ֪ͨ ¡£

ÔÚ±¾ÎÄÖÐ £¬ÎÒÃǽ«ÉîÈë̽ÌÖÔõÑùʹÓÃLaravel NotificationÀ´·¢ËͶÌÐź͵ç×ÓÓʼþ֪ͨ ¡£

µÚÒ»²½£º×°ÖÃÐëÒªµÄÒÀÀµ

ÔÚ×îÏÈ֮ǰ £¬ÎÒÃÇÐèҪװÖÃÁ½¸ö±ØÐèµÄÒÀÀµ£ºLaravel¿ò¼ÜºÍLaravel Notification×é¼þ ¡£

ÈôÊÇÄúÒѾ­ÓÐÒ»¸öLaravelÓ¦Óà £¬ÄÇôÄú¿ÉÒÔÌø¹ýÕâÒ»²½ £¬²»È» £¬Çë·­¿ªÖն˲¢ÊäÈëÒÔÏÂÏÂÁîÀ´½¨ÉèÒ»¸öеÄLaravelÓ¦ÓóÌÐò£º

composer create-project --prefer-dist laravel/laravel my-app

µÇ¼ºó¸´ÖÆ

Ò»µ©½¨ÉèÁËÓ¦ÓóÌÐò £¬ÎÒÃÇ¿ÉÒÔ×°ÖÃLaravel Notification×é¼þ £¬Ö»ÐèÒªÔÚÖÕ¶ËÖÐÔËÐÐÒÔÏÂÏÂÁ

composer require laravel-notification-channels/nexmo

µÇ¼ºó¸´ÖÆ

´ËÏÂÁװÖÃnexmo֪ͨÇý¶¯³ÌÐò £¬ÕâÊÇÒ»ÖÖ¿ÉÓÃÓÚ·¢ËͶÌÐźÍÓïÒô֪ͨµÄ֪ͨÇý¶¯³ÌÐò ¡£

µÚ¶þ²½£º½¨Éè֪ͨÀà

ÎÒÃÇÐèÒª½¨ÉèÒ»¸ö֪ͨÀàÀ´½ç˵Ҫ·¢Ë͵ĶÌÐź͵ç×ÓÓʼþ֪ͨ ¡£ÎÒÃÇ¿ÉÒÔʹÓÃÒÔÏÂÏÂÁîÔÚLaravelÓ¦ÓóÌÐòÖн¨ÉèÒ»¸öеÄ֪ͨÀࣺ

php artisan make:notification NewOrder

µÇ¼ºó¸´ÖÆ

Õâ¸öÏÂÁî»áÔÚapp/NotificationsĿ¼Öн¨ÉèÒ»¸öÃûΪNewOrder.phpµÄÐÂ֪ͨÀà ¡£Õâ¸öÀà½ç˵ÁË֪ͨµÄÄÚÈݺͷ¢ËÍ·½·¨ ¡£

ÈÃÎÒÃÇÀ´¿´¿´ÔõÑù½çËÃ÷ÈÕâ¸ö֪ͨÀà ¡£

ÔÚtoNexmoÒªÁìÖÐ £¬ÎÒÃǽç˵ÁË·¢ËÍ֪ͨµÄÄÚÈݺͷ½·¨ ¡£ÈôÊÇÐèÒª·¢ËͶÌÐÅ £¬ÎÒÃÇ¿ÉÒÔ½«ÒÔÏÂÄÚÈÝÌí¼Óµ½Õâ¸öÒªÁ죺

return (new NexmoMessage)
    ->content('ÄãÊÕµ½ÁËÒ»Ìõж©µ¥¡£');

µÇ¼ºó¸´ÖÆ

ÈôÊÇÐèÒª·¢Ë͵ç×ÓÓʼþ֪ͨ £¬Ôò¿ÉÒÔ½«ÒÔÏÂÄÚÈÝÌí¼Óµ½Õâ¸öÒªÁìÖУº

return (new MailMessage)
    ->line('ÄãÊÕµ½ÁËÒ»Ìõж©µ¥¡£')
    ->action('Éó²é¶©µ¥', url('/orders'))
    ->line('ллÄãµÄʹÓÃ¡£');

µÇ¼ºó¸´ÖÆ

ÎÒÃÇ¿ÉÒÔƾ֤ÐèÒªÔÚ֪ͨÀàÖÐÌí¼ÓÆäËûÒªÁì £¬ÀýÈ磺cc £¬bccºÍreplyTo ¡£

µÚÈý²½£º·¢ËÍ֪ͨ

ÎÒÃÇÒѾ­½ç˵ÁË֪ͨÀà £¬ÏÖÔÚÎÒÃÇÐèÒªÔÚÓ¦ÓóÌÐòÖз¢ËÍ֪ͨ ¡£LaravelÌṩÁ˼¸ÖÖ²î±ðµÄ·½·¨À´·¢ËÍ֪ͨ £¬°üÀ¨È«¾Ö¹ã²¥¡¢ÐÐÁкÍÊÂÎñ ¡£

ÈÃÎÒÃÇ¿´¿´ÔõÑùÔÚ¿ØÖÆÆ÷Öз¢ËÍ֪ͨ ¡£

ÏÂÃæÊÇÒ»¸ö¼òÆӵĿØÖÆÆ÷´úÂëƬ¶Ï £¬ÎÒÃÇ¿ÉÒÔÏò¿Í»§¶Ë·¢ËÍÒ»Ìõж©µ¥Í¨Öª£º

namespace AppHttpControllers;

use AppHttpControllersController;
use IlluminateHttpRequest;
use IlluminateSupportFacadesNotification;
use AppNotificationsNewOrder;

class OrderController extends Controller
{
    public function store(Request $request)
    {
        // ½¨Éèж©µ¥µÄ´úÂë...

        $user = auth()->user();

        Notification::send($user, new NewOrder($order));
    }
}

µÇ¼ºó¸´ÖÆ

ÔÚÿ¸öж©µ¥µÄ½¨Éè´úÂëÔËÐкó £¬ÎÒÃÇ¿ÉÒÔʹÓÃ֪ͨÀàNewOrderÀ´Ïò¿Í»§¶Ë·¢ËÍж©µ¥Í¨Öª ¡£ÔÚÉÏÃæµÄ´úÂëÖÐ £¬ÎÒÃÇʹÓÃLaravelµÄNotificationÃÅÃæÀ´·¢ËÍ֪ͨ ¡£

µÚËIJ½£º²âÊÔ֪ͨ

ÎÒÃÇÒѾ­±àдÁË֪ͨÀàºÍ¿ØÖÆÆ÷ £¬²¢Ê¹ÓÃLaravelµÄNotificationÃÅÃæ·¢ËÍÁË֪ͨ £¬ÏÖÔÚÎÒÃÇÐèÒª²âÊÔ֪ͨÊÇ·ñ¿ÉÒÔ׼ȷ·¢ËÍ ¡£

ÈÃÎÒÃÇÏȲâÊÔ·¢Ë͵ç×ÓÓʼþ֪ͨ ¡£ÔÚ֪ͨÀàÖÐÌí¼ÓÒÔÏÂÒªÁìÀ´ÉèÖõç×ÓÓʼþ²âÊÔÎüÊÕÕߵĵç×ÓÓʼþµØµã£º

public function toMail($notifiable)
{
    return (new MailMessage)
        ->to('test@example.com')
        ->line('ÄãÊÕµ½ÁËÒ»Ìõж©µ¥¡£')
        ->action('Éó²é¶©µ¥', url('/orders'))
        ->line('ллÄãµÄʹÓÃ¡£');
}

µÇ¼ºó¸´ÖÆ

Note£ºÕâÊÇÒ»¸ö²âÊÔµç×ÓÓʼþµØµã £¬ÄãÐèҪƾ֤×Ô¼ºµÄÐèÇóÉèÖà ¡£

ÏÖÔÚÎÒÃÇ¿ÉÒÔÔٴαàд´úÂëÀ´´¥·¢Í¨Öª £¬ÓòâÊÔµç×ÓÓʼþÎüÊÕÆ÷À´È¡´úÏÖʵ¿Í»§¶Ë£º

Notification::route('mail', 'test@example.com')
    ->notify(new NewOrder($order));

µÇ¼ºó¸´ÖÆ

ÎÒÃÇ»¹¿ÉÒÔ²âÊÔ·¢ËͶÌÐÅ֪ͨ £¬ÔÚ֪ͨÀàÖÐÌí¼ÓÒÔÏÂÐÐÀ´ÉèÖöÌÐŲâÊÔÎüÊÕÕߵĵç×ÓÓʼþµØµã£º

public function toNexmo($notifiable)
{
    return (new NexmoMessage)
        ->to('+1234567890')
        ->content('ÄãÊÕµ½ÁËÒ»Ìõж©µ¥¡£');
}

µÇ¼ºó¸´ÖÆ

Note£ºÕâÊÇÒ»¸ö²âÊԵ绰ºÅÂë £¬ÄãÐèҪƾ֤×Ô¼ºµÄÐèÇóÉèÖà ¡£

ÏÖÔÚÎÒÃÇ¿ÉÒÔ±àд´úÂëÀ´´¥·¢Í¨Öª £¬ÓòâÊÔµç×ÓÓʼþÎüÊÕÆ÷À´Ìæ»»ÏÖʵ¿Í»§¶Ë£º

Notification::route('nexmo', '+1234567890')
    ->notify(new NewOrder($order));

µÇ¼ºó¸´ÖÆ

ÈôÊÇÄúÊÕµ½ÁËÒ»¸öµç×ÓÓʼþ»ò¶ÌÐÅ֪ͨ £¬ÄÇô¾Í֤ʵÄãÒѾ­ÀֳɵØʹÓÃÁËLaravel Notification·¢ËÍ֪ͨ ¡£

ʵÑéʹÓÃLaravel NotificationÀ´·¢ËͶÌÐź͵ç×ÓÓʼþ֪ͨ £¬Ï£ÍûËüÄÜ×ÊÖúÄã¹¹½¨¸üºÃµÄWebÓ¦ÓóÌÐò ¡£

ÒÔÉϾÍÊÇLaravel¿ª·¢£ºÔõÑùʹÓÃLaravel Notification·¢ËͶÌÐź͵ç×ÓÓʼþ£¿µÄÏêϸÄÚÈÝ £¬¸ü¶àÇë¹Ø×¢±¾ÍøÄÚÆäËüÏà¹ØÎÄÕ£¡

ÃâÔð˵Ã÷£ºÒÔÉÏչʾÄÚÈÝȪԴÓÚÏàÖúýÌå¡¢ÆóÒµ»ú¹¹¡¢ÍøÓÑÌṩ»òÍøÂçÍøÂçÕûÀí £¬°æȨÕùÒéÓë±¾Õ¾ÎÞ¹Ø £¬ÎÄÕÂÉæ¼°¿´·¨Óë¿´·¨²»´ú±í×ðÁú¿­Ê±¹ÙÍøµÇ¼ÂËÓÍ»úÍø¹Ù·½Ì¬¶È £¬Çë¶ÁÕß½ö×ö²Î¿¼ ¡£±¾ÎĽӴýתÔØ £¬×ªÔØÇë˵Ã÷À´ÓÉ ¡£ÈôÄúÒÔΪ±¾ÎÄÇÖÕ¼ÁËÄúµÄ°æȨÐÅÏ¢ £¬»òÄú·¢Ã÷¸ÃÄÚÈÝÓÐÈκÎÉæ¼°ÓÐÎ¥¹«µÂ¡¢Ã°·¸Ö´·¨µÈÎ¥·¨ÐÅÏ¢ £¬ÇëÄúÁ¬Ã¦ÁªÏµ×ðÁú¿­Ê±¹ÙÍøµÇ¼ʵʱÐÞÕý»òɾ³ý ¡£

Ïà¹ØÐÂÎÅ

ÁªÏµ×ðÁú¿­Ê±¹ÙÍøµÇ¼

13452372176

¿É΢ÐÅÔÚÏß×Éѯ

ÊÂÇéʱ¼ä£ºÖÜÒ»ÖÁÖÜÎå £¬9:30-18:30 £¬½ÚãåÈÕÐÝÏ¢

QR code
ÍøÕ¾µØͼ