API: различия между версиями
Admin (обсуждение | вклад) |
Admin (обсуждение | вклад) Нет описания правки |
||
Строка 34: | Строка 34: | ||
= Категории = | = Категории = | ||
=== abon === | === abon === | ||
---- | ---- | ||
Строка 196: | Строка 142: | ||
usercode - ID абонента ''(tbl_base.CODE)'' | usercode - ID абонента ''(tbl_base.CODE)'' | ||
tarif - ID нового тарифа ''(tbl_group.CODE)'' | tarif - ID нового тарифа ''(tbl_group.CODE)'' | ||
=== newin === | |||
---- | |||
Форма заявки на подключение | |||
Пример реализации: http://userside.ua/userside/script/newin/sample.php | |||
Дополнительные параметры: | |||
subkat - подкатегория запроса ''(возможное значение: new (пустое значение этого параметра равняется new))'' | |||
citycode - ID населенного пункта ''(tbl_adr_city.CODE)'', по которому подаётся заявка. Будет открыт выбор улиц. Если пусто - будет открыт выбор населенного пункта. | |||
map - флаг ''(1/0)'' - открывать ли окно выбора карты. Населенный пункт должен быть указан на карте - тогда будет понятно какую карту открывать и где её центровать. | |||
Пример запроса: | |||
api.php?api=key&kat=newin&map=1 | |||
=== redirect === | |||
---- | |||
Переадресация на карточку объекта по какому-то признаку | |||
Дополнительные параметры: | |||
subkat - тип объекта ''(возможное значение: abon)'' | |||
typer - тип анализируемых данных ''(возможное значение: tel)'' | |||
value - данные ''(текстовое значение)'' | |||
Пример запроса: | |||
api.php?api=key&kat=redirect&subkat=abon&typer=tel&value=380971234567 | |||
=== work === | |||
---- | |||
Работа с заданиями. | |||
Дополнительные параметры: | |||
subkat - подкатегория запроса ''(возможное значение: см.ниже)'' | |||
==== add ==== | |||
'''Подкатегория: add''' | |||
Описание: Создание задания | |||
Обязательные параметры: | |||
work_typer - ID ТИПА задания (tbl_conf_journal.TYPER) | |||
work_datedo - дата на которую назначено выполнение задания (в формате ГГГГ-ММ-ДД чч:мм:сс) | |||
Необязательные параметры: | |||
usercode - ID абонента (tbl_base.CODE) | |||
uzelcode - ID узла связи/муфты/опоры/колодца (tbl_uzel.CODE) | |||
housecode - ID дома (tbl_house.CODE). Если не указан, то берётся из данных по абоненту - usercode, либо из данных по узлу связи - uzelcode | |||
citycode - ID населенного пункта (tbl_adr_city.CODE). Если не указан, то берётся из данных по дому housecode | |||
apart - номер квартиры | |||
fio - ФИО клиента (имеется в виду, что "клиент" еще не является абонентом) | |||
opis - заметки к заданию | |||
Дополнительно возвращаемые данные: | |||
array( | |||
[Id] => ID созданного задания (tbl_journal.CODE) | |||
) |
Версия от 19:08, 27 марта 2015
Этот раздел описывает возможности использования встроенного API в САП "UserSide", что позволяет использовать встроенный функционал в собственных проектах.
API охватывает на данный момент не весь функционал и постепенно дорабатывается, так что данная страница будет иметь частые изменения и дополнения.
Принцип работы
За взаимодействие отвечает файл /api.php
Входящие параметры: Обязательные: api - ключ API kat - категория запроса Возможные: cp - кодировка (возможное значение: cp1251). По-умолчанию данные возвращаются в кодировке utf8. gz - возврат данных в сжатом формате (возможное значение: disable). По-умолчанию данные возвращаются в сжатом формате. subkat - подкатегория запроса sort_desc - обратная сортировка результата запроса (Возможное значение: 1) Прочие дополнительные параметры, в зависимости от категории (см. ниже в соответствующих категориях). Например: usercode - код абонента (tbl_base.CODE) Пример запроса: api.php?api=key&kat=abon&subkat=msg&usercode=1
Возвращаемые данные: Если запрос предполагает какое-то действие или возврат информации, то в формате JSON будет возвращена информация: array( [Result] => OK / ERROR [ErrorText] => В случае ошибки - текст ошибки )
Основная настройка
В основном файле конфигурации main/config/config.php добавьте (или настройте) переменную $zapikey, где укажите свой произвольный API-ключ.
Категории
abon
Действия с абонентами. Большинство действий актуально для ручных биллингов.
Дополнительные параметры: subkat - подкатегория запроса (возможное значение: см.ниже)
abon_add
Подкатегория: abon_add Описание: Добавление абонента Обязательные параметры: codeti - ID абонента по версии биллинга fio - ФИО абонента Дополнительно возвращаемые данные: array( [Id] => ID нового абонента в случае успеха )
abon_hist
Подкатегория: abon_hist Описание: Вывод операций с абонентом (финансовые и прочие) Обязательные параметры: usercode - ID абонента (tbl_base.CODE) Дополнительно возвращаемые данные: перечень тарифов array( [Id] - ID_ТИП операции [DateDo] - дата операции [OperID] - ID оператора (tbl_oper.CODE) [BalansBefore] - баланс абонента до операции [Amount] - сумма операции [PKO] - номер приходного кассового ордера [Comment] - описание операции [BillingDopData] - дополнительные данные по операции из биллинга (используется при импорте данных из сторонних биллингов) )
get_abon_id
Подкатегория: get_abon_id Описание: Получение ID абонента по входящим данным Обязательные параметры: data_typer - тип данных, которые проверяем (Возможные значения: codeti) data_value - значение Дополнительно возвращаемые данные: array( [Id] => ID абонента в случае успеха )
input_msg
Подкатегория: input_msg Описание: Запись сообщения от абонента Обязательные параметры: usercode - ID абонента (tbl_base.CODE) msgtext - текст сообщения Дополнительно возвращаемые данные: array( [MsgId] => В случае успеха - ID сообщения (tbl_trouble.CODE) )
list_tarif_available
Подкатегория: list_tarif_available Описание: Список тарифов, доступных абоненту для смены Обязательные параметры: usercode - ID абонента (tbl_base.CODE) Дополнительно возвращаемые данные: перечень тарифов array( [TarifList] => array( [Id] - ID тарифа (tbl_group.CODE) [Name] - Название тарифа [Price] - Стоимость тарифа [IsDayPrice] - Флаг - ежедневная ли стоимость ) )
msg
Подкатегория: msg Описание: Вывод переписки с абонентом Обязательные параметры: usercode - ID абонента (tbl_base.CODE) Дополнительно возвращаемые данные: перечень тарифов array( [Id] - ID сообщения (tbl_trouble.CODE) [DateMsg] - дата сообщения [MsgTyper] - (OperMsg/UserMsg) - тип сообщения. Сообщения от абонента или от оператора [Text] - текст сообщения [Attach] = array( - массив с прикрепленными файлами [Id] - ID файла (tbl_attach.CODE) [FilePath] - URL к файлу [RealName] - изначальное имя файла ) )
pass_change
Подкатегория: pass_change Описание: Смена пароля на вход в ЛК Обязательные параметры: usercode - ID абонента (tbl_base.CODE) pass_old - текущий пароль pass_new - новый пароль
tarif_change
Подкатегория: tarif_change Описание: Смена тарифа абоненту Обязательные параметры: usercode - ID абонента (tbl_base.CODE) tarif - ID нового тарифа (tbl_group.CODE)
newin
Форма заявки на подключение
Пример реализации: http://userside.ua/userside/script/newin/sample.php
Дополнительные параметры: subkat - подкатегория запроса (возможное значение: new (пустое значение этого параметра равняется new)) citycode - ID населенного пункта (tbl_adr_city.CODE), по которому подаётся заявка. Будет открыт выбор улиц. Если пусто - будет открыт выбор населенного пункта. map - флаг (1/0) - открывать ли окно выбора карты. Населенный пункт должен быть указан на карте - тогда будет понятно какую карту открывать и где её центровать. Пример запроса: api.php?api=key&kat=newin&map=1
redirect
Переадресация на карточку объекта по какому-то признаку
Дополнительные параметры: subkat - тип объекта (возможное значение: abon) typer - тип анализируемых данных (возможное значение: tel) value - данные (текстовое значение) Пример запроса: api.php?api=key&kat=redirect&subkat=abon&typer=tel&value=380971234567
work
Работа с заданиями.
Дополнительные параметры: subkat - подкатегория запроса (возможное значение: см.ниже)
add
Подкатегория: add Описание: Создание задания Обязательные параметры: work_typer - ID ТИПА задания (tbl_conf_journal.TYPER) work_datedo - дата на которую назначено выполнение задания (в формате ГГГГ-ММ-ДД чч:мм:сс) Необязательные параметры: usercode - ID абонента (tbl_base.CODE) uzelcode - ID узла связи/муфты/опоры/колодца (tbl_uzel.CODE) housecode - ID дома (tbl_house.CODE). Если не указан, то берётся из данных по абоненту - usercode, либо из данных по узлу связи - uzelcode citycode - ID населенного пункта (tbl_adr_city.CODE). Если не указан, то берётся из данных по дому housecode apart - номер квартиры fio - ФИО клиента (имеется в виду, что "клиент" еще не является абонентом) opis - заметки к заданию
Дополнительно возвращаемые данные: array( [Id] => ID созданного задания (tbl_journal.CODE) )