Claude c7e8041709 Add client export/import functionality
This commit adds export and import functionality for client configurations
to the Client Settings menu, allowing users to save and restore provisioned
clients during Asterisk reinstallations.

Features:
- Export clients: Creates a tar.gz archive containing all provisioned devices,
  categories, and rooms with metadata (saved to /root/asterisk-clients-*.tar.gz)
- Import clients: Restores client configurations from export archives with
  two modes:
  * Merge mode: Imports only non-conflicting devices (default)
  * Replace mode: Removes all existing devices and replaces with imported ones
- Conflict detection: Automatically detects extension conflicts and offers to
  skip conflicting devices
- Backup protection: Creates timestamped backups before import operations
- Validation: Verifies export file format and device count before import

Technical details:
- Extracts device configurations from /etc/asterisk/pjsip.conf
- Preserves categories from /etc/easy-asterisk/categories.conf
- Preserves rooms/ring groups from /etc/easy-asterisk/rooms.conf
- Automatically reloads PJSIP and rebuilds dialplan after import
- Handles category and room deduplication during merge imports

Menu additions:
- Client Settings -> Export Clients (option 4)
- Client Settings -> Import Clients (option 5)
2025-12-05 16:08:34 +00:00
2025-11-28 18:28:24 -05:00
S
Description
Mirror of outis1one/easy-asterisk from GitHub
GPL-3.0
408 KiB
Languages
Shell 98.9%
Dockerfile 1.1%