Hilfe...
ich komme einfach nicht weiter. Ich versuche per Python nen EPG Eintrag per dbus2vdr Plugin zu setzen. Mittlerweile glaube ich an einen Fehler im Plugin, aber so ganz sicher bin ich mir nicht.
Das Plugin sagt
" <method name=\"PutEntry\">\n"
" <arg name=\"entryline\" type=\"as\" direction=\"in\"/>\n"
" <arg name=\"replycode\" type=\"i\" direction=\"out\"/>\n"
" <arg name=\"replymessage\" type=\"s\" direction=\"out\"/>\n"
" </method>\n"
Also ein Array of String, per
vdr-dbus-send /EPG epg.PutEntry array:string:"C S19.2E-1-1107-17501 ProSieben","E 62527 1337399520 1320 50 F","T Malcolm mittendrin","S Der Killer-Roboter","D abc","e","c"
gehts nicht, man sieht auch im Quellcode das Syslogmeldungen fehlen und kein einziger Parameter abgearbeitet wird.
Das geht (steht auch so im Readme). Hier kommt auch für jede Zeile ne Syslogmeldung.
vdr-dbus-send /EPG epg.PutEntry string:"C S19.2E-1-1107-17501 ProSieben" string:"E 62527 1337399520 1320 50 F" string:"T Malcolm mittendrin" string:"S Der Killer-Roboter" string:"D dsdssd" string:"e" string:"c"
Allerdings akzeptiert Python hier keine X Stringparameter, Python will nen iterierbares Objekt. Allerdings geht es mit den vielen String Parametern nicht.
bus = dbus.SystemBus()
dbusepg = bus.get_object('de.tvdr.vdr', '/EPG')
t=[]
for line in self.get_svdrpepg().split("\n"):
t.append(dbus.String(line))
t.append(dbus.String(u"."))
e=dbus.Array(t, signature=dbus.Signature("s"))
print e
print dbusepg.PutEntry(e, dbus_interface = 'de.tvdr.vdr.epg')
Das Array e sieht gut aus
dbus.Array([dbus.String(u'C S19.2E-1-1107-17501 ProSieben'), dbus.String(u'E 62527 1337399520 1320 50 F'), dbus.String(u'T Malcolm mittendrin'), dbus.String(u'S Der Killer-Roboter'), dbus.String(u'D test|dsdssd'), dbus.String(u'e'), dbus.String(u'c'), dbus.String(u''), dbus.String(u'.')], signature=dbus.Signature('s'))
Irgendwie vermute ich das das Plugin eine Reihe von Stringparameter abarbeiten will aber im Interface nen String Array fordert. Und dbussend scheint das egal zu sein.
Hat hier zufällig jemand Ahnung von der Materie?
cu