Skip to content

Releases: firedotguy/smartlinkAPI

2.4.0

05 Jan 08:32

Choose a tag to compare

С этого релиза заметки к релизам будут укорочены (только краткий список основных изменений)
С этого релиза будет работать новая ветка dev, в которую будут вноситься все новые изменения. Ветка будет сливать в main перед выпуском релизов. Пре-релизы (например 0.4.2-dev.2) будут выпускаться сразу из dev.

Изменения

  • Рефактор коробки
  • Добавлены параметры limit и skip и поля customers_count и customers_limit в endpoint получения коробки - добавлена пагинация соседей

2.3.0

29 Dec 12:27

Choose a tag to compare

Highlighted

Добавлен unescape для комментариев заданий
Добавлена ссылка на карту в коробку

Все изменения

feat

  • ebe3428, 850145a:
    • Добавлены поля manager_id, coords, active, map_link при получении коробки (#43)
    • Добавлена функция get_coordinates в utils

fix

  • 2361f5c:
    • Добавлен unescape для комментариев заданий (#41)

2.2.0

25 Dec 21:18

Choose a tag to compare

Highlighted

Добавлен поиск абонента по номеру телефона
Добавлена сортировка заданий по дате создания

Все изменения

feat

  • 2338195:
    • Добавлен поиск абонента по номеру телефона (#39)
    • Зарефакторена часть search эндпоинта

fix

  • 6d4a151:
    • Добавлена сортировка списка заданий по дате создания в /task (#40)

2.1.0

19 Dec 21:08

Choose a tag to compare

Highlighted

Добавлены limit и skip параметры при получении списка заданий

Все изменения

feat

  • e467ed3:
    • Добавлены параметр limit, skip, get_count параметр при получении списка заданий, и limit, count в ответ (#37)

2.0.1

26 Nov 17:18

Choose a tag to compare

Highlighted

Исправлена ошибка при получении некоторых ONT
С этого релиза тэги будут в формате "vX.Y.Z" а не "v.X.Y.Z" (стандарт SemVer), а имя релиза - "X.Y.Z" а не "v.X.Y.Z"

Все изменения

fix

  • 3915d18:
    • Исправлена ошибка IndexError при получении данных ONT c OLT "uzgen"

v.2.0.0+1

20 Nov 11:55

Choose a tag to compare

Highlighted

Исправлена ошибка при запуске

Все изменения

fix

  • 0a39e15:
    • Исправлена ошибка SyntaxError при запуске сервера в inventory
    • Добавлена более строгая проверка на API ключ params.get('apikey') -> params['apikey'] (даже если проверка на пустой API ключ сломается, сервер упадет но не даст доступа)

v.2.0.0

12 Oct 19:00

Choose a tag to compare

Warning

В этом релизе обнаружена ошибка запуска (сервер не запустится). Используйте версию 2.0.0+1.

Highlighted

Исправлена дыра из за которой можно получать доступ ко всему API без API ключа
С этого релиза в этом проекте будет использоваться Semantic Versioning
Добавлен эндпоинт для получения списка заданий
Добавлен эндпоинт для получения списка оборудования
Добавлена возможность выбора типа задания
Исправлена ошибка из за которой бригады не добавлялись к заданию

Все изменения

feat

  • 05ac426:
    • Функция _format_mac из ONT перенесена в основные utils
    • В получении данных абонента вывод "разделен" для читабельности; на совместимость на влияет
    • Все данные абонента перенсены внутрь поля data
    • Добавлены поля is_corporate, is_diabled, is_potential; billing, ip, mac, manager_id, address, timestamps и др. (#31)
  • 79191dd:
    • Добавлен эндпоинт для получения списка заданий
  • fb7cb30:
    • Добавлена секция inventory
    • Добавлен эндпоинт для получения списка оборудования (#31)
    • Удалено поле inventory при получении абонента (#31)
  • 9108f80:
    • Убраны лишние логи из модуля оборудования
    • Добавлено получение имени абонента при получении задания и списка заданий (#33)
  • e68f148:
    • Добавлена возможность выбора типа задания
    • Добавлена валидация для полей (некоторых доп.поля обязательны для некоторых типов заданий)
    • Переисправлена ошибка из за которой бригады не добавлялись к заданию (#34)

fix

  • b721fc1:
    • Исправлена ошибка из за которой можно было получить доступ к API без добавления apikey
  • 272ae1f:
    • Удалено (закоментировано) получение списка заданий в абоненте (#31)
  • d91dd0a:
    • Исправлена ошибка 500 Internal Server Error при получении списка оборудования абонента у которого нет оборудования
    • Добавлены файлы enums и models/inventory (для будущего использования) (#32)
  • dd78f58:
    • Исправлена ошибка из за которой бригады не добавлялись к заданию (#34)
    • Исправлены ошибки при получении абонентов без билинга или без IP/MAC

refactor

  • dd78f58:
    • Переделано создание задания (с поддержкой выбора типа)

docs

  • 42340f9:
    • Изменена лицензия - BSL 1.0 -> CC BY-NC-SA 4.0
    • Удалена секция планов в README
    • Добавлен пункт о том что это тпроект использует лицензию CC

Совместимость

/*?apikey= [200] -> [500] (apikey обязателен)
/customer/{id}[*] -> /customer/{id}['data'][*]
/customer/{id}['last_activity'] -> /customer/{id}['data']['timestamps']['last_active_at']
/customer/{id}['inventory'] -> /inventory?customer_id={id}['data']
/customer/{id}['tasks'] -> /task?customer_id={id}['data']

v.1.3.0

09 Oct 21:42

Choose a tag to compare

Highlighted

Добавлена перепись MAC
Добавлен эндпоинт для переключения CATV
Улучшена стабильность (4 фикса)

Все изменения

feat

  • 35dc6f1, 21799a0, c93d204:
    • Добавлен эндпоинт для переключения CATV (#23) (PR #24)
    • Изменен url для перезапуска ONT - /ont/restart -> /ont/fibre/service/port/ont_id/restart
  • 0223ffb, de2da8d:
    • Добавлен эндпоинт для перезаписи MAC адреса (#22) (PR #26)
    • Добавлены новые поля в ONT - mac, service_port

fix

  • c93d204:
    • Если ID коробки у абонента - 0, то API отправляет None (#25)
  • 15607ee:
    • Исправлено получение SN у абонентов с двойными скобками (#30)
  • bca5880:
    • Исправлена ошибка 500 Internal Server Error в /neomobile/login
  • 0223ffb, de2da8d, 35dc6f1, 21799a0, c93d204:
    • Все прочие функции в ONT сделаны приватными
    • Немного увеличены задержки при поиске ONT - 0.05 -> 0.07
    • Изменены таймауты при чтении output
    • Улучшен парсинг output - добавлена обрезка "Command: ...", определение note c "Note" вместо "Notes: ", отрезание последнего слэша в парсинге значений из output

docs

  • 6e0184c:
    • Добавлен файл ont_commands.txt с описанием и выводом комманд ONT

Совместимость

/ont/restart?fibre=fibre&service=service&port=port&id=id -> /ont/restart/fibre/service/port/id

v.1.2.0

06 Oct 21:37

Choose a tag to compare

Highlighted

Улучшена стабильность (17 фиксов)
Полностью переделан парсинг ответа от OLT (таблицы\поля)
Добавлены ETH порты

Все изменения

fix

  • 4a323c3, 15f233c (fix):
    • Добавлена поддержка таблиц с заголовками в несколько строк (#17) [unstable]
  • ba0255f:
    • Увеличен тайм аут и минимальное количество строк для триггера заканчивания чтения ответа
  • 40fc404:
    • Добавлены логи при окоyчании чтения ответа в ONT
    • Исправлена ошибка из за которой любая попытка авторизации была неправильной (#21) 4ceb0be)
  • 7a635ec:
    • Получение статуса ETH портов из другой команды
  • 4db2463:
    • Ответы up/down заменяются на True/False (как и on/off, enable/disable, online/offline и др.) (#16/#17)
  • 0b82197:
    • Исправлена ошибка из за которой все ID у ETH - None
  • 6e680dc:
    • Добавлена проверка на следующий пробел в _find_all в _parse_output для предотвращения совпадения с похожими значениями (например ONT и ONT-ID) [unstable]
  • 2f2edb0, 3b1a391 (fix), c10ace8 (fix):
    • Уменьшены шанся на ошибку IndexError: list index out of range [unstable]
  • 6c57283:
    • Исправлена ошибка TypeError: expected string or bytes-like object, got 'NoneType' [unstable]
  • 23b414f:
    • Попытка исправить KeyError: 'F/S/P'
  • db14b33:
    • Удален лишний вызов команды получения optical info если ONT итак offline
  • 9958929:
    • Исправлен тип ETH портов - list[list[dict]] -> list[dict]

feat

  • acfbedc:
    • Добавлено получение ETH портов [unstable]

Совместимость

  • /ont['data']['status'] (str) -> /ont['data']['online'] (bool)
  • /attachs/customer/id['data'][0]['date'] -> /attachs/customer/id['data'][0]['created_at']

v.1.1.3

03 Oct 17:58

Choose a tag to compare

Highlighted

Улучшена стабильность (5 фиксов)
Добавлен эндпоинт перезаписи SN

Все изменения

fix

  • a9c9cf4:
    • Исправлена ошибка ZeroDivisionError при получении коробки
  • 1251094:
    • Выборка только не выполненных заданий при получении коробки
  • de6d030:
    • Исправлен тип данных открытых заданий в коробке - str -> list
  • 479d5dc:
    • Исправлен тип данных открытых заданий в коробке - list[str] -> list[int]
  • 92a0ced:
    • Поле _id переименовано на id в функции reset_ont
    • В функции set_additional_data _id переименован на id
    • Получение списка абонентов по id коробке вместо building_id (ничего не меняет, просто более понятно) при получении коробки
    • Удалено поле building_id в коробке (одинаково с id)
    • Добавлено поле address_id в коробке (#14)
    • box_tasks переименован на tasks в коробке
    • Более лаконичное получение адреса в задании
    • Все параметры сделаны необязательными в создании задания
    • Параметр box_id переименован на address_id в создании задания
    • Добавлена проверка на None у поля customer_id если box=False и у поля address_id если box=True в создании задания, если не проходит - ответ 422
    • Удален параметр customer_id при создании задания на магистральный ремонт в api call userside
    • Переделан перенос параметров в создании задания в api call userside (вместо / - f-строки)
    • Добавление addata только если это поле указано в создании задания (для телефона, типа, причины)
    • Удалены лишние поля в ответе в создании задания (остались только status и id)
  • 4ceb0be:
    • Использование шабона status: success во всех эндпоинтах

feat

  • 92a0ced:
    • Добавлен .vscode в .gitignore
    • Добавлен параметр timeout в функцию api_call
    • Добавлен эндпоинт для перезаписи sn - /ont/rewrite_sn (#13)
  • 3ec7993:
    • Поле address сделано словарем с значениями id, name, apartment вместо простого text

Совместимость

task['address'] -> task['address']['name']
box['box_tasks'] -> box['tasks']
box['building_id'] -> box['id']