Esta experiência torna possível ler saídas de dados do software mensageiro Pidgin, dentro do puredata com um socket pyhton fazendo a ponte.
Com isso é possível er mensagens enviadas pra você por msn, gtalk, irc e outros dentro do puredata.
No python:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | #!/usr/bin/env python # -*- coding: utf-8 -*- import socket mySocket = socket.socket ( socket.AF_INET, socket.SOCK_STREAM ) mySocket.connect ( ( 'localhost', 2727 ) ) #socket a ser aberto no puredata def recebe_pidgin(account, sender, message, conversation, flags): print sender, "disse:", message #m= sender + ' - '+ message + ';\n;' m=message + ';\n;' m=m.encode('utf-8') m=m.replace('<body>','').replace('</body>','') mySocket.send ( m ) import dbus, gobject from dbus.mainloop.glib import DBusGMainLoop dbus.mainloop.glib.DBusGMainLoop(set_as_default=True) bus = dbus.SessionBus() bus.add_signal_receiver(recebe_pidgin,dbus_interface="im.pidgin.purple.PurpleInterface", signal_name="ReceivedImMsg") loop = gobject.MainLoop() loop.run() |
Salve como socket.py
rode com
#python socket.py
Inicie o Puredata.
no puredata:
1 2 3 4 5 6 | #N canvas 0 0 450 300 10; #X obj 116 106 netreceive 2727; #X floatatom 220 127 5 0 0 0 - - -; #X obj 120 128 print; #X connect 0 0 2 0; #X connect 0 1 1 0; |
Salve este aquivo como pidgin.pd e abra no puredata.
Você verá todas as saídas de texto das pessoas que você conversar, saindo no puredata, agora basta tratalas dentro de qualquer outro patch.
