BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 19 май 2024, 04:36

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 11 ] 
Автор Сообщение
СообщениеДобавлено: 06 фев 2017, 09:58 
Не в сети
Клиент

Зарегистрирован: 12 мар 2012, 11:50
Сообщения: 85
Карма: 0
Сейчас имеем: уникальные статичные ip+netfow, телнет активатор который выполняет команды на одной железке и использует для команд ip и vlan.
Поставили задачу сделать автоматическую зарезку скорости и настройки железки на доме.
Как в биллинге правильней реализовать:
1 железка: vlan+port
2 железка: ip+vlan
3 железка ip+vlan
Я вижу два выхода:
1) Несколько шлюзов на договор, но возникает проблема с тем как получить ip адрес из другого шлюза т.к. ip у нас уникальные
2) Использовать AbstractTerminalServiceActivator и в нем после выполнения команд на 1-ой железке, подключаться ко 2 и 3 железке, но пока не могу понять как.
Собственно вопрос как у кого реализовано и как лучше? Я все таки склоняюсь ко 2-ому варианту, если кто то делал - можно примерчик.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 06 фев 2017, 13:25 
Не в сети
Клиент

Зарегистрирован: 09 фев 2011, 15:28
Сообщения: 1092
Карма: 135
Железки должны быть выстроены в дереве устройств, т.е. 3-корневая, у неё дочерняя-2, а у неё еще дочерняя-1. Сервис привязывается к 1, у каждой железки свой набор команд. При изменении сервиса InetAccess дернет все железки, на одной откроет доступ, на другой зарежет скорость, на 3й еще чего там. Может у вас как-то по другому это выглядит, но суть вот такая.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 07 фев 2017, 08:19 
Не в сети
Клиент

Зарегистрирован: 12 мар 2012, 11:50
Сообщения: 85
Карма: 0
С этим вроде разобрался, но в такой схеме вылезла другая проблема.
Вот как настроил:
Изображение
cisco и speed_1 имеют разные типы устройств и разные типы сервисов
Конфигурация cisco:
Код:
#Команды создания сервиса на устройстве.
sa.command.serv.create.1=vlan database
sa.command.serv.create.2=vlan $vlan
sa.command.serv.create.3=exit
sa.command.serv.create.4=interface fe$port
sa.command.serv.create.5=no shutdown
sa.command.serv.create.6=switchport mode access
sa.command.serv.create.7=switchport access vlan $vlan
sa.command.serv.create.8=exit
sa.command.serv.create.9=interface ge3
sa.command.serv.create.10=switchport trunk allowed vlan add $vlan
sa.command.serv.create.11=exit
#Команды удаления сервиса с устройства.
sa.command.serv.cancel.1=interface fe$port
sa.command.serv.cancel.2=switchport access vlan 999
sa.command.serv.cancel.3=shutdown
sa.command.serv.cancel.4=exit

Конфигурация speed:
Код:
#speedRate=set speed=$param($option,al,100)
#sa.command.inetOption.1.enable=$macros($param(speedRate))
sa.command.inetOption.1.enable=set speed=$param($option,al,100)
sa.command.inetOption.2.enable=set speed=$param($option,al,100)
sa.command.inetOption.3.enable=set speed=$param($option,al,100)
sa.command.inetOption.4.enable=set speed=$param($option,al,100)
sa.command.inetOption.5.enable=set speed=$param($option,al,100)
sa.command.inetOption.6.enable=set speed=$param($option,al,100)
sa.command.inetOption.7.enable=set speed=$param($option,al,100)
sa.command.inetOption.8.enable=set speed=$param($option,al,100)
sa.command.inetOption.9.enable=set speed=$param($option,al,100)
sa.command.inetOption.10.enable=set speed=$param($option,al,100)
sa.command.inetOption.11.enable=set speed=$param($option,al,100)
sa.command.inetOption.12.enable=set speed=$param($option,al,100)
sa.command.inetOption.13.enable=set speed=$param($option,al,100)
sa.command.inetOption.14.enable=set speed=$param($option,al,100)
sa.command.inetOption.15.enable=set speed=$param($option,al,100)
sa.command.inetOption.16.enable=set speed=$param($option,al,100)
sa.command.inetOption.17.enable=set speed=$param($option,al,100)
sa.command.inetOption.18.enable=set speed=$param($option,al,100)
sa.command.inetOption.19.enable=set speed=$param($option,al,100)
sa.command.inetOption.20.enable=set speed=$param($option,al,100)
sa.command.inetOption.21.enable=set speed=$param($option,al,100)
sa.command.inetOption.22.enable=set speed=$param($option,al,100)
sa.command.inetOption.23.enable=set speed=$param($option,al,100)

Тарифный план:
Изображение
Вроде бы все хорошо, но set speed выполняется как на speed, так и на cisco.
Если в тарифном дереве делать фильтр по типу сервиса - вообще не выполняются команды speed
И может быть есть вариант как заменить sa.command.inetOption.1.enable=set speed=$param($option,al,100)
на что то попроще, что бы не указывать все опции....
Версия:
Изображение


Последний раз редактировалось SeGa 07 фев 2017, 08:26, всего редактировалось 2 раз(а).

Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 07 фев 2017, 08:19 
Не в сети
Клиент

Зарегистрирован: 12 мар 2012, 11:50
Сообщения: 85
Карма: 0
дубль


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 07 фев 2017, 08:36 
Не в сети
Клиент

Зарегистрирован: 09 фев 2011, 15:28
Сообщения: 1092
Карма: 135
это все потому, что cisco наследует конфиг speed-а. При открытом кофиге справа вверху есть кнопка [Текущая конфигурация]. Команды обычно выносят в тип устройства, чтобы не прописывать на каждом экземпляре, а на самом устройстве пишут только различающиеся параметры. Если оставлять как есть, то для speed вместо кучи пишем общую для всех опций команду
Код:
sa.command.common.inetOption.enable=set speed=$param($option,al,100)

а на cisco делаем её пустой.
Код:
sa.command.common.inetOption.enable=


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 07 фев 2017, 09:18 
Не в сети
Клиент

Зарегистрирован: 12 мар 2012, 11:50
Сообщения: 85
Карма: 0
barguzin2 писал(а):
это все потому, что cisco наследует конфиг speed-а. При открытом кофиге справа вверху есть кнопка [Текущая конфигурация]. Команды обычно выносят в тип устройства, чтобы не прописывать на каждом экземпляре, а на самом устройстве пишут только различающиеся параметры. Если оставлять как есть, то для speed вместо кучи пишем общую для всех опций команду
Код:
sa.command.common.inetOption.enable=set speed=$param($option,al,100)

а на cisco делаем её пустой.
Код:
sa.command.common.inetOption.enable=

sa.command.common.inetOption.enable=set speed=$param($option,al,100) не выполняется


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 07 фев 2017, 10:59 
Не в сети
Клиент

Зарегистрирован: 09 фев 2011, 15:28
Сообщения: 1092
Карма: 135
Остальные sa.command.inetOption.X.enable убрали? Конфигурацию перечитывали? AbstractTerminalServiceActivator актуальный? Должно быть в нем
Код:
String [] servOptionCommonEnableCommands = parseCommands( config, prefix + "common.inetOption.enable", null );
String [] servOptionCommonDisableCommands = parseCommands( config, prefix + "common.inetOption.disable", null );

У меня работает такая конструкция, тут уже у себя копайте.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 07 фев 2017, 11:16 
Не в сети
Клиент

Зарегистрирован: 12 мар 2012, 11:50
Сообщения: 85
Карма: 0
Версия 6.1.818, таких строчек нету, обновлять не вариант(


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 07 фев 2017, 12:52 
Не в сети
Клиент

Зарегистрирован: 09 фев 2011, 15:28
Сообщения: 1092
Карма: 135
всё и не надо обновлять, возьмите из пакета модуля inet AbstarctTermialServiceActivator и Telnet, вставьте в дин.код и скомпилируйте.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 08 фев 2017, 21:52 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Чтобы не использовались команды из родительских конфигов (а использовались только с конфига устройства и типа устройства) нужно указать
sa.config.inherit=0
Изначально сделали, что наследовалось, поэтому по умолчанию так и осталось, но можно это отключить.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 17 фев 2017, 05:19 
Не в сети
Клиент

Зарегистрирован: 12 мар 2012, 11:50
Сообщения: 85
Карма: 0
Вроде бы все хорошо, все работает, но есть одно но.
Делаю синхронизацию сервисов вроде все нормально:
Код:
connection 02-17/08:29:01  INFO [sa-p-12-t-64] ServiceActivatorDeviceWorker - Do task deviceId: 32; Event[ru.bitel.bgbilling.modules.inet.access.sa.event.InetSaDeviceInitEvent] moduleId: 5; pluginId: no; cid: global; scid: -1; userId: 2; deviceId: 32; timestamp: 148728$
connection 02-17/08:29:01  INFO [sa-p-12-t-64] ServiceActivatorDeviceWorker - Do InetSaDeviceInitEvent task, device:32
connection 02-17/08:29:01  INFO [sa-p-12-t-64] ServiceActivatorDeviceWorker - Data ready for device:32. Wait for device not interactive.
connection 02-17/08:29:01  INFO [sa-p-12-t-64] ServiceActivatorDeviceWorker - Adding tasks for device:32.
....................................
connection 02-17/08:29:01  INFO [sa-p-12-t-64] InetSaServModifyEvent - InetServ already in deleted deviceState
connection 02-17/08:29:01  INFO [sa-p-12-t-64] ServiceActivatorDeviceWorker - Do task deviceId: 32; Event[ru.bitel.bgbilling.modules.inet.access.sa.event.InetSaServModifyEvent] moduleId: 5; pluginId: no; cid: 43343; scid: -1; userId: -1; oldInetServ: 1300; newIneServ: null; newInetServState: -1; newInetServOptionList: ; timestamp: 1487284141383
connection 02-17/08:29:01  INFO [sa-p-12-t-64] InetApplication - TariffOptionMap: {}
connection 02-17/08:29:01  INFO [sa-p-12-t-64] InetApplication - OptionSet: [6]
connection 02-17/08:29:01  INFO [sa-p-12-t-64] ServiceActivatorDeviceWorker - Command result event: ServiceActivatorEvent type=3; inetServId: 293; call: false; oldState: 1; newState: -1; oldOptionSet: ; newOptionSet: 6
connection 02-17/08:29:01  INFO [sa-p-12-t-64] ServiceActivatorDeviceWorker - Processing deviceId:32; command ServiceActivatorEvent type=3; inetServId: 293; call: false; oldState: 1; newState: -1; oldOptionSet: ; newOptionSet: 6
connection 02-17/08:29:01  INFO [sa-p-12-t-64] ServiceActivatorSet - Invoking serviceCancel
connection 02-17/08:29:01  INFO [sa-p-12-t-64] AbstractTerminalServiceActivator - switchOptions
.............
connection 02-17/08:29:01  INFO [sa-p-12-t-64] ServiceActivatorDeviceWorker - Process event type[3] result=true
connection 02-17/08:29:01  INFO [sa-p-12-t-64] ServiceActivatorDeviceWorker - Do task deviceId: 32; Event[ru.bitel.bgbilling.modules.inet.access.sa.event.InetSaServModifyEvent] moduleId: 5; pluginId: no; cid: 43343; scid: -1; userId: -1; oldInetServ: null; newInetServ: 1300; newInetServState: 1; newInetServOptionList: ; timestamp: 1487284141383
connection 02-17/08:29:01  INFO [sa-p-12-t-64] InetApplication - TariffOptionMap: {}
connection 02-17/08:29:01  INFO [sa-p-12-t-64] InetApplication - OptionSet: [6]
connection 02-17/08:29:01  INFO [sa-p-12-t-64] ServiceActivatorDeviceWorker - Command result event: ServiceActivatorEvent type=1; inetServId: 293; call: false; oldState: -1; newState: 1; oldOptionSet: ; newOptionSet: 6
connection 02-17/08:29:01  INFO [sa-p-12-t-64] ServiceActivatorDeviceWorker - Processing deviceId:32; command ServiceActivatorEvent type=1; inetServId: 293; call: false; oldState: -1; newState: 1; oldOptionSet: ; newOptionSet: 6
connection 02-17/08:29:01  INFO [sa-p-12-t-64] ServiceActivatorSet - Invoking serviceCreate
.......
connection 02-17/08:29:02  INFO [sa-p-12-t-64] AbstractTerminalServiceActivator - switchOptions
connection 02-17/08:29:02  INFO [sa-p-12-t-64] AbstractTerminalServiceActivator - serviceEnable
connection 02-17/08:29:02  INFO [sa-p-12-t-64] AbstractTerminalServiceActivator - switchOptions
.......


Но после этого происходит следующее и опция отключается:
Код:
mq 02-17/08:32:18  INFO [event-proc-p-2-t-1] InetServRuntimeMap - Caught event: Event[ru.bitel.bgbilling.modules.inet.access.event.InetServDeviceStateAndOptionsModifiedEvent] moduleId: 5; pluginId: no; cid: global; scid: -1; userId: -1; deviceId: 32; inetServId: 298; state: -1000; optionSet: ; timestamp: 1487284338070
connection 02-17/08:32:18  INFO [sa-p-12-t-64] ServiceActivatorDeviceWorker - Do task deviceId: 32; Event[ru.bitel.bgbilling.modules.inet.access.sa.event.InetSaOptionsModifyEvent] moduleId: 5; pluginId: no; cid: 43343; scid: -1; userId: 0; deviceId: 32; inetServId: 293; connectionId: 0; options: ; timestamp: 1487284230217
connection 02-17/08:32:18  INFO [sa-p-12-t-64] ServiceActivatorDeviceWorker - Command result event: ServiceActivatorEvent type=2; inetServId: 293; call: false; oldState: 1; newState: 1; oldOptionSet: 6; newOptionSet:
connection 02-17/08:32:18  INFO [sa-p-12-t-64] ServiceActivatorDeviceWorker - Processing deviceId:32; command ServiceActivatorEvent type=2; inetServId: 293; call: false; oldState: 1; newState: 1; oldOptionSet: 6; newOptionSet:
connection 02-17/08:32:18  INFO [sa-p-12-t-64] ServiceActivatorSet - Invoking serviceModify
connection 02-17/08:32:18  INFO [sa-p-12-t-64] AbstractTerminalServiceActivator - serviceOptionsModify
connection 02-17/08:32:18  INFO [sa-p-12-t-64] AbstractTerminalServiceActivator - switchOptions
connection 02-17/08:32:18  INFO [sa-p-12-t-64] AbstractTerminalServiceActivator - serviceOptionsModify
connection 02-17/08:32:18  INFO [sa-p-12-t-64] AbstractTerminalServiceActivator - switchOptions

Собственно вопрос почему отключается опция на договоре? Опция указана в тарифе.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 11 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
POWERED_BY
Русская поддержка phpBB
[ Time : 0.047s | 37 Queries | GZIP : On ]