Stand DoorPi 3

  • Da schon öfters Fragen kamen, versuche ich hier den aktuellen Stand zusammenzufassen:


    - die Grundaufbau von DoorPi läuft in der neuen Struktur (siehe Beispiel hier: https://github.com/motom001/WorkLikeACompany)
    - Config ist auf JSON umgestellt und wird damit wesentlich flexibler
    - Module-Dokumentation ist jetzt als Quellcode umgesetzt
    - Interface-Basis-Klasse steht und funktioniert
    - erste Interfaces sind ebenfalls abgebildet (doorpi.plugins.interfaces.web.webservice und doorpi.plugins.interfaces.communication.telegram.bot)
    - alles unter Windows10 lauffähig (macht die Entwicklung einfach schneller und komfortabler)
    - Python 2 und 3 kompatibel (bisher)


    Noch offen:
    - Webinterface anpassen und Wizards zur Erstellung und Konfiguration der Interfaces auf Basis der vorliegenden Doku (30%)
    - Interface doorpi.plugins.interfaces.hardware.gpio (aktuell 95%)
    - Interface doorpi.plugins.interfaces.software.filesystem.watchdog (aktuell 60%)
    - Interface doorpi.plugins.interfaces.hardware.spi.piface (aktuell 0%)
    - Interface doorpi.plugins.interfaces.sipphone.linphone (aktuell 20%)
    - und viele weitere Sachen...


    Ich vermute, dass ich Mitte / Ende Juni ein erstes lauffähiges Release habe.



    Der große Vorteil der neuen Grundstruktur:


    Bisher läuft DoorPi als einzelner Prozess und baut einen Thread für den event_handler auf. Sobald Events eintreffen wird jeweils ein neuer Thread gestartet. Es gibt keine Priorisierung, kein TimeOut und keine Bedingungen unter den das Events weiter ausgeführt wird. Auch die Aktionen hinter diesem Event sind starr und seriell.


    Der neue DoorPi Unterbau nutzt eine Queue und ständig bereit stehende Threads (aktuell bei mir 25). Jeder dieser Threads wartet auf neue Nachrichten in der Queue und nimmt sich die Nachricht mit der höhsten Priorität als erstes. Dann wird es ein wenig kompliziert und es können aus diesem Event n-verschiedene Aktionen (je nachdem was alles gemacht werden soll) werden, die jede für sich auch in der Queue laden. So dreht sich das Ganze bis alle Nachrichten aus der Queue abgearbeitet sind.



    Als Anlage ein kleiner Screenshot, wenn sich DoorPi per Telegram meldet :)

  • Willst du vorher Beta testen?

    Das ist noch zu früh...
    Ich teste und entwickle auf einem Windows 10 PC und auf einem PiB+ mit PiFace. So wie es jetzt aussieht, macht es aber keinen Sin die Version zu veröffentlichen, da ich dann mehr Nachfragen habe, als Nutzen daraus.
    Wenn die Weboberfläche im Grundgerüst steht, dann komme ich gern auf Beta-Tester zurück...

  • Das ist eines der Ziele. Vielleicht will jemand DoorPi nicht auf eine Pi laufen lassen, sondern auf einem Mini-PC. Grundsätzlich sollte dann auch das möglich sein.

    Hier würde ich mich als Beta Tester melden! Ich arbeite parallel noch an einem Win 10 IoT Projekt. Wenn es soweit ist, sag einfach bescheid. :)

  • Hallo,


    verfolge das Forum schon seit geraumer zeit und wollte an dieser Stelle auch mal eine Frage stellen ;-)
    Die meisten meiner Fragen werden schon vorab beantwortet.


    Frage: Gibt es schon einen neuen Stand bzgl. DoorPi auf Windows 10 IoT?


    Falls ja auch eine Dokumentation?



    Vielen Dank und nochmal ein großes TOP für die Tolle Arbeit!


    VG
    Pushkin

  • Bei mir liegt gerade viel im Privaten an und da ich so ziemlich der einzige Programmierer bin, muss es eben warten. Der Entwicklungsstand ist nach wie vor bei ca. 25% und ist eine komplette Neuprogrammierung. Ob, wie und wan ich davon etwas veröffentliche, kann ich aktuell nicht mit Gewissheit sagen.


    Wer mitmachen will ist recht herzlich eingeladen...

  • Da fehlen mir leider sowohl Zeit als auch Fähigkeiten. Ich wäre Dir daher vermutlich keine große Hilfe. Aber lass Dir Zeit. Mein DoorPi läuft bis auf das Echo-Problem soweit absolut stabil und zufrieden stellend.


    Gruß,


    Thorsten

  • Hallo,


    ich mache mir natürlich auch Gedanken um Python 2.7 und die weitere Entwicklung. Es wirkt so, als wäre seit 3 Jahren Stillstand, neue / adaptierte Keyboards finden offenbar keinen Einzug in das GIT-Repository.


    @motom001: wie kann man Dir helfen? Leider sind meine Python-Fähigkeiten nicht allzu weit her, aber ich habe Willen;-)

  • Mein Ansatz ist dazu jetzt erst mal den DoorPi ans laufen zu bekommen und dann wird er wohl ganz allein auf einem Pi wohnen und solange er funktioniert nicht mehr angerührt werden. Denke das ist im Moment die beste Möglichkeit. So weit ich das sehen machen das die wo ihn schon seit einigen Jahren betreiben auch nicht anders. Der Pi ist denke ich dann auch nicht vom Internet gefährdet da er nur im Netzwerk unterwegs ist und intern mit dem Asterisk Server kommuniziert. Dieser ruft dann die Teilnehmer an. Wie das funktioniert wenn die Smartphones im Mobilnetz sind und wie es mit Telegramm funktioniert weiß ich allerdings noch nicht.


    Wollte ursprünglich auch noch den Asterisk Server und eventuell eine kleine Cloud darauf installieren, dafür verwende ich aber wohl einen weitern Pi.

    Habe jetzt erst gesehen das der Pi4 1Gbit LAN hat, das ist für eine Cloud natürlich viel besser.

    Helfen würde ich gerne, können tu ich es wohl leider nicht. Vermutlich macht es mehr arbeit als das es nutzen bringt.

  • da ich erst vor kurzem angefangen habe mich mit doorpi zu beschaeftigen, habe ich auch interesse daran, dass das projekt bestehen bleibt und evtl. eine doorpi3 version entsteht.

    motom001 wie ist denn da der stand?

    koennte mir schon vorstellen mitzuhelfen (coding, testing, docu ... you name it)

    gibt es neueren code, wo man bei bingup/implementierung helfen koennte? oder ist da nocoh viel konzept-arbeit zu tun?

    oder waere es zu beginn sinnvoller in der aktuellen version bugs/features zu bearbeiten?

    gruss

    andreas