Beim Iphone kann ich es zeigen, bei Android leider nicht weil ich keins habe.
Bei mir ist es genau umgekehrt.
VPN/Proxy erkannt
Es scheint, dass Sie einen VPN- oder Proxy-Dienst verwenden. Bitte beachten Sie, dass die Nutzung eines solchen Dienstes die Funktionalität dieser Webseite einschränken kann.
Beim Iphone kann ich es zeigen, bei Android leider nicht weil ich keins habe.
Bei mir ist es genau umgekehrt.
Hallo Rainer, im wesentlichen ja. Aber: welches Handysystem (iOS, Android) wird denn genutzt?
Gruß Detlev
Hallo Wolfgang,
nun, das kann man mMn über eine Szene lösen.
Gruß
Detlev
Hallo,
ich stelle euch einmal meinen Weg vor, um über einen NFC-Tag mittels Smartphone eine Aktion im Shellyversum auszulösen.
Wie meist gibt es ein paar Randbedingungen:
- verwendet werden sollen "kleine" NFC-Tags, die für wenige Cent "an jeder Ecke" zu bekommen sind
- ein beliebiges NFC-fähiges Handy, vor den Tag gehalten, soll nichts auslösen
- ein beliebiges NFC-fähiges Handy, vor den Tag gehalten, soll keine sicherheitsrelevanten Daten lesen
Lösungsvorschlag:
Aufgerufen wird die von Allterco zur Verfügung gestellte API zum Schalten von Aktoren. Damit kann das ganze auch "remote" erfolgen, da es über die Cloud (ja, ja, die pöse) erfolgt. Aktivieren von Scenen läuft exakt gleich, nur der Inhalt des HTTP-Requests ändert sich.
Zu Testzwecken schalte ich (mal wieder) mein Bürolicht via API ein (zum ausschalten muss eine weitere Aufgabe definiert werden).
App HTTP-Request:
Das ganze wird zunächst in einem HTTP-Request definiert. Angelegt wird dabei ein "Normaler HTTP-Shortcut". Kein Multi-, Browser- oder Scripting-Shortcut. Auf eine Beschreibung, wie man dabei vorgeht, verzichte ich hier.
Unter den "allgemeinen Einstellungen" des Request wird der Aufruf der API eingetragen:
Nun ist das nur die halbe Miete. Im Body dieses Requests müssen noch diverse Parameter mitgegeben werden - und nein, im Link funktioniert das nicht, da die API mit POST angesteuert wird und die Daten im "Formular-Encoded-Format" haben möchte:
Um die hier gezeigten Daten einzurichten, ist jeweils durch drücken auf das "+" am Ende der Seite eine Kombination aus Schlüssel und Wert (beispielsweise "ID" + "483XXXXXXXXX5") einzugeben. Hab ich hier mal nicht gezeigt, die Ausführung im Rahmen der App sollte an und für sich selbsterklärend sein.
Da man im laufenden Betrieb nicht ständig mitgeteilt haben möchte, das die ausgelöste Aktion erfolgreich abgesetzt wurde, muss das der App im "Response"-Parameter bekanntgegeben werden:
Soweit, so gut. Nun kann hier schon mal getestet werden, indem man diesen Request "manuell" aufruft. Wenn alles korrekt läuft, geht das Licht an, und man sieht nichts auf dem Schirm. Ansonsten: Start oben.
Da ab hier der Test erfolgreich abgeschlossen wurde, ermittelt man den "Deep-Link" zu diesem Request. Das geht in der Version ab 2.4.0 recht einfach: HTTP-Request auswählen, "Information anzeigen" abrufen, und dann hat man's:
Diese Nummer markieren und kopieren - brauchen wir für später.
Ab hier wir die die App "HTTP-Request (an dieser Stelle) nicht weiter gebraucht und kann geschlossen werden.
Wenden wir uns nun dem NFC-Tag zu.
Aktuell benutzt habe ich die (kostenfreien) Versionen von NFC-Tools bzw. NFC-Tasks (das wird aber noch geändert, da dann mehr Möglichkeiten offen stehen - für diesen Zweck tun es die aber).
Das ganze läuft hier über "Aufgaben", da ja später eine andere App (nämlich "HTTP-Request") aufgerufen werden soll.
Die App "HTTP-Request" muss per Deep-Link-URL gestartet werden, denn es soll ja direkt ein Request ausgeführt werden. Daher wird bei der Anlage der Aufgabe nicht direkt auf die App, sondern auf die dazu gehörende URL/URI verwiesen:
Als Ziel wird nun die oben zwischengespeicherte Angabe hinterlegt (kann man hier zwar nicht sehen, ist aber so):
Sodann wechselt man in den Reiter "Schreiben". In diesem Fall erkennt man, da gerade mal 68 Byte auf den NFC-Tag geschrieben werden sollen - so kann das ganze auch auf einem Tag mit 180 Byte Platz finden.
Nun die App "NFC-Tool" schliessen und testen. Wenn der Test erfolgreich war, kann das in den Betrieb übernommen werden.
Ich hoffe, dem ein oder anderen geholfen zu haben.
Detlev
Windows 7 und 8 haben andere Versionen der Powershell. Deswegen steht in der Überschrift "10".
Deswegen soll's ja auch weg.
Sollte dann so aussehen:
powershell -command "Invoke-WebRequest -Uri https://shelly-XXX-eu.shelly.cloud/scene/manual_run'&'id=XXX'&'auth_key=XXX -Method GET"
Du siehst, da steht kein Fragezeichen in der Gegend.
Und ja, dieser Link läuft, wenn man anstelle der XXX die entsprechenden eigenen Werte einträgt
So, den Link nicht gelesen oder nicht korrekt umgesetzt. Denn da steht nichts von einem "?" drin.
Wenn du jetzt das "?" in Zeile 2 ersetzt durch ein '&', dann wird es auch wohl funktionieren.
Gruß Detlev
Sorry, aber damit kann ich jetzt nichts anfangen. Was hast du wo und wie eingebaut? Das Thema Szene manuell starten hast du gelesen und umgesetzt?
Nochmals: deinen Szenenaufruf (wenn's geht im Code-Tag) vollständig einbinden. Deine Servernummer und deine Zugriffs-Id machst du mit "X" unkenntlich. Und mir dann auch mitteilen, wo du das einbinden möchtest (auf Doppelklick, auf Runterfahren, auf ...). Bei mir tut es alles so, wie gewünscht.
Gruß Detlev
Hi,
hast du bei dem Aufruf der Szene berücksichtigt, dass das notwendige &-Zeichen in einfache Anführungszeichen eingebettet werden muss?
Ansonsten: bitte mal dein Kommando posten, damit ich mir das ansehen kann - bei mir startet die Szene einwandfrei.
Gruß
Detlev
Hallo,
aber was - außer dem "gespendeten" Strom - soll das für die Module bringen? Die "verschleißen" unter Licht genauso schnell, egal, ob der erzeugte Elektronenstrom abgenommen wird oder nicht.
Und jede Kilowattstunde, erzeugt durch PV oder Wind, die "gespendet" wird, braucht nicht durch konventionelle Primärenergieträger erzeugt und verlustbehaftet über weite Strecken transportiert werden.
Just my 2 Cent
Detlev
Hallo,
für den 1. Teil deines letzten Problems kannst du dir 3 Variablen anlegen, die mit "SetVariable" dauerhaft gesetzt werden können. Die kann man dann später, in einem gemeinsamen Script, wieder auswerten.
Der 2. Teil wird etwas problematischer. Klar kann man alles in eine Beschriftung packen, aber ob man die vernünftig lesen kann, ist von der Aufteilung deines Bildschirms abhängig. So überlagern andere Ikonen dann den Text, was es unleserlich macht. Hier böte sich dann an, das Widget mit einem Aufruf zu verknüpfen, der die 3 Werte dann in einem Dialogfenster anzeigt.
HTH
Detlev
Tja, mMn ist das Problem bei "Abbrechen von Szenen" nicht trivial - zumindest für Alterco. Denn eine Szene ist nun mal kein Schalter, der nur 2 Zustände (An/Aus) kennt.
Was ist gewollt: alles, was in der Szene bislang abgelaufen ist, zurücksetzen (wird hier schwierig)? Oder nur die aktuelle Aktion abbrechen? Aber in welchem Zustand soll dann die aktuell aktive Aktion verbleiben? Wie vor dem Aufruf? Oder einfach alles so lassen (dann regnet es hier den ganzen Tag)? Und was ist mit Aktionen, die nach der aktuellen folgen? Sollen die übersprungen werden? Dann kann es aber zu nicht gewünschten Seiteneffekten kommen - man denke an einen Fernsehabend, bei dem der Fernseher aus der Versenkung kommt, die Jalousien herunter und das Licht gedimmt hochgefahren wird. Wenn man nun abbricht, sitzt man u.U. im dunkeln.
Just my 2Cent
Detlev
Hallo,
nee, die Shortcut-ID ist weder IPv4 noch IPv6. Es ist die interne Identifizierung des Shortcuts auf deinem Gerät. Kann man in der neuesten Version (2.4.0) recht einfach herausbekommen: Kontext-Menü des gewünschten Shortcuts auswählen - Informationen anzeigen. Als erstes ist dann die ID zu finden.
Oder wie im Beitrag #67.
Die Anzeige des gesamten Status kann man ausschalten, wenn man in den "Response-Einstellungen" des Request auswählt:
"Bei Erfolg" - nichts anzeigen
"Bei Fehler" - Detaillierte ...
HTH
Detlev
Hallo,
da ich ja bei einigen meiner Antworten auf verschiedene Themen auf den Deep Link (u.a. in Post HTTP-Request mit NFC Tools) hingewiesen habe:
der Entwickler der App "HTTP-Request" hat es in der Version 2.4.0 vom 25.04.2021 wesentlich einfacher gemacht, den notwendigen Link zu ermitteln. Danke dafür.
Wenn man auf das Kontext-Menü eines Request aufruft, kann man sich hier die Informationen anzeigen lassen.
Im dem dadurch aufgerufenen Fenster ist der Deep Link zu sehen, der in anderen Apps verwendet werden kann, um von dort einen HTTP-Request aufzurufen:
HTH
Detlev
Nö. Ich hab auch Gira-Schalter verbaut, die sich wie Taster anfühlen. So stehen die Wippen immer in der gleichen Stellung. Thema: Design.
Detlev
Hallo, ja ich nochmal.
Hab gerade etwas in der verfügbaren Doku geschmökert. Du hast oben geschrieben, das der Aufruf via HTTP-Request-App funktioniert. Nun, du kannst laut dem, was ich lesen konnte, mitdem NFC-Tool einen Datensatz auf den Chip laden, der beim auslesen eine App auf dem Handy ausführt. Und das kann dann eben ein Deep-link auf die HTTP-App sein.
So kannst du 1. sicher sein, das nur der mit dem richtigen Handy in der Hand etwas machen kann und 2. die Aktionen gar nicht auf dem Chip sind.
HTH Detlev
130 Byte sollten aber reichen, um eine Aufgabe auszulösen. Nicht den Inhalt der Aufgabe.
Gruß Detlev
Hallo, ich habe das NFC-Tool nicht, aber kannst du aus dieser App heraus einen Deep-Link auslösen? Dann kannst du den Link aus der App HTTP-REQUEST weiter benutzen. Der oder die "Angreifer" bräuchten dann nicht nur diese App, sondern auch noch den Inhalt des Links.
Gruß Detlev
Hallo,
Die Dinger funktionieren als Öffner oder Schließer, je nachdem, wie herum die montiert sind.
Gruß Detlev
Und das manuelle auslösen von Szenen per HTTP-Request wurde hier im Forum schon mal vorgestellt - suche und finde.
HTH
Detlev