anlutro / bulk-sms
PHP中的BulkSMS API实现。
2.2.0
2021-07-14 16:33 UTC
Requires
- php: >=5.4.0
- anlutro/curl: ~1.4.6
- respect/validation: ~1.0
Requires (Dev)
- mockery/mockery: 0.9.*
- phpunit/phpunit: <6
This package is auto-updated.
Last update: 2024-09-15 01:42:35 UTC
README
PHP中BulkSMS的一个简单实现。
包括发送单个或批量消息的功能。
安装
此包需要PHP 5.4,因为我懒得输入array()
。抱歉。
使用composer: composer require anlutro/bulk-sms
- 版本列表可通过GitHub的标签列表获取。
Laravel
此包包含文件,以便在Laravel 4及更高版本中使用非常方便。
- 将
anlutro\BulkSms\Laravel\BulkSmsServiceProvider
添加到app/config/app.php
中的服务提供者列表。 - 运行
php artisan config:publish anlutro/bulk-sms
。编辑app/config/packages/anlutro/bulk-sms
中的配置文件,并填写您的用户名和密码。 - (可选) 通过在
app/config/app.php
中的别名中添加'BulkSms' => 'anlutro\BulkSms\Laravel\BulkSms'
来添加对门面的别名。
凭证
要使用此库,您需要在与Bulksms创建账户。他们支持为特定区域提供几个子站点。
- 用户名:Bulksms登录
- 密码:Bulksms登录密码
- Baseurl:连接到的Bulksms子站点(例如,'http://bulksms.com' 或 'http://bulksms.de')
用法
发送单个消息
$bulkSms = new anlutro\BulkSms\BulkSmsService('username', 'password', 'baseurl'); $bulkSms->sendMessage('12345678', 'Hello there!');
通过提供消息数组同时发送多个消息
$message1 = new \anlutro\BulkSms\Message('12345678', 'Hi there'); $message2 = new \anlutro\BulkSms\Message('12345678', 'Hello again'); $bulkSms = new anlutro\BulkSms\BulkSmsService('username', 'password', 'baseurl'); $bulkSms->sendMessage(array($message1,$message2));
获取一批消息的状态
$bulkSms = new anlutro\BulkSms\BulkSmsService('username', 'password', 'baseurl'); $bulkSms->getStatusForBatchId(693099785);
发送Unicode消息
为了发送Unicode消息,请确保您的消息是UTF-16,将其转换为十六进制,并指定'dca'参数
$text = 'السلام عليكم'; $encodedMessage = bin2hex(mb_convert_encoding($text, 'utf-16', 'utf-8')) ; $bulkSms->sendMessage('12345678', $encodedMessage, ['dca' => '16bit']);
发送测试消息
BulkSms支持测试模式(SUCCESS和FAIL),这些模式将验证消息并返回定义的响应而不实际发送短信。为了在测试模式下发送消息,请运行以下操作
发送将返回成功的消息
$bulkSms = new anlutro\BulkSms\BulkSmsService('username', 'password', 'baseurl'); $bulkSms->setTestMode(\anlutro\BulkSms\BulkSmsService::TEST_ALWAYS_SUCCEED); $bulkSms->getStatusForBatchId(693099785);
发送将返回失败响应的消息 - 并因此触发BulkSmsException
$bulkSms = new anlutro\BulkSms\BulkSmsService('username', 'password', 'baseurl'); $bulkSms->setTestMode(\anlutro\BulkSms\BulkSmsService::TEST_ALWAYS_FAIL); $bulkSms->getStatusForBatchId(693099785);
在Laravel中,您不需要构造$bulkSms
,如果已遵循上述安装步骤,则可以使用BulkSms::
替换$bulkSms-
联系方式
如果您有任何问题或建议,请在GitHub上提交问题。
许可证
此存储库的内容在MIT许可证下发布。