[0.9.0] dreaMote - Dreambox Fernbedienung für das iPhone

  • [0.9.0] dreaMote - Dreambox Fernbedienung für das iPhone

    Bei diesem Projekt handelt es sich um eine native Applikation für das iPhone die über das Webinterface Enigma, Enigma2, Neutrino und SVDRP fernsteuern kann.

    Folgende Funktionen werden unterstützt:
    • Aktuelle Sendung anzeigen (Enigma, Enigma2)
    • Bouquets/Favoriten (TV & bei Enigma2 auch Radio) auflisten, anzappen und EPG anzeigen
    • EPG-Suche (Enigma2)
    • Timer erstellen/löschen/bearbeiten
    • Aufgenommene Filme anzeigen, Löschen und Wiedergabe starten (Enigma, Enigma2 inkl. "Locations", SVDRP)
    • Emulierte Fernbedienung
    • Screenshots anzeigen (nur Enigma/Enigma2 - bei Enigma2 muss natürlich grab installiert sein)
    • Satfinder (Enigma, Enigma2)
    • Lautstärke/Powerstate Regelung
    • Versenden von Nachrichten
    • MediaPlayer-Fernsteuerung (Enigma2, nur der "reguläre" DMM-MediaPlayer)
    • Informationen über Hard-/Software des Receivers (Enigma2)


    Werden bestimmte Eigenschaften von einer Verbindung nicht unterstützt wird diese Option in der Oberfläche ausgeblendet, um das Gesamtbild nicht zu stören.

    Dies wird aller Voraussicht nach die letzte Version sein, die offiziell über Cydia verteilt wird, zur Installation müsst ihr folgendes Repository manuell zu Cydia hinzufügen: http://ritzmo.de/iphone
    Das gehts über Manage -> Sources -> Edit -> Add.

    Die alte Version im AppStore ist soweit obsolet und soll demnächst durch eine neue ersetzt werden. Wenn alles glatt läuft gibt es für die alte Version noch ein Update, das die Übernahme der Settings über einen Umweg erlaubt, ein direktes Update oder Einstellungsübernahme ist NICHT möglich. Das liegt nicht an mir, sondern an Apple.
    Ein genaues Datum wann das Update erscheint gibt es zur Zeit nicht, wird aber hier angekündigt werden!



    Wieso überhaupt noch eine Cydia-Version?
    Nun, das ist eine gute Frage. Im Prinzip gibt es dafür zwei Gründe:
    • Der Versionssprung auf 0.9.0 kommt nicht von ungefähr. Was noch gleich ausschaut, ist vermutlich auch größtenteils so geblieben, aber alles andere wurde intern ziemlich auf den Kopf gestellt (der Patch nur für den wichtigsten selbstgeschriebenen Code beträgt >20k Zeilen). Der Code wurde trotzdem ausgiebig getestet, aber Fehler sind nicht auszuschliessen. 0.9.0 ist für mich der "Release Candidate" von 1.0, die dann über die AppStore vertrieben wird. Also schnell auf Bugsuche, damit ich die vorher noch ausmerzen kann :D
    • Diese Version enthält bereits den Code, der eine Übernahme der Einstellungen aus der Cydia-Version in die AppStore-Version erlaubt. Besser zu früh eine Version verteilen, die dann im richtigen Augenblick alle haben, als dass ich nachher 100-mal die Frage beantworten muss, warum das jetzt nicht so will wie es sollte.




    Für Interessierte findet sich der Quelltext auf Github: git://github.com/ritzmo/dreaMote.git.

    Damit das Programm ausgeführt werden kann muss derzeit vorher ein AppStore-App installiert worden sein, das werde ich mir irgendwann nochmal genauer ansehen aber jetzt muss man erst einmal damit leben :)

    Neu in dieser Version:
    • Überarbeitete GUI, besonders hebt sich nun auch die des iPad deutlicher von der des iPhone/iPod Touch ab.
    • Reduzierter RC-Emulator, wenn das Gerät sich in Landscape-Orientierung befindet
    • "Pull to refresh" in den meisten Listen hinzugefügt.
    • Verlauf für die EPG-Suche
    • Fehlerfälle geben idR eine bessere Rückgabe an den Nutzer
    • Das Übermitteln einiger Zeichen wurde korrigiert (z.B. "&")
    • Enigma2: Aktuelle/Nächste Sendung in Serviceliste aktivierbar, Unterstützung von mehreren Aufnahmeverzeichnissen, MediaPlayer-Frontend, "About Receiver"




    ACHTUNG: Alle Backends wurden nur mit einer aktuellen Gegenseite getestet.
    Besonders bei Enigma2 ist ein aktuelles WebInterface empfehlenswert, da im Laufe der Entwicklung dort von mit Bugs entfernt und Features hinzugefügt wurden, die zwar optional, aber dennoch nützlich sind.



    Die alten Settings sollten wie üblich übernommen werden, wenn nicht tut mir das Leid :)

    Bezüglich des Verbindungstests:
    Es müssen folgende Webanfragen erfolgreich sein damit dieser Test erfolgreich verläuft:
    Enigma: http://<remote address>/xml/boxstatus
    Enigma2: http://<remote address>/web/about
    Neutrino: http://<remote address>/control/info
    SVDRP: Keine - Der SVDRP-Server muss einfach erreichbar sein

    Es werden Boxspezifische Pfade genommen da diese funktion auch für die Typerkennung genutzt wird.

    Schlagen die Anfragen fehl und die Box sicher erreichbar ist kann man einfach diesen Test in der Konfiguration abstellen ;)
    In der Regel erhält man bei einer nicht erreichbaren Gegenseite jetzt trotzdem eine Rückmeldung wenn diese nicht erreichbar ist.

    Besonderer Dank gilt mfgeg für Icons der Fernbedienung, das Programmicon & den Bildern der TabBar, ebenso dem tango Projekt dem die übrigen Icons entstammen - Lizenzinformationen der Icons finden sich hier.
    Ausserdem sind noch das TouchXML-Framework zu erwähnen, SmallSockets, Fredrik Olsson für seinen Code bezüglich NSArray sorted inserts, EGOTableViewPullRefresh, Matt Legend Gemmell's MGSplitViewController, der IntelligentSplitViewController und der MBProgressHUD.
    Homescreen eurer Apple-Geräte noch nicht voll genug?

    dreaMote: Fernbedienung für Dreamboxen
    Mobile WOL: Wake-on-LAN Client für iOS mit optionalem Widget
    My Home Remote: Fernkontrolle für Homematic CCU/CCU2 optimiert für mobile Benutzung

    Dieser Beitrag wurde bereits 11 mal editiert, zuletzt von ritzMo ()

  • wow, interessantes Projekt. Mir war gar nicht klar dass sowas geht mit dem Iphone...
    Wird die Dream dann über Wlan gesteuert oder wie funktioniert das ganze?
    Die Links in deinem Post funktionieren leider nicht.

    Kann man das auf dem Iphone einfach so installieren oder muss man mit dem Iphone erst was machen?
  • Die Dream wird über das WebIf gesteuert, worüber die Daten nun gesendet/empfangen werden hängt natürlich auch davon ab wo du gerade bist und was dem iPhone zur Verfügung steht ;)

    Die Links funktionieren, nur geht der erste absichtlich ins Leere (das Wbb wollte mich die URL ohne Link nicht posten lassen und um überflüssige Zugriffe zu Vermeiden wollte ich nicht die eigentliche URL als Link nehmen) und der zweite ist ein Link zu meinem SVN-Repository. Wenn du nicht weißt was das ist rate ich dir in diesem Fall davon ab, das weiter zu verfolgen - ausserdem ist ein Mac fürs kompilieren Pflicht, da ich das Apple SDK verwendet habe.

    Um das zu installieren muss das iPhone jailbroken sein, dann kann man in Cydia das o.g. Repository hinzufügen.
    Homescreen eurer Apple-Geräte noch nicht voll genug?

    dreaMote: Fernbedienung für Dreamboxen
    Mobile WOL: Wake-on-LAN Client für iOS mit optionalem Widget
    My Home Remote: Fernkontrolle für Homematic CCU/CCU2 optimiert für mobile Benutzung
  • Original von MauritzioGaudino
    denkste, dass auch sowas gehn würde mit der dream?
    hdd-player.de/syabas/showthread.php?tid=3869


    Jein. Zum einen nicht mit so ausführlichen Informationen (Dateiname wird da reichen müssen) und zum anderen nur mit Enigma2 (bei Enigma(1) vermutlich auch über Umwege möglich, aber keine Ahnung - hab selbst auch nur noch Enigma2 Boxen). Bis auf weiteres wird das allerdings nichts, dazu ist der Kosten/Nutzen-Faktor für mich zu schlecht, benutze die Dream nicht (mehr) zum Musikhören.

    Kleines Update aus der Entwicklung: Das Programm kann inzwischen mehrere Verbindungen verwalten ;) Mehr wenn das Update auf dem Feed ist...
    Homescreen eurer Apple-Geräte noch nicht voll genug?

    dreaMote: Fernbedienung für Dreamboxen
    Mobile WOL: Wake-on-LAN Client für iOS mit optionalem Widget
    My Home Remote: Fernkontrolle für Homematic CCU/CCU2 optimiert für mobile Benutzung
  • Hi Ritzmo,

    sehr coole Idee mit der dream-remote für das iphone.
    Ich habe nur leider Probleme das Programm auf meinem iphone zur Kommunikation mit meiner Dreambox zu überreden.

    In deiner "Anleitung" heisst es, man muss vorher ein ein "AppStore-App" installieren. Was soll das sein? Ist das ein Programm aus Cydia oder vom Appstore und wie heisst das genau?

    Im Moment läuft das Programm bei mir zwar, es passiert aber nichts wenn man auf Service, Timers u.s.w. tippt. Es kommt immer nur eine leere Liste.
    Ein Feedback, ob das Programm eine generelle Verbindung zur Box herstellen kann wäre eine super Sache. Wäre es nicht möglich dabei gleich abzufragen, welches enigma auf der anderen Seite "funkt"? Dann könnte man sich die Umstellung in den Setting sparen.

    Viele Grüße

    Alex
  • Original von rabe2
    In deiner "Anleitung" heisst es, man muss vorher ein ein "AppStore-App" installieren. Was soll das sein? Ist das ein Programm aus Cydia oder vom Appstore und wie heisst das genau?

    Es läuft doch bei dir, also betrifft dich das nicht ;)
    "AppStore-Programm" sollte doch aussagekräftig genug sein. Irgendein Programm aus dem AppStore - sonst kommt die Meldung "Programm kann nicht gestartet werden" (und das tut es dann auch nicht :))...

    Original von rabe2
    Im Moment läuft das Programm bei mir zwar, es passiert aber nichts wenn man auf Service, Timers u.s.w. tippt. Es kommt immer nur eine leere Liste.
    Ein Feedback, ob das Programm eine generelle Verbindung zur Box herstellen kann wäre eine super Sache.

    Ja, steht auf meiner Liste - auch dass sich das Programm nicht (mehr oder weniger) aufhängt wenn die Verbindung abbricht :D
    Habe mich für die nächste Version mit dem Aufräumen des Codes und genereller Nutzbarkeit in einigen Punkten beschäftigt (zusätzlich zu der Unterstützung mehrerer Services, bei der ich auch noch ein, zwei kleinere Usability-Problemchen lösen müsste ;)).

    Original von rabe2
    Wäre es nicht möglich dabei gleich abzufragen, welches enigma auf der anderen Seite "funkt"? Dann könnte man sich die Umstellung in den Setting sparen.

    Jein. Grundsätzlich schon und die Idee hatte ich auch. Allerdings wären das immer mindestens (<Verfügbare Verbindungsbakends> - 1) Abfragen. Da ich mir die Möglichkeit offen halten will weitere Endgeräte zu unterstützen ist das natürlich dann keine optimale Lösung. Ein "autodetect once" in den Settings wäre da vielleicht ein Kompromiss.


    Nochmal zurück zu den Settings, hier mal was aus den Benutzereingaben gebastelt wird.
    Remote Address: $ra
    Username: $u
    Password: $p

    Wenn Passwort leer: $ra
    Sonst: $u:$p@$ra

    Namensauflösung sollte kein Problem sein, habe ich aber persönlich nicht getestet (die genutzten Komponenten unterstützen dies aber afair).
    Homescreen eurer Apple-Geräte noch nicht voll genug?

    dreaMote: Fernbedienung für Dreamboxen
    Mobile WOL: Wake-on-LAN Client für iOS mit optionalem Widget
    My Home Remote: Fernkontrolle für Homematic CCU/CCU2 optimiert für mobile Benutzung
  • Also bei funzt das nicht.
    Ich habe meine Benutzerdaten 100%tig richtig eingegeben und kriege immer nur leere Seiten.
    Ich benutze im Passwort ein paar Sonderzeichen ($ und %). Kann es sein, dass es da Problem gibt?

    EDIT: Bingo! Wenn Sonderzeichen im Passwort enthalten sind geht es nicht!
    Ich habe jetzt mein Passwort geändert und schon geht was...

    Viele Grüße

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von rabe2 ()

  • I found few bugs when using dreaMote together with Jade (enigma 1) from pli-images.org.

    Remote control:
    - Menu and Exit buttons dont work at all
    - TV button opens radio and Radio button opens TV mode

    Timers menu has weird text encoding. EPG and movies menu shows correct characters. See the attached screenshot.
    But I am very pleased with your app, keep up the good work!
    Bilder
    • IMG_0001.png

      45,76 kB, 320×480, 2.062 mal angesehen
  • Original von Goodwill
    Remote control:
    - Menu and Exit buttons dont work at all

    Known Issue, fixes in SVN.

    Original von Goodwill
    - TV button opens radio and Radio button opens TV mode

    That one was new to me though :)

    Original von Goodwill
    Timers menu has weird text encoding. EPG and movies menu shows correct characters. See the attached screenshot.

    Have not seen (or heard) this before. I'll see if I come up with something but don't count on it for the next release...
    Homescreen eurer Apple-Geräte noch nicht voll genug?

    dreaMote: Fernbedienung für Dreamboxen
    Mobile WOL: Wake-on-LAN Client für iOS mit optionalem Widget
    My Home Remote: Fernkontrolle für Homematic CCU/CCU2 optimiert für mobile Benutzung
  • Originally posted by ritzMo
    Original von Goodwill
    - TV button opens radio and Radio button opens TV mode

    That one was new to me though :)


    I was playing with these two buttons a bit, there is really something weird with them, because TV button always starts recording when watching TV, though its common to start recording by RADIO button instead. Touching RADIO button doesnt do anything.
  • Nope... at least not in the near future. To prevent the question why I decided to do so: Even though I could I don't want to charge for the program right now - this of course also means that I would have to cover apple's fee myself and this is currently not an option ;)
    Homescreen eurer Apple-Geräte noch nicht voll genug?

    dreaMote: Fernbedienung für Dreamboxen
    Mobile WOL: Wake-on-LAN Client für iOS mit optionalem Widget
    My Home Remote: Fernkontrolle für Homematic CCU/CCU2 optimiert für mobile Benutzung
  • Original von ritzMo
    *Version bump*

    Das Update sollte automatisch von Cydia gefunden werden. Weitere Informationen dazu finden sich im ersten Post.


    Hallo ritzMo,
    ich finde die Dreamote echt klasse habe aber jetzt nach dem Update das Problem, dass die Dreamote die Drembox nicht mehr findet. Ich bekomme immer den Fehler Entfernter Host nicht erreichbar.... jedoch kann ich im Safari Browser problemlos auf das Enigma Webinterface zugreifen.

    Hättest du einen Tipp was ich tun kann, oder in welchem Verzeichnis ich was löschen sollte. Ich habe die Dreamote schon komplett deinstalliert und neu installiert. Dabei ist mir aufgefallen, dass die alten Konfigurationsdaten der Dreambox bereits eingetragen waren. Also erfolgt die Deinstallation nicht richtig sauber.

    Gruß Key
  • Originally posted by Key78
    Ich bekomme immer den Fehler Entfernter Host nicht erreichbar.... jedoch kann ich im Safari Browser problemlos auf das Enigma Webinterface zugreifen.

    Es müssen folgende Webanfragen erfolgreich sein damit dieser Test erfolgreich verläuft:
    Enigma: <box-ip>/xml/boxstatus
    Enigma2: <box-ip>/web/about
    Neutrino: <box-ip>/control/info

    Es werden Boxspezifische Pfade genommen da diese funktion auch für die Typerkennung genutzt wird.

    Schlagen die Anfragen fehl und du weißt dass die Box erreichbar ist stell einfach diesen Test in der Konfiguration ab ;)

    Originally posted by Key78
    Ich habe die Dreamote schon komplett deinstalliert und neu installiert. Dabei ist mir aufgefallen, dass die alten Konfigurationsdaten der Dreambox bereits eingetragen waren. Also erfolgt die Deinstallation nicht richtig sauber.


    Das ist beabsichtigt. :P
    Homescreen eurer Apple-Geräte noch nicht voll genug?

    dreaMote: Fernbedienung für Dreamboxen
    Mobile WOL: Wake-on-LAN Client für iOS mit optionalem Widget
    My Home Remote: Fernkontrolle für Homematic CCU/CCU2 optimiert für mobile Benutzung