Ankündigung

Einklappen
Keine Ankündigung bisher.

Siri-Proxy - wer hat know how und will mitbasteln?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Bodo
    antwortet
    Warten auf das iPhone

    Zitat von netsrac Beitrag anzeigen
    Hat das schon jemand zum Laufen bekommen?! Will bei mir nicht wirklich...es hageln nur so von Fehlermeldungen
    Hoi

    Noch nicht, ich warte noch auf meine Siri.

    Einen Kommentar schreiben:


  • netsrac
    antwortet
    Hat das schon jemand zum Laufen bekommen?! Will bei mir nicht wirklich...es hageln nur so von Fehlermeldungen

    Code:
    [INFO ]: [iPhone]: [2012-09-27 08:36:57]: Connection made.
    [ERROR]: [iPhone]: [2012-09-27 08:37:11]: Error matching packet!
    [ERROR]: [iPhone]: [2012-09-27 08:37:11]: 33 30 46 33 33 30 43 30 33 30
    [ERROR]: [iPhone]: [2012-09-27 08:37:11]: Error matching packet!
    [ERROR]: [iPhone]: [2012-09-27 08:37:11]: 35 46 31 30 31 34 36 33 36 46
    [WARN ]: [iPhone]: [2012-09-27 08:37:11]: ROGUE PACKET!!! WHAT IS IT?! TELL US!!! IN IRC!! COPY THE STUFF FROM BELOW
    Unhandled Error
    Traceback (most recent call last):
      File "/usr/local/lib/python2.6/dist-packages/Twisted-12.1.0-py2.6-linux-i686.egg/twisted/python/log.py", line 84, in callWithLogger
        return callWithContext({"system": lp}, func, *args, **kw)
      File "/usr/local/lib/python2.6/dist-packages/Twisted-12.1.0-py2.6-linux-i686.egg/twisted/python/log.py", line 69, in callWithContext
        return context.call({ILogContext: newCtx}, func, *args, **kw)
      File "/usr/local/lib/python2.6/dist-packages/Twisted-12.1.0-py2.6-linux-i686.egg/twisted/python/context.py", line 118, in callWithContext
        return self.currentContext().callWithContext(ctx, func, *args, **kw)
      File "/usr/local/lib/python2.6/dist-packages/Twisted-12.1.0-py2.6-linux-i686.egg/twisted/python/context.py", line 81, in callWithContext
        return func(*args,**kw)
    --- <exception caught here> ---
      File "/usr/local/lib/python2.6/dist-packages/Twisted-12.1.0-py2.6-linux-i686.egg/twisted/internet/posixbase.py", line 614, in _doReadOrWrite
        why = selectable.doRead()
      File "/usr/local/lib/python2.6/dist-packages/Twisted-12.1.0-py2.6-linux-i686.egg/twisted/internet/tcp.py", line 203, in doRead
        return self._dataReceived(data)
      File "/usr/local/lib/python2.6/dist-packages/Twisted-12.1.0-py2.6-linux-i686.egg/twisted/internet/tcp.py", line 209, in _dataReceived
        rval = self.protocol.dataReceived(data)
      File "/usr/local/lib/python2.6/dist-packages/Twisted-12.1.0-py2.6-linux-i686.egg/twisted/protocols/tls.py", line 413, in dataReceived
        self._flushReceiveBIO()
      File "/usr/local/lib/python2.6/dist-packages/Twisted-12.1.0-py2.6-linux-i686.egg/twisted/protocols/tls.py", line 383, in _flushReceiveBIO
        ProtocolWrapper.dataReceived(self, bytes)
      File "/usr/local/lib/python2.6/dist-packages/Twisted-12.1.0-py2.6-linux-i686.egg/twisted/protocols/policies.py", line 118, in dataReceived
        self.wrappedProtocol.dataReceived(data)
      File "/usr/local/lib/python2.6/dist-packages/Twisted-12.1.0-py2.6-linux-i686.egg/twisted/protocols/basic.py", line 572, in dataReceived
        return self.rawDataReceived(data)
      File "/home/oscar/src/knx/SiriProxy/pysiriproxy-svn/pysiriproxy/connections/connection.py", line 190, in rawDataReceived
        self.__processCompressedData()
      File "/home/oscar/src/knx/SiriProxy/pysiriproxy-svn/pysiriproxy/connections/connection.py", line 214, in __processCompressedData
        while self.__hasNextObject():
      File "/home/oscar/src/knx/SiriProxy/pysiriproxy-svn/pysiriproxy/connections/connection.py", line 252, in __hasNextObject
        self.log.warn(unpacked.to_hex)
    exceptions.AttributeError: 'str' object has no attribute 'to_hex'
    [WARN ]: [iPhone]: [2012-09-27 08:37:11]: ROGUE PACKET!!! WHAT IS IT?! TELL US!!! IN IRC!! COPY THE STUFF FROM BELOW
    Unhandled Error
    Traceback (most recent call last):
      File "./siriproxy", line 111, in <module>
        reactor.run()
      File "/usr/local/lib/python2.6/dist-packages/Twisted-12.1.0-py2.6-linux-i686.egg/twisted/internet/base.py", line 1169, in run
        self.mainLoop()
      File "/usr/local/lib/python2.6/dist-packages/Twisted-12.1.0-py2.6-linux-i686.egg/twisted/internet/base.py", line 1181, in mainLoop
        self.doIteration(t)
      File "/usr/local/lib/python2.6/dist-packages/Twisted-12.1.0-py2.6-linux-i686.egg/twisted/internet/epollreactor.py", line 379, in doPoll
        log.callWithLogger(selectable, _drdw, selectable, fd, event)
    --- <exception caught here> ---
      File "/usr/local/lib/python2.6/dist-packages/Twisted-12.1.0-py2.6-linux-i686.egg/twisted/python/log.py", line 84, in callWithLogger
        return callWithContext({"system": lp}, func, *args, **kw)
      File "/usr/local/lib/python2.6/dist-packages/Twisted-12.1.0-py2.6-linux-i686.egg/twisted/python/log.py", line 69, in callWithContext
        return context.call({ILogContext: newCtx}, func, *args, **kw)
      File "/usr/local/lib/python2.6/dist-packages/Twisted-12.1.0-py2.6-linux-i686.egg/twisted/python/context.py", line 118, in callWithContext
        return self.currentContext().callWithContext(ctx, func, *args, **kw)
      File "/usr/local/lib/python2.6/dist-packages/Twisted-12.1.0-py2.6-linux-i686.egg/twisted/python/context.py", line 81, in callWithContext
        return func(*args,**kw)
      File "/usr/local/lib/python2.6/dist-packages/Twisted-12.1.0-py2.6-linux-i686.egg/twisted/internet/posixbase.py", line 627, in _doReadOrWrite
        self._disconnectSelectable(selectable, why, inRead)
      File "/usr/local/lib/python2.6/dist-packages/Twisted-12.1.0-py2.6-linux-i686.egg/twisted/internet/posixbase.py", line 264, in _disconnectSelectable
        selectable.connectionLost(failure.Failure(why))
      File "/usr/local/lib/python2.6/dist-packages/Twisted-12.1.0-py2.6-linux-i686.egg/twisted/internet/tcp.py", line 287, in connectionLost
        protocol.connectionLost(reason)
      File "/usr/local/lib/python2.6/dist-packages/Twisted-12.1.0-py2.6-linux-i686.egg/twisted/protocols/tls.py", line 456, in connectionLost
        self._flushReceiveBIO()
      File "/usr/local/lib/python2.6/dist-packages/Twisted-12.1.0-py2.6-linux-i686.egg/twisted/protocols/tls.py", line 383, in _flushReceiveBIO
        ProtocolWrapper.dataReceived(self, bytes)
      File "/usr/local/lib/python2.6/dist-packages/Twisted-12.1.0-py2.6-linux-i686.egg/twisted/protocols/policies.py", line 118, in dataReceived
        self.wrappedProtocol.dataReceived(data)
      File "/usr/local/lib/python2.6/dist-packages/Twisted-12.1.0-py2.6-linux-i686.egg/twisted/protocols/basic.py", line 572, in dataReceived
        return self.rawDataReceived(data)
      File "/home/oscar/src/knx/SiriProxy/pysiriproxy-svn/pysiriproxy/connections/connection.py", line 190, in rawDataReceived
        self.__processCompressedData()
      File "/home/oscar/src/knx/SiriProxy/pysiriproxy-svn/pysiriproxy/connections/connection.py", line 214, in __processCompressedData
        while self.__hasNextObject():
      File "/home/oscar/src/knx/SiriProxy/pysiriproxy-svn/pysiriproxy/connections/connection.py", line 252, in __hasNextObject
        self.log.warn(unpacked.to_hex)
    exceptions.AttributeError: 'str' object has no attribute 'to_hex'

    Einen Kommentar schreiben:


  • 2ndsky
    antwortet
    Jo, denke auch gerade über eine Integration in smarthome.py nach... aber das Russound Plugin hat jetzt erstmal vorrang... wenn der Tag doch nur mehr als 24 Stunden hätte

    Einen Kommentar schreiben:


  • Bodo
    antwortet
    SUPIDUPI, freu mich schon

    Hoi

    Ist ja voll GEIL !!!

    Dann kann ich den ganzen Ruby Mist von meinem Linux Miniserver wieder runter schmeissen und es endlich auf dem WG 24/7 laufen lassen.
    Dann muss doch das iPhone5 her. Mist

    Einen Kommentar schreiben:


  • 2ndsky
    antwortet
    wie wärs mit Python: pysiriproxy - A port of SiriProxy to Python. - Google Project Hosting

    Einen Kommentar schreiben:


  • makki
    antwortet
    Und..?

    Das Hauptproblem ist dieser Ruby-schmarrn (Primärziel: "Entwickler" schaltet den Sysadmin aus)
    Vernünftige Webserver können das aus der Box - wenn natürlich der Ruby-Hippi denkt er muss sich das selber neu erfinden funzt das nichtmehr
    Deswegen geht das so auch IMHO garnicht!
    Ohne i*, mit rein kommerziellen Ansichten daher auch: wenn dann neu in PHP o.ä. ..

    Makki

    Einen Kommentar schreiben:


  • netsrac
    antwortet
    Zitat von makki Beitrag anzeigen
    Ja, macht apple selbst ja nicht anders (das Zertifikat für beide laute auf *.kryten... - man beachte den Punkt davor)
    Leider nicht ganz...ein Zertifikat auf *.kryten...würde ja für kryten.axxle.com selbst nicht laufen.

    Sind auch zwei unterschiedliche Zertifikate...(siehe screenshots)

    Wenn ich das richtig verstehe, dann wäre die einzige Möglichkeit, wirklich *.axxle.com als Zertifikat zu erstellen, dass müsste ja dann sowohle de-de.kryten.axxle.com als auch kryten.axxle.com auflösen.
    Angehängte Dateien

    Einen Kommentar schreiben:


  • makki
    antwortet
    Zitat von netsrac Beitrag anzeigen
    Kann ich denn mein Common Name (CN) einfach eine Wildcard domain angeben - also sowas wie *.axxle.com. Oder vielleicht sogar *kryten.axxle.com?!
    Ja, macht apple selbst ja nicht anders (das Zertifikat für beide laute auf *.kryten... - man beachte den Punkt davor)

    Das umzuschreiben halte ich für erheblich einfacher, als den Ruby-Plempel zu verstehen, aber ich kann hier nur beraten

    Makki

    Einen Kommentar schreiben:


  • netsrac
    antwortet
    Wie schon geschrieben, connected das iPad3 mit iOS6 wahlweise auf

    de-de.kryten.axxle.com
    kryten.axxle.com

    Wenn ich das Zertifikat für de-de.kryten.a**le.com erstelle, funktioniert es eigentlich immer mit dem Proxy. Wenn er aber nun auf kryten.a**le.com connecten will, dann fällt er auf die Nase, da ja das Zertifikat nicht (mehr) stimmt.

    Kann ich denn mein Common Name (CN) einfach eine Wildcard domain angeben - also sowas wie *.axxle.com. Oder vielleicht sogar *kryten.axxle.com?!

    Irgendwelche SSL Experten unter uns?!

    Danke...Netstac

    Einen Kommentar schreiben:


  • Bodo
    antwortet
    Hoi

    Ah ok. Ich schau mir das heute Abend an. Merci
    Hört sich machbar an.

    Einen Kommentar schreiben:


  • netsrac
    antwortet
    Zitat von Bodo Beitrag anzeigen
    Hoi

    Wenn ich verstehen würde wo ich ansetzen muss...
    Was genau muss das PHP bereitstellen?
    Wohin muss es etwas übergeben?
    Vielleicht kann mir das jemand kurz schematisch aufzeigen?
    Es geht doch eigentlich nur um ein paar URL's und es muss ein Proxy laufen?!
    Naja, ganz so einfach wird es doch nicht sein...erstmal hier ein interessanter Link um zu verstehen, wie Siri eigentlich funktioniert:

    [link]http://www.golem.de/1111/87751.html[/link]

    Das PHP muss also die Requests vom iOS Gerät entgegen nehmen und entsprechen bestätigen. Dann die Anfrage an den entsprechenden Apple-Server weitergeben. Als Antwort gibt's dann den gesprochenen Text als Zeichen zurück. Hier kommt dann die eigene Interpretation ins Spiel, bzw. wenn es kein "Match" gibt, weiterleiten ans iPhone.

    Dannach kann man Text wieder in Sprache umsetzen lassen.

    Dich denke mit dem Verständnis für's Protokoll sowie einen Blick in die Sourcen müsste man sowas in PHP oder vielleicht auch Perl gut umsetzen können. Ist lediglich eine Frage der Zeit :-(


    Gruß, Netsrac

    Einen Kommentar schreiben:


  • Bodo
    antwortet
    Gebt mir den Anfang des Wollknäuels...

    Zitat von Tachy Beitrag anzeigen
    Ist eigentlich schon jemand dabei, den ganzen Ruby-Quatsch in PHP umzuschreiben?
    Hoi

    Wenn ich verstehen würde wo ich ansetzen muss...
    Was genau muss das PHP bereitstellen?
    Wohin muss es etwas übergeben?
    Vielleicht kann mir das jemand kurz schematisch aufzeigen?
    Es geht doch eigentlich nur um ein paar URL's und es muss ein Proxy laufen?!

    Einen Kommentar schreiben:


  • netsrac
    antwortet
    Okay...ich habe "das Schwein" gefunden... :-)

    Bei iOS6 ist es nicht mehr "guzzoni", sondern "kryten". So weit so gut, das wusste ich auch und habe es entsprechend geändert.

    Für das deutsche Siri wird dabei aber auf "de-de.kryten.a**le.com" connected. Also muss das Zertifikat auch für "de-de.kryten.a**le.com" ausgestellt werden.

    Da soll mal jemand drauf kommen :-)

    Aber was findet man über die Logfiles des DNS servers nicht alles raus :-)


    Vielleicht hilft's ja auch noch jemand anderen...

    Netsrac

    Zitat von netsrac Beitrag anzeigen
    Bin ein wenig am verzweifeln. Wenn ich es nicht schonmal laufen hätte, würde ich ja einfach sagen, dass es nicht geht. Aber es ging schonmal...frage mich nur, wass jetzt das Problem ist:

    Bekomme immer folgende Meldung, wenn das iPad connected:

    Code:
    Starting SiriProxy on port 443..
    Create server for iPhone connection
    start conn #<SiriProxy::Connection::Iphone:0xa4621c0 @signature=3, @processed_headers=false, @output_buffer="", @input_buffer="", @unzipped_input="", @unzipped_output="", @unzip_stream=#<Zlib::Inflate:0xa462080>, @zip_stream=#<Zlib::Deflate:0xa46206c>, @consumed_ace=false, @name="iPhone", @ssled=false>
    [Info - Plugin Manager] Plugins laoded: [#<SiriProxy::Plugin::Example:0x9f076a8 @manager=#<SiriProxy::PluginManager:0xa461dd8 @plugins=[...]>>]
    Create server for iPhone connection
    start conn #<SiriProxy::Connection::Iphone:0x9f07414 @signature=4, @processed_headers=false, @output_buffer="", @input_buffer="", @unzipped_input="", @unzipped_output="", @unzip_stream=#<Zlib::Inflate:0x9f07180>, @zip_stream=#<Zlib::Deflate:0x9f07158>, @consumed_ace=false, @name="iPhone", @ssled=false>
    [Info - Plugin Manager] Plugins laoded: [#<SiriProxy::Plugin::Example:0x9efb740 @manager=#<SiriProxy::PluginManager:0x9f06960 @plugins=[...]>>]
    Create server for iPhone connection
    start conn #<SiriProxy::Connection::Iphone:0xa59b8d4 @signature=5, @processed_headers=false, @output_buffer="", @input_buffer="", @unzipped_input="", @unzipped_output="", @unzip_stream=#<Zlib::Inflate:0xa59d314>, @zip_stream=#<Zlib::Deflate:0xa59d56c>, @consumed_ace=false, @name="iPhone", @ssled=false>
    [Info - Plugin Manager] Plugins laoded: [#<SiriProxy::Plugin::Example:0xa2f7038 @manager=#<SiriProxy::PluginManager:0xa2821e8 @plugins=[...]>>]
    Create server for iPhone connection
    start conn #<SiriProxy::Connection::Iphone:0xa1d2400 @signature=6, @processed_headers=false, @output_buffer="", @input_buffer="", @unzipped_input="", @unzipped_output="", @unzip_stream=#<Zlib::Inflate:0xa23413c>, @zip_stream=#<Zlib::Deflate:0xa23440c>, @consumed_ace=false, @name="iPhone", @ssled=false>
    [Info - Plugin Manager] Plugins laoded: [#<SiriProxy::Plugin::Example:0xa13c630 @manager=#<SiriProxy::PluginManager:0xa236630 @plugins=[...]>>]

    Einen Kommentar schreiben:


  • makki
    antwortet
    Zitat von Tachy Beitrag anzeigen
    Ist eigentlich schon jemand dabei, den ganzen Ruby-Quatsch in PHP umzuschreiben?
    Mangels i* ich mal nicht aber 100% ACK!
    Dieser Ruby-Plempel geht mal garnicht

    Makki

    Einen Kommentar schreiben:


  • muerlemann
    antwortet
    hast du mal guzzoni.apple.com in deinem Netzwerk gepingt? Antwortet dann der Proxy?
    Wenn ja dann erstelle doch nochmal ein Zertifikat.....vielleicht ist da was schief gelaufen.
    MFG Andi

    Einen Kommentar schreiben:

Lädt...
X