Posts by Blackman

    Hallo VM,


    von außerhalb geht das nicht, weil du in deinem Programmcode auf eine interne IP (192.168.1.102) verweist:

    Code
    <frame src="http://192.168.1.102:8081" name="links">
      <frame src="http://192.168.1.102:8080/stream" name="rechts">


    Thomas

    Hallo villamarinella,


    du hast einen ganz anderen Fehler gemacht - die default-Datei bei https://www.thomas-krenn.com/d…it_Passwort_sch%C3%BCtzen war hier nur als BEISPIEL aufgelistet damit man sehen kann wo man "AllowOverride" eintragen soll.
    Dadurch dass du das Beispiel einfach übernommen hast, hast du natürlich deine Konfiguration zerschossen.


    Ich weiß nicht ob es dir hilft, aber hier ist diese Datei im Originalzustand auf einem Pi 3 nach dem installieren von Apache:


    (Das ist jetzt die VOLLSTÄNDIGE Datei '/etc/apache2/sites-available/000-default.conf')


    Wie du siehst sieht die ganz anders aus als bei deinem Link.
    Die allow-Override Direkttiven sind bei mir in der Datei '/etc/apache2/apache2.conf' hier die KOMPLETTE Datei:


    Ich hoffe das hilft dir schonmal weiter.


    Thomas

    Vielleicht hilft es dir wenn du im Firefox (oder Chrome) in den Web Developer Tools mal den Netzwerkverkehr beim klicken jedes Buttons aufzeichnest.
    Genau diese Klicks muss dein Pi über das Python Request-Modul auch machen.


    Einfach ist das nicht, aber sicherlich auch nicht unlösbar.
    Im Zweifelsfall musst du uns halt ein paar mehr Infos geben!


    Thomas

    Programmiersprache ist erstmal wichtig, ja :)


    Ich würde dir Python vorschlagen - kann schön LowLevel auf die Pins des Pis zugreifen aber gleichzeitig auch richtige "Computersachen" wie Internetzugriff und Bildbearbeitung machen...
    Außerdem ists deutlich einfacher als C...


    Thomas

    Ich bin auch gespannt...


    Vorallem würde ich gerne wissen wie PHPMAiler denn drum rum kommt dass der empfangende MTA (hotmail.com) einen Reverse-DNS Abgleich macht.
    Normalerweise ist da nämlich für normale DSL-Anschlüsse ende.


    Thomas

    Also ich frage mich ob das Programmieren in C# wirklich sinnvoll möglich ist.
    Ich würde an deiner Stelle vielleicht eher auf Python setzen. Das ist besser in Linux integriert und braucht kein großes Framework...


    Ich lass mich aber gerne eines besseren belehren!


    Thomas

    Hallo Minusbrain,


    dein Pi von zuhause kann keine Mails verschicken denn die meisten Mailserver nehmen Mails von einem DSL-Anschluss einfach nicht an :(
    Lösung ist das installieren von Postfix als sogenannter "Smart Host".
    (Smart Host bedeutet dass dein Pi alle Mails an einen externen Mailaccount weiter gibt. Also z.B. hotmail oder gmx - weil er selbst ja nicht direkt mailen darf!)
    Hier gibts ne Anleitung:
    http://www.dirk-hagedorn.de/?page_id=789
    Und hier gibts noch mal ein paar hilfreiche Sachen:
    https://wiki.ubuntuusers.de/Po…Anhang-Smarthost-Provider


    Bei welchem Mailprovider bist du denn?
    Wenn du magst würde ich das ganze zuhause auf meinem Pi 3 mal für dich machen und hier erklären...


    Thomas

    Meine Empfehlung wäre eine Webservice API zu nehmen.
    Prinzipiell macht dabei ein Pi das folgende:
    Er ruft die URL http://meinwebserver.de/state.php
    auf und gibt im POST den folgenden JSON-String mit:
    {"hostname":"pi1","lightstate":"off"}


    Der Webserver empfängt dass und kann sich somit in seiner Datenbank vermerken dass das Licht auf dem pi1 momentan aus ist.
    Fraglich wäre dann hier noch ob die Pis selber einen Webserver bekommen sollen, damit sie auch Befehle empfangen können, oder aber ob sie einfach minütlich per cronjob ein "getOrder" an den Webservice schicken um sich ihre Befehle abzuholen.


    Wie du merkst bau ich mir sowas immer lieber selbst. Von fertig gebauten Lösungen oder Frameworks halte ich nicht soviel bei so einer trivialen Aufgabe.


    Thomas

    cool:
    Wäre schön wenn du uns (mir) noch mitteilen würdest was an Seafile besser ist als an Owncloud ?
    Auf Anhieb fällt mir nur auf dass Seafile jünger ist als Owncloud und wohl scheinbar in Deutschland entwickelt wird.
    Beide sind aber OpenSource.
    Im Regelfall nutze ich eigentlich immer lieber gerne bekannte Software die von möglichst vielen eingesetzt wird (ich denke da hat Owncloud einen Vorteil gegenüber Seafile), in der Hoffnung dass die Masse der Leute die meisten Bugs schon rausbügeln wird...


    Thomas

    Hallo zusammen,


    ich hab hier ( http://www.thomaschristlieb.de/raspberry-pi3-benchmark/ ) mal ein paar Raspberry Pi 1 und Raspberry Pi 2 Benchmarks mit dem Raspberry Pi 3 verglichen.
    Vielleicht ist es ja für den einen oder anderen interessant.
    Kurzzusammenfassung: Die CPU war bei meinen Tests ~40% schneller, der Speicher 65% schneller.
    Das mit der CPU war erwartet, das mit dem Speicher verwundert mich.
    Leider hab ich momentan keinen Pi1 oder Pi2 laufen mit dem ich vergleichen könnte.


    Wenn noch jemand was auf dem Pi3 Benchmarken will, nur her damit. Der Kleine steht unter dem Schreibtisch zuhause und langweilt sich!


    Thomas

    Hallo Tim,


    um die ID zu bekommen musst du auf jeden Fall noch mal eine Nachricht schicken, das '/start' zählte bei mir nicht als Nachricht.


    Wenn der Bot die Nachricht hat kannst du dir so die chatid holen:

    Code
    url = "https://api.telegram.org/bot" + bottoken + "/getUpdates"
    r = requests.get(url)
    result = r.json()
    lastmessageindex = len(result["result"]) - 1
    chatroomid = result["result"][lastmessageindex]["message"]["chat"]["id"]


    Diese ändert sich nicht, einmal holen reicht also.


    Theoretisch könntest du (wenn die Prozedur 'getFileName()' wirklich einen Filename zurück geben würde das ganze so machen:

    Code
    url = "https://api.telegram.org/bot" + bottoken + "/sendPhoto"
    params = { "chat_id": chatroomid }
    files = { 'photo':open(getFileName(), "rb") }
    r = requests.get(url, params=params, files=files)
    result = r.json()


    Nur gibt deine 'getFileName()' ja momentan eher den Dateinamen einer neuen Datei zurück, und nicht den Namen des schon bestehenden Fotos.
    Das solltest du erstmal aufnehmen :)


    Thomas

    wusa:
    Der Bot wird benötigt wenn du nicht einen vollwertigen Telegram Account nehmen willst, sondern einfach nur einen "dahingeworfenen Bot".
    Prinzipiell sehen die Dinger ziemlich gleich aus, nur dass der Bot leichter über eine (Webservice) Api aus jeder erdenktlichen Programmiersprache ansprechbar ist - weil er eben keine eigene Telegram Installation braucht, so wie Bart das vorgeschlagen hat.


    Der größte Nachteil von Bots ist wohl dass sie selbständig keine Chats eröffnen können. Sie müssen entweder angesprochen oder in eine Gruppe eingeladen werden.


    Wenns jetzt drum geht dass ich bei meinem Bewegungsmelder Bilder mache und die mir senden will, so bietet sich ein extra Bot dafür an - dafür brauche ich keinen "vollwertigen" Telegram Account.
    Ich kann dir jetzt leider nicht genau die Nachteile von Barts Lösung auflisten weil ich sie nicht getestet habe. Sie erscheint mir aber auf den ersten Blick umständlicher (Telegram Account anlegen, Telegram Client installieren, Schlüssel importieren...)


    Farz:
    Ich hab jetzt nicht den kompletten Programmcode durchgesehen, aber:
    1. In Zeile 48 muss das Wort 'ready' in Hochkommas oder Anführungszeichen gesetzt werden.
    2. Die chatroomid musst du vorher ermitteln. Als Bot hast du nur einen Chatroom wenn du eine Nachricht bekommen hast. Schreib deinem Bot also einmal eine Nachricht und damit hast du die chatroomid.
    3. Das Bild 'ente.jpg' wird bei dir nicht vorhanden sein, da musst du natürlich eines nehmen welches du hast.


    Thomas