Zeige Ergebnis 1 bis 5 von 5

Thema: HttpGetValue und Google Sheets - Was ist hier falsch?

  1. #1
    STARFACE Expert

    Registriert seit
    13.10.2011
    Beiträge
    286

    Frage HttpGetValue und Google Sheets - Was ist hier falsch?

    (Ich bin kein Programmierer.. also bitte habt Erbarmen wenn ich irgendwas kleines übersehen habe)

    Ich hole mir mit HttpGetValue eine einzelne Zelle aus einem Google Sheet. Sonst ist in dem Sheet nichts drin.
    Beispiel: https://docs.google.com/spreadsheets...rue&output=csv
    Da ich nur eine einzige Zelle in dem Sheet belegt habe, benutze ich kein Pattern Matching (Text before/after ist nicht gesetzt). Der obige Link generiert im Modul einen Wert in _value der dem Zelleninhalt von 1,1 entspricht.

    Das funktioniert grundsätzlich schon, nur sind die gelesenen Werte nicht konsistent. Gibt es bei HttpGetValue ein Cache das ich jeweils löschen muss?
    Ich starte aus Testzwecken das Modul im Moment über "Instance activated" (Modul manuell im Admin GUI aktivieren)

    Vorgehen:
    - ich setze mit Google Sheet manuell die Zelle 1,1 auf einen Wert, z.B. 15
    - Kontrolle mit https://docs.google.com/spreadsheets...=0&single=true bestätigt dass der zurückgegebene Wert 15 ist
    - ich starte (aktiviere) das Modul und im Log sehe ich dass der gelesene Wert = 15 ist. Soweit so gut
    - ich stoppe (bzw. deaktiviere) das Modul
    - ich setze mit Google Sheet manuell die Zelle 1,1 auf einen anderen Wert, z.B. 14
    - Kontrolle mit https://docs.google.com/spreadsheets...=0&single=true bestätigt dass der zurückgegebene Wert 14 ist
    - ich starte (aktiviere) das Modul und im Log sehe ich dass der gelesene Wert immer noch 15 ist ??? Warum?

    Das gleich Vorgehen etwas später und _value ändert ev. auf 14. Wann und warum genau ist mir nicht ganz klar. In Tests verbleibt der Wert auf dem erstmalig gelesenen (15) für etliche Testzyklen...

    Um ein Problem mit der Variable _value zwischen den Aufrufen des Moduls auszuschliessen (obwohl meiner Meinung nach dies im Testprogramm vorerst nicht nötig wäre, da das Modul ja immer wieder neu gestartet wird und _value in meinem Verständnis doch eine lokale Variable ist die sowieso erst beim Aufruf von HttpGetValue gesetzt wird....) setze ich _value auf 0 nachdem ich den Wert per HttpGetValue gelesen und verarbeitet habe.

    Woran kann es liegen dass HttpGetValue nicht den selben Wert zurück gibt wie wenn ich den selben Link in einem Browser aufrufe?



    2015-10-09_01-15-28.jpg



    2015-10-09_01-17-19.jpg


    Danke für jeden Tip.

    Daniel

  2. #2
    STARFACE Expert

    Registriert seit
    13.10.2011
    Beiträge
    286

    Standard

    Sieht so aus als wäre da eine nicht immer gleich grosse Verzögerung zwischen dem Ändern einer Google Sheet Zelle und dem Veröffentlichen des veränderten Inhalts auf dem Public URL...
    Also wahrscheinlich kein HttpGetValue Problem...

    ..muss mir wohl eine bessere Variante ausdenken. Einen eigene Webserver möchte ich für das kleine Projekt nicht aufsetzen.

    Never Mind...
    ...inzwischen habe ich das Ganze mit ThingSpeak gelöst.. geht eh besser :-)

  3. #3
    STARFACE Crew
    Benutzerbild von Niklas
    Registriert seit
    08.12.2014
    Beiträge
    284

    Standard

    ThingSpeak kannte ich noch gar nicht.
    Das schau ich mir doch mal an, danke für den Hinweis
    Viele Grüße
    Niklas

    - STARFACE Support -

  4. #4
    STARFACE Expert

    Registriert seit
    13.10.2011
    Beiträge
    286

    Standard

    Hallo Niklas,
    Thingspeak ist ok, ich benütze unter anderen diese Seite für kleinere Projekte mit ESP8266, Arduino und Raspberry (hobbymässig).
    Aber man kann dort keine Variablen direkt am Web GUI setzen. Ich bin deshalb für das Prototyping auf Ubidots gewechselt.

    Mein Problem ist ja dass ich aus technischen Gründen an 2 Starface Zentralen gleichzeitig angeschlossen bin und zusätzlich noch eine Lync/Skype for Business Implementation habe. Ein Telefon auf dem Pult mit den zwei SF Anlagen aufgesetzt und Skype auf dem PC. Wenn ich nun auf einer Anlage besetzt bin, wissen das die anderen Anlagen nicht. Ist ziemlich mühsam, aber ich kann und darf am Anlagensetup zurzeit nichts ändern.

    Ich brauche also eine Lösung die ohne grosse Programmierung (wie gesagt, ich bin wirklich kein Programmierer) dieses Problem etwas mindert oder aus der Welt schafft. Das DND setzen ist der erste Schritt dazu. Und nebenbei lerne ich wie man mehrere Anlagen gleichzeitig übers Internet beeinflussen kann. Ich könnte mir noch weitere Bereiche vorstellen die so einfach integriert werden könnten...
    (Eigentlich wünschte ich mir dass man mit der SF ähnlich einfach kommunizieren könnte wie mit Thingspeak und Ubidots... wenn man das kann, habe ich es bisher noch nicht rausgefunden.. ich träume von NodeRed auf der Starface Linux Box, integriert in Starface Asterisk.. träumen darf man, gell?)


    Inzwischen habe ich bei Ubidots eine simple "app" die auf den zwei SF mein jeweiliges DND synchron ein- oder ausschaltet. War gar nicht so schwer.
    Auf den beiden Starface Anlagen frage in einem Modul regelmässig die Ubidots Variable ab und setze dann den DND Status entsprechend.

    2015-10-09_17-36-30.jpg

    Der nächste Schritt ist dann wohl das selektive setzen des DND Status (oder busy?.. ) wenn ich auf einer der anderen Anlagen besetzt bin.
    Für grössere Projekte ist dieses regelmässige Abfragen wahrscheinlich nicht das Idealste. Aber es war einfach zu implementieren.

    Daniel

  5. #5
    STARFACE Expert

    Registriert seit
    13.10.2011
    Beiträge
    286

    Daumen hoch

    ...mit 6.4 kommt REST..
    alles wird einfacher

Ähnliche Themen

  1. HttpGetValue
    Von brudy im Forum Module
    Antworten: 0
    Letzter Beitrag: 31.07.2010, 16:46
  2. Rufnummernanzeige falsch
    Von Goulasch im Forum STARFACE Einrichtung & Administration
    Antworten: 1
    Letzter Beitrag: 22.07.2009, 08:50
  3. Rufnummernanzeige falsch
    Von gismo im Forum STARFACE Installation
    Antworten: 23
    Letzter Beitrag: 18.07.2008, 16:22
  4. Ganz Neu Hier
    Von wohlgemuth im Forum STARFACE Installation
    Antworten: 8
    Letzter Beitrag: 17.07.2008, 10:34
  5. Uhrzeit falsch
    Von Rolf im Forum STARFACE Einrichtung & Administration
    Antworten: 9
    Letzter Beitrag: 14.04.2008, 10:09

Lesezeichen

Forumregeln

  • Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
  • Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
  • Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
  • Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
  •