Automatische Programmumschaltung aus TV-Genial via Infrarot

Hier können Sie Verbesserungsvorschläg für TVgenial einbringen und diskutieren.
Gebby
Beiträge: 2049
Registriert: 16.06.2002, 15:49
Wohnort: Neusechsland

Beitragvon Gebby » 03.08.2004, 20:48

Wie ich als Laie dem Link entnehme, macht TVgenial wohl keinen Unterschied zwischen der links angeordneten Senderliste und den Spaltenüberschriften. Was nähmlich als Funktion geil wäre ist...

- klickt man auf einen Sender in der Liste links von TVgenial wird nur in TVgenial zum Sender (also zur Spalte) gesprungen und diese angezeigt.
- klickt man dagegen auf die Spaltenüberschrift (Sender), so wird umgeschalten.

Im Augenblick schalten beide Klicks auch um. Kann man das ändern?

ArnF
Beiträge: 3553
Registriert: 16.10.2001, 20:51
Wohnort: Schwaigern, Deutschland

Beitragvon ArnF » 03.08.2004, 21:27

Du hast es richtig erkannt. Könnte man höchstens in TVgenial ändern. Finde den Vorschlag auch nicht schlecht.
Computer lösen Probleme, die es ohne sie überhaupt nicht geben würde.

Gebby
Beiträge: 2049
Registriert: 16.06.2002, 15:49
Wohnort: Neusechsland

Beitragvon Gebby » 03.08.2004, 21:34

ArnF hat geschrieben:Du hast es richtig erkannt.

Ha, meine Mutter hatte es mir immer schon gesagt. Jetzt habe ich auch von dir eine kleine Bestätigung, das ich doof eigentlich nicht bin :lol: :lol: :lol:

@Admin
Kann man das irgendwann, in möglichst naher Zukunft, bitte sofort in TVgenial integrieren :?:
Wunsch

SmartEIB
Beiträge: 25
Registriert: 14.01.2004, 19:15

Beitragvon SmartEIB » 05.08.2004, 13:49

@ArnF
ich habe in der zwischenzeit weitere Versuche gemacht u. a. mit einer neuen Version von IRClient der jetzt auch wait Befehle kann. Leider funktionieren 2stellige Eingabe nicht oder nicht zuverlässig. Da ich aus anderen Anwendung im Netz mittlerweile saubere Ergebnisse hinbekomme, bin ich mir sicher das es nicht an IRTrans liegt sondern an der Schleifensteuerung von TVGChannelChange. Dies wird untermauert von der Beobachtung, dass mit folgender Konstellation IRClient 4 mal aufgerufen wird. Es dürfte ja nur 3 mal aufgerufen werden. Einer der Befehle wird wiederholt.

;|WDR|West Deutscher Rundfunk
0010014 = 1||2||ok
[Commands]
1 = C:\Programme\IRTrans\IRClient.exe 10.0.0.60 dbox2 i wait2000

Seit 2 Tagen habe ich Startprobleme vom Tray. Der Start bricht ab mit einer Meldung TVGChannelChange konnte nicht gestartet werden oder so ähnlich. Wenn ich es dann von Hand starte ist alles OK.

@ArnF habe dir eine MSN Anforderung geschickt.

Gruß Bruno
Wenn bereits der Ansatz falsch ist, so führt strenge Logik unweigerlich zum falschen Ergebnis. Nur Unlogik gibt Dir jetzt noch die Chance, wenigstens zufällig richtig zu liegen.

ArnF
Beiträge: 3553
Registriert: 16.10.2001, 20:51
Wohnort: Schwaigern, Deutschland

Beitragvon ArnF » 05.08.2004, 14:18

Ich glaube nicht, dass ich behauptet habe, IRTrans habe einen Fehler.
Es werden einfach mehrere Instanzen fast zur gleichen Zeit gestartet. Wenn die zweite Instanz vor der ersten den Server kontaktiert, passiert es, dass sich die Zahlen rumdrehen.

In der neuen Version (schon in Testphase), ist da einiges anders. Weitere Befehle können auf vorhergehende warten und man kann Wartepausen einbauen. Außerdem waren in der Mehrfachausführung eines Befehls noch ein paar kleine Fehler.

Hab jetzt alles integriert was hier so vorgeschlagen wurde und machbar war:
- verschiedene Modi/Fernbedienungen
- Autostart sofort in die Reg schreiben und nicht erst bei Programmende
- es müssen nicht alle Tabelleneinträge für einen Sender durchlaufen werden. Gezielte Auswahl einzelner ist möglich

Bisher hab ich nur noch kein Konfigurationsfenster. Das ist auch nicht ganz so simpel. In der ini wird einiges Beschrieben. Sollte das nicht ausreichen, kann man immernoch ein Konfigurationsfenster einbauen.

Ich geb dann Bescheid, wann die neue Version zum Download bereit steht.


Zum MSN-Messenger: Hab deine Anforderung gesehen, aber erst nachdem ich das hier gelesen hab. MSN hat den Nachteil, dass solche Mittteilungen erst angezeigt werden, nachdem man sich neu anmeldet.
Wenn man dauernd online ist wie ich bekommt man solche Meldungen in der Regel dann erst, nachdem T-Online nach 24h die Verbindung beendet und ich mich neu angemeldet hab.
Computer lösen Probleme, die es ohne sie überhaupt nicht geben würde.

ArnF
Beiträge: 3553
Registriert: 16.10.2001, 20:51
Wohnort: Schwaigern, Deutschland

Beitragvon ArnF » 06.08.2004, 01:07

So, Version 2.0 ist jetzt erstmal fertig. Gäb noch einiges, was man einbauen könnte, aber man sollte es auch nicht übertreiben.

Alles was jetzt geht, steht in der zugehörigen Setup.ini. Konfigurationsdialog hab ich noch keinen drin. Das wär noch komplizierter als ich anfangs dachte.
Das liegt zum einen am Konzept:
- Formulare (= Fenster) wissen nichts von den Befehlen. Sie kennen nur das Object, dass Befehle ausführt und benutzen das.
- Das Format der Sender, Befehle und Modi im Speicher ist vom Format in der Datei generell unterschiedlich. Daher ist es schwer aus geladenen Daten eine Setup.ini zu erzeugen.

Ich denke, man kommt auch so zurecht. Wenn es gar nicht geht, muss ich mir eben was einfallen lassen.

Zu IRTrans könnte man auch noch was überlegen, aber erst mal diese Version. Man kann ja immernoch weiterarbeiten.

Wer nicht zurückblättern will, hier gibt's die aktuelle Version:
http://mitglied.lycos.de/arnf/Foren/TVg ... Change.zip

Kurz noch die groben Neuerungen:
- Einführung der Betriebsmodi (besonders für Fernbedienungen). Ohne Modi alles wie bisher
- Bestimmte Tabelleneinträge anwählbar. Z.B. Tabelleneintrag 1 für Modus1 und die anderen für Modus2
- Warten bis vorheriger Befehl fertig, Pause zwischen Mehrfachausführung bei mehreren Tabelleneinträgen und Pause zwischen verschiedenen Befehlen. Alles global und für jeden Befehl an- und abschaltbar.
- Korrektur mehrerer Fehler
Computer lösen Probleme, die es ohne sie überhaupt nicht geben würde.

SmartEIB
Beiträge: 25
Registriert: 14.01.2004, 19:15

Beitragvon SmartEIB » 06.08.2004, 11:16

ArnF hat geschrieben:Verfasst am: 06 Aug 2004 03:07

Ist aber spät geworden!

Also habs mal schnell vor der Arbeit probiert und klappte auf Anhieb. Danke für diese Leistung.

Ein Problem ist mir aber noch aufgefallen. Die Sendertasten müssen ja in der Sendertabelle (TVUID) hinterlegt werden. Wie kann ich für unterschiedliche Fernbedienungen unterschiedliche Tasten belegen:

Z.B. WDR = 12
bei FB1 = 1||2||ok (dbox2)
bei FB2 = 10||2 (diese hat einer Zehertaste)

Gruß Bruno
Wenn bereits der Ansatz falsch ist, so führt strenge Logik unweigerlich zum falschen Ergebnis. Nur Unlogik gibt Dir jetzt noch die Chance, wenigstens zufällig richtig zu liegen.

ArnF
Beiträge: 3553
Registriert: 16.10.2001, 20:51
Wohnort: Schwaigern, Deutschland

Beitragvon ArnF » 06.08.2004, 13:02

Es geht, ist aber ein wenig komplexer.
Ich hab ja geschrieben, dass ein Befehl nicht alle Tabelleneinträge durchlaufen muss. Man kann statt i auch i[2] schreiben, wenn man nur den 2. Eintrag will. Oder i[1..3] für die ersten drei.

Zudem kannst du verschiedene Befehle nehmen mit der Einschränkung {mode=...}

[modi]
fb1 = dbox2
fb2 = andere fb

WDR = 1||10||2||ok

1 = ?.exe i[1,3,4]{mode=fb1}
2 = ?.exe i[2,3]{mode=fb2}


Wenn du einen leichtere Möglichkeit siehst, kannst du gerne Vorschläge machen.

Wichtig: Es werden zwar nie beide Befehle ausgeführt, aber trotzdem dürften sie nicht die gleiche ID haben (1 / 2). Die IDs müssen immer unterschiedlich sein. Der zweite Befehl wird ansonsten nicht geladen (ini-Prinzip)
Computer lösen Probleme, die es ohne sie überhaupt nicht geben würde.

SmartEIB
Beiträge: 25
Registriert: 14.01.2004, 19:15

Beitragvon SmartEIB » 06.08.2004, 16:12

Das Prooblem ist, dass man für die Sender eine unterschiedliche Anzahl von Stellen eingibt. Eine Struktur mit festen Stellen (z.B. mit führender Null wie 0||1||ok) funktioniert leider nicht.

Habe dann versucht mit leeren Stellen zu arbeiten der Form 1||||ok, was aber mit IRClient auch nicht funktioniert (IRClient fordert dann zu einer manuellen eingabe auf).

Eine Lösung wäre wenn du leere Eingabe übergehst:
z.B. 1||||ok
gibt bei
1 = C:\Programme\IRTrans\IRClient.exe 10.0.0.60 dbox2 i[1..3]
nur "1" und "ok" aus.

Gruß Bruno
Wenn bereits der Ansatz falsch ist, so führt strenge Logik unweigerlich zum falschen Ergebnis. Nur Unlogik gibt Dir jetzt noch die Chance, wenigstens zufällig richtig zu liegen.

ArnF
Beiträge: 3553
Registriert: 16.10.2001, 20:51
Wohnort: Schwaigern, Deutschland

Beitragvon ArnF » 06.08.2004, 23:47

Guter Vorschlag, neue Version 2.1, bei der leere Einträge ignoriert werden, ist nur integriert. Hab noch nicht alles auf alle Besonderheiten getestet, sollte aber alle funktionieren.
Jezt kann man z.B. sagen Einträge 1 bis 4 (i[1..4]) gehört zu mode1 imd Einträge 5-8 gehören mode2.

Hoffmal, dass jetzt erst mal alle Funktionen abgedeckt sind.
Computer lösen Probleme, die es ohne sie überhaupt nicht geben würde.

SmartEIB
Beiträge: 25
Registriert: 14.01.2004, 19:15

Beitragvon SmartEIB » 07.08.2004, 07:42

ArnF hat geschrieben:neue Version 2.1, bei der leere Einträge ignoriert werden, ist nur integriert.

Nach einem ersten Test habe ich den Eindruck, dass eine || Stelle nicht ignoriert wird, sondern die Sequenz abgebrochen wird. Dies führt leider nlcht zum gewünschten Ergebnis.

Nimm den Beitrag erstmal zurück. Habe teilweise ein nicht reproduzierbares Verhalten. Es geht mal, dann mal wieder nicht. Versuche es erstmal weiter einzugrenzen.

Gruß Bruno
Zuletzt geändert von SmartEIB am 07.08.2004, 10:44, insgesamt 1-mal geändert.
Wenn bereits der Ansatz falsch ist, so führt strenge Logik unweigerlich zum falschen Ergebnis. Nur Unlogik gibt Dir jetzt noch die Chance, wenigstens zufällig richtig zu liegen.

SmartEIB
Beiträge: 25
Registriert: 14.01.2004, 19:15

Beitragvon SmartEIB » 07.08.2004, 10:41

Gebby hat geschrieben:Wie ich als Laie dem Link entnehme, macht TVgenial wohl keinen Unterschied zwischen der links angeordneten Senderliste und den Spaltenüberschriften. Was nähmlich als Funktion geil wäre ist...

- klickt man auf einen Sender in der Liste links von TVgenial wird nur in TVgenial zum Sender (also zur Spalte) gesprungen und diese angezeigt.
- klickt man dagegen auf die Spaltenüberschrift (Sender), so wird umgeschalten.

Im Augenblick schalten beide Klicks auch um. Kann man das ändern?


Den Wunsch kann ich auch nur unterstreichen. Ich wünsche es mir aber nicht fest, sondern allgemein, dass Klicks Ereignisse auslösen. Was man mit den Ereignissen macht sollte individuell einstellbar sein. So wünsche ich mir auch ein Ereignis der Sendergruppierung links über der Senderliste. In zusammenhang von TVGChannelChange von ArnF könnte man idealerweise die Fernbedienungen umschalten.

Wäre schön wenn sich der admin mal äussern würde, welche Strategie TVG verfolgt bzw. ob dieser sehr flexible allgemeine Wunsch erfolgsaussichten hat. :?:

Gruß Bruno
Wenn bereits der Ansatz falsch ist, so führt strenge Logik unweigerlich zum falschen Ergebnis. Nur Unlogik gibt Dir jetzt noch die Chance, wenigstens zufällig richtig zu liegen.

ArnF
Beiträge: 3553
Registriert: 16.10.2001, 20:51
Wohnort: Schwaigern, Deutschland

Beitragvon ArnF » 07.08.2004, 11:20

Die Frage ist, wie diese Ereignisse aussehen sollen.

Bei so einer Nachricht hat man nur den Typ der Nachricht und zwei Parameter, mit denen man noch Werte übermitteln kann.
Daran kann man nichts ändern, das ist eben in Windows so.

Als Beispiel die Nachricht Senderwechsel:
Typ = 'TVgenialChannelSelect'
Par1: neuer Kanal (TVUID)
Par2: alter Kanal (TVUID)

neuer und alter Kanal können auch identisch sein (daher auch die Option everyMessage in meinem Programm).

Was wir brauchen ist aber eine Nachricht mit mehr als zwei Parametern.

Schön wäre eine Nachricht der Form:
Typ: 'TVgenialMessage'
Par1: Typ der Nachricht (bestimmte Zahlencodes, auch mehrere Codes für einen Typ möglich -> Haupttyp und Untertyp)
Par2: Zeiger auf ein Objekt. Das Objekt beinhaltet weitere Informationen. Der Objekttyp ist variabel, je nach Typ der Nachricht (Par1)

Damit könnte man alle Nachrichten zusammenfassen. Die Probleme dabei sind nur die verschiedenen Speicherbereiche der Anwendungen und ich weiß ich genau, ob es möglich ist, an andere Anwendungen Objekte so zu schicken.
Zum anderen sollten alle Objekte wieder freigegeben werden. TVgenial, also die Anwendung, die das Objekt wieder freigeben müsste, weiß nicht, ob es noch gebraucht wird oder nicht. Einfach nach einer gewissen Zeit wieder freigeben ist auch keine gute Lösung.

So eine Art der Nachricht wäre wirklich toll, aber wohl kaum zu verwirklichen.
Hatte mal ein Beispiel, bei dem so Texte (Strings) übermittelt wurden. Finds aber leider nicht mehr.
Kennt jemand noch eine Möglichkeit wie man über Nachrichten mehr als zwei Parameter übermitteln kann?
Computer lösen Probleme, die es ohne sie überhaupt nicht geben würde.

SmartEIB
Beiträge: 25
Registriert: 14.01.2004, 19:15

Initialisierungsschnittstelle

Beitragvon SmartEIB » 08.08.2004, 10:42

@Arnf
also das mit den leeren Parameter || funktioniert. Lag wohl irgenwie bei mir.

Habe jetzt mal die Initialisierungsschnittstelle in Angriff genommen.
Folgende Parametrierung:


InitializeAtStart = 1
InitializeAtChange = 1

[Modi]
Dbox = dbox2
Fernseher = Philips
Onkyo = Onkyo
Gartenhaus = GrundigFlat
Schlafzimmer = Grundig42
Caption = Fernbedienungen

[Fernseher]
1 = C:\Programme\HSIP\HSIP.exe FSWzein
;1 = Befehl1.exe m n
;2 = Befehl2.exe

[Dbox]
1 = C:\Programme\HSIP\HSIP.exe FSWKomfein


Leider werden die beide Aufrufe bei Umschaltung auf eine andere FB und auch bei Start nicht aufgerufen.

Die Befehlsaufruf selbst funktioniert unter "Start > Ausführen"

Fehler gefunden! Parameter mußten in """" gesetzt werden.


Gruß Bruno
Wenn bereits der Ansatz falsch ist, so führt strenge Logik unweigerlich zum falschen Ergebnis. Nur Unlogik gibt Dir jetzt noch die Chance, wenigstens zufällig richtig zu liegen.

ArnF
Beiträge: 3553
Registriert: 16.10.2001, 20:51
Wohnort: Schwaigern, Deutschland

Beitragvon ArnF » 04.09.2004, 14:54

So, die neue Version ist endlich fertig. Die wichtigste Änderung ist die Log-Datei. Jetzt wird alles mitgeschrieben was passiert. Das ist hilfreich bei fehlerhaften Befehlen.
Zusätzlich hab ich zum Testen noch mein Programm ShowParam mit reingepackt. Das Programm zeigt alle übergebenen Parameter an, so dass man Fehler leichter finden kann. Einfach Exe durch ShowParam ersetzen und schon sieht man was rauskommt.

Sonst wurde noch einiges an den Modi geändert. Steht alles in der Beispieldatei Setup.ini wie man was einrichtet.

Der Download ist gleichgeblieben: http://mitglied.lycos.de/arnf/Foren/TVgenial/TVGChannelChange.zip

Würde mich über Rückmeldungen freuen.
Vielleicht kann Admin es auch in die AddOn-Liste auf TVgenial (http://www.tvgenial.com/addon_frame.htm) mit aufnehmen. Immerhin ist es ein allgemein benutzbares Tool, um auf den Senderwechsel zu reagieren. Vergleichbar mit der Aufnahmeschnittstelle, nur mit wesentlich mehr Möglichkeiten.
Computer lösen Probleme, die es ohne sie überhaupt nicht geben würde.


Zurück zu „Verbesserungsvorschläge“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 9 Gäste