+7 (812) 326 10 75 Наш офис
8 800 333 10 75 Бесплатно по России

Протокол интеграции Viber

Для использования данного вида интеграции, Вам необходимо зарегистрироваться на серверной платформе STREAM TELECOM по адресу https://web.szk-info.ru.

Варианты:

1) Регистрация в личном кабинете

2) Регистрация через менеджера компании Stream Telecom

Общие положения

Серверная платформа Stream Telecom (далее Платформа) и клиент сервиса (далее Клиент) обмениваются HTTPS URL – encoded запросами, используя форматы передач данных JSON, в соответствии с принципами REST. Действие над данными задается с помощью методов GET или POST в кодировке UTF-8.

Точка доступа

Запросы Клиента должны передаваться на Платформу по URL:  http://gateway.api.sc/rest/Send/SendIM/ViberOne/

(ssl: https://gateway.api.sc/rest/Send/SendIM/ViberOne/)

stream_telecom_integration_sms_viber.pdf

Функции

Примеры запросов

1. Пример POST-запроса: Только текст

HTTP/1.1

HOST: https://gateway.api.sc/rest/Send/SendIM/ViberOne/

Content-Type: application/x-www-form-urlencoded

HTTP/1.1 100 Continue

login=testuser

&pass=userpassword

&sourceAddressIM=testvibername

&textIM=Привет вайбер

&phone=79211234567

&validityPeriod=7200

2. Пример POST-запроса: Только картинка

HTTP/1.1

HOST: https://gateway.api.sc/rest/Send/SendIM/ViberOne/

Content-Type: application/x-www-form-urlencoded

HTTP/1.1 100 Continue

login=testuser

&pass=userpassword

&sourceAddressIM=testvibername

&phone=79211234567

&imageURL=https://my.site.com/images/image.jpg

&validityPeriod=7200

3. Пример POST-запроса с кнопкой, картинкой и текстом

HTTP/1.1

HOST: https://gateway.api.sc/rest/Send/SendIM/ViberOne/

Content-Type: application/x-www-form-urlencoded

HTTP/1.1 100 Continue

login=testuser

&pass=userpassword

&sourceAddressIM=testvibername

&textIM=Привет вайбер

&phone=79211234567

&imageURL=https://my.site.com/images/image.jpg

&buttonText=Нажми на кнопку

&buttonURL=stream-telecom.ru

&validityPeriod=7200

4. Пример POST-запроса с кнопкой, картинкой и текстом, с методом каскад

Каскад – это комбинация действий, которая приводит к отправке СМС, в случае недоставки сообщения по VIBER.

HTTP/1.1

HOST: https://gateway.api.sc/rest/Send/SendIM/ViberOne/

Content-Type: application/x-www-form-urlencoded

HTTP/1.1 100 Continue

login=testuser

&pass=userpassword

&sourceAddressIM=testvibername

&textIM=Привет вайбер

&phone=79211234567

&imageURL=https://my.site.com/images/image.jpg

&buttonText=Нажми на кнопку

&buttonURL=stream-telecom.ru

&sourceAddressSMS=TestRusinfo (Имя отправителя по sms (каскад))

&textSMS=Тестовое сообщение (Текст резервного сообщения по sms (каскад))

&validityPeriod=7200

Название

Обязательное поле

Тип данных

Описание

login

Да

String

Логин от учетной записи Stream Telecom

pass

Да

String

Пароль от учетной записи StreamTelecom

sourceAddressIM

Да

String

Имя отправителя, зарегистрированное для Viber

textIM

Да

String

Текст отправляемого сообщения Viber (Сообщение не должно содержать более 1000 символов)

phone

Да

Integer

Номер получателя сообщения Viber

imageURL*

Нет

String

URL изображения в формате: https://my.site.com/images/image.jpg. Длина URL изображения не более 1000 символов

buttonText**

Нет

String

Наименование кнопки. (не более 30 символов)

buttonURL**

Нет

String

URL кнопки в формате: https://my.site.com/. Длина URL кнопки для перехода не более 1000 символов

sourceAddressSMS

Нет

String

Имя отправителя SMS

textSMS

Нет

String

Текст сообщения SMS

validityPeriod

Нет

Integer

Время ожидания доставки сообщения в секундах. По умолчанию 7200 секунд

Min=15, Max=86400

ВАЖНО!


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

**Для отправки сообщения с кнопкой, обязательные параметры: imageURL+buttonText+textIM+buttonURL, в противном случае будет отправлено сообщение без кнопки.


Примеры запросов

1. Пример POST-запроса: Только текст

HTTP/1.1

HOST: https://gateway.api.sc/rest/State/Viber/

Content-Type: application/x-www-form-urlencoded

HTTP/1.1 100 Continue

login=testuser

&pass=userpassword

&messageId=12345

2. Пример GET-запроса: (в одну строку)

https://gateway.api.sc/rest/State/Viber/?login=testuser&pass=userpassword&messageId=12345

Название

Обязательное поле

Тип данных

Описание

login

Да

String

Логин от учетной записи Stream Telecom

pass

Да

String

Пароль от учетной записи Stream Telecom

messageId

Да

String

Id сообщения Viber(можно указывать несколько id через запятую)

Пример ответа (в случае отправки только Viber)

{

"10889": {

"viber": {

"error": 0,

"state": "read",

"state_error": "null",

"state_time": "2017-04-10 11:07:55"

}

}

}

Пример ответа (в случае отправки каскада)

{

"10891": {

"viber": {

"error": 0,

"state": "undelivered",

"state_error": "not-viber-user",

"state_time": "2017-04-10 13:18:53"

},

"sms": {

"state": "delivered",

"state_time": "2017-04-10 13:19:00"

}

}

}

Пример ответа (в случае некорректного запроса)

{

"1089": {

"error": 1,

"error_info": "No data for this messageId",

"state": "null",

"state_time": "null"

}

}

Параметр

Описание

10887

Id сообщения Viber

viber/sms

Тип сообщения

error (boolean)

0 – запрос успешный, 1 – имеется ошибка в запросе

state

Статус сообщения

state_error

Причина, по которой сообщение не было доставлено абоненту

state_time

Время получения статуса

error_info

Описание ошибки

Примеры запросов

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

Адрес сервера: https://gateway.api.sc/rest/Send/SendIM/ViberBulk/

{

"login":"testuser",

"pass":"testpass",

"sourceAddressIM":"TEST VIBER",

"phones":

{

"1":{

"type_viber":"button",

"phone":"79121231234",

"validityPeriod":"7200",

"textIM":"Тестовое сообщение",

"imageURL":" https:\/\/myimage ",

"buttonURL":" https:\/\/myurl ",

"buttonText":"CLICK ME",

"sourceAddressSMS":"TESTSMS",

"textSMS":"SMS сообщение"},

"2":{

"type_viber":"image",

"phone":"79121231233",

"validityPeriod":"7200",

"imageURL":"https:\/\/myimage"},

"3":{

"type_viber":"text",

"phone":"79121231232",

"validityPeriod":"7200",

"sourceAddressIM":"Stream Tele",

"textIM":"Текст вайбер сообщения"}

}

}

Пример ответа

{

"1": {"id": "3258315028721143935"},

"2": {"id": "3258315028721143968"},

"3": {"id": "3258315028721143968"}

}

2.Пример запроса отправки на несколько номеров

Адрес сервера: https://gateway.api.sc/rest/Send/SendIM/ViberBulk/

{

"login":"testuser",

"pass":"testpass",

"sourceAddressIM":"TEST VIBER",

"textIM":"Тестовое сообщение",

"type_viber":"text",

phones":

{

4":{"phone":"79121231234"},

5":{"phone":"79121231233"},

6":{"phone":"79121231232"}

}

}

Пример ответа

{

4": {"id": "3258315028721143940"},

5": {"id": "3258315028721143956"},

6": {"id": "3258315028721143969"}

}

Название

Обязательное поле

Тип данных

Описание

login

Да

String

Логин от учетной записи StreamTelecom

pass

Да

String

Пароль от учетной записи StreamTelecom

sourceAddressIM

Да

String

Имя отправителя, зарегистрированное для Viber

type_viber

Да

String

Тип сообщения Viber (button– текст с кнопкой и картинкой, image– картинка и текст, text– только картинка)

textIM

Да

String

Текст отправляемого сообщения Viber (Сообщение не должно содержать более 1000 символов)

phone

Да

Integer

Номер получателя сообщения Viber

imageURL*

Нет

String

URL изображения в формате:my.site.com/images/image.jpgДлина URL изображения не более 1000 символов.

buttonText**

Нет

String

Наименование кнопки. (не более 30 символов)

buttonURL**

Нет

String

URL кнопки в формате: my.site.com/Длина URLкнопки для перехода не более 1000 символов.

sourceAddressSMS

Нет

String

Имя отправителя SMS (при наличии параметров sourceAddressSMS и textSMS, абоненту будет активирована каскадная отправка)

textSMS

Нет

String

Текст сообщения SMS (при наличии параметров sourceAddressSMS и textSMS, абоненту будет активирована каскадная отправка)

validityPeriod

Нет

Integer

Время ожидания доставки сообщения Viber в секундах. По умолчанию 7200 секунд.

(Min=15, Max=86400)

Статусы Viber

Статус

Описание

delivered

Доставлено

undelivered

Не доставлено

sent

Отправлено

read

Прочитано

Статусы смс

Статус

Описание

delivered

Доставлено

undelivered

Не доставлено

sent

Отправлено

expired

Просрочено

Ошибки Viber

Статус

Описание

user-blocked

Абонент заблокирован

not-viber-user

Абонент не является пользователем Viber

filtered

Сообщение не соответствует ни одному зарегистрированному шаблону


Список ошибок REST

REST error code

HTTP status code

Описание

-

200

OperationComplete

1

400

ArgumentCanNotBeNullOrEmpty

2

400

InvalidArgument

3

400

InvalidSessionID

4

401

UnauthorizedAccess

5

403

NotEnoughCredits

6

400

InvalidOperation

7

403

Forbidden

8

500

GatewayError

9

500

InternalServerError

* Все функции могут быть доработаны на усмотрение разработчиков, внедряющих службы SMS в систему 1С.