PHPackages                             lomayko/turbosms - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Mail &amp; Notifications](/categories/mail)
4. /
5. lomayko/turbosms

ActiveLibrary[Mail &amp; Notifications](/categories/mail)

lomayko/turbosms
================

TurboSMS for Laravel 5+

1.2(5y ago)24.1kMITPHPPHP &gt;=7.2.5

Since Jul 2Pushed 5y ago2 watchersCompare

[ Source](https://github.com/lomayko/turbosms)[ Packagist](https://packagist.org/packages/lomayko/turbosms)[ RSS](/packages/lomayko-turbosms/feed)WikiDiscussions master Synced 3w ago

READMEChangelog (3)Dependencies (1)Versions (4)Used By (0)

Laravel TurboSMS API gateway
============================

[](#laravel-turbosms-api-gateway)

Send SMS and Viber message via TurboSMS ([turbosms.ua](https://turbosms.ua/)) using this Laravel framework package ([Laravel](https://laravel.com)).

Удобный пакет для отправки и проверки SMS и Viber сообщений через сервис TurboSMS.ua

#### Laravel &gt; 5.8, PHP &gt;= 7.2.5

[](#laravel--58-php--725)

Минимальная версия Laravel `5.8`

Установка
---------

[](#установка)

Установите пакет через композер.

```
composer require lomayko/turbosms
```

Если вы НЕ используете autodiscover - добавьте сервис провайдер в конфигурационный файл `config/app.php`.

```
Lomayko\TurboSMS\TurboSMSServiceProvider::class,
```

Добавьте фасад `TurboSMS` в массив в `config/app.php`:

```
'TurboSMS' => Lomayko\TurboSMS\Facades\TurboSMS::class,
```

Выполните публикацию конфига и локализационных файлов командой:

```
php artisan vendor:publish --provider="Lomayko\TurboSMS\TurboSMSServiceProvider"
```

Конфигураци
-----------

[](#конфигураци)

После публикации ресурсов поправьте файл `config/turbosms.php` и заполните `.env` новыми полями.

- Создайте аккаунт на сайте [turbosms.ua](https://turbosms.ua)
- Скопируйте `HTTP API` в настройках шлюза и добавьте в соответствующий параметр в `config/turbosms.php`

**NOTE**На странице настройки шлюза обязательно нужно получить токен API и включить галочку `HTTP API`

Использование и API
-------------------

[](#использование-и-api)

### API

[](#api)

- `setApi($apiKey)` - `string` указываем API ключ, отличный от значения в конфиге

```
TurboSMS::setApi('MY_TURBOSMS_API_KEY_2');
```

- `setSMSSender($smsSender)` - `string` указываем отправителя SMS, отличного от значения в конфиге

```
TurboSMS::setSMSSender('TAXI');
```

- `setViberSender($viberSender)` - `string` указываем отправителя Viber, отличного от значения в конфиге

```
TurboSMS::setViberSender('Mobibon2');
```

- `setStartTime($startTime)` - `carbon||string` дата и время отправки сообщения. В конфиге задается режим сна и промежуток времени. В режиме сна, сообщения будут откладываться

```
TurboSMS::setStartTime('2020-10-10 08:22');

//or

TurboSMS::setStartTime(Carbon\Carbon::now()->addMinutes(5));
```

Настройки для отправки через **Viber** или для **гибридной** отправки ([Более детально](https://turbosms.ua/api.html))

- `setViberText($viberReplaceText)` - `string` замена текста в Вайбер при гибридных отправках (заменяет текст и при простых отправках в Viber)

```
TurboSMS::setViberText('Этот текст будет получен только в Viber');
```

- `setTTL($ttl)` - `int` срок жизни сообщения (60 - 86400)

```
TurboSMS::setTTL(86400);
```

- `setImageURL($image)` - `string` полный URL адрес изображения, которое будет отображено в сообщении

```
TurboSMS::setImageURL('http://lorempixel.com/400/400/');
```

- `setCaption($caption)` - `string` текст на кнопке в сообщении

```
TurboSMS::setCaption('Открыть сайт');
```

- `setAction($action)` - `string` URL адрес, куда перейдёт получатель сообщения при нажатии на кнопку

```
TurboSMS::setAction('https://www.google.com');
```

- `setCountClicks($countClicks)` - `string||int` Флаг статистики переходов (1 - да, остальное - нет)

```
TurboSMS::setCountClicks(1);
```

- `setTransactional($isTransactional)` - `string||int` Флаг транзакционного сообщения (1 - да, остальное - нет)

```
TurboSMS::setTransactional(1);
```

### Methods

[](#methods)

#### `getBalance(): return int` - получение баланса. При ошибке возвращает `null`

[](#getbalance-return-int----получение-баланса-при-ошибке-возвращает-null)

```
$balance = TurboSMS::getBalance();

//or

TurboSMS::setApi('MY_TURBOSMS_API_KEY_2');
$balance = TurboSMS::getBalance($otherApiKey);

dd($balance);

//100500.22 or null
```

#### Получение статуса `message_id` принимает `array || string`

[](#получение-статуса-message_id-принимает-array--string)

```
$status = TurboSMS::getItemStatus($messageId);

//or
$arr = collect();
$arr->push('FIRST_MESSAGE_ID');
$arr->push('SECOND_MESSAGE_ID');
$arr->push('XXX_MESSAGE_ID');
$status = TurboSMS::getItemStatus($arr);

dd($status);
```

```
[
  "success" => true
  "result" => [
    0 => [
      "message_id" => "c91a1593-****-0cd0-****-a41c8a9a22c1"
      "response_code" => 0
      "recipient" => "*****"
      "sent" => "2020-01-01 00:00:01"
      "updated" => "2020-01-01 00:00:02"
      "status" => "Delivered"
      "type" => "sms"
      "response_status" => "OK"
    ],
    1 => [
      "message_id" => "c91a1593-****-0cd0-****-a41c8a9a22c2"
      "response_code" => 414
      "response_status" => "NOT_ALLOWED_MESSAGE_ID"
    ]
    ...
  ]
  "info" => "Запрос обработан успешно"
]

```

#### Отправка сообщения(ий). Значения отправителей (телефоны) очищаются от лишних символов

[](#отправка-сообщенияий-значения-отправителей-телефоны-очищаются-от-лишних-символов)

`TurboSMS::sendMessages($array_or_one_phone, $text, enum[TurboSMS::SENT_TYPE_SMS || null, TurboSMS::SENT_TYPE_VIBER, TurboSMS::SENT_TYPE_HYBRID])`

```
$sended = TurboSMS::sendMessages('+38(066) 777-88-99', 'Отправляем SMS');
$sended = TurboSMS::sendMessages('+38(066) 777-88-99', 'Отправляем SMS', TurboSMS::SENT_TYPE_SMS);

// or
$sended = TurboSMS::sendMessages('+38(066) 777-88-99', 'Отправляем Viber', TurboSMS::SENT_TYPE_VIBER);
$sended = TurboSMS::sendMessages('+38(066) 777-88-99', 'Гибридная отправка. Сразу в Viber, при ошибке - SMS', TurboSMS::SENT_TYPE_HYBRID);
```

#### Полностью кастомная отправка. Позволяет самому сформировать URL и тело запроса.

[](#полностью-кастомная-отправка-позволяет-самому-сформировать-url-и-тело-запроса)

`TurboSMS::getResponse($url, $body)`

```
$url = 'https://api.turbosms.ua/NEW_MODULE/NEW_METHOD';
$body = [
  ...
];
TurboSMS::setApi('MY_TURBOSMS_API_KEY_2');
$custom = TurboSMS::getResponse($url, $body);
```

Примеры использования
---------------------

[](#примеры-использования)

```
use TurboSMS;

...

//простая отправка
$sms = TurboSMS::sendMessages('380667778899', 'TurboSMS приветствует Вас!');
$viber = TurboSMS::sendMessages('380667778899', 'TurboSMS приветствует Вас!', TurboSMS::SENT_TYPE_VIBER);

//отправка с параметрами
//если сообщение будет получено в Вайбере, SMS отправки не произойдет
//если Вайбер на номере не доступен - будет отправлена только SMS
$ph = collect(); //массив номеров телефонов
$ph->push('+38(066) 666-55-44'); //валидный номер
$ph->push('+38 (099)a999-88-77 ');  //валидный номер
$ph->push(' телефон правильный, отправится даже с этим текстом: +38-099-11122-33 ');  //валидный номер
$ph->push('телефон с ошибкой (без кода страны): 099-111-22-33');  //невалидный номер
$ph->push('лишние цифры после номера: 38-099-333-44-33 добавочный 5'); //невалидный номер
$ph->push('лишние цифры до номера: 55 улица, 38-099-333-44-33'); //невалидный номер

TurboSMS::setViberSender('Mobibon');
TurboSMS::setSMSSender('TAXI');

TurboSMS::setTTL(86400);
TurboSMS::setImageURL('http://lorempixel.com/400/400/');
TurboSMS::setCaption('Открыть сайт с котиками');
TurboSMS::setAction('https://www.google.com');
TurboSMS::setCountClicks(1);
TurboSMS::setTransactional(1);
TurboSMS::setStartTime('lalala'); //про игнорируется
TurboSMS::setStartTime('2020-10-10 08:22'); //установит дату и время отправки, если она больше текущей
TurboSMS::setViberText('Этот текст будет получен только в Viber');
$sended = TurboSMS::sendMessages($ph, 'Привет в SMS. В Вайбере не отправится', TurboSMS::SENT_TYPE_HYBRID);
```

Changelog
---------

[](#changelog)

Please see [CHANGELOG](CHANGELOG.md) for more information on what has changed recently.

Contributing
------------

[](#contributing)

Please see [CONTRIBUTING](CONTRIBUTING.md) for details.

Credits
-------

[](#credits)

- [Daan](https://github.com/daaner)
- [All Contributors](../../contributors)

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.

###  Health Score

28

—

LowBetter than 52% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity19

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity53

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 66.7% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~10 days

Total

3

Last Release

2163d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/0f2a71ad8988a9dabe19d14cf144958d8837bbda3fcfead8495db1065e937d96?d=identicon)[bohsynch](/maintainers/bohsynch)

---

Top Contributors

[![MihailOpanasenko](https://avatars.githubusercontent.com/u/136057240?v=4)](https://github.com/MihailOpanasenko "MihailOpanasenko (2 commits)")[![lomayko](https://avatars.githubusercontent.com/u/22071901?v=4)](https://github.com/lomayko "lomayko (1 commits)")

---

Tags

smsturbosmslaravel-smslomayko

### Embed Badge

![Health badge](/badges/lomayko-turbosms/health.svg)

```
[![Health](https://phpackages.com/badges/lomayko-turbosms/health.svg)](https://phpackages.com/packages/lomayko-turbosms)
```

###  Alternatives

[tzsk/sms

A robust and unified SMS gateway integration package for Laravel, supporting multiple providers.

318263.8k6](/packages/tzsk-sms)[daaner/turbosms

TurboSMS for Laravel 7+

2335.8k](/packages/daaner-turbosms)[nutnet/laravel-sms

Package for sending SMS form your Laravel app, includes pre-installed sms providers and your custom.

2527.3k](/packages/nutnet-laravel-sms)[juanparati/brevosuite

Complete Brevo integration with Laravel

1013.2k](/packages/juanparati-brevosuite)[siam-yon/sms

php实现的极简短信发送功能，基于阿里云、腾讯云最新短信发送api

142.1k](/packages/siam-yon-sms)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
