2. NET NET
CRM SBC
Central
Design Implement Define
Solution Solution Templates
Add Connect with Monitor
Transactions your CRM the Process
3. *Should be defined per SBC Pair
Design solution
SIP Interface
Network
Interface
Steering Pool
Realm Config
Local Policy
Session
Access Surrogate Session Agent
Control Agent Agent Group
Session
Agent
*Per location configuration
4. Design solution IP Addresses from IP plan, per
SBC Pair!
SIP Interface
Network
Interface
Steering Pool
Realm Config
Local Policy
Session
Access Surrogate Session Agent
Control Agent Agent Group
Session
Agent
5. Design solution
Enterprise ID Provisioning Configuration
IP Addresses Script Templates
ACME NNC
SBC1 SBC2
6. Implement solution
Use Javascript just as easy as ACLI to configure elements.
ACLI Javascript
network-interface device.NetworkInterface.InitData({
name M10 Name: "M10",
sub-port-id 505 SubPortId: „505", //VLAN Id
description ext_SME_VLAN IpAddress: "10.10.10.10",
ip-address 10.10.10.10 Description: " ext_SME_VLAN",
pri-utility-addr 10.10.10.11 UtilityAddress: "10.10.10.11",
sec-utility-addr 10.10.10.12 SecondUtilityAddress: "10.10.10.12",
netmask 255.255.255.240 Netmask: „255.255.255.240",
gateway 10.10.10.1 Gateway: "10.10.10.1",
dns-timeout 11 HipIpList: [{ Ip: "10.10.10.10" }],
hip-ip-list 10.10.10.10 }).Save();
7. Implement solution
Manage device configuration, and //Session management
ACME.Session.Login("user","pwd");
business model defined //Device management
configurations. var device = ACME.Session.Device("myDevice");
device.LockAndLoad();
//Create config element. Set only parameters you need.
//Use default values for the rest of the configuration
device.NetworkInterface.InitData({
Name: "M10",
SubPortId: "300", //VLAN Id
IpAddress: "10.2.34.5", //Virtual access SBC IP for the enterprise
Description: "Enterprise XX",
UtilityAddress: "10.2.34.6",
SecondUtilityAddress: "10.2.34.7",
HipIpList: [{ Ip: "10.2.34.5" }],
IcmpIpList: [{ Ip: "10.2.34.5" }],
Netmask: "10.2.34.0",
Gateway: "10.2.34.1",
GatewaySec: "10.2.34.2"
}).Save();
//Device management
device.SaveAndActivate();
//Session management
ACME.Session.Logout();
8. Define templates
Define templates which will use different configuration data based on the
provisioning model
//Provisioning data
var RealmConfigData = { //Template data
Id: „E1L1”, var RealmConfigTemplate {
AddrPrefix: EnterpriseLocationPrefix, TrustLevel: "low",
AdditionalPrefixes : [ Prefix1, Prefix2], ErrMsgThreshold: "5",
HmrString : "38534523452" MaxMsgThreshold: "200",
}; MaxMsgThresholdUntrusted: "10"
};
//Mix your data with selected template in one line of code
Device.RealmConfig.InitData(jsonConcat(RealmConfigData, RealmConfigTemplate)).Save();
9. Add transactions
Use internal transactional model to Transactions.AddAction(
"NetworkInterface_Create",
easily rollback the whole batch of
command based on the business //Test
function (device, prm) {},
logic.
//Action
function (device, prm) {
Transactions help you determine device.NetworkInterface.InitData(prm).Save();
},
critical actions which must all
succeed in order to sucessfully end //Undo action, do this when something else fails
function (device, prm, backup) {
the provisioning process. device.NetworkInterface.InitData(prm).Delete();
}
);
10. Connect with your CRM
Use messaging support to convert Provisioning
ACME
NNC
XML messages to Javascript objects scripts SBC
(JSON) and call customized (server-side
provisioning functions. javascript)
Message
Handler
XML provisioning
message
CRM
11. Monitor the Process
Use messaging support to convert Provisioning
ACME
NNC
XML messages to Javascript objects scripts SBC
(JSON) and call customized (server-side
provisioning functions. javascript)
Message
Handler
Monitoring
System
XML provisioning
message
CRM
12. Javascript advantage
Use single platform in all phases of the • Javascript is an interpreted
process: computer programming language.
JavaScript is a prototype-based
1. Design scripting language that is dynamic,
2. Configuration/Template weakly typed, and has first-class
definition functions.
3. Automated provisioning
4. Process Monitoring • In addition to web browsers and
servers, JavaScript interpreters are
Save time using the advantages of the embedded in a number of tools.
one of most popular languages.
Save cost by lowering the • JavaScript was formalized in the
implementation time, and change ECMAScript language standard.
management
13. Provisioning Framework
Engine Interface Transaction
Web Editior
Execute scripts, management
Write and Execute
Scripts process messages,
send alarms Templates /
Configuration
CRM
Send & Execute Logging
Provisioning
Messages
Utilities
Process
Monitoring
Monitor Unified API Interface
Provisioning
Workflows
Net-Net Central Web Services
14. NET NET
CRM SBC
Central
Design Implement Define
Solution Solution Templates
Add Connect with Monitor
Transactions your CRM the Process