laraditz/twilio

Laravel的Twilio SDK包装器

1.0.1 2022-10-08 20:28 UTC

This package is auto-updated.

Last update: 2024-09-09 00:35:51 UTC


README

Latest Version on Packagist Total Downloads GitHub Actions

Laravel的Twilio SDK包装器。包括接收消息和状态更新的事件。

安装

您可以通过composer安装此包

composer require laraditz/twilio

开始前

在您的.env中配置变量(推荐)或您可以将配置文件发布并更改它。

TWILIO_ACCOUNT_SID=<your_account_sid>
TWILIO_AUTH_TOKEN=<your_auth_token>
TWILIO_FROM=<the_sender_number>

(可选)您可以通过以下命令发布配置文件

php artisan vendor:publish --provider="Laraditz\Twilio\TwilioServiceProvider" --tag="config"

运行迁移命令以创建必要的数据库表。

php artisan migrate

routeNotificationForTwilio方法添加到您的Notifiable模型中。

public function routeNotificationForTwilio($notification)
{
    return $this->mobile_no;
}

使用方法

现在您可以在通知中的via()方法内使用该通道

use Illuminate\Bus\Queueable;
use Illuminate\Notifications\Notification;
use Laraditz\Twilio\TwilioChannel;
use Laraditz\Twilio\TwilioWhatsappMessage;

class TestNotification extends Notification
{
    use Queueable;  
  
    public function via($notifiable)
    {
        return [TwilioChannel::class];
    }

    public function toTwilio($notifiable)
    {
        return (new TwilioWhatsappMessage())
            ->content("Test Whatsapp message!")
            ->mediaUrl("https://news.tokunation.com/wp-content/uploads/sites/5/2022/07/Kamen-Rider-Geats-Teaser.jpeg");
    }
}

您还可以发送短信

use Illuminate\Bus\Queueable;
use Illuminate\Notifications\Notification;
use Laraditz\Twilio\TwilioChannel;
use Laraditz\Twilio\TwilioSmsMessage;

class TestNotification extends Notification
{
    use Queueable;  
  
    public function via($notifiable)
    {
        return [TwilioChannel::class];
    }

    public function toTwilio($notifiable)
    {
        return (new TwilioSmsMessage())
            ->content("Test SMS message!");
    }
}

事件

此包还提供了一个事件,允许您的应用程序监听Twilio接收消息和状态回调。您可以在以下事件下创建您的监听器并注册它。

Webhook URL

您可以在Twilio仪表板上设置以下URL,以便Twilio将新消息和状态更新推送到它,然后触发上述的MessageReceivedStatusCallback事件。

https://your-app-url/twilio/webhooks/receive //for message receive
https://your-app-url/twilio/webhooks/status //for status update

测试

composer test

变更日志

有关最近更改的更多信息,请参阅CHANGELOG

贡献

有关详细信息,请参阅CONTRIBUTING

安全

如果您发现任何安全问题,请通过电子邮件raditzfarhan@gmail.com联系,而不是使用问题跟踪器。

致谢

许可证

MIT许可证(MIT)。有关更多信息,请参阅许可证文件