zblue89/sms

该包最新版本(2.0.0)的许可证信息不可用。

使用不同的短信网关为不同的电话号码格式发送短信

2.0.0 2016-09-30 13:51 UTC

This package is not auto-updated.

Last update: 2024-09-28 16:57:03 UTC


README

该包的目的是允许用户使用不同的短信网关向不同的电话号码格式发送短信。

例如,您可以使用Twilio向美国电话号码发送短信,并使用Plivo向马来西亚电话号码发送短信。

目前该包仅支持4个短信网关,分别是日志(在日志文件中显示消息)、Twilio、Plivo和通用(执行到配置URL的HTTP POST)。如果您要使用Twilio和/或Plivo,必须在项目中包含 twilio\twilio-sdk 和/或 plivo/plivo

安装

  1. zblue89\php-sms 添加到您的composer

     composer require zblue89\php-sms
    
  2. \Zblue89\Sms\SmsServiceProvider::class 添加到 config\app.php 文件中的 providers 部分。

     'providers' => [
         ...
         Zblue89\Sms\SmsServiceProvider::class
         ...
     ]
    
  3. 'SMS' => Zblue89\Sms\Facades\SMS::class 添加到 config\app.php 文件中的 aliases 部分。

     'aliases' => [
         ...
         'SMS' => Zblue89\Sms\Facades\SMS::class,
         ...
     ]
    
  4. sms.php 配置文件从 vendor\zblue89\php-sms\src\config 文件夹复制到 config 文件夹。

配置

您可以在 config/sms.php 中提供多组短信配置。

format - 电话号码的正则表达式格式。例如,/^60\d+$/ 用于马来西亚电话号码。

gateway - 为提供的 format 使用的短信网关。目前仅支持 logtwilioplivogeneric

Plivo短信网关所需的以下配置

plivo_auth_id - Plivo认证ID

plivo_auth_token - Plivo认证令牌

plivo_source - Plivo源

Twilio短信网关所需的以下配置

twilio_sid - Twilio SID

twilio_auth_token - Twilio认证令牌

twilio_from_number - Twilio发送号码

通用短信网关所需的以下配置

generic_url - POST URL

generic_parameters - 在HTTP POST期间包含的附加参数

generic_phone_number_parameter_name - HTTP POST期间电话号码的参数名称

generic_message_parameter_name - HTTP POST期间消息的参数名称

generic_good_response - HTTP POST预期的响应正文。如果响应正文不匹配此值,将抛出异常。此值可为null。如果为null,则始终认为过程成功。

配置示例

[
	'format' => '/^60\d+$/,
	'gateway' => 'plivo',
	'plivo_auth_id' => 'XXXXXXX'
	'plivo_auth_token' => 'XXXXXX',
	'plivo_source' => 'tapway'
], 
[
	'format' => '/^65\d+$/,
	'gateway' => 'twilio',
	'twilio_sid' => 'XXXXXXX'
	'twilio_auth_token' => 'XXXXXX',
	'twilio_from_number' => '0123456789'
]

用法

使用短信提供商服务非常简单

SMS::send('<phone number>', '<message>');