infobot / apiv2
Infobot API
Requires
- php: >=7.0
- ext-curl: *
This package is auto-updated.
Last update: 2025-04-21 06:09:17 UTC
README
Установка
composer require infobot/apiv2
Примеры использования
$client = new \Infobot\Api\Client($token);
Отправка вызова
Тип вызова: static
$message = new \Infobot\Api\Messages\StaticMessage([ "to" => "79876543210", "text" => "Сообщение", "tts_voice" => "", "tts_speed" => "", ]); $response = $client->postMessages([ "body" => $message->toArray(), ]);
Тип вызова: dynamic
$message = new \Infobot\Api\Messages\DynamicMessage([ "to" => "79876543210", "scenary" => 10, ]); $response = $client->postMessages([ "body" => $message->toArray(), ]);
Тип вызова: audio
$message = new \Infobot\Api\Messages\AudioMessage([ "to" => "79876543210", "audio" => "http://examle.site.com/audio.mp3", ]); $response = $client->postMessages([ "body" => $message->toArray() ]);
Получение информации о пользователе (аккаунте)
$response = $client->getUsers();
Получение списка сценариев
$response = $client->getScenaries();
По страницам
$response = $client->getScenaries([ "query" => ["page" => 1] ]);
Получение информации о сценарии
$response = $client->getScenaries([ "query" => [":id" => 1] ]);
Получение значения переменных из звонка
по ID звонка
$response = $client->getStatisticsVariables([ "query" => ["message" => 1] ]);
по custom_id
$response = $client->getStatisticsVariables([ "query" => ["user" => 1] ]);
по номеру телефона
$response = $client->getStatisticsVariables([ "query" => ["phone" => 79876543210] ]);
по номеру телефона с пагинацией
$response = $client->getStatisticsVariables([ "query" => [ "phone" => 79876543210, "page" => 1, ] ]);
Получить статистику по звонкам
$response = $client->getMessages();
С пагинацией
$response = $client->getMessages([ "query" => ["page" => 1] ]);
информация о конкретном звонке по его id
$response = $client->getMessages([ "query" => [":id" => 1] ]);
Удаление (отмена) звонка из очереди
$response = $client->deleteMessages([ "query" => [":id" => 1] ]);
Создание и редактирование кампаний
Создать
$campaing = new Infobot\Api\Campaigns\BaseCampaigns("Рога и Копыта"); $response = $client->postCampaigns([ "body" => $campaing->toArray(), ]);
Переименовать
$campaing = new Infobot\Api\Campaigns\BaseCampaigns("Рога и Копыта 2.0"); $response = $client->patchCampaigns([ "query" => [":id" => 1], "body" => $campaing->toArray(), ]);
Получение информации о кампаниях
получение списка кампаний пользователя
$response = $client->getCampaigns();
получить информацию о кампании по id
$response = $client->getCampaigns([ "query" => [":id" => 1] ]);
Получение финансовой статистики
$response = $client->getStatisticsFinance([ "query" => [ "overall", ":from" => гггг-мм-дд, ":to" => гггг-мм-дд, ":campaign_id" => 10 ] ]);
Активация услуги "Своя Связь" (для возможности использования своей SIP-телефонии)
$response = $client->postTrunks([ "query" => [ "activate" ], "body" => [], ]);
Создание и управление транками
получение списка транков
$response = $client->getTrunks();
получение информации по id транка
$response = $client->getTrunks([ "query" => [":id" => 1] ]);
создание транка
$param = [ "channels" => "10", "host" => "test.unknowntrunk.net", "login" => "admin", "password" => "qwerty", "title" => "Тестовый транк", ]; $trunk = new \Infobot\Api\Trunks\BaseTrunk($param); $response = $client->postTrunks([ "body" => $trunk->toArray(), ]);
удаление транка
$response = $client->deleteTrunks([ "query" => [":id" => 1] ]);
обновление транка
$param = [ "channels" => "10", "host" => "test.unknowntrunk.net", "login" => "admin", "password" => "qwerty", "title" => "Тестовый транк", ]; $trunk = new \Infobot\Api\Trunks\BaseTrunk($param); $response = $client->patchTrunks([ "query" => [":id" => 1], "body" => $trunk->toArray(), ]);
Управление рассылками
Список рассылок
$response = $client->getDeliveries();
По страницам
$response = $client->getDeliveries([ "query" => ["page" => 1] ]);
Информация по рассылке
$response = $client->getDeliveries([ "query" => [":id" => 1] ]);
Запустить рассылку
$response = $client->postDeliveries([ "query" => [":id" => 1], "body" => [], ]);
Приостановить рассылку
$response = $client->postDeliveries([ "query" => [":id" => 1], "body" => [], ]);
Создать рассылку
$params = [ "aon" => 79876543210, "campaign_id" => 1, "client_timezone" => true, "d_type" => static, "detect_voicemail" => false, "group_id" => 1, "message" => "static text", "messages_per_packet" => 2, "name" => "Моя рассылка", "pause_between_packet" => 10, "scenary_id" => '', "speed" => 10, "time_to_send_start" => "10:00", "time_to_send_end" => "20:00", "trunk" => 12, "try_count" => 2, "try_timeout" => 10, "tts_speed" => 10, "voice" => "male", "file" => '' ]; $response = $client->postDeliveries([ "body" => $params, ]);
Изменить рассылку
$params = [ "aon" => 79876543210, "campaign_id" => 1, "client_timezone" => true, "d_type" => static, "detect_voicemail" => false, "group_id" => 1, "message" => "static text", "messages_per_packet" => 2, "name" => "Моя рассылка", "pause_between_packet" => 10, "scenary_id" => '', "speed" => 10, "time_to_send_start" => "10:00", "time_to_send_end" => "20:00", "trunk" => 12, "try_count" => 2, "try_timeout" => 10, "tts_speed" => 10, "voice" => "male", "file" => '' ]; $response = $client->patchDeliveries([ "query" => [":id" => 1], "body" => $params, ]);
Управление группами
Список групп
$response = $client->getGroups();
По страницам
$response = $client->getGroups([ "query" => ["page" => 1] ]);
Информация по группе
$response = $client->getGroups([ "query" => [":id" => 1] ]);
Создать группу
$params = [ "name" => "Имя группы" ]; $response = $client->postGroups([ "body" => $params, ]);
Обновить группу
$params = [ "name" => "Имя группы" ]; $response = $client->patchGroups([ "query" => [":id" => 1], "body" => $params, ]);
Управление контактами
Список контактов
$response = $client->getContacts();
По страницам
$response = $client->getContacts([ "query" => ["page" => 1] ]);
Информация по контакту
$response = $client->getContacts([ "query" => [":id" => 1] ]);
Список контактов по группе
$response = $client->getContacts([ "query" => [ "group", ":group_id" => 1 ] ]);
По страницам
$response = $client->getContacts([ "query" => [ "group", ":group_id" => 1, "page" => 1 ] ]);
Создать контакт
$params = [ "sex" => "male", "group_ids" => [1,2,3], "email" => "email@email.email", "fname" => "Фамилия", "lname" => "Имя", "mname" => "Отчество", "phone" => "79876543210", "var_1" => "var", "var_2" => "var", "var_3" => "var", "var_4" => "var", "var_5" => "var", ]; $response = $client->postContacts([ "body" => $params, ]);
Обновить контакт
$params = [ "sex" => "male", "group_ids" => [1,3], "email" => "email@email.email", "fname" => "Фамилия", "lname" => "Имя", "mname" => "Отчество", "phone" => "79876543210", "var_1" => "var", "var_2" => "var", "var_3" => "var", "var_4" => "var", "var_5" => "var", ]; $response = $client->patchContacts([ "query" => [":id" => 1], "body" => $params, ]);