Skip to content

Send SMS and SMS notifications with Mailjet for Laravel

Notifications You must be signed in to change notification settings

404labfr/laravel-mailjet-sms

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Laravel Mailjet SMS

Ce plugin vous permet d'envoyer des SMS et des notifications SMS via Mailjet depuis votre application Laravel. Attention, Mailjet autorise uniquement les SMS transactionnels.

Sommaire

Requirements

  • PHP >= 7.2
  • Laravel 6.x or 7.x
  • Un compte Mailjet avec un token SMS

Laravel support

Version Release
8, 9, 10 2.2
6, 7 2.1
6 2.0
5.x 1.0

Installation

  • Installation via composer :
composer require lab404/laravel-mailjet-sms
  • (Facultatif) Publiez le fichier de config mailjetsms :
php artisan vendor:publish --provider="Lab404\LaravelMailjetSms\ServiceProvider"
  • Configurez le plugin dans votre .env (ou le fichier de config)
MAILJETSMS_TOKEN="Votre token Mailjet"
MAILJETSMS_FROM="APPNAME"

Usage

Envoyer un SMS :

// Globalement
app('mailjetsms')->send("Elle est où la poulette ?", "+33610203040");

// DI
public function myMethod(\Lab404\LaravelMailjetSms\MailjetSms $mailjet) {
    $mailjet->send("C'est pas faux", "+33610203040");  
}

Notifications

Ce plugin est compatible avec les notifications Laravel.

namespace App\Notifications;

use Lab404\LaravelMailjetSms\MailjetSmsChannel;
use Lab404\LaravelMailjetSms\MailjetSmsMessage;
use Illuminate\Notifications\Notification;

class ExampleNotification extends Notification
{
    public function via($notifiable)
    {
        return [MailjetSmsChannel::class];
    }
    
    public function toMailjetSms($notifiable)
    {
    	return new MailjetSmsMessage(
    	    "C'est ça que vous appelez une fondue ?", 
    	    $notifiable->phonenumber
        );
    }
}

API

Lab404\LaravelMailjetSms\MailjetSmsMessage

    // Constructeur
    (new MailjetSmsMessage(string $message, string $to))
    
    // Spécifier le destinataire
        ->to(string $to)
        
    // Spécifier l'expéditeur
        ->from(string $from)
        
    // Nettoyer les caractères unicodes
        ->unicode(bool $unicode = true)

Un mot sur l'unicode

Par défaut les caractères unicodes sont envoyés dans le SMS. La méthode unicode(bool $unicode = true), permet d'activer ou non l'unicode. Une fois désactivé, l'unicode sera nettoyé pour ne laisser place qu'aux caractères GSM 03.38.

Support

N'hésitez pas à utiliser le gestion d'issus pour vos retours.

Auteur

Marceau Casals

Licence

MIT