paulo-hortelan/onmt
| Install | |
|---|---|
composer require paulo-hortelan/onmt |
|
| Latest Version: | v1.11.1 |
| PHP: | ^8.1 |
| Laravel: | 10 – 13 |
| License: | MIT |
| Last Updated: | Sep 25, 2026 |
| Links: | GitHub · Packagist |
Optical Network Manager Toolkit (ONMT)
ONMT is a Laravel package for automating OLT and ONT operations over Telnet and TL1, with a unified API across vendors.
Features
- Unified facades for
Fiberhome,Nokia,ZTE, andDatacom - Connection helpers for Telnet and TL1 workflows
- High-level methods for optical data, provisioning, reboot, and cleanup
- Command recording with metadata and persistence support
- Designed for real-world ISP/FTTH operational flows
Supported Vendors and Models
| Vendor | Models | Transport |
|---|---|---|
| Fiberhome | AN5516-04, AN5516-06, AN5516-06B | TL1 |
| Nokia | FX16 | Telnet and TL1 |
| ZTE | C300, C600 | Telnet |
| Datacom | DM4612 | Telnet |
Requirements
- PHP
^8.1 - Laravel components compatible with
illuminate/contracts ^10.0,^11.0,^12.0, or^13.0 - Laravel 13 requires PHP
^8.3
Installation
composer require paulo-hortelan/onmt
Publish Config and Migrations
php artisan vendor:publish --tag=onmt-config
php artisan vendor:publish --tag=onmt-migrations
php artisan migrate
Quick Start
1) Connect to an OLT
use PauloHortelan\Onmt\Facades\ZTE;
$zte = ZTE::connectTelnet('10.0.0.10', 'username', 'password', 23);
2) Select targets and run commands
$zte->interfaces(['1/1/1:1']);
$optical = $zte->ontsOpticalPower();
$detail = $zte->detailOntsInfo();
3) Disconnect
$zte->disconnect();
Example: Fiberhome by Serial
use PauloHortelan\Onmt\Facades\Fiberhome;
$fiberhome = Fiberhome::connectTL1('10.0.0.20', 'username', 'password', 3337, '10.0.0.20');
$fiberhome->serials(['ALCL12345678', 'CMSZ12345678']);
$result = $fiberhome->ontsOpticalPower('NA-NA-1-1');
$fiberhome->disconnect();
Command Recording
$zte->startRecordingCommands(
description: 'Night maintenance - optical check',
ponInterface: '1/1/1'
);
$zte->interfaces(['1/1/1:1'])->ontsOpticalPower();
$batch = $zte->stopRecordingCommands();
Configuration
After publishing config, you can define a default operator:
ONMT_DEFAULT_OPERATOR=network-noc
Development
CI checks Laravel package bootstrapping and mocked Telnet behavior across Laravel 10, 11, 12, and 13, using the matching Orchestra Testbench major version. Hardware-backed tests remain available through composer test when the OLT test environment is configured.
composer test
composer analyse
composer format
composer lint
Changelog
See CHANGELOG.md.
Credits
License
This package is open-sourced software licensed under the MIT license.
Related Packages
Pacote Laravel para consulta de CEPs brasileiros com múltiplos provedores, cache...
Powerful PHP database abstraction layer (DBAL) with many features for database s...
Laravel Serializable Closure provides an easy and secure way to serialize closur...
Version History
| Version | Released | PHP | Laravel | License |
|---|---|---|---|---|
| v1.11.1 | ^8.1 | ^10.0| | MIT | |
| v1.11.0 | ^8.1 | ^10.0| | MIT | |
| v1.10.9 | ^8.1 | ^10.0 | MIT | |
| v1.10.8 | ^8.1 | ^10.0 | MIT | |
| v1.10.7 | ^8.1 | ^10.0 | MIT | |
| v1.10.6 | ^8.1 | ^10.0 | MIT | |
| v1.10.5 | ^8.1 | ^10.0 | MIT | |
| v1.10.4 | ^8.1 | ^10.0 | MIT | |
| v1.10.3 | ^8.1 | ^10.0 | MIT | |
| v1.10.2 | ^8.1 | ^10.0 | MIT | |
| v1.10.1 | ^8.1 | ^10.0 | MIT | |
| v1.10.0 | ^8.1 | ^10.0 | MIT | |
| 1.9.30 | ^8.1 | ^10.0 | MIT | |
| v1.9.29 | ^8.1 | ^10.0 | MIT | |
| v1.9.28 | ^8.1 | ^10.0 | MIT | |
| v1.9.27 | ^8.1 | ^10.0 | MIT | |
| v1.9.26 | ^8.1 | ^10.0 | MIT | |
| v1.9.25 | ^8.1 | ^10.0 | MIT | |
| v1.9.24 | ^8.1 | ^10.0 | MIT | |
| v1.9.23 | ^8.1 | ^10.0 | MIT | |
| v1.9.22 | ^8.1 | ^10.0 | MIT | |
| v1.9.21 | ^8.1 | ^10.0 | MIT | |
| v1.9.20 | ^8.1 | ^10.0 | MIT | |
| v1.9.19 | ^8.1 | ^10.0 | MIT | |
| v1.9.18 | ^8.1 | ^10.0 | MIT | |
| v1.9.17 | ^8.1 | ^10.0 | MIT | |
| v1.9.16 | ^8.1 | ^10.0 | MIT | |
| v1.9.15 | ^8.1 | ^10.0 | MIT | |
| v1.9.14 | ^8.1 | ^10.0 | MIT | |
| v1.9.13 | ^8.1 | ^10.0 | MIT |
Showing the latest 30 of 121. See every release on Packagist