Используйте dbus, чтобы просто отправить сообщение на Python
У меня есть 2 программы на Python. Я просто хочу отправить сообщение (длинную строку) от одного к другому, и я хочу использовать dbus. Теперь, есть ли простой способ сделать это?
Например, если сообщение очень маленькое, я частично решил проблему, поместив сообщение в путь. Но тогда мне пришлось использовать внешнюю программу dbus-send:
Сервер (питон):
import dbus,gtk
from dbus.mainloop.glib import DBusGMainLoop
DBusGMainLoop(set_as_default=True)
bus = dbus.SessionBus()
def msg_handler(*args,**keywords):
try:
msg=str(keywords['path'][8:])
#...do smthg with msg
print msg
except:
pass
bus.add_signal_receiver(handler_function=msg_handler, dbus_interface='my.app', path_keyword='path')
gtk.main()
Клиент (bash :():
dbus-send --session /my/app/this_is_the_message my.app.App
Есть ли способ написать клиент на Python? или также, есть ли лучший способ достичь того же результата?