livebox-api
v1.2.1
Published
TypeScript library to interact with Orange Livebox API
Downloads
32
Maintainers
Readme
Livebox API
TypeScript library for Orange Livebox API - manage devices, DHCP, and system controls.
Installation
npm install livebox-apiQuick Start
Using LiveboxClient
import { LiveboxClient } from 'livebox-api';
const client = new LiveboxClient('192.168.1.1', 'admin', 'your_password');
// Get connected devices
const devices = await client.getConnectedDevices();
// Get DHCP settings
const dhcp = await client.getDHCPSettings();
// Reboot Livebox
await client.rebootLivebox();Using Convenience Functions
import { getConnectedDevices, getDHCPSettings } from 'livebox-api';
// Functions require password parameter
const devices = await getConnectedDevices('your_password');
const dhcp = await getDHCPSettings('your_password');API Overview
LiveboxClient Methods
| Method | Description |
|--------|-------------|
| getConnectedDevices() | List all connected devices |
| getDHCPSettings() | Get DHCP pool configurations |
| getStaticDHCPLeases(pool?) | Get static DHCP leases |
| getDynamicDHCPLeases(pool?) | Get dynamic DHCP leases |
| addStaticDHCPLease(lease) | Add a static DHCP lease |
| deleteStaticDHCPLease(lease) | Delete a static DHCP lease |
| rebootLivebox() | Reboot the Livebox |
Convenience Functions
All functions take (password, hostname?, username?) parameters:
getConnectedDevices(password, hostname?, username?)getDHCPSettings(password, hostname?, username?)getStaticDHCPLeases(password, pool?, hostname?, username?)getDynamicDHCPLeases(password, pool?, hostname?, username?)addStaticDHCPLease(lease, password, hostname?, username?)deleteStaticDHCPLease(lease, password, hostname?, username?)rebootLivebox(password, hostname?, username?)
Examples
Device Management
const client = new LiveboxClient('192.168.1.1', 'admin', 'password');
const devices = await client.getConnectedDevices();
devices.forEach(device => {
console.log(`${device.Name}: ${device.IPAddress} (${device.Active ? 'Active' : 'Inactive'})`);
});DHCP Management
// Get DHCP settings
const dhcp = await client.getDHCPSettings();
// Add a static DHCP lease
await client.addStaticDHCPLease({
mac: "AA:BB:CC:DD:EE:FF",
ip: "192.168.1.100",
alias: "My Device",
});
// Get static leases
const staticLeases = await client.getStaticDHCPLeases();
// Delete a static DHCP lease
await client.deleteStaticDHCPLease({
mac: "AA:BB:CC:DD:EE:FF",
});System Control
await client.rebootLivebox();
console.log('Livebox rebooting...');License
MIT
