Acme Provisioning
Scripting framework
Build automated provisioning workflows for Acme Net-Net Central using scripting framework (server-side Javascript)
Develop solution
Use Javascript just as easy as ACLI to configure elements. Unleash Javascript to add loops, conditions to your design.
//Session management ACME.Session.Login("user","pwd"); //Device management 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();
Define templates
Define templates which will use different configuration data based on the provisioning model
function RealmConfigDefaultSetting() { return { Id: "???", AddrPrefix: "???", NetworkInterfaceId: {}, AdditionalPrefixes: "???", TrustLevel: "low", ErrMsgThreshold: "5", MaxMsgThreshold: "200", MaxMsgThresholdUntrusted: "10", HmrString: "???" }; } //Mix your data with selected template var RealmConfig = jsonConcat( { Id: elementId, AddrPrefix: myPrefix, AdditionalPrefixes : [ Prefix1, Prefix2], HmrString : "38534523452" }, RealmConfigDefaultSetting());
Device.RealmConfig.InitData(RealmConfig).Save();
Add transactions
Use internal transactional model to easily rollback the whole batch of command based on the business logic.
Transactions.AddAction( "NetworkInterface_Create", //Test function (device, prm) {}, //Action function (device, prm) { device.NetworkInterface.InitData(prm).Save(); }, //Undo action, do this when something else fails function (device, prm, backup) { device.NetworkInterface.InitData(prm).Delete(); } );
Connect with your CRM
Use messaging support to convert XML messages to Javascript objects (JSON) and call customized provisioning functions. Provisioning scripts
(server-side javascript)
SBC
Message Handler
CRM
XML provisioning message
Monitor the Process
Use messaging support to convert XML messages to Javascript objects (JSON) and call customized provisioning functions. Provisioning scripts
(server-side javascript)
SBC
Message Handler
Monitoring System CRM
XML provisioning message
Provisioning Framework Web Editior
Write and Execute Scripts
Engine Interface Execute scripts, process messages, send alarms
Transaction management Templates / Configuration Logging Utilities
CRM
Send & Execute Provisioning Messages
Process Monitoring
Monitor Provisioning Workflows
Unified API Interface
Net-Net Central Web Services
Develop Solution
Define Templates
Add Transactions
Connect with your CRM
Monitor the Process
Mislav Petričević
[email protected] http://pet34.net