Page 5 sur 8
Re: [Tuto] Communiquer avec DomoticZ en SMS en utilisant RaspiSMS 3
Publié : 07 juil. 2022, 18:48
par Keros
Lorsque mes SMS ne remontaient pas dans RaspiSMS, c'était souvent parce que mon fichier n'avait pas les bons droits pour fonctionner.
Sinon, ce serait pas subprocess qui ne serait pas installé ? Tu peux essayer pip install subprocess
Re: [Tuto] Communiquer avec DomoticZ en SMS en utilisant RaspiSMS 3
Publié : 07 juil. 2022, 19:03
par jackyhi
Je viens de solutionner le problème en modifiant le fichier gammu_get_unread_sms.py,
la commande restart_domoticz est déplacée avant la mise à jour de la variable sms de domoticz. Comme domoticz doit être réinitialisé ce n'est pas la peine d'essayer de stocker une valeur dans la variable sms!
donc voici le script gammu_get_unread_sms.p avec la commande restart_domoticz qui fonctionne:
Code : Tout sélectionner
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
# vim: expandtab sw=4 ts=4 sts=4:
#
#sudo cat /usr/share/raspisms/bin/gammu_get_unread_sms.py
#
from __future__ import print_function
import gammu
import sys
import json
import requests
import subprocess
def main():
state_machine = gammu.StateMachine()
if len(sys.argv) < 2:
sys.exit(1)
else :
state_machine.ReadConfig(Filename=sys.argv[1])
del sys.argv[1]
state_machine.Init()
status = state_machine.GetSMSStatus()
remain = status['SIMUsed'] + status['PhoneUsed'] + status['TemplatesUsed']
start = True
try:
while remain > 0:
if start:
sms = state_machine.GetNextSMS(Start=True, Folder=0)
start = False
else:
sms = state_machine.GetNextSMS(
Location=sms[0]['Location'], Folder=0
)
remain = remain - len(sms)
for m in sms :
if m['State'] != 'UnRead' :
continue
#Action directe
if m['Number'][1:] == '336XXXXXXX' and m['Text'] == 'Reboot Dz':
subprocess.run(["/home/pi/domoticz/scripts/restart_domoticz"], shell=True)
else :
#Mise a jour dans Domoticz
r = requests.get("http://192.168.0.21:9186/json.htm?type=command¶m=updateuservariable&idx=8&vname=sms&vtype=2&vvalue="+m['Text']+";%2B"+m['Number'][1:])
print(json.dumps({
'number': m['Number'],
'at': str(m['DateTime']),
'status': m['State'],
'text': m['Text'],
}))
except gammu.ERR_EMPTY:
#do noting
return True
if __name__ == '__main__':
main()
Re: [Tuto] Communiquer avec DomoticZ en SMS en utilisant RaspiSMS 3
Publié : 07 juil. 2022, 22:46
par Keros
Je n'ai pas rencontré ce souci.
Je rajoute une indication dans le tuto vers ton poste si d'autres membres rencontrent le même problème.
Re: [Tuto] Communiquer avec DomoticZ en SMS en utilisant RaspiSMS 3
Publié : 09 juil. 2022, 15:03
par jackyhi
J'ai remarqué après un certain nombre de réception de sms par raspiSMS il n'y avait plus de SMS entrant et en recherchant sur le net j'ai découvert cet article de FredMa01
https://github.com/RaspbianFrance/raspisms/issues/166
j'ai écrit un petit bash /home/pi/domoticz/scripts/gammuclearsim.sh
Code : Tout sélectionner
#!/bin/sh
#modeswitch reset correspondant à ma clé E3531
sudo /usr/sbin/usb_modeswitch -W -v 12d1 -p 1436 –R
sleep 1
sudo gammu identify
sleep 1
# inutile dans un script lancé depuis domoticz
#sudo gammu getallsms # affiche la liste de SMS reçus
#sudo gammu getsmsfolders # liste des répertoire de SMS et Telephone
sudo gammu deleteallsms 1 # efface la "Boîte de réception", Mémoire SIM
que je déclenche par un switch virtuel en plaçant dans action on : script:///home/pi/domoticz/scripts/gammuclearsim.sh

Re: [Tuto] Communiquer avec DomoticZ en SMS en utilisant RaspiSMS 3
Publié : 09 juil. 2022, 16:50
par Keros
Le lien que tu donnes renvoie vers cette conversation. Tu peux l'éditer dans ton message : petite icône crayon en haut à droite (pas besoin de le mettre dans un quote).
Je ne sais pas si tu déclenches le script régulièrement, mais tu peux aussi le lancer depuis une tache Cron.
Pour info, si j'ai des scripts qui sont exécutés par DomoticZ, j'essaye de les placer dans le répertoire /Script de DomoticZ. De cette façon, tout ce qui concerne DomoticZ se trouve à l'intérieur du dossier (c'est plus facile en cas de réinstallation).
Re: [Tuto] Communiquer avec DomoticZ en SMS en utilisant RaspiSMS 3
Publié : 09 juil. 2022, 23:40
par jackyhi
Merci Keros pour tes conseils j'ai corrigé ma publication en tenant compte de tes conseils.
Re: [Tuto] Communiquer avec DomoticZ en SMS en utilisant RaspiSMS 3
Publié : 10 juil. 2022, 00:46
par Keros
J'ai corrigé le lien, l'affichage n'était toujours pas bon (tu peux directement mettre un lien sans balises url, le forum le détectera).
Les SMS entrants sont stockés au niveau de la carte SIM et la mémoire de celle-ci est limitée. C'est comme avec les premiers téléphones (bien avant les smartphones lol), si on avait plus de 20 messages dans la boite de réception, les nouveaux messages n'arrivaient pas.
Au moins, j'ai peu vidé ma boite de réception par anticipation. Merci
Curieux que dans toutes les docs que j'ai lus pour faire mon installation, je n'ai pas vu d'info sur ce problème potentiel. Peut-être que la capacité des cartes SIM actuelles ont beaucoup augmentées (je pense aussi que nos téléphones font le vide régulièrement et que plus rien n'est stocké dans la SIM.
Re: [Tuto] Communiquer avec DomoticZ en SMS en utilisant RaspiSMS 3
Publié : 10 juil. 2022, 16:12
par jackyhi
Maintenant que mon système d'envoi et réception de SMS pour Domoticz fonctionne avec l'application Gammu et raspiSMS.
Merci à Keros pour son tuto , son aide et sa disponibilité
J'aimerais consulter les fichiers de logs de Gammu et raspiSMS, mais dans quel répertoire peut-on les consulter et éventuellement les effacer?
De même les paramètres de configuration sont-ils accessibles en modification?
Re: [Tuto] Communiquer avec DomoticZ en SMS en utilisant RaspiSMS 3
Publié : 10 juil. 2022, 16:34
par Keros
Tant mieux que t'y suis arrivé
Des paramètres de configuration ? Tu recherches quoi ?
Re: [Tuto] Communiquer avec DomoticZ en SMS en utilisant RaspiSMS 3
Publié : 10 juil. 2022, 18:01
par jackyhi
Lors de l'installation de raspisms j'ai fourni des paramètres comme une adresse mail et un noms de serveur SMTP et j'aimerais pouvoir modifier ces derniers.
Pour gammu je suis incapable de retrouver le fichier de logs, peut être parce que je n'ai peut être pas fourni le bon chemin!
ainsi que pour raspisms , logs de deamons ?? pas accessible en lecture ou écriture.
Si ces fichiers grossissent faut-il les effacer?
J'aimerai pouvoir maitriser cela si c'est utile!