J'écris un script Python pour lire un SMS depuis la mémoire SIM, le mettre en mémoire tampon et envoyer le même SMS à un autre numéro. J'exécute ce script sur Telit GM862-GPS. Le script que je l'ai écrit est:Envoyer un SMS récupéré en utilisant Python
import MDM
MDM.send('AT+CMGF=1\r', 10) # Changing to Text mode
MDM.send('AT+CMGR=1\r',0) # Reading SMS at index 1
a = MDM.receive(10) # Receiving as string
MDM.send('AT+CMGS="Phone no.", 129', 0) #selecting a particular no.
MDM.send(a, 0) # sending retrieved SMS
MDM.sendbyte(0x1A, 0) # sending Ctrl Z
Mais je fais face à ce problème: Après l'exécution de "AT + CMGR = 1 \ r" commande, le script n'exécute pas les commandes après. J'ai vérifié ceci en mettant une commande simple AT pour changer une certaine valeur après la commande "Read SMS" & que la valeur ne soit pas changée. Je ne sais pas pour quelle raison étrange il fait cela.
Ce serait vraiment utile si quelqu'un peut m'aider avec cela.
Cordialement
Mise à jour
@ intello payé: Yes..thats une valeur de délai d'attente @ Jaime: Un SMS existe dans la mémoire SIM et il montre le SMS à l'index 1. Le seul problème J'obtiens, c'est qu'il n'exécute pas les commandes qui viennent après la commande "AT + CMGR" ou "AT + CMGL". @ Foresto: J'ai essayé d'ajouter "\ n" à la fin mais il n'exécute pas les instructions python après l'instruction Read SMS.
Quel est le deuxième paramètre, '0'? Est-ce un délai d'attente? –
Etes-vous sûr qu'un SMS avec index 1 existe dans la mémoire SIM? Vous pouvez lister les messages avec AT + CMGL. Que fait MDM si une commande renvoie une erreur CME? Avez-vous essayé d'envoyer ces commandes en utilisant minicom/HyperTerminal? –
S'agit-il des bibliothèques que vous utilisez? http://www.telit.com/fr/products/python/python-for-m2m-applications.php – badp