Volume data opérateurs

Bonjour,
j’ai 3 routeurs huawei en load balancing avec free et sfr (syma). L’idée est de palier les problèmes ponctuels d’un opérateur et augmenter mon débit.
J’utilise pfsense pour gérer les routeurs.
Mon souci est que, lorsque le volume data d’une sim est atteint, le ping reste ok, mais le débit tombe, et je ne vois pas comment pfsense peut le constater et couper cet accès.
L’idéal, chez moi , serait de consulter le volume data sur le site de l’opérateur et passer en off le routeur. Avec le plugin huawei, Je récupère par l’envoi d’un sms chez free le message donnant ces infos. mais je suis incapable en php d’en extraire le montant:
exemple de sms:
Statut : Envoyé
Tel : 555
Date : 2021-09-06 23:55:05
Du 25/08 au 25/09 votre conso hors forfait est de 0.00€.

Voix : 00:01:07
SMS : 1
Données : 71.05 Go
Retrouvez plus d’infos sur Bienvenue chez Free mobile

quelqu’un serait il me mettre sur la piste?
Merci

Avec un bloc code dans un scénario et une expression régulière ça devrait marcher.

Un exemple que je viens de tester. Nom des commandes à adapter bien sûr et j’ai pris que les 2 premiers chiffres (ne pas hésiter à utiliser un testeur d’expression régulière, c’est plus simple).

$texte = cmd::byString('#[Tests][Test regexp][sms]#')->execCmd();
if (preg_match("/Données : ([0-9][0-9])/",$texte,$matches) == 1) {
  $scenario->setLog("Valeur trouvée : ".$matches[1]);
  cmd::byString("#[Tests][Test regexp][total]#")->event($matches[1]);
}

Quelques précisions quand même :

  • 1ère ligne : récupère le texte du sms (à remplacer par la bonne commande du plugin huawei)
  • 2ème ligne : on cherche un chaîne qui contient "Données : " suivi de 2 chiffres ; les parenthèses marquent ce qu’on veut récupérer
  • 3ème ligne : ajout d’une ligne dans le log scénario (facultatif)
  • 4ème ligne : on renvoie la valeur trouvée dans une commande numérique

@seb821
Merci Seb,
Je vais tester ça dès que j’ai du temps. Pour l’instant il faut que je comprenne pourquoi le plugin n’affiche plus les SMS sur mes 3 huawei (b18,715 et 525).
Que de temps à passer!!!
Bon week end