mirror of
https://github.com/LibreQoE/LibreQoS.git
synced 2026-11-02 08:10:02 -06:00
3.3 KiB
3.3 KiB
Recipe: WISP/FISP with Built-In CRM/NMS Integration
Use this pattern when your operator workflow is already centered on a supported CRM/NMS (UISP, Splynx, Netzur, VISP, WISPGate, Powercode, or Sonar).
Fit
- Best for: recurring subscriber changes, CRM-owned service plans, and ongoing subscriber lifecycle automation.
- Avoid when: your durable source of truth is a custom external pipeline (use custom source of truth mode instead).
Prerequisites
- Complete Quickstart and pass the health gate.
- Confirm integration choice in CRM/NMS Integrations.
- Confirm source-of-truth ownership in Operating Modes and Source of Truth.
Implementation
- Configure integration credentials/settings in WebUI (
Configuration -> Integrations). - For integration-driven deployments, treat
network.jsonas DIY/manual-only and let the integration publishtopology_import.jsoninstead. - Choose the lightest topology strategy that meets requirements.
| Requirement | Suggested strategy |
|---|---|
| Maximum performance, minimal hierarchy | flat |
| Moderate hierarchy visibility/control | ap_only or ap_site |
| Full path/backhaul shaping required | full |
- Enable scheduler-driven recurring refresh in
/etc/lqos.conf(for exampleenable_uisp = true,enable_splynx = true,enable_netzur = true; use the matching flag for your selected integration). - Restart scheduler and verify sync behavior:
sudo systemctl restart lqos_scheduler
sudo systemctl status lqos_scheduler
journalctl -u lqos_scheduler --since "15 minutes ago"
Data Flow Illustration
flowchart LR
CRM[CRM/NMS]
INT[Integration Job]
SD[ShapedDevices.csv]
NJ[network.json]
SCH[lqos_scheduler]
LQD[lqosd]
UI[WebUI Status]
MAN[Manual edits to generated files]
CRM --> INT
INT --> SD
INT --> NJ
SD --> SCH
NJ --> SCH
SCH --> LQD
SCH --> UI
MAN -. May be overwritten by next sync .-> SD
MAN -. May be overwritten by next sync .-> NJ
What this shows:
- Integration jobs regenerate shaping inputs consumed by the scheduler.
- In integration mode, direct manual edits to generated files are typically non-durable.
Validation Checklist
ShapedDevices.csvis regenerated as expected after sync.network.jsonbehavior matches overwrite policy.- WebUI views are healthy.
- Check
Scheduler StatusandUrgent Issues. - Check
Network Tree OverviewandFlow Globe. - Parent placement and queue distribution look sane (no unexpected hierarchy collapse).
Common Failure Modes
- Integration and manual edits fighting each other.
- Unexpected topology depth causing avoidable CPU pressure.
- Missing warnings for unparented circuits in day-1 validation.
Use Scale Planning and Topology Design and Troubleshooting before deeper changes.
Rollback
- Revert integration strategy to previous known-good mode.
- Restore backed up shaping files if needed.
- Restart
lqos_schedulerandlqosd. - Confirm urgent issues clear and views repopulate.