manzadey/stream-telecom 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

manzadey/stream-telecom

Composer 安装命令:

composer require manzadey/stream-telecom

包简介

PHP Package for stream-telecom.ru

README 文档

README

Данный пакет разработан на основе API stream-telecom.ru (https://stream-telecom.ru/solutions/integrations/).

В данном пакете реализованы следующие методы:

  1. Просмотр баланса;
  2. Выгрузка тарифов;
  3. Выгрузка статистики;
  4. HLR-запросы;
  5. Отправка СМС;
  6. Отправка сообщений в Viber;
  7. Отправка уведомлений в VK;
  8. Отправка Email;

Установка

composer require manzadey/stream-telecom

Начало работы

use Manzadey\StreamTelecom\StreamTelecom;

$st = new StreamTelecom('name', 'login', 'password');

Просмотр баланса

echo $st->balance();

Выгрузка тарифов

echo $st->tariffs();

Стоимость конкретных запросов

echo $st->tariffs()->hlr();
echo $st->tariffs()->email();
echo $st->tariffs()->messenger();

Выгрузка статистики

$st->statistic()->start('02.02.2020 10:00')->end('03.03.2020 10:00')->get();

Для выгрузки детальной статистики необходимо указать метод detail();

$st->statistic()->start('02.02.2020 10:00')->end('03.03.2020 10:00')->detail()->get();

В ответ придёт ID отчёта.

Необязательные методы для детальной статистики:

state() - Формирование статистики по определенному статусу сообщений. Допустимые значения deliver, not_deliver, expired, sent (доставлено, не доставлено, просрочено, в процессе).

phone() - Формирование статистики по определенному номеру абонента.

cBase() - Указывает на необходимость выгрузки данных с привязкой к базе адресатов.

subStat() - Указывает на необходимость выгрузки данных с подлогинов.

typeLoad() - Выбор формата отчета. Допустимые значения: 0, 1 (0 -csv по умолчанию, 1 -xls)

$st->statistic()
->start('02.02.2020 10:00')
->end('03.03.2020 10:00')
->detail()
->state('not_deliver')
->phone(79111234567)
->cBase()
->subStat()
->typeLoad(1)
->get();

HLR

Отправка HLR-запроса

$st->hlr()->phone(7912345678)->get(); // 123456789101213

Получение статуса HLR-запроса

$st->hlr()->status(123456789101213);

СМС

Отправка СМС-сообщения

$st->sms()->send()
->text('text message')
->to(['+79123456789', 79123456789, '+7(912)-345-67-89'])
->get();

Отправка сообщений нескольким адресатам с разным текстом.

$phones_array  = [
    '+79123456789',
    79123456789,
    '+7(912)-345-67-89',
];

$phones_array2 = [79987654321];

$st->sms()->send()
->validity(10)
->package(static function ($s) use ($phones_array) {
    return $s->text('test')->to($phones_array);
})
->package(static function ($s) use ($phones_array2) {
    return $s->text('test2')->to($phones_array2);
})
->get();

Получение статуса СМС сообщения

$st->sms()->status(14561456165332)->get();

Получение входящих СМС сообщений

$st->sms()->incoming()->start('29.01.2020 13:00')->end('30.01.2020 13:00')->get();

Email

Установка соединения

$st->setup()->email('password_from_pa');

Работа с базами

Получение списка баз

$st->email()->list()->method('get')
->listId(123)
->get();

Добавление адресной базы

$st->email()->list()->method('add')
->name('TestBase')
->abuseEmail('usermail@mail.com')
->abuseName('OwnerName')
->company('CompanyName')
->address('MyAddress')
->city('Spb')
->zip(190000)
->county('Russia')
->url('mysite.com')
->phone(79999999999)
->get();

Обновление контактной информации адресной базы

$st->email()->list()->method('update')
->listId(123)
->name('TestBase')
->abuseEmail('usermail@mail.com')
->abuseName('OwnerName')
->company('CompanyName')
->address('MyAddress')
->city('Spb')
->zip(190000)
->county('Russia')
->url('mysite.com')
->phone(79999999999)
->get();

Удаление адресной базы

$st->email()->list()->method('delete')
->listId(123)
->get();

Получение списка подписчиков с возможностью фильтрации и регулировки выдачи

$st->email()->list()->method('get_members')
->listId(123)
->state('active')
->limit(1)
->get();

Импортирование подписчиков из файла

$st->email()->list()->method('upload')
->listId(123)
->file('http://www.mysite.ru/files/file.csv')
->type('csv')
->get();

Добавление одного подписчика в базу

$st->email()->list()->method('add_member')
->listId(123)
->email('testuser@mail.com')
->merge(1, 'Иван')
->merge(2, 'Иванов')
->merge(3, '1985-11-23')
->gender('m')
->get();

Редактирование данных подписчика

$st->email()->list()->method('update_member')
->memberId(123)
->merge(1, 'Иван')
->merge(2, 'Иванов')
->merge(3, '1985-11-23')
->gender('m')
->get();

Удаление подписчика из базы

$st->email()->list()->method('delete_member')
->memberId(123)
->get();

Отписка подписчика из базы

$st->email()->list()->method('unsubscribe_member')
->memberId(123)
->listId(123)
->email('testuser@mail.com')
->reason('Отписка по заявке')
->get();

Viber

Установка соединения

$st->setup()->viber('sourceAddressIM');

Отправка сообщения: только текст

$st->viber()
->text('Привет вайбер')
->to(79211234567)
->validity(7200)
->get();

Отправка сообщения: только картинка

$st->viber()
->image('https://my.site.com/images/image.jpg')
->to(79211234567)
->validity(7200)
->get();

Отправка сообщения: с кнопкой, картинкой и текстом

$st->viber()
->text('Привет вайбер')
->image('https://my.site.com/images/image.jpg')
->buttonText('Нажми на кнопку ')
->buttonUrl('stream-telecom.ru')
->to(79211234567)
->validity(7200)
->get();

Отправка сообщения: с кнопкой, картинкой и текстом, с методом каскад

$st->viber()
->text('Привет вайбер')
->cascade('Текст резервного сообщения по sms')
->image('https://my.site.com/images/image.jpg')
->buttonText('Нажми на кнопку ')
->buttonUrl('stream-telecom.ru')
->to(79211234567)
->validity(7200)
->get();

Пакетная отправка

$st->viber()
->package(static function ($v) {
    return $v->text('Привет вайбер')->to(79211234567)->validity(7200);
})
->package(static function ($v) {
    return $v->image('https://my.site.com/images/image.jpg')->to(79211234567)->validity(7200);
})
->package(static function ($v) {
    return $v->text('Привет вайбер')->image('https://my.site.com/images/image.jpg')->buttonText('Нажми на кнопку ')->buttonUrl('stream-telecom.ru')->to(79211234567)->validity(7200);
})
->package(static function ($v) {
    return $v->text('Привет вайбер')->sms('Текст резервного сообщения по sms')->image('https://my.site.com/images/image.jpg')->buttonText('Нажми на кнопку ')->buttonUrl('stream-telecom.ru')->to(79211234567)->validity(7200);
})
->get();

Получение статуса

$viber_status = $st->viber()->messageId(12345)->get();

// Тип сообщения
$viber_status->getStateMessage();

// Статус сообщения
$viber_status->getStateMessage();

// Причина, по которой сообщение не было доставлено абоненту
$viber_status->getStateErrorMessage();

// Время получения статуса
$viber_status->getStateTime();

// Стоимость
$viber_status->getPrice();

VK

Установка соединения

$st->setup()->vk('service');

Отправка уведомления:

$st->vk()
->template(8, ['username' => 'Alexey', 'balance' => '1000000'])
->ttl(60)
->to(79999999998)
->get();

Отправка каскадных сообщений в VK


Пакетная отправка уведомений:

$st->vk()->package(static function ($c) {
    return $c->template(8, ['username' => 'Alexey', 'balance' => '1000000'])->to(7911102461)->ttl(1);
})->package(static function ($c) {
    return $c->template(8, ['username' => 'Alexey', 'balance' => '1000000'])->to(7911102461)->ttl(1);
})->get();

Отправка каскадных сообщений в VK



                                    

manzadey/stream-telecom 适用场景与选型建议

manzadey/stream-telecom 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 4.87k 次下载、GitHub Stars 达 1, 最近一次更新时间为 2020 年 01 月 29 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「api」 「sms」 「streamtelecom」 「stream-telecom」 「streamtelecomru」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 manzadey/stream-telecom 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 manzadey/stream-telecom 我们能提供哪些服务?
定制开发 / 二次开发

基于 manzadey/stream-telecom 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 4.87k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 13
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 1
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2020-01-29