Agent SMS¶
Envoie et reçoit des SMS, soit par un modem GSM local, soit par l'API SMS d'OVH.
Rôle¶
- Envoie les notifications déclarées en D.L.S avec l'option
notif_sms. - Reçoit les commandes texte envoyées par les utilisateurs et les transforme en entrées
D.L.S (option
map_sms).
Deux modes de fonctionnement¶
| Élément | Exigence |
|---|---|
| Matériel | Clé ou module GSM avec carte SIM active |
| Logiciel | ModemManager |
| Accès | D-Bus système |
sudo apt install modemmanager
mmcli -L # le modem doit apparaître
| Élément | Exigence |
|---|---|
| Compte | Service SMS OVH actif et crédité |
| Identifiants | Clés d'application et clé consommateur, créées sur le portail OVH |
| Réseau | Accès HTTPS sortant vers l'API OVH |
Pas de matériel requis, mais pas de réception de commandes entrantes.
Installation¶
sudo apt install abls-agent-sms
sudo dnf install abls-agent-sms
Unité systemd¶
abls-agent-sms@.service — unité templatée.
sudo systemctl enable --now abls-agent-sms@SMS_MAISON.service
Paramètres spécifiques¶
| Clé JSON | Variable d'environnement | Option | Type | Description |
|---|---|---|---|---|
ovh_service_name |
ABLS_OVH_SERVICE_NAME |
--ovh-service-name |
chaîne | Nom du service SMS OVH |
ovh_application_key |
ABLS_OVH_APPLICATION_KEY |
--ovh-application-key |
chaîne | Clé d'application OVH |
ovh_application_secret |
ABLS_OVH_APPLICATION_SECRET |
--ovh-application-secret |
chaîne | Secret d'application OVH |
ovh_consumer_key |
ABLS_OVH_CONSUMER_KEY |
--ovh-consumer-key |
chaîne | Clé consommateur OVH |
read_interval |
ABLS_READ_INTERVAL |
--read-interval |
entier | Période d'interrogation du modem, en dixièmes de seconde |
Les clés OVH sont des secrets
Ne les passez pas en ligne de commande sur une machine partagée : elles seraient visibles
dans ps. Écrivez-les directement dans le fichier de configuration en 0640.
Enrôlement¶
sudo abls-agent-sms --agent-tech-id SMS_MAISON \
--read-interval 50 \
--domain-uuid xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
--domain-secret 'votre-secret-ici' \
--api-url api.abls-habitat.fr \
--save
sudo tee /etc/abls/abls-agent-sms@SMS_MAISON.conf >/dev/null <<'EOF'
{
"agent_tech_id": "SMS_MAISON",
"domain_uuid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"domain_secret": "votre-secret-ici",
"api_url": "api.abls-habitat.fr",
"ovh_service_name": "sms-xx12345-1",
"ovh_application_key": "...",
"ovh_application_secret": "...",
"ovh_consumer_key": "..."
}
EOF
sudo chown root:abls /etc/abls/abls-agent-sms@SMS_MAISON.conf
sudo chmod 0640 /etc/abls/abls-agent-sms@SMS_MAISON.conf
sudo systemctl enable --now abls-agent-sms@SMS_MAISON.service
Qui reçoit les SMS ?¶
Les destinataires ne se configurent pas ici : ce sont les utilisateurs du domaine ayant renseigné leur numéro de téléphone et demandé à être notifiés. Voir Être notifié.
De même, les commandes texte acceptées sont définies en D.L.S par les objets portant
l'option map_sms, et les droits d'émission dépendent du niveau d'habilitation de
l'utilisateur.
Dépannage¶
| Symptôme | Piste |
|---|---|
mmcli -L ne voit pas le modem |
Câble, alimentation, ou modem non supporté par ModemManager |
| Modem détecté mais SMS non envoyés | Carte SIM verrouillée par un code PIN, ou crédit épuisé |
| Réception très lente | read_interval trop élevé (rappel : en dixièmes de seconde) |
| Erreur d'authentification OVH | Clés incorrectes, ou droits insuffisants sur l'application OVH |
| Aucun SMS reçu par les utilisateurs | Numéros non renseignés, ou notification non demandée dans le profil |
sudo journalctl -u abls-agent-sms@SMS_MAISON.service -f