lowbase/yii2-sms
Composer 安装命令:
composer require lowbase/yii2-sms
包简介
Yii2 Sms Extension.
关键字:
README 文档
README
Yii2-sms - менеджер отправки Смс-сообщений через различные сервисы
- Отправка смс, запрос статусов сообщений, проверка баланса
- Включает сервисы: IqSmsc.ru (Смс-Дисконт), Smsc.ru в качестве примеров
- Возможность сохранения информации по всем сообщениям в базе данных
- Возможность отправки сообщений через несколько сервисов одним компонентом
- Автоматическая отправка через резервные сервисы при неудачной отправке основных сервисов
Установка
php composer.phar require --prefer-dist lowbase/yii2-sms "*"
или
"lowbase/yii2-sms": "*"
затем запускаем миграции для создания таблицы БД
php yii migrate --migrationPath=@vendor/lowbase/yii2-sms/migrations
Настройка
'components' => [
...
'sms' => [
'class' => 'lowbase\sms\Sms',
'cascade' => true,
'services' => [
// http://iqsms.ru/api/api_rest/
'iqsmsc_ru' => [
'class' => 'lowbase\sms\services\IqmscRuService',
'login' => '...',
'password' => '...',
'order' => 2,
],
// http://iqsms.ru/api/api_rest/
'iqsmsc_ru_2' => [
'class' => 'lowbase\sms\services\IqmscRuService',
'login' => '...',
'password' => '...',
'order' => 3,
],
// http://smsc.ru/api/
'smsc_ru' => [
'class' => 'lowbase\sms\services\SmscRuService',
'login' => '...',
'password' => '...',
'order' => 1
],
]
]
...
]
,где 'cascade' => true - автоматическая отправка смс-сообщения следующим сервисом при неудачной отправке текущим.
services - сервисы отправки сообщений с аутентификационными данными (логин и пароль), order (обязательно для заполнения) - порядок вызова сервисов при каскадной отправке. Названия сервисов (iqsmsc_ru, iqsmsc_ru_2, smsc_ru) можно заменить на свои.
Возможно добавление собственных сервисов. Их необходимо наследовать от lowbase\sms\AbstractService, и указать в конфигурации, представленной выше.
Использование
// Получение баланса сервиса по-умолчанию (1-го)
Yii::$app->sms->getBalance();
// Вывод баланса сервиса iqsmsc_ru_2
echo Yii::$app->sms->useService('iqsmsc_ru_2')->getBalance();
// Отправка смс сообщения через сервис smsc_ru без сохранения информации в базу данных
Yii::$app->sms->useServicese('smsc_ru')->sendSms('+79801112233', 'Тестовое сообщение', false);
// Отправка смс сообщения сервисом по-умолчанию с сохранением информации в базу данных, тип смс -1, для пользователя 5.
Yii::$app->sms->sendSms('+79801112233', 'Тестовое сообщение', true, 1, 5);
// Получение статуса СМС по Id из базы данных (id = 94) с сохранением статуса в базе данных
Yii::$app->sms->getSmsStatusById(94);
// Вывод статуса смс по Id без сохранения в базу данных
echo Yii::$app->sms->getSmsStatusById(94, false);
// Получение статуса смс по Id, полученному от провайдера (сервиса).
Yii::$app->sms->getSmsStatusByProviderId(1977846286);
// Для сервиса Smsc.ru необходимо передать доп. параметр phone для работоспособности метода выше
Yii::$app->sms->getSmsStatusByProviderId(3, ['phone' => '+79801112233']);
Статусы сообщений
-1- неизвестно (STATUS_UNKNOWN)0- ошибка (STATUS_FAILED)1- отправлено (STATUS_SENT)2- в очереди на доставку (STATUS_QUEUED)3- доставлено (STATUS_DELIVERED)
Инормация о сообщениях в базе данных
idprovider_sms_id- ID, полученный от провайдера (сервиса)phone- телефонtext- текст сообщенияtype- тип сообщения (необязательное)for_user_id- ID пользователя (необзятельное)status- статус сообещнияcreated_by- отправительcreated_at- время запроса на отправкуmust_sent_at- необходимое время (для отсроченной отправки)check_status_at- время обновления статусаprovider- название сервиса, через который производилась отправкаprovider_answer- последий ответ полученный от сервиса по текущему сообщению
lowbase/yii2-sms 适用场景与选型建议
lowbase/yii2-sms 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 1.4k 次下载、GitHub Stars 达 4, 最近一次更新时间为 2017 年 03 月 31 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「sms」 「extension」 「yii2」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 lowbase/yii2-sms 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 lowbase/yii2-sms 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 lowbase/yii2-sms 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
A custom URL rule class for Yii 2 which allows to create translated URL rules
The Yii2 extension uses jQuery jquery.carousel-1.1.min.js and makes image carousel from php array of structure defined.
TYPO3 CMS extension to create gallery content element with preset crop ratios and pagination
UI Kit 3 Extension for Yii2
Adds more BBCode
SDK for payment gateway PlatbaMobilom.sk for PHP7.0
统计信息
- 总下载量: 1.4k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 4
- 点击次数: 7
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2017-03-31