Skip to content

Сервис, позволяющий регистрировать активность в редакторе кода и получать его через RestFul API

Notifications You must be signed in to change notification settings

Andcool-Systems/Andcool-Activity

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Andcool Activity

Сервис, позволяющий регистрировать активность в редакторе кода и получать его через RestFul API.

Работа c API

GET /<code>
Получить текущую активность по коду пользователя.

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

{
  "statusCode": 200,
  "activities": [
    {
      "id": 377749,
      "workplace": "andcool_activity",
      "file": "README.md",
      "debugging": false,
      "start_time": "2024-08-25T14:43:04.247Z"
    }
  ]
}

Возвращаемый ответ содержит массив текущих активностей. Поля workplace и file в теле ответа могут иметь значение null.


GET /<code>/widget?order=<order_key>
Получить текущую активность по коду пользователя в виде виджета в формате svg.
Query параметр order отвечает за то, какая из множества активностей будет отображена в виджете.
order может принимать значения:

  • first – Первая и самая продолжительная из зарегистрированных активностей.
  • last – Последняя из зарегистрированных активностей.

Пример:
widget


POST /heartbeat
Отправить запрос на поддержание активности.

Заголовок запроса должен содержать хеадер Authorization, имеющий значение Api-Key <api key>

Пример тела запроса:

{
    "id": 377749,
    "workplace": "andcool_activity",
    "file": "README.md",
    "debugging": false
}

Описание полей запроса:

  • id — Уникальный идентификатор активности. Позволяет идентифицировать запрос на продление активности. Может быть любым числом.
  • workplace — Текущее рабочее пространство. Должно иметь тип string или null, если рабочее пространство не открыто.
  • file — Текущий файл, открытый в редакторе. Должен иметь тип string или null, если редактор не открыт.
  • debugging — Показывает, когда текущий проект отлаживается. Должен иметь тип boolean.

Успешное выполнение запроса вернёт код 201


POST /register
Создает нового пользователя для активности.

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

{
  "statusCode": 201,
  "code": 123456,
  "token": "<token>"
}
  • code — Содержит значение, по которому в дальнейшем можно получить список активности.
  • token — Содержит токен, который должен присутствовать в заголовке запроса на поддержание активности.

Логика работы

Плагин устанавливается в редактор кода (на данный момент только VSCode). При установке он запросит ключ API. После успешной установки и настройки ключа, плагин начнёт проверять открытые файлы раз в 30 секунд и отправлять запросы на API. Если API не получает запрос на продление активности более 60 секунд, он удаляет её из текущих активностей.


by AndcoolSystems, August 24, 2024

About

Сервис, позволяющий регистрировать активность в редакторе кода и получать его через RestFul API

Topics

Resources

Stars

Watchers

Forks