Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread)

    NEWS

    • [erledigt] 15. 05. Wartungsarbeiten am ioBroker Forum

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread)

    This topic has been deleted. Only users with topic management privileges can see it.
    • dslraser
      dslraser Forum Testing Most Active last edited by dslraser

      @kueppert sagte in Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread):

      HABS: hab "Externer Link" genommen und den Datenpunkt "synology.0.SurveillanceStation.cameras.XYZ.linkMjpegHttpPath" hinter BACKGROUND_URL gewählt

      ich habe die auch über Synology eingebunden, aber etwas anders als bei Dir (läuft schon ewig so bei mir)
      Versatz habe ich damit auch nicht.

      Bildschirmfoto 2022-10-21 um 17.43.01.png

      Als Widget und da habe ich das hier gewählt

      Bildschirmfoto 2022-10-21 um 17.40.38.png

      Als Inhalt das hier

      Bildschirmfoto 2022-10-21 um 17.49.25.png

      hier der Inhalt als Code (anpassen mußt Du natürlich Deine IP/Port sowie ID usw...)

      <html style="height: 100%;"><head><meta name="viewport" content="width=device-width, minimum-scale=0.1"></head><body style="margin: 0px; background: #424242; height: 100%"><img style="-webkit-user-select: none;max-width: 100%;" src="http://192.168.1.248:5000/webapi/entry.cgi?api=SYNO.SurveillanceStation.Stream.VideoStreaming&amp;version=1&amp;method=Stream&amp;format=mjpeg&amp;cameraId=9&amp;StmKey=%225c4ad2f3f1aa7e68329c8f7b88070eb7%22"></body></html>
      

      Die passenden Daten findest Du in Deiner SurveillanceStation

      rechte Maustaste auf eine Kamera und dann Stream-Pfad freigeben

      Bildschirmfoto 2022-10-21 um 17.49.07.png

      Bildschirmfoto 2022-10-21 um 17.51.59.png

      Bei mir sind am Mac die Streams nebeneinander und am Handy untereinander.
      Hier noch ein Export eines Gerätes
      2022-10-21_iqontrol_0_devices.json.zip

      K 1 Reply Last reply Reply Quote 1
      • K
        Kueppert @dslraser last edited by Kueppert

        @dslraser sagte in Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread):

        <html style="height: 100%;"><head><meta name="viewport" content="width=device-width, minimum-scale=0.1"></head><body style="margin: 0px; background: #424242; height: 100%"><img style="-webkit-user-select: none;max-width: 100%;" src="http://192.168.1.248:5000/webapi/entry.cgi?api=SYNO.SurveillanceStation.Stream.VideoStreaming&version=1&method=Stream&format=mjpeg&cameraId=9&StmKey="5c4ad2f3f1aa7e68329c8f7b88070eb7""></body></html>

        Danke dir für den Tip. Bei meiner Syno wird der Stream-Pfad bei allen meinen Kameras nur als RTSP ausgegeben. Der Link, wenn ich den auf meine Daten anpasse, geht leider nicht und liefert einen Fehler. Freigegeben habe ich alle dauerhaft. Steht bei dir im Syno-Adapter auch dein Key mit "%22" davor uns dahinter?
        7b8a9ccf-93f8-424e-8380-6aa71cfc5d94-image.png

        Der folgende HTML-Code funktioniert aktuell bei mir (mit den vorgenannten Fehlern bei der Anzeige mit Versatz):

        http://192.168.10.10:5000/webapi/entry.cgi?api=SYNO.SurveillanceStation.Stream.VideoStreaming&version=1&method=Stream&format=mjpeg&cameraId=14&StmKey="d1a38b05df9d7a9dbf16e05658739096"
        

        Der Link beinhaltet also die Funktionen "&amp" nicht und hat auch hinten im Key keine "%22".
        PS: Hab den Link mit Nachgang mit &amp und mit und ohne %22 im Key auch schon ausprobiert 😕

        GELÖST:
        Der Code muss in der Tat manuell mit &amp und %22 nachbearbeitet werden...habs nun doch durch ausprobieren hinbekommen:

        <html style="height: 100%;"><head><meta name="E1 PRO Melina" content="width=device-width, minimum-scale=0.1"></head><body style="margin: 0px; background: #424242; height: 100%"><img style="-webkit-user-select: none;max-width: 100%;" src="http://192.168.10.10:5000/webapi/entry.cgi?api=SYNO.SurveillanceStation.Stream.VideoStreaming&amp;version=1&amp;method=Stream&amp;format=mjpeg&amp;cameraId=11&amp;StmKey=%22d11ad789a26a5259388737267a313da1%22"></body></html>
        
        1 Reply Last reply Reply Quote 1
        • A
          astrakid last edited by astrakid

          ich habe nun eine alexa-einkaufsliste in iqontrol eingebunden - klappt soweit, inklusive button, der einträge löscht (wird vom entwickler so in der tabelle bereitgestellt). wie kann ich diesen butto (javascript) in iqontrol ausführbar machen?

          die einkaufsliste ist als widget eingebunden.

          s.bormann 1 Reply Last reply Reply Quote 0
          • A
            arnold @cb187 last edited by

            @cb187 Hallo
            kann nicht weiter kommen .Welchen Tip ?,was hast du noch konfiguriert?
            muss man was am link ändern ?
            .................:3000/d/k5EQ1GWgk/solar-600?orgId=1&refresh=10s&theme=dark

            (im zeit im 2 Stunden video vom @Dutchman https://www.youtube.com/watch?v=VXfpds4Rtqc)

            da_Woody 1 Reply Last reply Reply Quote 0
            • da_Woody
              da_Woody @arnold last edited by

              @arnold sorry, geht das auch in verständlich?
              abgesehn gehört das in den support tread, nicht in den entwickler...

              A 2 Replies Last reply Reply Quote 0
              • A
                arnold @da_Woody last edited by

                @da_woody habe eben den Gleichen Fehler, Gafana Grafik wird als Wiget nicht angezeigt .Habe Grafana Gestoppt,dann

                sudo nano /etc/grafana/grafana.ini
                

                in den Bereich, der [auth.anonymous]
                enabled = true
                in den Bereich Security
                allow_embedding=true (ohne ( ; ) natürlich)

                dann

                sudo service grafana-server restart
                

                bei Blackground_URL
                http://..................:3000/d/k5EQ1GWgk/solar-600?orgId=1&viewPanel=15
                Grafik wird nicht angezeigt

                da_Woody 1 Reply Last reply Reply Quote 0
                • da_Woody
                  da_Woody @arnold last edited by

                  @arnold ich kapier nicht, was ihr für probs habt.

                  http://192.168.0.252:3000/d-solo/z8EAZn_Gk/heating?orgId=1&refresh=1m&theme=dark&panelId=2
                  

                  934d94f2-82a3-4d14-9146-bef72ce1bcfb-grafik.png
                  ihr macht um eure geheimen lokalen IPs immer ein geheimniss. damit kann man nix anfangen, aber eventuell einen fehler sehn.

                  1 Reply Last reply Reply Quote 0
                  • A
                    arnold @da_Woody last edited by

                    @da_woody eventuell ein Konflikt
                    Iobroker mit "s "
                    https://192.168.178.80:6032/iqontrol/index.html?namespace=iqontrol.0

                    grafana ohne
                    http://192.168.178.80:3000/d/k5EQ1GWgk/solar-600?orgId=1&refresh=10s

                    1 Reply Last reply Reply Quote 0
                    • s.bormann
                      s.bormann Most Active @astrakid last edited by

                      @astrakid sagte in Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread):

                      ich habe nun eine alexa-einkaufsliste in iqontrol eingebunden - klappt soweit, inklusive button, der einträge löscht (wird vom entwickler so in der tabelle bereitgestellt). wie kann ich diesen butto (javascript) in iqontrol ausführbar machen?

                      die einkaufsliste ist als widget eingebunden.

                      Hi,
                      ich habs noch nicht ganz kapiert. Kannst Du mal genauer beschreiben, wie die Tabelle zur Verfügung gestellt wird? JSON? Oder HTML? Und wie die Buttons implementiert sind? Gibt es Fehler im Browswer-Log beim Klicken auf den Button?
                      VG

                      A A 2 Replies Last reply Reply Quote 0
                      • A
                        arnold @s.bormann last edited by

                        @s-bormann
                        meine Eintragungen :
                        Gerätetyp Widget

                        e37b3779-c0ac-4bd1-8ed6-ddc0a6d0f30b-image.png
                        a941d6da-bf35-4fcf-af7b-dfad3caab434-image.png
                        vor 2 Jahren hat Duchmann geschrieben :
                        https mit Authentifizierung an im web adapter, kein https fuer grafana... dan sagt der browser einen non-https content auf einer https seiner ==> No fucking way BLOCK

                        deswegen schreibe ich daß
                        Iobroker mit "s "
                        https://192.168.178.80:6032/iqontrol/index.html?namespace=iqontrol.0

                        grafana ohne
                        http://192.168.178.80:3000/d/k5EQ1GWgk/solar-600?orgId=1&refresh=10s
                        den link von hier
                        6f068201-9d30-4e03-9af6-b6745d8dc987-image.png

                        kann man da was in Grafana .ini ändern , (das sind meine links von Iobroker und Grafana)

                        Habe Grafana Gestoppt ,dann

                        sudo nano /etc/grafana/grafana.ini
                        in den Bereich gesätzt, der [auth.anonymous]
                        enabled = true
                        in den Bereich Security
                        allow_embedding=true (ohne ( ; ) natürlich)

                        dann

                        sudo service grafana-server restart

                        bei Blackground_URL
                        http://192.168.178.80:3000/d/k5EQ1GWgk/solar-600?orgId=1&refresh=10s

                        Grafik wird nicht angezeigt
                        c36e0551-4579-4b01-8e0e-972857f24a62-image.png

                        Fehler im Browswer-Log

                        [832:9752:1030/203719.467:ERROR:device_event_log_impl.cc(214)] [20:37:19.466] Bluetooth: bluetooth_adapter_winrt.cc:1074 Getting Default Adapter failed.
                        [832:9752:1030/203719.538:ERROR:device_event_log_impl.cc(214)] [20:37:19.538] USB: usb_device_handle_win.cc:1048 Failed to read descriptor from node connection: Ein an das System angeschlossenes Gerõt funktioniert nicht. (0x1F)
                        [832:9752:1030/203719.538:ERROR:device_event_log_impl.cc(214)] [20:37:19.538] USB: usb_device_handle_win.cc:1048 Failed to read descriptor from node connection: Ein an das System angeschlossenes Gerõt funktioniert nicht. (0x1F)
                        [2220:9996:1030/203813.186:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203813.192:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203813.873:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203813.880:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203813.886:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203813.895:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203813.913:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203813.941:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203813.959:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203813.983:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203814.008:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [832:10988:1030/203814.565:ERROR:util.cc(129)] Can't create base directory: C:\Program Files\Google\GoogleUpdater
                        [2220:9996:1030/203814.947:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203822.018:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203822.030:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203822.043:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203822.055:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203822.299:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203822.316:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203824.229:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203824.231:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203824.281:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203824.299:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203824.338:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203824.351:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203824.379:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203824.410:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203824.421:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203824.484:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203824.498:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203824.555:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203824.587:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203825.344:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [2220:9996:1030/203845.615:ERROR:ssl_client_socket_impl.cc(983)] handshake failed; returned -1, SSL error code 1, net_error -202
                        [6392:2040:1030/203914.220:ERROR:gpu_init.cc(521)] Passthrough is not supported, GL is disabled, ANGLE is
                        
                        1 Reply Last reply Reply Quote 0
                        • A
                          astrakid @s.bormann last edited by

                          @s-bormann ist eine json-tabelle, die über einen eigenen adapter (alexa-shoppinglist) bereitgestellt wird.

                          biespielinhalt:

                          [
                            {
                              "name": "Mineralwasser",
                              "time": "29.10.2022, 13:40:45",
                              "id": "b693a638-xxxx-4e1f-xxxx-f2486503f9ae",
                              "pos": 1,
                              "buttonmove": "<button style=\"border:none; cursor:pointer; background-color:transparent; color:white; font-size:1em; text-align:center\" value=\"toggle\" onclick=\"setOnDblClickCustomShop('alexa2.0.Lists.SHOPPING_LIST.items.b693a638-xxxx-4e1f-xxxx-f2486503f9ae.completed,true')\">↪</button> <font color=\"green\">",
                              "buttondelete": "<button style=\"border:none; cursor:pointer; background-color:transparent; color:white; font-size:1em; text-align:center\" value=\"toggle\" onclick=\"setOnDblClickCustomShop('alexa2.0.Lists.SHOPPING_LIST.items.b693a638-xxxx-4e1f-xxxx-f2486503f9ae.#delete,true')\">❌</button> <font color=\"green\">"
                            },
                          ]
                          
                          s.bormann 1 Reply Last reply Reply Quote 0
                          • s.bormann
                            s.bormann Most Active @astrakid last edited by

                            @astrakid sagte in Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread):

                            @s-bormann ist eine json-tabelle, die über einen eigenen adapter (alexa-shoppinglist) bereitgestellt wird.

                            biespielinhalt:

                            [
                              {
                                "name": "Mineralwasser",
                                "time": "29.10.2022, 13:40:45",
                                "id": "b693a638-xxxx-4e1f-xxxx-f2486503f9ae",
                                "pos": 1,
                                "buttonmove": "<button style=\"border:none; cursor:pointer; background-color:transparent; color:white; font-size:1em; text-align:center\" value=\"toggle\" onclick=\"setOnDblClickCustomShop('alexa2.0.Lists.SHOPPING_LIST.items.b693a638-xxxx-4e1f-xxxx-f2486503f9ae.completed,true')\">↪</button> <font color=\"green\">",
                                "buttondelete": "<button style=\"border:none; cursor:pointer; background-color:transparent; color:white; font-size:1em; text-align:center\" value=\"toggle\" onclick=\"setOnDblClickCustomShop('alexa2.0.Lists.SHOPPING_LIST.items.b693a638-xxxx-4e1f-xxxx-f2486503f9ae.#delete,true')\">❌</button> <font color=\"green\">"
                              },
                            ]
                            

                            Hi,
                            hmm, so einfach wird das nicht gehen.
                            Mit dem onclick=\"setOnDblClickCustomShop('alexa2.0.Lists.SHOPPING_LIST.items.b693a638-xxxx-4e1f-xxxx-f2486503f9ae.completed,true') wird eine vom Adapter eigene Funktion aufgerufen, die in iQontrol nicht bekannt ist. Man müsste das wandeln in einen Aufruf, der von jeder beliebigen Webseite aus erreichbar ist.
                            Welcher Adapter ist das denn, ggf. kann ich mal ein bisschen damit spielen...

                            A 1 Reply Last reply Reply Quote 0
                            • A
                              astrakid @s.bormann last edited by

                              @s-bormann https://github.com/MiRo1310/ioBroker.alexa-shoppinglist

                              s.bormann 1 Reply Last reply Reply Quote 0
                              • s.bormann
                                s.bormann Most Active @astrakid last edited by

                                @astrakid sagte in Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread):

                                @s-bormann https://github.com/MiRo1310/ioBroker.alexa-shoppinglist

                                Habe das JSON-Table-Widget mit dem für die Shoppinglist notwendigen JS ausgestattet. Lade mal die aktuelle Version von Github und probiers mal aus.

                                VG

                                ? A 2 Replies Last reply Reply Quote 0
                                • ?
                                  A Former User @s.bormann last edited by

                                  @s-bormann said in Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread):

                                  @astrakid sagte in Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread):

                                  @s-bormann https://github.com/MiRo1310/ioBroker.alexa-shoppinglist

                                  Habe das JSON-Table-Widget mit dem für die Shoppinglist notwendigen JS ausgestattet. Lade mal die aktuelle Version von Github und probiers mal aus.

                                  VG

                                  Hi,
                                  habe mal eine Shopping Liste in Alexa angelegt, Adapter "alexa-shoppinglist" installiert und die Liste in iqontrol mit dem Json-Widget auf meiner Testseite angelegt, dann hab ich die Einträge im Widget gelöscht, geht. Auch im Adapter sind sie nicht mehr vorhanden. Verschieben muss ich erst noch testen.

                                  VG
                                  Bernd

                                  1 Reply Last reply Reply Quote 0
                                  • R
                                    Rookie50 last edited by

                                    @arnold said in Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread):

                                    Du hast es doch schon von Dutchman gelesen: HTTP in HTTPS anzeigen geht nicht. Da kannst Du auch noch 10 mal Fragen, dass wird sich nicht ändern...

                                    Da kannst Du auch keine Einstellungen in Grafana ändern ohne auch Grafana auf HTTPS umzustellen. Schau mal hier:
                                    https://www.turbogeek.co.uk/grafana-how-to-configure-ssl-https-in-grafana/
                                    Dann sollte es auch mit Grafana funktionieren. Es macht ja auch keinen Sinn unsichere Inhalte in sicher Umgebung anzuzeigen.

                                    R 1 Reply Last reply Reply Quote 0
                                    • R
                                      Rookie50 @Rookie50 last edited by

                                      Toolbar Badge

                                      @s-bormann
                                      Hallo Sebastian, es ist schon etwas länger her, da hatte ich Dich gefragt, ob es möglich ist für die Toolbar ein Badge zu bekommen. Du sagtest, dass Du es auf Deine Liste setzen wolltest. Nun wollte ich kurz nachfragen, wie so der Stand der Dinge dazu ist 😉 ?

                                      Gruß
                                      Robert

                                      s.bormann 1 Reply Last reply Reply Quote 0
                                      • A
                                        astrakid @s.bormann last edited by

                                        @s-bormann hammergeil. funktioniert! vielen dank!!!

                                        1 Reply Last reply Reply Quote 0
                                        • S
                                          StephanJanine last edited by

                                          Hi
                                          Wie kann ich denn unter die Temperaturanzeige noch den datenpunkt „Last Update“ Status einfügen. Habe es mit der Information a/b versucht aber scheint nicht zu funktionieren

                                          0A0056EF-BDC2-4948-8B5E-3F3A149E7394.jpeg

                                          da_Woody 1 Reply Last reply Reply Quote 0
                                          • da_Woody
                                            da_Woody @StephanJanine last edited by da_Woody

                                            @stephanjanine unter wird nicht gehn. aber, wenn du den DP ins Array ins InfoA einfügst, dann wird alternierend die temperatur und dein DP angezeigt.
                                            35479d95-b1c5-4b48-842c-f67509c91fe6-grafik.png
                                            uptime1.gif
                                            hab zwar deinen DP nicht, habs einfach mit uptime getestet.

                                            S 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            636
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            app dark-mode iqontrol responsive vis visualisierung visualization widget
                                            295
                                            7633
                                            5532116
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo