La idea es buscar todos los mensajes de un número celular dado, presentar el mensaje en la consola y borrar dichos mensajes.
Se sigue el procedimiento de ejecución remota explicado en el post anterior.
El código es el siguiente:
#!/usr/bin/env python2.6 # -*- coding: utf-8 -*- #Script que permite manejar los SMS del celular con android desde Linux. #Autor: Ernesto Crespo #Correo:ecrespo@gmail.com #Licencia: GPLv3 #Versión:0.1 #Importando el módulo android,sys y re import android #Función de envio de mensajes def Contactos(): #Se crea la instancia de la clase Android droid = android.Android() #Se captura la cantidad de mensajes de texto )como en mi caso todos los #mensajes han sido leídos coloco 0, si quiero los no leídos coloco 1. cantidad = droid.smsGetMessageCount(0)[1] #El número de celular a buscar numero = "0xxxyyyzzww" #Se recorren todos los mensajes. for i in range(cantidad): #Si el mensaje es del número dado se captura el identificador #del mensaje, se imprime un mensaje en pantalla con la información: #read:Si mensaje ya fue leído #date: la fecha del mensaje #_id:identificador del mensaje. #address: número celular. #body:cuerpo del mensaje. #Toda está información se maneja desde un diccionario. #Si el celular no es de la persona buscada se continua con la #siguiente iteración.
#A la función de borrar se le pasa el identificador del mensaje if droid.smsGetMessages(0)[1][i]["address"] == numero: identificador = droid.smsGetMessages(0)[1][i]["_id"] print "Borrando mensaje\t",i,droid.smsGetMessages(0)[1][i]["read"],droid.smsGetMessages(0)[1][i]["date"],droid.smsGetMessages(0)[1][i]["address"],droid.smsGetMessages(0)[1][i]["body"] droid.smsDeleteMessage(identificador) else: continue if __name__ == "__main__": #Ejecución de la función Contactos()
La salida del programa es la siguiente:
Devuelve el mensaje que se ha borrado el SMS, el número del mensaje, si está leído, la fecha, el número y el cuerpo del mensaje.
Borrando mensaje 296 1 1285030227398 0xxxyyyzzww Ah bueno... Yo les aviso.
Borrando mensaje 358 1 1283635867054 0xxxyyyzzww Ok. Ahi voy.
No hay comentarios:
Publicar un comentario