Ankündigung

Einklappen
Keine Ankündigung bisher.

Entwicklung: xxAPI² HTML5 Client

Einklappen
Das ist ein wichtiges Thema.
X
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    @Thorsten
    poste doch einfach mal einen Screenshot von deiner XXMODUL Definition und der xxAPI-INIT dann ist es vielleicht einfach zu erklären.
    Nils

    aktuelle Bausteine:
    BusAufsicht - ServiceCheck - Pushover - HS-Insight

    Kommentar


      nichts einfacher als das:
      das erste bild ist von meiner VisuStart wo der bereich LEFT definiert ist.
      Das zweite bild ist von meinem XXAPI-INIT wo der Bereich LEFT vorgefüllt wird dem Seitenaufruf "Menue"
      Angehängte Dateien

      Kommentar


        Der eigentliche XXMODULCLICK arbeitet folgendermaßen.

        XXMODULCLICK*text*Modulname*Seitenname

        Wenn kein Modulname angegeben wird, dann wird die Hauptvisu als Ziel genommen.
        Wenn kein Seitenname angegeben wird,dann wird die Visuseite vom Tab Visu-Seite aufrufen genommen.

        Die Priorität liegt also bei der Texteingabe.

        Seitennamen werden NUR NOCH gefunden wenn Sie mit XXMARK*Seitenname und Aktion Seite aufrufen und Tab Visu-Seite mit der Zielseite definiert werden.

        Vorher wurde quasi für die Modulstartseiten ein Textfeld mit dem Modulnamen auf der xxAPI-Init Seite gemacht. Da die xxAPI-INIT Seite aber von den Modulen nicht mehr aufgerufen wird, sondern direkt die "richtige" Seite.

        Um es schnell zum laufen zu kriegen, sollte ein ändern der xxAPI-INIT Seite genügen, wenn man die dort definierten Modulname mit Seitenaufruf Textfelder einfach mit dem Prefix XXMARK* versieht.

        Für die spätere Übersichtlichkeit, denke ich ist die direkte Definition über Seite aufrufen und Visu-seite = Modulseite direkt in dem XXMODUL Textfeld besser.
        Nils

        aktuelle Bausteine:
        BusAufsicht - ServiceCheck - Pushover - HS-Insight

        Kommentar


          @Thorsten, im linken Bild einfach unter Aktion "Seite aufrufen einstellen" und im Tab Visu-Seite die Modulseite auswählen. Dann brauchst du das "Links" auf der xxAPI-INIT nicht mehr.

          EDIT:
          Es sei denn du möchtest die Seite später mit XXMODULCLICK**LINKS*LINKS wieder aufrufen. Dann musst du ZUSÄTZLICH aus dem Text "LINKS" auf der xxAPI-INIT Seite ein "XXMARK*LINKS" machen
          Nils

          aktuelle Bausteine:
          BusAufsicht - ServiceCheck - Pushover - HS-Insight

          Kommentar


            Hi,
            @Nils: danke - das hat jetzt geholfen.
            Jetzt funktioniert das Aufrufen aller meiner Bereiche (quadranten) - obwohl auf der xxAPI-INIT ich noch XXMARK*ziel* mit "seite aufen" verwende.

            Wenn ich es richtig verstehe kann man das XXMARK durch XXMODUL*LEFT*ziel* ersetzen, richtig?
            Und durch das *LEFT* recyclet man die browser session was gut ist für den HS und die performance?

            Gruß
            Thorsten

            Kommentar


              Hallo Nils,


              welche der beiden Möglichkeiten in der Abbildung ist die sinnvollere, eine Vollseite aufzurufen, beide funktionieren?

              Wenn ich eine Vollseite aufgerufen habe, komme ich mit dem folgenden Befehl nicht mehr zurück auf die Startseite.

              XXMODULCLICK*Menü*GQDInfo*Reg2OG*GQTL*MenueGQTL*GQ TR*Ghome*GQDR*GWetterprog1
              oder
              XXMODULCLICK*Menü*GQDInfo**GQTL**GQTR**GQDR*

              Um zurück zu kommen, muß da evtl. „Navigation zurück“ aktiviert sein?


              Grüße
              Hans-Peter
              Angehängte Dateien

              Kommentar


                Zitat von NilsS Beitrag anzeigen
                Du musst "nur" auf der xxAPI-INIT die Seite1/Seite2/Seite1.1.... mit einem XXMARK*Seite1 usw tauschen.

                Wenn du die Möglichkeit hast den dynamischen Text zu ändern, dann ändere den auf
                XXMODUL*OBEN*Seite1 ... (also füge einen Modulnamen ein)
                Danke Nils,

                bei mir funktioniert es jetzt.

                Einige Fragen:
                - möchte Experten-Code für Version xxAPI und xxAPI2 gleichzeitig nutzen. Gibt es eine Systemvariable mit der ich das feststellen kann? Logge mit getrennten Usernamen ein. Finde aber keine Systemvariable im Experten.

                - bei Aufruf von popup Fenstern verschwindet Hintergrundfenster

                - iPad: ist nicht Fullscreen (1024x768). Mit meinen "Dir bekannten Einstellungen" würde aus meiner Sicht alles gehen. Auch wenn ich Schirm drehe (automatische Anpassung an Hoch- und Querformat)

                - iPad: 2 getrennte Ikonen für lokalen Zugriff und Internet-Zugriff wären möglich (siehe meine Einstellungen durch Abfrage ob "Port" verwendet wird).

                - Wäre es möglich animierte Vektorgrafiken (z.B. Bahnhofsuhr mit JavaScript, Sourcecode vollständig vorhanden) einzubinden? Weiters die Nutzung von SVG Grafiken.

                - cordova: Einzige Software die diese systemnahen Features wirklich unterstützt.
                Wäre sinnvoll um beispielsweise Statusbar in IOS auszuschalten und selektiv INFOS einzublenden, wie Batteriestatus.

                - Aus meiner Sicht wäre es sinnvoller statt jQuery auf AngularJS aufzusetzen. Ist nach meiner Meinung das beste was heute verfügbar ist. Vorteil: Integration von verschiedenen Library's ist gemanagt. Größe des Codes (kann überflüssigen Code auslagern). Anbindung und Verwendung von Variablen "genial" gelöst. Wäre auf lange Sicht die zukunftssicherste Lösung. jQuery scheint "schwergewichtiger" zu sein und die Integration + Zusammenspiel mit zusätzlichen Library's scheint komplexer und fehleranfälliger zu sein. Sollte nur als Diskussionsvorschlag gesehen werden, wäre aber wert es anzuschauen.

                Falls die Einbindung einer Grafikbibliothek sinnvoll ist, hätte ich auch was.
                Muß nur noch den Namen erfragen. Hat aus meiner Sicht sensationelle Funktionalität.

                Nochmals danke für Deine prompten Antworten.

                Hans
                Hans

                Kommentar


                  Zitat von TirochH Beitrag anzeigen
                  - möchte Experten-Code für Version xxAPI und xxAPI2 gleichzeitig nutzen. Gibt es eine Systemvariable mit der ich das feststellen kann? Logge mit getrennten Usernamen ein. Finde aber keine Systemvariable im Experten.
                  Meinst du auf Logikseite eine Variable mit der du xxAPI¹ vs xxAPI² erkennen kannst? Die gibt es nicht. Oder meinst du die xxAPI Version als Anzeige in der Visu?
                  Code:
                  XXEXECUTE*item.text=xxAPI.version || xxAPI.VERSION ;
                  Zitat von TirochH Beitrag anzeigen
                  - bei Aufruf von popup Fenstern verschwindet Hintergrundfenster
                  ist bekannt ist noch nicht ordentlich implementiert, ich muss da nochmal Weg von SimpleModal
                  Zitat von TirochH Beitrag anzeigen
                  - iPad: ist nicht Fullscreen (1024x768). Mit meinen "Dir bekannten Einstellungen" würde aus meiner Sicht alles gehen. Auch wenn ich Schirm drehe (automatische Anpassung an Hoch- und Querformat)
                  Ist bekannt ist ein Bug der irgendwie nur beim iPad passiert, wenn du das iPad beim starten im Portrait Mode hällst und nach dem Start erst drehst funktioniert es.
                  Ist auf der Todo, bei deiner Version hatte ich das Problem glaube ich andersherum auf iPhone. Es kann aber auch was anderes gewesen sein, ich hatte da lange mit verschiedenen Einstellungen rumprobiert.
                  Zitat von TirochH Beitrag anzeigen
                  - iPad: 2 getrennte Ikonen für lokalen Zugriff und Internet-Zugriff wären möglich (siehe meine Einstellungen durch Abfrage ob "Port" verwendet wird).
                  könntest du schnell über die custom.js wieder einfügen, ich fand die Port überprüfung allerdings nicht allgemein genug, da es auch User gibt die intern einen anderen oder aber von extern den gleichen Port verwenden. Ich bau sonst eine Funktion ein die erkennt ob IP privat ist oder wenn es klappt ob Client und HS IP im gleichen Netz sind.

                  Zitat von TirochH Beitrag anzeigen
                  - Wäre es möglich animierte Vektorgrafiken (z.B. Bahnhofsuhr mit JavaScript, Sourcecode vollständig vorhanden) einzubinden? Weiters die Nutzung von SVG Grafiken.
                  auch kein Problem über die custom.js, ich kann das die nächsten Tage als Beispielcode zeigen

                  Zitat von TirochH Beitrag anzeigen
                  - Aus meiner Sicht wäre es sinnvoller statt jQuery auf AngularJS aufzusetzen. Ist nach meiner Meinung das beste was heute verfügbar ist. Vorteil: Integration von verschiedenen Library's ist gemanagt. Größe des Codes (kann überflüssigen Code auslagern). Anbindung und Verwendung von Variablen "genial" gelöst. Wäre auf lange Sicht die zukunftssicherste Lösung. jQuery scheint "schwergewichtiger" zu sein und die Integration + Zusammenspiel mit zusätzlichen Library's scheint komplexer und fehleranfälliger zu sein. Sollte nur als Diskussionsvorschlag gesehen werden, wäre aber wert es anzuschauen.
                  Ich habe jQuery AngularJS vorgezogen, weil mir Angular zu sehr HTML seitig war, damit hätte ich programmierseitig vielleicht manche Dinge einfacher machen können, diese wären dann allerdings nicht so individuell einsetzbar gewesen. Mir kam es hauptsächlich auch drauf an, dass die Anpassungen eigentlich fast komplett über den Experten und nicht über jHTML/Javascript gemacht werden. Die Speichernutzung liegt dort auch mehr im DOM als im Javascript. Derzeit verhindere ich das GC der Elemente dadurch das alle Seiten und Elemente im Javascript bestehen bleiben, da Sie ja eigentlich zur "Anwendung" gehören. Wenn da mal jemand aufgebähte Browser sieht (nein Firefox zählt nicht :P), die Aufgrund der xxAPI² Speicher fressen, könnte man das evtl noch zwischendurch aufräumen.

                  Bei den Ladezeiten sollte das nachher in der "Offline" Version eigentlich egal sein.
                  Nils

                  aktuelle Bausteine:
                  BusAufsicht - ServiceCheck - Pushover - HS-Insight

                  Kommentar


                    Zitat von NilsS Beitrag anzeigen
                    @Hans
                    Wenn du dir folgendes in die custom.js kopierst kommt deine Uhr wieder.
                    Lieber Nils,

                    danke.

                    Hab auch schon eine Lösung (siehe Anhang).

                    Ich kann jetzt alte und neue App gleichzeitig (ohne Einschränkungen) laufen lassen. Hab auch eine Variable gefunden. Setze bei alter xxAPI Aufruf Variable.

                    In Beilage auch eine funktionierende Einstellung für iPAD.

                    Es funktioniert bei mir alles, ausser bekannte Einschränkungen bei Popups, Login, Zeitschaltuhr, Meldungsfenster, ...
                    "Cool"
                    Manchmal funktioniert Refresh nicht.

                    Könnte man zwischendurch die alten tpl Dateien aktivieren ? (USZU, etc.)

                    Gruss Hans
                    Angehängte Dateien
                    Hans

                    Kommentar


                      Deine Einstellungen sind ja fast die selben, wie meine. (Kein Wunder ich hab es ja auch von Dir kopiert xD).

                      Es gab dort aber irgendwo einen Fehler das es sich auf kleineren Geräten nicht auf Originalgröße skalieren ließ wenn ich mich richtig errinere.

                      Was allerdings sein kann, da es ja eigentlich nur beim iPad nicht funcktioniert, dass es an der Orientation Erkennung liegt. Ich verwende das orientation vom Windowobjekt, und du verwendest breite > Höhe Erkennung (was ja eigentlich auch Sinn macht).

                      Ich werde es mal testen wenn ich den nächsten commit durch habe (XXTRIGGER)

                      Die TPL's kann ich nicht laden, da es keine Gemeinsamkeiten mit der HSAV gibt die man verwenden könnte.

                      Die Implementierung halte ich allerdings auch nicht für so schwierig.

                      Als nächstes steht auf dem Plan.

                      * Werteingabe/USZU Information bereits beim Seite laden zu holen und fest in den Items zu speichern (min/max/Werteinheit etc).
                      * POPUP (grrr da hängt leider einiges dran, derzeitige Überlegung das Popup einfach in einer eigenen Session zu öffnen)
                      * Eingaben/USZU etc
                      * Slider
                      * Symbole als Canvas laden und imagedata im localstorage speichern (spart viel Netztraffic und Symbolhash zeigt Änderungen)
                      Nils

                      aktuelle Bausteine:
                      BusAufsicht - ServiceCheck - Pushover - HS-Insight

                      Kommentar


                        Wenn der Refresh nicht geht, ist ein Fehler aufgetreten.

                        Bitte mal im F12 unter Error/Warnings gucken ob da was steht.

                        Es gibt eigentlich nur noch einen einzigen Timer der immer wieder durchläuft, wenn der einen Fehler hat bleibt natürlich alles stehen.
                        Nils

                        aktuelle Bausteine:
                        BusAufsicht - ServiceCheck - Pushover - HS-Insight

                        Kommentar


                          XXINACTIVE braucht keiner mehr oder?

                          XXCLICK wird inkompatibel werden, da es ausser XXEXECUTE ja eh keinen sinnvollen Einsatz dahinter gibt, akzeptiert dann nur noch
                          XXCLICK*Text*Javascript code
                          also statt
                          XXCLICK*Text*XXEXECUTE*Javascript code

                          Ich werde ein vorhandenes XXEXECUTE* da also einfach löschen.

                          Falls ihr da was anderes wichtiges mit gemacht habt, schreit schnell.
                          Nils

                          aktuelle Bausteine:
                          BusAufsicht - ServiceCheck - Pushover - HS-Insight

                          Kommentar


                            @Nils:

                            Von der Menüseite aus rufe ich über den Revox-Button meine Geräteseite auf. Das funktioniert seitenmäßig.
                            Über den Revox-Button wird auch der IP-Befehl zum Aufruf des Revox-Plug-In´s ausgeführt, das sich auf die Oberfläche der aufgerufenen Seite legt. Das funktioniert nicht mehr. Erst wenn ich auf der Seite, wo das Plug-In erscheinen soll, den Befehl aufrufe, erscheint dieses.
                            Im Anhang eine Abbildung der Seite mit versetztem Plug-In zur Größendarstellung.

                            Nächstes Problem:
                            Wie komme ich von einer aufgerufenen Vollseite zurück zur Startseite mit den Quadranten?
                            Kann man von einer Vollseite aus bestimmte Quadranten-Seiten aufrufen? Das ging ja bei der XXAPI nicht.

                            Danke unbd Gruß
                            Hans-Peter
                            Angehängte Dateien

                            Kommentar


                              Zitat von NilsS Beitrag anzeigen
                              Man kann jetzt durch Elemente ohne "Click" durchklicken.
                              Also das darunterliegende Element wird dann geklickt.
                              Hi Nils,

                              verstehe ich das richtig:
                              - wenn ich ein dynamisches Symbol (z.B. EIN/AUS/unsichtbar) mit 3 Zuständen habe, könnte ich das darunterliegende Symbol anklicken (nur wenn Status unsichtbar).
                              Wäre von mir ein Featurewunsch. Aber anscheinend gibt es das schon, wenn ich Dein posting richtig verstehe. Wie wende ich das an ?

                              Hans
                              Hans

                              Kommentar


                                @Hans-Peter
                                Womit rufst du die Revox Seite auf? XXMODULCLICK?
                                Ich brauch ein paar mehr Details.

                                @Hans
                                Du könntest über das Dynamische Symbol ein Dynamisches Textfeld legen mit einem Dummy Click. Wenn das darunterliegende Symbol Clickbar sein soll, dann änderst du den Text auf
                                Code:
                                XXEXECUTE*item.css({?pointer-events?,?none?});
                                und zum Sperren wieder auf
                                Code:
                                XXEXECUTE*item.css({?pointer-events?,?auto?});
                                EDIT: \ im code hinzugefügt
                                Nils

                                aktuelle Bausteine:
                                BusAufsicht - ServiceCheck - Pushover - HS-Insight

                                Kommentar

                                Lädt...
                                X