statusVue d'ensemble du démon
État de santé, état de la licence, appels actifs/max, résumé de l'enregistrement des trunks — sur un seul écran.
strowger-cli est un client léger : chaque commande communique avec
le démon strowgerd en cours d'exécution via sa propre API HTTP. Il est livré avec le
binaire du démon et installé dans /usr/local/bin/strowger-cli par
deploy/install.sh.
| Option | Signification |
|---|---|
-u, --url <URL> | URL du démon. Par défaut
http://127.0.0.1:7060, ou lue depuis
[daemon] http_host/http_port dans le fichier de configuration
résolu. |
-t, --token <KEY> | Clé API, envoyée en tant que
X-API-Key. |
-c, --config <PATH> | Chemin vers le fichier de configuration du démon. |
--json | Affiche la réponse JSON brute au lieu d'un tableau formaté. |
Résolution de la connexion : --config, sinon le premier fichier existant parmi
/etc/strowger/config.toml / ./config.toml. L'URL
est --url si spécifiée, sinon construite à partir de la section [daemon]
de cette configuration, avec un repli sur 127.0.0.1:7060. Le jeton est
--token, sinon la variable d'environnement STROWGER_API_KEY, sinon
un fichier api-token dans le data_dir de la configuration (ou
./data/api-token si aucune configuration n'est trouvée).
État de santé, état de la licence, appels actifs/max, résumé de l'enregistrement des trunks — sur un seul écran.
Mode d'application, état et identifiant de la licence, expiration et capacités exactes accordées par la licence actuelle.
Démo (identification légère, sans clé) ou commerciale (--key) —
activation unique auprès du serveur de licences.
Liste tous les appels en cours, avec la direction, le correspondant, le trunk et la durée.
Annule un appel qui sonne ou envoie un BYE à un appel décroché, par identifiant d'appel.
Chaque trunk configuré avec son registrar, son état d'enregistrement et son indicateur d'activité.
Active ou désactive progressivement un trunk sans toucher au fichier de configuration.
Affiche la configuration résolue avec les secrets masqués, ou la valide sans démarrer le démon.
Récupère /health et /stats et affiche la disponibilité du démon,
l'état de la licence, le nombre d'appels actifs/max, les compteurs de rejet et un
tableau d'enregistrement par trunk.
strowger-cli status
strowger-cli status --json
--json renvoie un objet combiné :
{
"health": {
"version": "1.0.0-rc1",
"license": { "state": "ok", "license_id": "…", "customer": "…",
"days_remaining": 27, "deadline": null, "reason": null },
"trunks": [ { "name": "ovh-prod", "state": "registered" } ]
},
"stats": {
"calls": { "active": 0, "max_concurrent": 1, "concurrency_rejections": 0 },
"license": { "rejections": 0 },
"registrations": { "registered": 1, "rejected": 0, "connecting": 0, "none": 0 },
"endpoints": [ { "name": "ovh-prod", "host": "sip-domain.io", "active": true } ]
}
}
Lit le bloc license de /stats et affiche le mode d'application,
l'identifiant de licence, le client, le type (perpétuel ou temporaire), l'expiration, les jours
restants et les capacités accordées (max_concurrent_calls,
max_trunks, max_call_seconds — 0 signifie
illimité). Si la licence est dans un état dégradé, la raison et l'échéance sont également affichées.
strowger-cli license --json
{
"enforced": true,
"state": "ok",
"license_id": "…",
"customer": "Acme SARL",
"perpetual": false,
"expires_at": 1783000000,
"days_remaining": 27,
"max_concurrent_calls": 1,
"max_trunks": 1,
"max_call_seconds": 60
}
Appelle POST /license/register sur le démon. Deux formes :
# Démo — identification légère, sans clé
strowger-cli register --company "Acme SARL" --contact "Jane Doe" \
--email [email protected] --phone +33612345678
# Licence commerciale émise à l'avance
strowger-cli register --key <activation-key>
Si --company/--contact/--email/
--phone sont omis et que le terminal est interactif, le CLI demande
chaque information (avec une validation d'e-mail basique) ; dans un shell non interactif, une option manquante entraîne
une erreur critique. En cas de succès, il affiche l'identifiant de licence, le client, l'état, l'expiration et les capacités
accordées — le même format que license ci-dessus.
Liste les appels actifs (GET /calls?state=active) : identifiant d'appel, direction
(entrant/sortant), le correspondant (appelant pour l'entrant, destination pour le sortant), le trunk,
la durée et l'état (ringing ou answered).
strowger-cli calls
Envoie DELETE /calls/<id>. Le résultat est l'un des suivants : l'appel a été
annulé (toujours en cours de sonnerie/file d'attente), un BYE a été envoyé (appel décroché), ou il était
déjà terminé. Un code 409 signifie que l'appel est toujours en cours d'établissement et qu'il n'y a pas encore de pilote de signalisation pour raccrocher.
strowger-cli hangup 6f2c1e9a-...
Liste chaque trunk (GET /trunks) avec son nom, son registrar, son état d'enregistrement,
et s'il est actuellement actif.
strowger-cli trunks
Active ou désactive à chaud un trunk, sans modifier le fichier de configuration —
en arrière-plan, cela appelle POST /endpoints/<name>/activate ou
/deactivate.
strowger-cli trunk disable ovh-prod
strowger-cli trunk enable ovh-prod
Lit le fichier de configuration résolu (--config, ou
/etc/strowger/config.toml, ou ./config.toml). La commande
config seule affiche le TOML avec chaque ${VAR} interpolée depuis
l'environnement — sauf les champs secrets connus (password,
activation_key, api_key), qui sont toujours masqués par
*** quelle que soit l'interpolation, afin que la sortie puisse toujours être collée
en toute sécurité dans un chat ou un ticket. --validate charge à la place la configuration via le
propre analyseur du démon et renvoie 0 (valide) ou 1 (avec l'erreur
d'analyse/validation), sans rien démarrer.
strowger-cli config
strowger-cli config --validate