forum.bitel.ru http://forum.bitel.ru/ |
|
Взять параметр сервиса-родителя в параметрах конфигурации http://forum.bitel.ru/viewtopic.php?f=44&t=10834 |
Страница 1 из 1 |
Автор: | Iriskin0 [ 28 авг 2015, 11:53 ] |
Заголовок сообщения: | Взять параметр сервиса-родителя в параметрах конфигурации |
Модули - передача айпи трафика - устройства и ресурсы - библиотека - устройство. Имеется сервис, который является дочерним по отношению к другому. Как в конфигурации устройства обозначается айпи родительского сервиса? В вики нашел что-то похожее, но не понял как использовать: Цитата: Значение конфигурации активной опции, которая является дочерней по отношению к опции 5 (если такая опция есть и активна). Если активной опции, дочерней к опции 5, нет или в ее конфигурации не указан параметр speed= то берется значение по умолчанию:
sa.command.serv.enable=set_speed=$param($option(5),speed,100) |
Автор: | PavelGloba [ 02 сен 2015, 14:54 ] |
Заголовок сообщения: | Re: Взять параметр сервиса-родителя в параметрах конфигураци |
Подпишусь. Непонятно как создавать сервисы на устройствах клиентам, у которых несколько ipадресов (чтобы их по неким параметрам можно было привязать к родительскому ip на устройстве). |
Автор: | Amir [ 02 сен 2015, 16:05 ] |
Заголовок сообщения: | Re: Взять параметр сервиса-родителя в параметрах конфигураци |
При синхронизации в ServiceActivator всегда передается родительский сервис Inet со списком дочерних. AbstractTerminalServiceActivator в данный момент не умеет работать с дочерними сервисами. Опишите, какие команды нужно выполнять для дочерних сервисов и в каком контексте, чтобы мы постарались сделать как можно более универсально. |
Автор: | PavelGloba [ 03 сен 2015, 16:37 ] |
Заголовок сообщения: | Re: Взять параметр сервиса-родителя в параметрах конфигураци |
Проверил как сейчас все устроено. Telnet service activator знать не знает ничего про дочерний сервис и все, что с ним связано. Я создал настройки отдельно для дочернего типа сервиса, но биллинг их не использует. Вместо этого он удаляет и заново создает на устройствах родительский сервис. Хотелось бы чтобы можно было делать с дочерним сервисом всё то, что можно и с родительским + чтобы при этом с родительским сервисом на устройствах ничего не происходило (как с полноценным отдельным типом сервиса) +чтобы можно было использовать параметры родительского сервиса. Например, чтобы в переменные $ip, $mask итп подставлялись адреса дочернего сервиса, но чтобы при этом можно было использовать переменные родительского, например так $parentIp Либо наоборот, оставить существующие переменные как есть сейчас, но добавить переменные дочернего $childIP / mask/ etc |
Автор: | PavelGloba [ 20 июл 2018, 01:20 ] |
Заголовок сообщения: | Re: Взять параметр сервиса-родителя в параметрах конфигураци |
Добрый день. Что-нибудь из этого или что-то похожее появлялось в функционале? (я давно не следил за обновлениями) |
Автор: | PavelGloba [ 20 июл 2018, 02:22 ] |
Заголовок сообщения: | Re: Взять параметр сервиса-родителя в параметрах конфигураци |
Вижу в доке некий loop() и тему на форуме https://forum.bitel.ru/viewtopic.php?f= ... 2&start=30 Но что-то непонятно как это использовать. |
Автор: | Amir [ 20 июл 2018, 18:57 ] |
Заголовок сообщения: | Re: Взять параметр сервиса-родителя в параметрах конфигураци |
https://docs.bitel.ru/pages/viewpage.ac ... =119506096 https://forum.bitel.ru/viewtopic.php?f= ... 70#p106784 |
Автор: | PavelGloba [ 20 июл 2018, 19:44 ] |
Заголовок сообщения: | Re: Взять параметр сервиса-родителя в параметрах конфигураци |
Спасибо за примеры с форума. Попробую - отпишусь. |
Автор: | PavelGloba [ 21 июл 2018, 23:32 ] |
Заголовок сообщения: | Re: Взять параметр сервиса-родителя в параметрах конфигураци |
Работает как-то странно, и проблема, кажется, не в loop, а в самом модуле inet Код: Сервер: вер. 7.0.1394 / 10.07.2018 18:53:47 os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45 inet: вер. 7.0.918 / 12.07.2018 11:28:02 Делаю устройство, которое пишет команды в файл Код: sa.terminal.protocol=ssh sa.terminal.endSequence=$ sa.terminal.lazyConnect=0 sa.terminal.connect=echo "=======================================" >> qwe/billing_test sa.terminal.disconnect=echo "=======================================" >> qwe/billing_test sa.terminal.exit=exit sa.terminal.set.cmd3.servTypeIds=3 m_addLoop=echo "${now()} add child ${ip()}" >> qwe/billing_test m_removeLoop=echo "${now()} remove child ${ip()}" >> qwe/billing_test sa.terminal.set.cmd3.serv.create.1=echo "${now()} add parent ${ip()}" >> qwe/billing_test sa.terminal.set.cmd3.serv.create.2=${loopServ('m_addLoop', false, true)} sa.terminal.set.cmd3.serv.cancel.1=echo "${now()} remove parent ${ip()}" >> qwe/billing_test sa.terminal.set.cmd3.serv.cancel.2==${loopServ('m_removeLoop', false, true)} sa.commandSet.cmd3.serv.enable.1= sa.commandSet.cmd3.serv.enable.2= sa.commandSet.cmd3.serv.disable.1= sa.commandSet.cmd3.serv.disable.2= Использую вот такой основной сервис: И вот такой дочерний Добавляю сервис с адресом 10.0.14.100 на договор: Код: ======================================= Sat Jul 21 20:13:36 MSK 2018 add parent 10.0.14.100 ======================================= Добавляю дочерний сервис 10.0.14.101: Код: ======================================= Sat Jul 21 20:13:52 MSK 2018 remove parent 10.0.14.100 Sat Jul 21 20:13:53 MSK 2018 add parent 10.0.14.100 Sat Jul 21 20:13:53 MSK 2018 add child 10.0.14.101 ======================================= Удаляю дочерний сервис через "Удалить (принудительно)" Код: ======================================= Sat Jul 21 20:14:03 MSK 2018 remove parent 10.0.14.100 Sat Jul 21 20:14:03 MSK 2018 remove child 10.0.14.101 Sat Jul 21 20:14:03 MSK 2018 add parent 10.0.14.100 ======================================= Добавляю новый дочерний сервис с адресом 10.0.14.102 (пока всё ок) Код: ======================================= Sat Jul 21 20:14:18 MSK 2018 remove parent 10.0.14.100 Sat Jul 21 20:14:18 MSK 2018 add parent 10.0.14.100 Sat Jul 21 20:14:18 MSK 2018 add child 10.0.14.102 ======================================= Нажимаю "Синхронизировать (отладка)" и всплывает старый адрес Код: ======================================= Sat Jul 21 20:14:42 MSK 2018 remove parent 10.0.14.100 Sat Jul 21 20:14:42 MSK 2018 remove child 10.0.14.101 Sat Jul 21 20:14:42 MSK 2018 remove child 10.0.14.102 Sat Jul 21 20:14:43 MSK 2018 add parent 10.0.14.100 Sat Jul 21 20:14:43 MSK 2018 add child 10.0.14.101 Sat Jul 21 20:14:43 MSK 2018 add child 10.0.14.102 ======================================= Удаляю сервис полностью: Код: ======================================= Sat Jul 21 20:15:00 MSK 2018 remove parent 10.0.14.100 Sat Jul 21 20:15:00 MSK 2018 remove child 10.0.14.102 ======================================= Если насоздавать дочерних сервисов, а потом их все удалить и сделать синхронизацию, то они все добавятся заново. |
Автор: | Amir [ 23 июл 2018, 18:47 ] |
Заголовок сообщения: | Re: Взять параметр сервиса-родителя в параметрах конфигураци |
Удалить (принудилельно) нельзя использовать при обычной работе. Как и пункты "Отладка". |
Автор: | PavelGloba [ 25 июл 2018, 03:32 ] |
Заголовок сообщения: | Re: Взять параметр сервиса-родителя в параметрах конфигураци |
Окей, усложним. Код: m_addLoop=echo "${now()} add child ${ip()}" >> qwe/billing_test m_removeLoop=echo "${now()} remove child ${ip()}" >> qwe/billing_test m_enableLoop=echo "${now()} enable child ${ip()}" >> qwe/billing_test m_disableLoop=echo "${now()} disable child ${ip()}" >> qwe/billing_test m_modifyLoop=echo "${now()} modify child ${ip()}" >> qwe/billing_test sa.terminal.set.cmd3.serv.create.1=echo "${now()} add parent ${ip()}" >> qwe/billing_test sa.terminal.set.cmd3.serv.create.2=${loopServ('m_addLoop', false, true)} sa.terminal.set.cmd3.serv.cancel.1=echo "${now()} remove parent ${ip()}" >> qwe/billing_test sa.terminal.set.cmd3.serv.cancel.2=${loopServ('m_removeLoop', false, true)} sa.terminal.set.cmd3.serv.modify.enable.1=echo "${now()} enable parent ${ip()}" >> qwe/billing_test sa.terminal.set.cmd3.serv.modify.enable.2=${loopServ('m_enableLoop', false, true)} sa.terminal.set.cmd3.serv.modify.disable.1=echo "${now()} disable parent ${ip()}" >> qwe/billing_test sa.terminal.set.cmd3.serv.modify.disable.2=${loopServ('m_disableLoop', false, true)} sa.terminal.set.cmd3.serv.modify.1=echo "${now()} modify parent ${ip()}" >> qwe/billing_test sa.terminal.set.cmd3.serv.modify.2=${loopServ('m_modifyLoop', false, true)} Добавляю основной и дочерний сервисы 10.0.14.100 и 10.0.14.101 Код: ======================================= Wed Jul 25 00:11:42 MSK 2018 add parent 10.0.14.100 Wed Jul 25 00:11:42 MSK 2018 enable parent 10.0.14.100 ======================================= ======================================= Wed Jul 25 00:12:09 MSK 2018 disable parent 10.0.14.100 Wed Jul 25 00:12:09 MSK 2018 remove parent 10.0.14.100 Wed Jul 25 00:12:09 MSK 2018 add parent 10.0.14.100 Wed Jul 25 00:12:09 MSK 2018 add child 10.0.14.101 Wed Jul 25 00:12:09 MSK 2018 enable parent 10.0.14.100 Wed Jul 25 00:12:09 MSK 2018 enable child 10.0.14.101 ======================================= Ставлю дочернему сервису сегодняшнюю дату окончания (если закрывать вчерашней и более ранними датами, поведение такое же). На сколько я понял из предыдущих тем, биллинг не умеет следить за периодами дочерних сервисов, но не понятно, почему он при этом пересоздаёт оба сервиса заново. Код: ======================================= Wed Jul 25 00:12:40 MSK 2018 disable parent 10.0.14.100 Wed Jul 25 00:12:40 MSK 2018 disable child 10.0.14.101 Wed Jul 25 00:12:40 MSK 2018 remove parent 10.0.14.100 Wed Jul 25 00:12:40 MSK 2018 remove child 10.0.14.101 Wed Jul 25 00:12:40 MSK 2018 add parent 10.0.14.100 Wed Jul 25 00:12:40 MSK 2018 add child 10.0.14.101 Wed Jul 25 00:12:41 MSK 2018 enable parent 10.0.14.100 Wed Jul 25 00:12:41 MSK 2018 enable child 10.0.14.101 ======================================= Удаляю дочерний сервис 10.0.14.101 не принудительно Код: ======================================= Wed Jul 25 00:13:04 MSK 2018 disable parent 10.0.14.100 Wed Jul 25 00:13:04 MSK 2018 disable child 10.0.14.101 Wed Jul 25 00:13:04 MSK 2018 remove parent 10.0.14.100 Wed Jul 25 00:13:04 MSK 2018 remove child 10.0.14.101 Wed Jul 25 00:13:04 MSK 2018 add parent 10.0.14.100 Wed Jul 25 00:13:04 MSK 2018 enable parent 10.0.14.100 ======================================= Добавляю новый дочерний сервис 10.0.14.102 Код: ======================================= Wed Jul 25 00:13:22 MSK 2018 disable parent 10.0.14.100 Wed Jul 25 00:13:22 MSK 2018 remove parent 10.0.14.100 Wed Jul 25 00:13:22 MSK 2018 add parent 10.0.14.100 Wed Jul 25 00:13:22 MSK 2018 add child 10.0.14.102 Wed Jul 25 00:13:22 MSK 2018 enable parent 10.0.14.100 Wed Jul 25 00:13:22 MSK 2018 enable child 10.0.14.102 ======================================= Увожу баланс в минус, чтобы сервис отключился за неуплату и... откуда тут удалённый сервис? Код: ======================================= Wed Jul 25 00:18:22 MSK 2018 modify parent 10.0.14.100 Wed Jul 25 00:18:22 MSK 2018 modify child 10.0.14.101 Wed Jul 25 00:18:22 MSK 2018 modify child 10.0.14.102 Wed Jul 25 00:18:22 MSK 2018 disable parent 10.0.14.100 Wed Jul 25 00:18:22 MSK 2018 disable child 10.0.14.101 Wed Jul 25 00:18:22 MSK 2018 disable child 10.0.14.102 ======================================= Если добавить денег на счёт, то включается тоже всё, в т.ч. и удалённый сервис Код: =======================================
Wed Jul 25 00:27:51 MSK 2018 enable parent 10.0.14.100 Wed Jul 25 00:27:51 MSK 2018 enable child 10.0.14.101 Wed Jul 25 00:27:51 MSK 2018 enable child 10.0.14.102 Wed Jul 25 00:27:51 MSK 2018 modify parent 10.0.14.100 Wed Jul 25 00:27:51 MSK 2018 modify child 10.0.14.101 Wed Jul 25 00:27:51 MSK 2018 modify child 10.0.14.102 ======================================= |
Автор: | PavelGloba [ 31 июл 2018, 14:00 ] |
Заголовок сообщения: | Re: Взять параметр сервиса-родителя в параметрах конфигураци |
Получается, что даже при штатной работе всплывают удалённые адреса. Подскажите, в 7.1 оно так же работает? |
Автор: | PavelGloba [ 14 авг 2018, 01:35 ] |
Заголовок сообщения: | Re: Взять параметр сервиса-родителя в параметрах конфигураци |
up |
Автор: | PavelGloba [ 26 авг 2018, 23:31 ] |
Заголовок сообщения: | Re: Взять параметр сервиса-родителя в параметрах конфигураци |
up |
Автор: | Amir [ 28 авг 2018, 20:17 ] |
Заголовок сообщения: | Re: Взять параметр сервиса-родителя в параметрах конфигураци |
Завтра выложим обновление |
Автор: | Amir [ 29 авг 2018, 16:09 ] |
Заголовок сообщения: | Re: Взять параметр сервиса-родителя в параметрах конфигураци |
Выложили |
Автор: | PavelGloba [ 30 авг 2018, 22:39 ] |
Заголовок сообщения: | Re: Взять параметр сервиса-родителя в параметрах конфигураци |
gracias |
Автор: | PavelGloba [ 16 сен 2018, 06:12 ] |
Заголовок сообщения: | Re: Взять параметр сервиса-родителя в параметрах конфигураци |
Обновился. Перекопилировал классы. Не изменилось абсолютно ничего. Сервер: вер. 7.0.1409 / 03.09.2018 20:20:58 inet: вер. 7.0.933 / 03.09.2018 20:21:11 |
Автор: | PavelGloba [ 28 сен 2018, 03:26 ] |
Заголовок сообщения: | Re: Взять параметр сервиса-родителя в параметрах конфигураци |
up |
Автор: | PavelGloba [ 22 окт 2018, 18:26 ] |
Заголовок сообщения: | Re: Взять параметр сервиса-родителя в параметрах конфигураци |
up |
Автор: | PavelGloba [ 01 ноя 2018, 14:55 ] |
Заголовок сообщения: | Re: Взять параметр сервиса-родителя в параметрах конфигураци |
Подскажите, ждать фикса или не ждать и делать свой костыль? |
Автор: | Amir [ 04 ноя 2018, 21:46 ] |
Заголовок сообщения: | Re: Взять параметр сервиса-родителя в параметрах конфигураци |
Сама синхронизация отрабатывает вроде бы правильно. Проблема здесь в том что биллинг дает удалить дочерний сервис, закрытый сегодняшним днем (точнее не проверяет, что период дочернего сервиса закрыт). Если сервис/договор/тариф закрыт сегодняшним днем - он всё еще действует. Т.е. если закрыть сегодняшним числом, то видно, что при синхронизации данный дочерний сервис всё еще присутствует. А если же закрыть вчерашним числом - то отрабатывает так, как ожидаете. |
Автор: | PavelGloba [ 05 ноя 2018, 06:33 ] |
Заголовок сообщения: | Re: Взять параметр сервиса-родителя в параметрах конфигураци |
Хм, действительно. С этим уже можно работать. |
Автор: | Amir [ 05 ноя 2018, 23:48 ] |
Заголовок сообщения: | Re: Взять параметр сервиса-родителя в параметрах конфигураци |
Выложили обновление, теперь ругается при попытке удалить дочерний сервис с открытым периодом. |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |