Niños!
Han estado en la oportunidad de que no quieren borrar a alguien de su lista de contactos, les manda mensajes extraños y les quita demasiado tiempo para responder una idiotez del mismo porte que manda?
Pues bien, su amigo Python puede ser de gran ayuda!
Leer la API de pidgin para Dbus puede ser perjudicial para su salud...pero bueh, 20 minutos de lectura, unos cuantos golpes en la cabeza para reajustar las neuronas y programar MAL en Python usando Dive into Python puede ayudar su resto.
Behold!
import re
import dbus, gobject
from dbus.mainloop.glib import DBusGMainLoop
def my_func(account, sender, message, conversation, flags):
lista = ["jci@reallife.com", "somedullname", "restrained"]
# reemplace con sus cuentas favoritas
global a
a = 1
bus = dbus.SessionBus()
obj = bus.get_object("im.pidgin.purple.PurpleService", "/im/pidgin/purple/PurpleObject")
purple = dbus.Interface(obj, "im.pidgin.purple.PurpleInterface")
for recip in lista:
if re.match(recip,sender):
if a == 1:
a = 0
purple.PurpleConvImSend(purple.PurpleConvIm(conversation), \
"Please, speak to the hand.")
# reemplace con su mensaje favorito
else:
a = 1
a=0
dbus.mainloop.glib.DBusGMainLoop(set_as_default=True)
bus = dbus.SessionBus()
bus.add_signal_receiver(my_func,
dbus_interface="im.pidgin.purple.PurpleInterface",
signal_name="ReceivedImMsg")
loop = gobject.MainLoop()
loop.run()
Cuentenle a sus amiguitos! Sea el alma de los asados! Impresione a las chicas!
Las pilas se venden por separado.
"No one can help me," intoned Marvin.
"Yes, sir, well ..."
"Not that anyone tried of course."
-- D. Adams, "The Restaurant at the End of the Universe"
Update : Me acabo de dar cuenta de un bug mas que evidente. El que responda primero, con la respuesta correcta (sorry, mis amiwis del planeta GNOME estan descartados por default), tiene premio. Si, premio.
894 views »