User Guide & Documentation
Version 1.1 | January 2025
The EMS Integration Toolkit is a collection of browser-based utilities designed for Telecom and Network OSS engineers. These tools help with common tasks encountered when integrating Element Management Systems (EMS) with Operations Support Systems (OSS).
Parse and construct TL1 (Transaction Language 1) commands used in legacy telecom systems.
Create mappings between EMS alarm codes and OSS-friendly formats with severity levels.
Convert data between JSON, XML, CSV, and YAML formats instantly.
Decode SNMP OIDs, parse SNMP walk output, and browse common MIBs.
Validate XML, test XPath expressions, and format NETCONF configurations.
Design complete integration solutions with auto-generated code, diagrams, and deployment artifacts.
Privacy First
All processing happens locally in your browser. Your data never leaves your device and is not stored on any server.
The toolkit uses a tab-based navigation system. Click on any tab at the top of the screen to switch between tools. Your work in each tool is preserved while switching tabs.
Transaction Language 1 (TL1) is a widely-used management protocol in telecommunications. It provides a standardized command structure for managing network elements.
COMMAND-CODE:TID:AID:CTAG::PARAMETER1=VALUE1,PARAMETER2=VALUE2;
| Component | Description | Example |
|---|---|---|
| Command Code | The operation to perform | RTRV-ALM-ALL |
| TID | Target Identifier (network element) | NETWORKELEM1 |
| AID | Access Identifier (specific resource) | SLOT-1-1 |
| CTAG | Correlation Tag (unique identifier) | 123 |
| Parameters | Additional command parameters | TYPE=ALL |
RTRV-ALM-ALL:NETWORKELEM1:SLOT-1-1:123::TYPE=CRITICAL,SRVEFF=SA;
{
"command": "RTRV-ALM-ALL",
"tid": "NETWORKELEM1",
"aid": "SLOT-1-1",
"ctag": "123",
"parameters": {
"TYPE": "CRITICAL",
"SRVEFF": "SA"
}
}
Tip
Common TL1 commands: RTRV (retrieve), ENT (enter/create), ED (edit), DLT (delete), ACT (activate)
The Alarm Mapper helps you create and manage mappings between EMS-specific alarm codes and standardized OSS alarm descriptions. This is essential for alarm correlation and unified monitoring.
ALM_001)Link Down)All mappings are displayed in a table format showing:
emsCode,ossDescription,severity
ALM_001,Link Down,critical
ALM_002,High CPU Usage,major
ALM_003,Config Changed,info
[
{
"emsCode": "ALM_001",
"ossDescription": "Link Down",
"severity": "critical"
},
{
"emsCode": "ALM_002",
"ossDescription": "High CPU Usage",
"severity": "major"
}
]
Note
Mappings are stored in your browser's local storage. Export regularly to avoid data loss when clearing browser data.
| Format | Description | Use Case |
|---|---|---|
| JSON | JavaScript Object Notation | REST APIs, modern systems |
| XML | Extensible Markup Language | SOAP, NETCONF, legacy systems |
| CSV | Comma-Separated Values | Spreadsheets, data import/export |
| YAML | YAML Ain't Markup Language | Configuration files, Ansible |
Input (JSON):
{
"alarm": {
"id": "12345",
"severity": "critical",
"source": "router-01"
}
}
Output (XML):
<?xml version="1.0" encoding="UTF-8"?>
<alarm>
<id>12345</id>
<severity>critical</severity>
<source>router-01</source>
</alarm>
When converting to/from CSV:
Tip
Use "Format/Prettify" button to clean up minified or messy data before transforming.
1.3.6.1.2.1.1.1.0)1.3.6.1.2.1.1.1.0 = sysDescr.0
Breakdown:
1 = iso
1.3 = org
1.3.6 = dod
1.3.6.1 = internet
1.3.6.1.2 = mgmt
1.3.6.1.2.1 = mib-2
1.3.6.1.2.1.1 = system
1.3.6.1.2.1.1.1 = sysDescr
| OID | Name | Description |
|---|---|---|
| 1.3.6.1.2.1.1 | system | System information |
| 1.3.6.1.2.1.2 | interfaces | Interface statistics |
| 1.3.6.1.2.1.4 | ip | IP protocol statistics |
| 1.3.6.1.4.1 | enterprises | Vendor-specific MIBs |
SNMPv2-MIB::sysDescr.0 = STRING: Cisco IOS Software
SNMPv2-MIB::sysObjectID.0 = OID: SNMPv2-SMI::enterprises.9.1.1
SNMPv2-MIB::sysUpTime.0 = Timeticks: (123456789) 14 days, 6:56:07.89
SNMPv2-MIB::sysContact.0 = STRING: admin@example.com
SNMPv2-MIB::sysName.0 = STRING: router-01
SNMPv2-MIB::sysLocation.0 = STRING: Data Center 1
Browse the standard MIB tree to find OIDs. Click on any node to expand and see child objects.
//interface/name)| XPath | Selects |
|---|---|
//element |
All elements with that name |
/root/child |
Child elements under root |
//element[@attr='value'] |
Elements with specific attribute |
//element/text() |
Text content of elements |
//element[1] |
First matching element |
<rpc xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="101">
<get-config>
<source>
<running/>
</source>
<filter type="subtree">
<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces">
<interface>
<name/>
<enabled/>
</interface>
</interfaces>
</filter>
</get-config>
</rpc>
Tip
When working with namespaced XML (common in NETCONF), you may need to use local-name() in XPath: //*[local-name()='interface']
The E2E Integration Solution Generator is a comprehensive wizard that guides you through designing complete integration solutions. It automatically generates architecture diagrams, code artifacts, and deployment configurations based on your requirements.
| Phase | Description | Output |
|---|---|---|
| 1. Requirements | Define project, source, destination, mappings, and rules | Captured specifications |
| 2. Design | Auto-generated solution architecture | Flow diagrams, architecture diagrams |
| 3. Development | Generated code and configurations | Code, database schemas, infrastructure configs |
| 4. Execution | Deployment and testing artifacts | Scripts, test suites, documentation |
Capture all integration requirements through six sub-sections:
Same configuration options as Source System for the target endpoint.
At least one field mapping is required.
Warning
If no business rules are defined, a warning will be shown recommending you add validation or transformation rules.
Warning
If no security requirements are selected, a warning will be shown recommending you enable encryption, authentication, or data masking.
After clicking "Generate Design", the system creates:
A Mermaid.js flowchart showing the data flow from source through transformation to destination, including error handling paths.
A component diagram showing the integration architecture with all layers and connections.
Table listing all components with their purpose, technology, and status.
Step-by-step specification of data transformations and validations.
Tip
You can copy Mermaid diagram code to use in documentation tools like Notion, Confluence, or GitHub markdown.
Generated code artifacts based on your selected tech stack:
Final deployment and testing artifacts:
run.sh / run.bat - Main execution scriptsetup.sh - Environment setuphealth-check.sh - Health verificationComplete markdown documentation with prerequisites, step-by-step deployment instructions, and troubleshooting guide.
The generator includes built-in validation:
| Validation | Type | Message |
|---|---|---|
| Project Name empty | Error | Project Name is required |
| Source Schema empty | Error | Source Schema is required |
| Destination Schema empty | Error | Destination Schema is required |
| No field mappings | Error | At least one field mapping is required |
| No business rules | Warning | Consider adding validation or transformation rules |
| No security options | Warning | Consider enabling encryption or authentication |
Auto-Trim Feature
All text input fields automatically trim leading and trailing whitespace when you leave the field, ensuring clean data for code generation.
| Issue | Solution |
|---|---|
| TL1 parsing fails | Ensure command ends with semicolon (;) and uses correct separators (:) |
| XML validation error | Check for unclosed tags, special characters (&, <, >) need escaping |
| JSON parsing fails | Validate quotes (use double quotes), check for trailing commas |
| Mappings not saving | Check if browser allows localStorage; try a different browser |
| OID not recognized | The OID may be vendor-specific; check vendor MIB documentation |
For best experience, use the latest version of:
Need Help?
For questions or feedback, visit our other tools: QR Code Generator | Image Resizer