maurit / sms-bundle
支持不同服务商的短信发送系统
1.1.1.4
2023-12-01 05:16 UTC
Requires
- php: >=7.4.0
- ext-intl: *
- ext-json: *
- giggsey/libphonenumber-for-php: ^8.12
- guzzlehttp/guzzle: ^7.5
- nette/utils: ^3.2
- symfony/framework-bundle: ^6.0
Requires (Dev)
- phpunit/phpunit: ^9.0
- symfony/console: ^6.0
This package is auto-updated.
Last update: 2024-09-30 01:35:45 UTC
README
此包将帮助您将短信消息实现到您的项目中
安装
您可以通过以下命令安装此包
$ composer require maurit/sms-bundle ^1.0
配置
您可以定义尽可能多的服务商配置。可用的服务商包括
- Message Bird [messagebird.com]
- Sms Ru [sms.ru]
- Sms Aero [smsaero.ru]
- Sms Discount [iqsms.ru]
- Sms Center [smsc.ru]
- EuroSMS com [eurosms.com]
- SmsBrana sk [sms-brana.sk]
- Smsgate sk [smsgate.sk]
使用方法
在您的控制器中
<?php // src/Controller/FooController.php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Maurit\Bundle\SmsBundle\Service\ProviderManager; use Maurit\Bundle\SmsBundle\Sms\Sms; class FooController extends AbstractController { public function barAction(ProviderManager $providerManager) { $sms = new Sms('+12345678900', 'The cake is a lie'); $provider = $providerManager->getProvider('your_provider_name'); $provider->send($sms); } }
如果您想安排短信发送
<?php // src/Controller/FooController.php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Maurit\Bundle\SmsBundle\Service\ProviderManager; use Maurit\Bundle\SmsBundle\Sms\Sms; class FooController extends AbstractController { public function barAction(ProviderManager $providerManager) { // Your selected sms provider $provider = $providerManager->getProvider('your_provider_name'); // Date of sms delivery $worldCupStartDate = (new \DateTime("2018:06:30 00:00:00"))->setTimezone(new \DateTimeZone('Europe/London')); $remindDate = (new \DateTime())->add(new \DateInterval('PT5M')); // Create new delayed sms $worldCupStartSms = new Sms('+12345678900', '2018 FIFA World Cup started!', $worldCupStartDate); $remindSms = new Sms('+12345678900', 'I will remind you of football', $remindDate); // Send delayed delivery to provider $provider->send($worldCupStartSms); // will be sent at 2018:06:30 00:00:00 $provider->send($remindSms); // will be sent after 5 minutes } }
提示
您可以使用以下命令检查短信发送
$ php bin/console maurit:sms:delivery:test [your_provider_name] [your_phone_number] [your_message_text]