Super cool Krikroff de m'avoir mis sur le chemin j'ai trouvé ce que je souhaitais faire.
Pour rappel la commande passé en telnet est : 192.168.1.10 mixer volume ? et le serveur retourne 3c%3A99%3A25%3A8b%3B27%3A3f mixer volume 65
Voici le code pour ne récupérer seulement que le 65
Bon c'est peut être pas très optimisé, je suis pas dev!! mais s'il y 'en a qui peuvent alléger je suis preneur.
J'ai détaillé le code pour bien comprendre les étapes pour ceux qui auront besoin.
local result = tcpSocket:read() or string.char();
-- Transforme "result" en chaine de caractere
local data = string.format("%s", result);
fibaro:debug("le resultat 1 est " ..data)
-- Recherche l'index de caractere ou il trouve la chaine "MIXER VOLUME"
index = string.find(data, "mixer volume %d");
fibaro:debug("le resultat 2 est " ..index)
-- Recupere la chaine la chaine de caractere apres l'index
data = string.sub(data, index)
fibaro:debug("le resultat 3 est " ..data)
-- Recherche l'index de caractere ou il trouve le caractere numerique dans la chaine
index = string.find(data, "%d");
fibaro:debug("le resultat 4 est " ..index)
-- Recupere la chaine la chaine de caractere apres l'index
data = string.sub(data, index)
fibaro:debug("le resultat 5 est " ..data)
Allé maintenant je m'occupe du titre et je vous post ça.