Code Monkey home page Code Monkey logo

grcentral's People

Contributors

lumian avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Forkers

scrik

grcentral's Issues

Тестовый режим в системных настройках

Необходимо реализовать переключатель в системных настройках на временное отключение возможности отдавать CFG и FW файлы устройствам, а так же на включение/отключение тестового режима для отладки системы.

Поддержка работы с ActionURL

Устройства Grandstream позволяют "стучаться" по определенным URL в случае выполнения каких-либо действий. Grandstream называет их - ActionURL. Настраиваются, как обычно в конфиг файле.
Теоретически, можно сделать поддержку таких "стучалок", но надо подумать - надо ли оно вообще.

Откладываю на "далекое будущее"...

Изменение логики отдачи прошивок

По результатам общения с технической поддержкой Grandstream и нескольких неудачных обновлений было принято решение об изменении логики отдачи прошивок.

Суть изменения в следующем:

  • Устройства всегда должны получать статус HTTP 200 и актуальный файл прошивки. Устройство само решает, будет оно обновляться или нет.
  • Статус HTTP 404 должен отдаваться только в случае каких-либо ошибок или не правильных настроек сервера.

Авто-получение шаблонов данных для быстрой настройки

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

Возможно, центральным сервером будет репозиторий на github или отдельный сайт разработчика (что врятли, т.к. меньше доверия к приходящим данным).

Предполагается реализация данного функционала в ближайшее время, поэтому проставляю план на v.0.3.

Перевод на AJAX окна редактирования устройства

Необходимо перевести на AJAX как минимум модальное окно редактирования и создания устройства (подтягивать список моделей, список прошивок для закрепления только для этой модели).

Возможно, в каких-то еще окнах потребуется к моменту реализации данной issue.

Ошибка при отдаче прошивки

В случае, если у аппарата прошивка выше, чем есть в базе данных, то на аппарат устанавливается стартовая прошивка - не правильное поведение - необходимо устранить.

Документация по v0.2

В текущей документации необходимы следующие изменения:

  • Добавить информацию о новом разделе системных настроек ( Issue #16 и #28 )
  • Добавить информацию о новом разделе "Справочник" ( Issue #3 )
  • Добавить информацию про настройку номера голосовой почты ( Issue #23 )
  • Добавить подробное описание конфигурационных настроек в группах моделей устройств: что такое, где искать, как заполнять ( Issue #26 )
  • Добавить информацию по чтению логов устройств ( Issue #8 )

Реализовать проверку IP адреса устройства

Необходимо реализовать проверку IP адреса устройства на соответствие адреса в базе данных.

Сделать настройки:

  • "Отвечать на запросы только с указанных в БД IP адресов" - для дополнительной авторизации не только по mac адресу, но и по IP адресу.
  • "Автоматически изменять IP адрес в базе данных при обращении с нового адреса" - будет полезно в случае динамических IP адресов у устройств.

Реализация API для доступа к различной информации GRCentral

Необходимо реализовать API для доступа к информации, хранящейся в базе GRCentral:

  • Получение справочника (полностью)
  • Получение информации о контакте из справочника по номеру телефона
  • Получение списка устройств
  • Получение информации об устройстве по IP адресу/MAC адресу
  • Получение списка моделей устройств
  • Логирование всех запросов API
  • Возможность отключения API
  • Реализация доступа по ключу

Предполагается работа с помощью автоматически генерируемых ключей с возможностью ограничения работы только с определенного IP адреса, а так же ограничением сервисов, доступных по API для каждого ключа.

Подробная информация по всем запросам в wiki проекта: API

Телефон => Устройство

Уходим от понятия "телефон" и приходим к понятию "устройство". С сервером GRCentral могут работать не только телефоны, но и другие устройства Grandstream.

  • Изменить lang-файлы
  • Изменить названия моделей
  • Изменить названия контроллеров
  • Изменить названия вьюшек

Реализовать авторизацию

Необходимо реализовать авторизацию в web-интерфейсе. Скорее всего будет достаточным просто пары login/password без возможности управления несколькими пользователями.

Флаг "Собственные параметры"

Необходимо добавить флажок в список девайсов, сигнализирующий о том, что у определенного девайса есть собственные параметры, которые перезаписывают общие параметры, заданные данной модели устройств.

SIP аккаунт остается подключенным, если в GRCentral удалена информация о нем

Найдена небольшая недоработка. Если в GRCentral не настроен SIP аккаунт, а на телефоне он был настроен вручную или до подключения к GRCentral, то аккаунт не перезапишется. Необходимо исправить эту проблему. Например отправлять в конфиг принудительные коды отключения аккаунтов, если они не настроены в интерфейсе.

Расширенная работа с прошивками аппаратов

Необходимо реализовать возможность выбора прошивки у аппарата, даже если прошивка отключена.
Для чего? Чтобы можно было обкатывать новые прошивки только на указанных аппаратах.

Что для этого нужно:

  • Добавить поле выбора прошивки при редактировании аппарата из списка прошивок, даже если прошивка не активна.
  • Добавить какое-то обозначение, что прошивка зафиксирована в списке аппаратов
  • Добавить обработку версии в контроллер provisioning для отдачи только выбранной прошивки
  • Добавить возможность включения/отключения скачивания прошивок для не добавленных и не активированных аппаратов

Управление рингтонами

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

Редактирование устройства на странице информации

Необходимо реализовать редактирование устройства не только на странице списка, но и на странице информации.

Как вариант - чтобы не дублировать код, модальку и JS код вынести в отдельную вьюху и подключать непосредственно во вьюхе функции.

Вынести настройки из конфигов в базу и web

Отказаться от конфига grcentral.php и перенести настройки в базу. Вынести страницу настроек системы где-то в интерфейсе.

Так же, хотелось бы рулить штатными (необходимыми Codeigniter'у - файл config.php) настройками из панельки, минимизируя хождения по конфигам при настройке и эксплуатации.

Отдельные параметры для каждого телефона

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

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

Счетчик прошивок

В списке прошивок добавить отображение счетчика "на скольких аппаратах установлена данная версия"

Подгрузка логов обращений устройства через ajax

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

Интеграция с другими вендорами (не только Grandstream)

Необходимо рассмотреть возможность интеграции системы с другими вендорами, как например: Yealink, Fanvil.
На данный момент это является проблемой, т.к. нет аппаратов для тестирования.
В теории же, можно было бы реализовать.

Закидываю в период "v.0.XXX (Future)", т.е. в дальнюю коробку.

Инсталлятор

Необходим автоматический инсталлятор панели управления.

Девайс не обновляется на закрепленную прошивку

Обнаружена ошибка, при которой девайс не может обновиться на новую версию отключенной закрепленной прошивки в случае, если "Предыдущая версия" отлична от версии девайса. GRCentral, в данном случае, отдает ошибку 404.

Обновление документации и выпуск релиза 0.3

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.