Реализация шлюзов на BeanShell,примеры стандартных и других шлюзов

Материал из BiTel WiKi

(Различия между версиями)
Перейти к: навигация, поиск
 
(29 промежуточных версий не показаны.)
Строка 1: Строка 1:
 +
Логика управления шлюзами настраивается на вкладке "Типы шлюзов" модуля IPN.
 +
 +
Здесь описано как реализовывать шлюзы с помощью языка Beanshell. И есть примеры реализации.   
Здесь описано как реализовывать шлюзы с помощью языка Beanshell. И есть примеры реализации.   
Возможность создавать скриптовые шлюзы появилась в версии 4.5 .  
Возможность создавать скриптовые шлюзы появилась в версии 4.5 .  
-
 
-
В конфигурации типов шлюзов вы можете указывать например :
 
-
 
-
<source lang="bash">
 
-
user_rule.editor.class=bitel.billing.module.services.ipn.editor.ManadContractRuleEditor
 
-
gate_manager.class=bitel.billing.server.ipn.ManadGateWorker
 
-
</source>
 
-
 
-
Здесь user_rule.editor.class  - это класс, который отображает редактор шлюза в клиенте биллинга и сохрянет данные шлюза .Вы можете поставить  один из стандартных классов(указаны в докуменатции в соотвествующих главах) либо поставить user_rule.editor.class.EmptyContractRuleEditor, если реадактировать шлюз не нужно в договоре.
 
-
gate_manager.class - это класс , осуществляющий взаимодействие со шлюзом на стороне сервера биллинга. Именно логику этого класса мы и подменяем своим скриптовым шлюзом. На вкладке "Скрипт" при редактировании типа шлюза  задается скрипт BeanShell . В нем должна быть обязательно реализована функция doSync() именно она и отвечает  за взаимодействие со шлюзом. Вот код минимального шлюза:
 
-
 
-
<source lang="java">
 
-
protected void doSync()
 
-
{
 
-
 
-
}
 
-
</source>
 
-
 
-
 
-
 
-
Вы можете указать user_rule.editor.class=bitel.billing.server.ipn.EmptyGateWorker. Но если вы подменяете логику работы одного из стандартных шлюзов, то желательно указывать класс этого шлюза, т.к. логика его работы будет подменена , но есть еще другие правила, например в случае сложных иерархических шлюзов производится синхронизация с родителським шлюзом и она пока не может быть реализована скриптовым шлюзом.
 
-
 
-
В В конфигурации типа шлюза надо задать строку :
 
-
<source lang="bash">
 
-
use.script=1
 
-
</source>
 
==Стандартные шлюзы==
==Стандартные шлюзы==
-
*[[Реализация стандартного шлюза Manad на Beanshell]]
+
*[[Реализация стандартного шлюза Manad на BeanShell]]
-
*[[Реализация стандартного шлюза Cisco на Beanshell]]
+
*[[Реализация стандартного шлюза Cisco на BeanShell]]
-
*[[Реализация стандартного шлюза Mikrotik на Beanshell]]
+
*[[Реализация стандартного шлюза Mikrotik на BeanShell]]
-
*[[Реализация стандартного шлюза Cisco2 на Beanshell]]
+
*[[Реализация стандартного шлюза Cisco2 на BeanShell]]
-
*[[Реализация стандартного шлюза коммутатора Zyxel (под Cisco2) на Beanshell]]
+
*[[Реализация стандартного шлюза коммутатора Zyxel (под Cisco2) на BeanShell]]
 +
*[[Реализация стандартного шлюза BGRadiusIPN]]
 +
*[[Реализация стандартного шлюза DHCP]]
 +
*[[Реализация стандартного шлюза Switch]]
 +
*[[Реализация стандартного шлюза Mikrotik на BeanShell c управлением по ssh (версия 5.1 ) ]]
 +
*[[Реализация стандартного шлюза Mikrotik на BeanShell c управлением по telnet (версия 5.1 ) ]]
 +
*[[Реализация стандартного шлюза коммутатора Qtech/Zyxel (под Cisco2) на BeanShell со встроенным шлюзом DHCP]]
==Примеры шлюзов ==
==Примеры шлюзов ==
*[[Реализация шлюза коммутатора Dlink (под Cisco2)  на Beanshell]]
*[[Реализация шлюза коммутатора Dlink (под Cisco2)  на Beanshell]]
*[[Реалиазация скриптовго шлюза для коммутаторов DES-3526, DES-3550, DES-3828, DES-3852,  DGS-3200-10 и им подобных]]
*[[Реалиазация скриптовго шлюза для коммутаторов DES-3526, DES-3550, DES-3828, DES-3852,  DGS-3200-10 и им подобных]]
 +
*[[Модифицированный скриптовый шлюз для DES-3526 и подобных]]
 +
*[[Реализация стандартного шлюза Cisco на BeanShell c управлением по telnet]]
 +
*[[Пример 1. реализации шлюза Cisco на BeanShell c управлением ssh]]
 +
*[[Реализация связки Dlink DGS-3610-26G + DES-1228G(vlan на клиента) на основе схемы Cisco2 + Zyxel ( DGS-3610-26G + DES-1228G )]]
 +
*[[Управление ipfw tables через telnet]]
 +
*[[Пример 3. реализации шлюза Cisco2 на BeanShell c управлением telnet]]
 +
*[[Реализация шлюза EdgeCore]]
 +
*[[Manad и DHCP совместная работа]]
 +
*[[Шлюз Mikrotik, отрабатывающий изменения правил на договоре ]]
 +
*[[Шлюз Mikrotik, отрабатывающий изменения скорости(Вариант 2) ]]
 +
*[[Шлюз Cisco2, учитывающий периоды действия дипазонов  ]]
 +
*[[Пример связки D-Link + DHCP Opt.82 + Manad ]]
 +
*[[Шлюз Mikrotik, работающий с помощью Mikrotik API Client ]]
 +
*[[Стандартный шлюз Cisco  с управлением по telnet, учитывающий периоды действия диапазонов  ]]
 +
 +
==Библиотеки скриптов для шлюзов ==
 +
*[[ Реализация функций формирований правил -ManadUtils]]
 +
*[[ Реализация функций формирований команд: GateCommandUtil]]

Текущая версия на 04:34, 11 апреля 2013

Логика управления шлюзами настраивается на вкладке "Типы шлюзов" модуля IPN.


Здесь описано как реализовывать шлюзы с помощью языка Beanshell. И есть примеры реализации.

Возможность создавать скриптовые шлюзы появилась в версии 4.5 .

Стандартные шлюзы

Примеры шлюзов

Библиотеки скриптов для шлюзов

Личные инструменты