Как работать с API

Получить API-ключ

logo_img fs.lip

Обновлено: 15/11/2020 в 23:01

logo_img 1001 Tasks

Обновлено: 15/11/2020 в 23:00

logo_img Stats

Обновлено: 15/11/2020 в 23:04

logo_img PlayHelper

Обновлено: 15/11/2020 в 23:03

logo_img Truth or Dare

Обновлено: 15/11/2020 в 23:04

logo_img Math

Обновлено: 15/11/2020 в 23:02

logo_img Words

Обновлено: 15/11/2020 в 23:05

logo_img 4 Pics 1 Word

Обновлено: 15/11/2020 в 23:00

logo_img Millionaire

Обновлено: 15/11/2020 в 23:02

logo_img @TurniketSKUD_bot

Обновлено: 15/11/2020 в 23:03

logo_img @NearFood_bot

Обновлено: 15/11/2020 в 23:03

Статистика запросов:

(с начала месяца)

Успешных запросов23698
Заблокировано запросов367
Всего пользователей 754
Размер баз данных:
База данныхЗаписей
Millionaire
q = 1413
q = 2332
q = 3110
q = 450
На проверке0
Words
Города5432
Страны178
Английские слова7995
Русские слова19403
4 Pics 1 Word
Доступно24
На проверке0
Truth or Dare
Вопросы283
Действия78
На проверке0

Промо-страница

Промо-страница на данный момент недоступна.



Содержание

  1. Описание
  2. Особенности
  3. Скриншоты
  4. Использование сервиса
    1. Регистрация организации
      1. Примеры настроек
    2. Регистрация пропусков
      1. Формат Excel данных
        1. Первая строка
        2. Вторая строка и далее
    3. Дополнительно
    4. Удаление организации
    5. Ручная инициализация запросов
      1. Структура данных запроса
      2. Структура ответа
      3. Пример запроса
        1. Ответ
      4. Коды ошибок

Описание

@TurniketSKUD_bot - это Telegram-бот, предоставляющий возможность получения уведомлений о совершении прохода через КПП с использованием личной карты-пропуска.

Последние новости

- 12 июля 2020 г. -

  • Исправили некоторые ошибки в боте (не работало получение баланса по номеру карты "Стрелка") и в сервисе СКУД.

Особенности

  • Бот абсолютно бесплатен на стадии тестирования как для получателей уведомлений, так и для организаций, осуществляющих отправку уведомлений!
  • Для обновления списка держателей пропусков достаточно отправить ".xlsx" файл со списком боту.
  • Уведомления доставляются в течение 2-5 секунд (в зависимости от качества интернет-соединения обеих сторон - организации и получателей уведомлений).
    Задержка доставки уведомлений для пропусков "Стрелка" варьируется в пределах 10 минут (в зависимости от терминалов, доставляющих информацию на серверы "Стрелки").

    Если уведомление от "Стрелки" пришло на наш сервер позднее ожидаемых 10 минут, мы считаем его устаревшим и не отсылаем пользователям.

  • Удобная и интуитивная функциональность.
  • В отличие от приложений, предлагающих подобную функциональность (а порой ещё и дополнительную и ненужную), бот не занимает лишнего места - его не нужно скачивать, достаточно иметь установленный Telegram!

Сервис находится на стадии тестирования. Возможны ошибки и непредвиденное поведение. Поэтому надеемся на обратную связь!


Скриншоты

img1 img2 img3 img4 img5 img6

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

Регистрация организации

  1. Для отправки заявки на регистрацию организации в сервисе установите следующий скрипт пересылки проходов в настройках сервера КПП:
    skud.php

    Этот адрес также используется для ручных API-запросов (см. ).

  2. В поле "Логин" латиницей (можно использовать цифры) укажите желаемый логин организации (не более 16 символов). Например, "School94". Поле "Пароль" оставьте пустым. Не забудьте указать необходимость авторизации. Сохраните настройки.

    Поля могут быть подписаны иначе.

  3. Совершите проход через КПП (чтобы устройство отправило данные на указанный адрес): сначала вход, а затем выход, используя пропуск.
  4. Напишите на электронный адрес (см. Обратная связь) письмо, содержащее название регистрируемой организации (не более 16 символов), выбранный логин, используемое устройство (см. ) и номер использованного пропуска (обычно, это короткий номер, состоящий из букв и цифр; иногда написан на цветном пропуске).
  5. В ответном письме будет указан пароль, который необходимо ввести в поле "Пароль". На этом регистрация считается завершённой, и можно переходить к добавлению пропусков в базу (см. Регистрация пропусков).

    Заявка на регистрацию рассматривается вручную в течение суток.


Примеры настроек:

  • СКУД "Sigur" ("Сфинкс").

    Сервис хорошо работает с данным типом устройств. Если используется другой тип, сообщите нам.


Регистрация пропусков

Для внесения изменений в базу данных пропусков отправьте ".xlsx" файл (ссылка на пример - example.xlsx), содержащий список пропусков, в диалог боту.


Формат Excel данных

excel example
Первая строка

Первая строка используется для указания логина, пароля и параметра дополнительного действия.

  • В ячейке "A1" указывается логин (в примере - "School94").
  • В ячейке "B1" указывается пароль (в примере - "878JK").
  • В ячейке "C1" указывается один из параметров:
    • "PRINT" - для просмотра списка пропусков в базе (при этом изменения в список вноситься не будут, бот просто пришлёт имеющийся в базе список с указанием количества получателей уведомлений для каждого пропуска).
    • "EMPTY" - перед началом обработки списка пропусков имеющаяся база будет очищена.
    • Или оставьте поле пустым, если дополнительное действие не требуется.
Вторая строка и далее

Со второй строки должны идти данные пропусков.

  • В столбце "A" указываются номера пропусков без пробелов.

    Регистр букв не имеет значения.

    Номера должны быть уникальными. На всякий случай мы встроили условное форматирование в пример (см. Пример файла), которое выделит повторяющиеся номера. Если вы отправите файл, в котором есть повторяющиеся номера - невозможно будет предсказать, в какой последовательности они будут обработаны.

  • В столбце "B" указываются идентификаторы пропусков (например, имена держателей).
  • В столбце "C" указывается один из флагов действий с пропуском:
    • "0" - для игнорирования пропуска.
    • "1" - для обновления пропуска.

      Будет перезаписан идентификатор указанного пропуска. Отсутствие пропуска в базе равносильно значению "0".

    • "2" - для добавления/перезаписи пропуска.

      Пропуск будет перезаписан. Если пропуск с указанным номером не найден - он будет добавлен в базу.

    • "3" - для удаления пропуска.

      Обратите внимание: при перезаписи или удалении пропуска (значения "2" и "3") все привязки этого пропуска к аккаунтам удаляются, а значит те аккаунты, которым приходили уведомления о проходе через КПП по этому пропуску, должны заново добавить его в меню управления пропусками в диалоге с ботом (если они желают и дальше получать уведомления по этому пропуску).

Не оставляйте пустых строк между данными. Пустая строка означает конец списка.


Дополнительно

Инструкция по подключению получателей уведомлений: Скачать.


Удаление организации

Для удаления организации и всех связанных данных напишите нам на почту письмо в свободной форме с просьбой удалить организацию. В письме укажите логин и пароль.


Ручная инициализация запросов

Этот раздел - для программистов.

Также можно отправлять данные о проходах самостоятельно. Это необходимо в случае, если сервер, установленный в организации, не имеет возможности по той или иной причине отправлять данные на сторонний сервер в требуемом формате.

Для отправки данных требуется basic авторизация.


Структура данных запроса

Поле Описание
logsarray of LogData Список проходов.

Список будет отсортирован по возрастанию по ID прохода (см. параметр "logId").

LogData
Поле Описание
logIdinteger Уникальный ID передаваемой записи прохода.
timeinteger Время прохода (unix time).
accessPointinteger Уникальный ID устройства, зарегистрировавшего проход.
directioninteger Направление прохода.
Укажите значение "1" для обозначения направления "выход".
Укажите значение "2" для обозначения направления "вход".
keyHexstring Номер пропуска без пробелов, через который совершён проход.

Структура ответа

Если ответ получен - все переданные проходы были рассмотрены и записаны (если их не было в базе), повторно посылать их не следует.

Поле Описание
confirmedLogIdinteger ID последней принятой записи прохода (см. поле "logId").

Работа велась с отсортированным списком (см. Структура данных запроса).

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

{
  "logs": 
    [
      {
        "logId": 357,
        "time": 1540636621,
        "accessPoint": 1,
        "direction": 1,
        "keyHex": "B43785D8"
      },
      {
        "logId": 358,
        "time": 1540636625,
        "accessPoint": 1,
        "direction": 1,
        "keyHex": "B13991CF"
      },
      {
        "logId": 359,
        "time": 1540637621,
        "accessPoint": 2,
        "direction": 2,
        "keyHex": "B43785D8"
      }
    ]
}
Ответ
{
  "confirmedLogId": 359
}

Коды ошибок

В случае неудачи никакие данные в базу не добавляются, а скрипт возвращает одну из следующих ошибок:

  • "400 Bad Request" - произошла ошибка при добавлении записи.

    В теле ответа будет сама запись в формате JSON, которую не удалось добавить.

  • "401 Unauthorized" - неполные данные basic авторизации.

    Должны присутствовать и логин, и пароль.

  • "404 Not Found" - отсутствуют данные, соответствующие указанной паре логин-пароль.

    Скорее всего авторизационные данные неверны.

  • "409 Conflict" - отсутствуют новые данные.

    Отправленные записи уже существуют в базе. Вероятно, пропустили ответ (см. Структура ответа).