PHPackages                             imobis/api-sdk - 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. [API Development](/categories/api)
4. /
5. imobis/api-sdk

ActiveLibrary[API Development](/categories/api)

imobis/api-sdk
==============

IMOBIS API SDK

v1.0.0(9mo ago)03MITPHPPHP ^7.4 || ^8.0

Since Sep 10Pushed 9mo agoCompare

[ Source](https://github.com/imobis/sdk)[ Packagist](https://packagist.org/packages/imobis/api-sdk)[ Docs](https://github.com/imobis/api-sdk)[ RSS](/packages/imobis-api-sdk/feed)WikiDiscussions master Synced today

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

IMOBIS SDK
==========

[](#imobis-sdk)

[![Latest Version on Packagist](https://camo.githubusercontent.com/871c555e044e6847b9f4e65e89f4691ac8723a35997595a394e96c1a0dd8cce4/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f696d6f6269732f73646b2e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/imobis/api-sdk)[![Tests](https://camo.githubusercontent.com/31283540782156baab6039a691144ae9d67062fa470da1f9e33bedf99417138e/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f696d6f6269732f73646b2f72756e2d74657374732e796d6c3f6272616e63683d6d61696e266c6162656c3d7465737473267374796c653d666c61742d737175617265)](https://github.com/imobis/sdk/actions/workflows/run-tests.yml)[![Total Downloads](https://camo.githubusercontent.com/d259d0edf1bfdbdb621f63a4e7ece0737402c72269c858aaf60a87af517b2e9e/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f696d6f6269732f73646b2e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/imobis/api-sdk)

Библиотека для отправки сообщений через сервисы imobis.ru

Поддерживаемые версии PHP
-------------------------

[](#поддерживаемые-версии-php)

Эта библиотека поддерживает следующие реализации PHP:

- PHP 7.4
- PHP 8.0
- PHP 8.1
- PHP 8.2
- PHP 8.3
- PHP 8.4

Требования
----------

[](#требования)

- ext-json: \*
- guzzlehttp: &gt;= 7.0
- monolog: &gt;= 2.10 || &gt;= 3.7

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

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

Вы можете установить пакет с помощью composer:

```
composer require imobis/api-sdk
```

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

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

Режим песочницы активируется с своим токеном перед созданием клиента:

```
$sandboxApiKey = '...';
$sandbox = Nexus\Message\Sdk\Client::enableSandbox($sandboxApiKey);
```

Проверка активности песочницы:

```
$activated = $sandbox->active();
```

Отключение песочницы:

```
Nexus\Message\Sdk\Client::disableSandbox();
```

Создаем клиент с указанием ключа доступа:

```
use Nexus\Message\Sdk\Exceptions\CollectionException;
use Nexus\Message\Sdk\Exceptions\ConnectionException;
use Nexus\Message\Sdk\Exceptions\HttpInvalidArgumentException;
use Nexus\Message\Sdk\Exceptions\LowBalanceException;
use Nexus\Message\Sdk\Exceptions\TokenException;
use Nexus\Message\Sdk\Exceptions\ViolationIntegrityEntityException;

try {
    $apiKey = '...';
    $client = new Nexus\Message\Sdk\Client($apiKey);
    $login = $client->getLogin();
} catch (CollectionException $exception) {
    echo 'CollectionException: ' . $exception->getMessage();
} catch (ConnectionException $exception) {
    echo 'ConnectionException: ' . $exception->getMessage();
} catch (HttpInvalidArgumentException $exception) {
    echo 'HttpInvalidArgumentException: ' . $exception->getMessage();
} catch (TokenException $exception) {
    echo 'TokenException: ' . $exception->getMessage();
} catch (LowBalanceException $exception) {
    echo 'LowBalanceException: ' . $exception->getMessage();
} catch (ViolationIntegrityEntityException $exception) {
    echo 'ViolationIntegrityEntityException: ' . $exception->getMessage();
} catch (\InvalidArgumentException $exception) {
    echo 'InvalidArgumentException: ' . $exception->getMessage();
} catch (\Exception $exception) {
    echo 'Exception: ' . $exception->getMessage();
}
```

Проверяем баланс:

```
$balance = $client->getBalance();
```

Проверка номеров:

```
$collection = $client->checkPhones(['79991112233', '...']);

if ($collection->count() > 0) {
    foreach ($collection as $phone) {
        $checked = $phone->checked();
        $valid = $phone->valid();
        $phoneNumber = $phone->getNumber();
        $country = $phone->getCountry();
        $operator = $phone->getOperator();
        $regionId = $phone->getRegionId();
        $regionName = $phone->getRegionName();
        $timezone = $phone->getTimezone();
    }
}
```

Список имен отправителей:

```
$collection = $client->getSenders();

if ($collection->count() > 0) {
    foreach ($collection as $sender) {
        $checked = $sender->checked();
        $senderName = $sender->getSender();
        $channel = $sender->getChannel();
    }
}
```

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

[](#отправка-сообщений)

Перед отправкой сообщений необходимо создать метаданные для работы со статусами:

```
$reportUrl = 'https://example.com/report'; // На этот URL будут приходить статусы сообщений и ошибки отправки
$replyUrl = 'https://example.com/reply'; // На этот URL будут приходить ответы на сообщения, если канал поддерживает данных функционал
$ttl = 600;
$metadata = Nexus\Message\Sdk\ValueObject\MessageMetadata::create($reportUrl, $replyUrl, $ttl);
```

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

```
$client->sendTelegram(['79991112233', '...'], 'Текст сообщения', $metadata);
```

Отправка по каналу Вконтакте:

```
$client->sendVk(['79991112233', '...'], 'Текст сообщения', $metadata);
```

Отправка по каналу Вайбер:

```
$client->sendViber(['79991112233', '...'], 'Текст сообщения', $metadata);
```

Отправка по каналу СМС:

```
$client->sendSms(['79991112233', '...'], 'Текст сообщения', $metadata);
```

Отправка каналами по умолчанию:

```
$client->sendSimple(['79991112233', '...'], 'Текст сообщения', $metadata);
```

Гибридная отправка:

```
$channels = ['telegram', 'vk', 'sms']; // Порядок каналов для отправки
$client->sendHybrid(['79991112233', '...'], 'Текст сообщения', $channels, $metadata);
```

### Обработка статусов, ответов и ошибок:

[](#обработка-статусов-ответов-и-ошибок)

Обработка статусов и ошибок:

```
$post = file_get_contents('php://input');
$handler = Nexus\Message\Sdk\Client::statusHandler($post);
$error = $handler->getError();
$messageId = $handler->getEntityId();
$status = $handler->getStatus();
$channel = $handler->getChannel();
```

Обработка ответов:

```
$post = file_get_contents('php://input');
$handler = Nexus\Message\Sdk\Client::replyHandler($post);
$messageId = $handler->getMessageId();
$customId = $handler->getCustomId();
$text = $handler->getText();
$date = $handler->getDate();
```

### Работа с шаблонами:

[](#работа-с-шаблонами)

Получить список шаблонов:

```
$collection = $client->getTemplates();

if ($collection->count() > 0) {
    foreach ($collection as $template) {
        $id = $template->getId();
        $name = $template->getName();
        $text = $template->getText();
        $channels = $template->getChannels();
        $status = $template->getStatus();
        $comment = $template->getComment();
        $activated = $template->getActive();
        $variables = $template->getVariables();
    }
}
```

Создание шаблона:

```
$template = new Nexus\Message\Sdk\Entity\Template();
$text = 'Текст шаблона';
if ($template->checkText($text)) {
    $template->setName('Название шаблона')
        ->setText($text)
        ->setChannel(Nexus\Message\Sdk\Entity\Channel::SMS)
        ->setGroupUrl('https://vk.com/...') // Для шаблонов Вконтакте
        ->setComment('Комментарий');
    $client->createTemplate($template);
}
```

Переменные шаблона:

```
$template->addNumericVariable('age');
$template->addNumericSetVariable('year');
$template->addWordVariable('name');
$template->addWordSetVariable('address');
$template->resetVariables();
```

Изменение шаблона:

```
$template->setName('Новое название шаблона')
    ->setChannel(Nexus\Message\Sdk\Entity\Channel::VK);
$client->updateTemplate($template);
```

Удаление шаблона:

```
$client->deleteTemplate($template);
```

Тестирование
------------

[](#тестирование)

```
phpunit --coverage-text
```

История изменений
-----------------

[](#история-изменений)

Смотрите [CHANGELOG](CHANGELOG.md) для получения дополнительной информации о том, что изменилось за последнее время.

###  Health Score

28

—

LowBetter than 52% of packages

Maintenance56

Moderate activity, may be stable

Popularity3

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity41

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 88.9% 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

Unknown

Total

1

Last Release

296d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/105853799?v=4)[ronlx](/maintainers/ronlx)[@ronlx](https://github.com/ronlx)

---

Top Contributors

[![bot](https://avatars.githubusercontent.com/u/58210622?v=4)](https://github.com/bot "bot (8 commits)")[![ronlx](https://avatars.githubusercontent.com/u/105853799?v=4)](https://github.com/ronlx "ronlx (1 commits)")

---

Tags

api-sdkimobis

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/imobis-api-sdk/health.svg)

```
[![Health](https://phpackages.com/badges/imobis-api-sdk/health.svg)](https://phpackages.com/packages/imobis-api-sdk)
```

###  Alternatives

[laravel/framework

The Laravel Framework.

34.8k543.8M20.1k](/packages/laravel-framework)[craftcms/cms

Craft CMS

3.6k3.6M3.1k](/packages/craftcms-cms)[tempest/framework

The PHP framework that gets out of your way.

2.2k34.4k15](/packages/tempest-framework)[tencentcloud/tencentcloud-sdk-php

TencentCloudApi php sdk

3741.3M47](/packages/tencentcloud-tencentcloud-sdk-php)[pantheon-systems/terminus

A command line interface for Pantheon

3391.5M18](/packages/pantheon-systems-terminus)[checkout/checkout-sdk-php

Checkout.com SDK for PHP

563.6M13](/packages/checkout-checkout-sdk-php)

PHPackages © 2026

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