Hallo Nils,
auch ich bin schlichtweg begeistert, in welcher Zeit Du das alles auf die Beine gestellt hast. Die Webabfrage und auch das Video funktionieren bei mir. Jetzt habe ich mal aus deinem Musterprojekt die XX-Seiten in mein Projekt eingefügt.Leider funktioniert der XXlink bzw xxframe nicht Es öffnet sich zwar ein Fenster (siehe Anhang) aber die Webseite (Googel) wird nicht angezeigt. Was mache ich da Falsch???
Vielen Dank für deine Hilfe
Ankündigung
Einklappen
Keine Ankündigung bisher.
xxAPI v0.99 - erweiterte AJAX-Visu
Einklappen
X
-
Analog Uhr App (Firefox und Safari only)
Ich hab im Online-Demo mal eine Analog-Uhr hinzugefügt. (Firefox und Safari only)
APPid 21
Das Widget kann verwendet werden, indem einfach die Webabfrage xxAPI-Demo kopiert wird und als xxAPI-APPid21 gespeichert wird.
Und das davon zruückgegebene Textobjekt als dynamisches Textelement eingebaut wird. ( !!! SORRY ICH BIN NICHT WIRKLICH GUT IM ERKLÄREN, wenn das jemand hinkriegt und weiß wie mans besser erklärt, bitte los, ich steh mit Doku's und erklären, so'n bisschen auf Kriegsfuss)
Man kann das aber auch ohne webafrage dann werden jedoch auch keine updates gemacht. Einfach den hier den Teil zwischen den tags code kopieren und in ein 14Byte iKO.https://knx-user-forum.de/knx_xxAPI/...=widget&app=21
(geht glaub ich auch mit HS-Monitor)Angehängte Dateien
Einen Kommentar schreiben:
-
das war mein fehler, ich denke
jemand hat die hslib von vorgestern importiert
die ich dann wieder entfernt hab
ist ein bug in der logik im gle
bitte updaten
sorry für die caps, antwort vom
handy
Einen Kommentar schreiben:
-
so, da ist der Salat schon....
Da gibt es einen Server, kommt von (adsl.highway.telekom.at), und ruft seit gestern fast im Sekundentakt das Script ab.
Ich hab da erst mal ne Bremse rein gemacht... Der kürzeste Abstand für einen Aufruf von einer IP ist 60 Sekunden....
Einen Kommentar schreiben:
-
Vielen Dank AlfredZitat von AScherff Beitrag anzeigenso, ich habe mal die serverseitigen Dinge überarbeitet:
Grunddsätzlich gibt es zunächst folgenden Aufrufe:
Über die bekannte URL-
Code:xxAPI.php?load=api Ausgabe der API per XML xxAPI.php?load=version Ausgabe nur der Version per XML xxAPI.php?load=apiraw Ausgabe der JS xxAPI.php?load=widget Ausgabe der XML-Demo xxAPI.php?load=doku Ausgabe als Doku

sieht schon gleich viel besser aus das Script.
ABER:
Bitte nur die veröffentlichten webabfragen verwenden.
Die webafragen für die Widgets senden folgendes.
webver=1 die version der webabfrage
ver=xxAPI.loadedVersion die Version der xxAPI
app=1 die Nummer des Widgets zum Download
Diese Infos sind vielleicht jetzt noch nicht so wichtig.
aber später wird es dazu verwendet ob die verwendete webafrage und
die geladene xxAPI version kompatibel mit dem Widget sind.
Einen Kommentar schreiben:
-
so, ich habe mal die serverseitigen Dinge überarbeitet:
Grunddsatzlich gibt es zunachst folgenden Aufrufe:
Über die bekannte URL-
Code:xxAPI.php?load=api Ausgabe der API per XML xxAPI.php?load=version Ausgabe nur der Version per XML xxAPI.php?load=apiraw Ausgabe der JS xxAPI.php?load=widget Ausgabe der XML-Demo xxAPI.php?load=doku Ausgabe als Doku
Einen Kommentar schreiben:
-
@lochjZitat von lochj Beitrag anzeigenEinen großen Schritt bin ich gerade vorran gekommen auf der Visu von "Vento66". Hier sehe ich mal, was welche Funktion macht.
Dafür ist diese "DEMOSEITE" gedacht. Ich habe auch den XXINACTIV im Einsatz also sollte nach 10min inaktivitat automatisch auf die Startseite gewechselt werden. 10min habe ich eingestellt weil die Klicks auf der Startseite ausgewertet werden, und man sonst bei kürzer eingestellten Zeiten mitten im lesen von http seiten automatisch auf die Startseite fliegt....
Einen Kommentar schreiben:
-
Grundvoraussetzung bis Dacom die xxAPI hinzufügt.Zitat von lochj Beitrag anzeigen1. Anfangs wurde die "ajax.js" modifiziert, womit zusätzliche Features dazu genommen wurden. [Modifizierung der ajax.js im Experten Verzeichnis]
ist jene welche aus Punkt 12. Dann gab es eine Modifikation der ajax.js, womit ich externe Links in einem PopUp aufrufen konnte(XXLINK). [Modifikation der ajax.js im Experten]
Grundvoraussetung damit dere veränderte Code veröffentlicht werden darf3. Am 21.04. wurde auf der Dacom Site der Open Source zur verfügung gestellt.
Nein, es wird eine ajax.js mit der xxAPI hier im Downloadbereich verfügbar sein sobald der xxAPI Hostserver (den Alfred wohl stellen wird(Muss ich jetzt die Modifikationen aus diesem Forum da reinkopieren? Oder beinhaltet diese Version immer einen Snapshot der Modifikationen?)
)
verfügbar ist.
sind alle der oben genannten Funktionen3. Dann kam die Funktion XXFunctions dazu. Hört sich genial an, doch was muss ich machen?
Brauchst du auch nicht. ist nur der Server auf den du die Webabfrage machst. wie sich gerade herausgestellt hat.4. Es soll einen xxAPI Hostserver geben!? Da lese ich ne menge Wörter, die dann in meinem Gehirn zu einem Fragezeichen verschmelzen.(Hier fällt mir das Sprichwort ein, wenn man keine Ahnung hat, einfach die Finger weglassen)
https://knx-user-forum.de/knx_xxAPI/xxAPI.php
Na, wo ist dann noch die Frage.4.1 Ich verstehe das so: Ich habe die Funktion XXFunction. Die holt sich zur Laufzeit von einem Webserver die aktuellen Erweiterungen für die ajax.js!!??
Genau so isses
@mods: Bitte Thread zu und im eigentlichen Thread verschieben
Einen Kommentar schreiben:
-
"erweiterte AJAX-Visu" bitte Erklären
Hallo,
ich mache mal ein neues Thema auf, denn ich habe einfach den Überblick verloren und weiß in diesem Bezug nicht mehr was zu machen ist.
(Vielleicht ware ein Wiki ganz toll, wo alle Neuerungen ganz kurz erklart werden und man einen Überblick bekommt.)
Ich fasse mal meinen Stand zusammen:
1. Anfangs wurde die "ajax.js" modifiziert, womit zusatzliche Features dazu genommen wurden. [Modifizierung der ajax.js im Experten Verzeichnis]
2. Dann gab es eine Modifikation der ajax.js, womit ich externe Links in einem PopUp aufrufen konnte(XXLINK). [Modifikation der ajax.js im Experten]
3. Am 21.04. wurde auf der Dacom Site der Open Source zur verfügung gestellt.(Muss ich jetzt die Modifikationen aus diesem Forum da reinkopieren? Oder beinhaltet diese Version immer einen Snapshot der Modifikationen?)
3. Dann kam die Funktion XXFunctions dazu. Hört sich genial an, doch was muss ich machen?
4. Es soll einen xxAPI Hostserver geben!? Da lese ich ne menge Wörter, die dann in meinem Gehirn zu einem Fragezeichen verschmelzen.(Hier fallt mir das Sprichwort ein, wenn man keine Ahnung hat, einfach die Finger weglassen)
4.1 Ich verstehe das so: Ich habe die Funktion XXFunction. Die holt sich zur Laufzeit von einem Webserver die aktuellen Erweiterungen für die ajax.js!!??
Ich weiß Ihr habt genug mit dem neuen Highlight zu tun. Aber ich komme nicht mehr hinterher und ware glücklich, wenn einer eine kurze Zusammenfassung(HowTo) erstellen könnte.
Gruß Jörg
PS: Einen großen Schritt bin ich gerade vorran gekommen auf der Visu von "Vento66". Hier sehe ich mal, was welche Funktion macht.
Einen Kommentar schreiben:
-
xxAPI v0.99 - erweiterte AJAX-Visu
NICHT MEHR AKTUELL HIER GEHTS WEITER
https://knx-user-forum.de/xxapi/6009...ajax-visu.html
*** Eine kleine Beschreibung der Befehle findet ihr hier ***
*** xxAPI ***
Installationsanleitung hier XXAPI - HS/FS - Lexikon - KNX-User-Forum
Die Downloads sind in der Projektverwaltung KNX-User-Forum
*** CHANGELOG ***
**
0.99
+XXCLICK*
+XXMODULCLICK*
+XXMARK*
+neue Aufrufvariante lässt die Klickbaren Funktionen wie die Standard Klicks aussehen
+XXHTTP und XXLINK verwenden auch die neue Aufrufvariante
+Erweiterte Kompatiblität mit APPid's (Elemente entfernen)
**
0.98
+ XXIMG*url*refresh in Sec
+ XXMODUL geht im IE
+ XXMODUL auch mit manuellem Login
+ keine Scrollbalken im XXMODUL
+ Loginmaske korrekte Grösse
+ Fehler beim laden der API werden abegefangen
+ Fehler beim laden von XXEEXECUTE werden abgefangen.
+ Texte der Schaltflächen lassen sich nicht mehr selektieren
+ Login mit Cookie speichern aus der Loginmaske geht
+ verkürzte Ausführungszeiten
+ Parameterübergabe für Widgets
**
0.97
+ XXLONGPRESS*
BUG FIX: XXTRIGGER*
**
0.96
+ XXMODUL*
+ Diverse änderungen ajax.js für den hsav ist neu
+ secure.htm + geänderte start.htm aus anderem Thread müssen benutzt werden
+ Webabfragen und xxAPI-INIT Visuseite neu
+ xxAPI komprimiert mit Faktor 0.4
**
0.92
+ XXEHTML*
+ XXEEXECUTE*
**
0.91 - erste xxAPI version auf knx-user-forum
+ XXHTTP*
+ XXLINK*
+ XXIFRAME*
+ XXEXECUTE*
+ XXHTML*
+ XXIMG*
+ XXTRIGGER*
+ XXINACTIVE*
Ich mach mal einen neuen Thread dazu auf.
Die xxAPI ist eine zentral gepflegte Erweiterung für die HS-AjaxVisu mit der auch Web- und Multimediaobjekte eingebunden werden können.
Ein vorheriger Versuch die ajax.js der Dacom HSAjaxVisu zu erweitern, führte immer dazu, dass bei jeder Erweiterung und jedem Bugfix, das Homeserver Projekt neu hochgeladen werden musste.
Die xxAPI verwendet ein mit einer Webabfrage gefülltes 14-Byte iKO, dass durch einfaches ausführen der Webabfrage aktualisiert werden kann.
Ausserdem wird die Versionsnummer des aktuellen xxAPI.js zurückgegeben.
Die xxAPI ist in den Versionen stable,rc,beta,unstable verfügbar, zwischen denen auch im laufenden Betrieb einfach gewechselt werden kann.
Es wird eine weitere Webabfrage für ein Demosystem geben, dass über ein dynamisches Textobjekt auf einer Visuseite, die Funktionen der xxAPI vorführen kann.
Weitere Webabfragen auf so genannte Widgets werden die Möglichkeit geben, komplexe xxAPI Funktionen wie z.B. Analoguhr,Radio,Fernsehen... einfach einzubinden und auch dort die Vorteile einer zentral gepflegten Anwendung zu haben.
Die Verbindung zum xxAPI Hostserver (Fehler 404) wird nur bei der Installation oder bei Updates aufgebaut. Es ist auch möglich einen eigenen xxAPI Server zu betreiben um Updates Kundenspezifisch einzubinden, die dazu benötigte xxAPI.php sowie alle anderen benötigten Dateien sind frei unter der GPLv3 verfügbar.
EDIT:
Die einzige Änderung die noch an der ajax.js vorgenommen werden muß sind folgende:Ich habe gerade festgestellt das bei einem HS2 der Speicher des 14byte KO's nicht reicht um die xxAPI zu Speichern. Macht das iKo einfach erstmal nicht remanent und führt die Webabfrage xxAPI 1x nach Systemstart durch.
Ich werde versuchen die API zu verkleinern und zu komprimieren.
UPDATE:Code:--- ajax-dacom.js Tue Apr 21 14:06:52 2009 +++ ajax-xxAPI.js Fri Apr 24 00:43:07 2009 @@ -42,6 +42,9 @@ hs_connected = 0; isBusy=0; xmlhttp = null; +//xxAPI +xxAPI = new Object(); +xxAPI.init = false; // Markierung markImg = null @@ -373,6 +376,43 @@ this.aktion = ""; } +//-------------------------------------------------------------------------------- +// xxAPI Base64 Decoder +//-------------------------------------------------------------------------------- +function decode64(input) { + var keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; + var output = ""; + var chr1, chr2, chr3; + var enc1, enc2, enc3, enc4; + var i = 0; + + // remove all characters that are not A-Z, a-z, 0-9, +, /, or = + input = input.replace(/[^A-Za-z0-9\+\/\=]/g, ""); + + do { + enc1 = keyStr.indexOf(input.charAt(i++)); + enc2 = keyStr.indexOf(input.charAt(i++)); + enc3 = keyStr.indexOf(input.charAt(i++)); + enc4 = keyStr.indexOf(input.charAt(i++)); + + chr1 = (enc1 << 2) | (enc2 >> 4); + chr2 = ((enc2 & 15) << 4) | (enc3 >> 2); + chr3 = ((enc3 & 3) << 6) | enc4; + + output = output + String.fromCharCode(chr1); + + if (enc3 != 64) { + output = output + String.fromCharCode(chr2); + } + if (enc4 != 64) { + output = output + String.fromCharCode(chr3); + } + } while (i < input.length); + + return output; +} + + // ---------------------------------------------------------------------------- // Funktionen zur Handhabung von Masken und PopUps // ---------------------------------------------------------------------------- @@ -1271,6 +1311,10 @@ var item=aVisu[npos]; item.txt=getXmlAttr(aRes[0],"txt"); if (item.handle!=null) { + // CHECK for XX Functions + if(typeof xxAPI.check == "function") { + item=xxAPI.check(item); + } item.handle.innerHTML=item.txt; } } @@ -1837,6 +1881,25 @@ aVisuItem.txt=getXmlAttr(aRes[0],"txt"); aVisuItem.hasCmd=getXmlAttr(aRes[0],"hcmd"); aVisuItem.click=getXmlAttr(aRes[0],"click")*1; + //check for XX Functions + if(typeof xxAPI.check == "function") { + aVisuItem=xxAPI.check(aVisuItem); + } + //load XXSCRIPT + XXcode = ""; + if(aVisuItem.txt.indexOf("XXSCRIPT*") == 0) + { + // code decodieren und ausführen dann Text löschen + XXcode = decode64(aVisuItem.txt.substr(9,aVisuItem.txt.length)); + eval(XXcode); + XXcode = ""; + aVisuItem.txt = ""; + if(xxAPI.init == false) { + xxAPI.ItemHandle = aVisuItem; + window.setTimeout("doCmd(xxAPI.ItemHandle);",500); + xxAPI.init = true; + } + } aItems.push(aVisuItem); } else if (aRes[0].substr(0,3)=="BOX")
zur Installation
1. die Webabfrage importieren
2. eine leere Visuseite erstellen (xxAPI-INIT)
und darauf ein dynamisches Textfeld mit dem iKO xxAPI erstellen
wie unten auf dem Bild. Als Aktion bitte Visu-Seite aufrufen
die ehemalige Startseite der Visu eintragen.
evtl. noch einen Button zum ausführen der Webabfrage "xxAPI" machen.
3. Die Startseite der Benutzer ändern auf diese "xxAPI-INIT" Startseite
4. XX Funktionen wie bereits im anderen Thread beschrieben einbauen
5. die Datei unter hsupload/opt/hsav/js/ajax.js mit der aus dem zip ersetzen
EDIT: oops hatte ich vergessen
6. die Datei redirect.htm ins verzeichnis hsupload kopieren sodass sie nachher unter /opt/redirect.htm erreichbar ist.
(Doku und Online-Demo folgen)
vielen Dank an Alfred für die Bereitstellung des xxAPI Hostservers unter
https://knx-user-forum.de/knx_xxAPI/xxAPI.phpAngehängte Dateien


Einen Kommentar schreiben: