Aculeasis/mdmTerminal2

double 'ip' in config.ini

lanket opened this issue · 8 comments

[settings]
.....
# IP терминала, определяется автоматически при первом запуске.
# Используется только для проговаривания.
ip = 
[mpd]
......
# ip и порт сервера
ip = 127.0.0.1

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

Анологично:

[majordomo]
.....
# IP сервера majordomo, нужен для отправки команд.
# Пока он не задан терминал будет проговаривать свой IP при старте.
ip = 192.168.1.197

Переименовать в ip_majordomo

Опция "speaker"
тески в Yandex и aws
Аналогично speaker_aws и speaker_yandex

Раздел rhvoice-rest
speaker => speaker_rhvoice_rest
server => server_rhvoice_rest

Раздел rhvoice
speaker => speaker_rhvoice

Раздел pocketsphinx-rest
server => server_pocketsphinx_rest

Теперь я понял что ты имел ввиду :

Параметры для других секций лучше всего присылать во вложенных json, например:

settings:{"proxy": {"enable": "1"}}

Они нормально парсятся. Терминал принимает любые параметры, но не принимает несуществующие секции.
Установку server для локальных провайдеров можно через ключи сделать.
@Aculeasis Aculeasis referenced this issue 27 days ago
Closed
Список команд требуемых от модуля #2
@Aculeasis
Aculeasis commented 24 days ago

Еще можно отправлять {"majordomo": {"terminal": "sysname"}}, как я понял если в запросе задано системное имя терминала то и ответ придет на тот же терминал.

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

Дай знать, как поступить.

Конечно, лучше если настройки будут приходить в своих подсекциях.

А вообще можешь присылать с префиксами. Я при разборе замаплю их куда надо, как сейчас переношу ip_server в [majordomo] ip:

    # Автоматически переносим ключи в подсекции из settings.
    # Ключ: (новая секция, новое имя ключа)
    KEY_MOVE = {
        'ip_server': ('majordomo', 'ip'),
        'linkedroom': ('majordomo', ''),
    }

Добавлю туда server_rhvoice_rest, server_pocketsphinx_rest и т.д. Только список всех ключей надо.

Учитывая что маппинг уже есть и делается одной строчкой, зачем переименовывать параметры в конфиге?

Тогда предлагаю прийти к шаблону мапинга для всех параметров как выход:
(ключ)-(секция)
Обращаю внимание на разделитель тире а не подчёркивание чтобы не было путаницы в таких параметрах:

secret_access_key_aws
server_rhvoice_rest

В именах секций вместо - идет 0, вроде все ок.