Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Русский
  3. ioBroker
  4. Визуализация
  5. ioBroker.vis Драйвер
  6. Разные вопросы по Vis

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.5k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.0k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    2.7k

Разные вопросы по Vis

Geplant Angeheftet Gesperrt Verschoben ioBroker.vis Драйвер
218 Beiträge 20 Kommentatoren 66.0k Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • A Offline
    A Offline
    andrey99986
    schrieb am zuletzt editiert von
    #115

    Понятно что можно просто использовать {ObjectID} в коде js (клиентская сторона) и создавать ссылки.

    Усложню вопрос - нужно сгенерить ссылку в зависимости от IP адреса клиента.

    То есть надо при открытии страницы сделать проверку IP (в скриптах в Админке iobroker) и вернуть на эту страницу информацию какой IP (ЛВС или Инет).

    При чём надо иметь ввиду что могут быть одновременно открыты страницы как из ЛВС так и из Интернет.

    На клиентском js проверять IP нельзя, так как IP может быть за нат-ом и совпадать с ЛВС.

    Другими словами как сконвертировать php-код в iobroker?

    		$ip = $_SERVER['REMOTE_ADDR'];
    		$iPhone  = stripos($_SERVER['HTTP_USER_AGENT'],"iPhone");
    		$iPad    = stripos($_SERVER['HTTP_USER_AGENT'],"iPad");
    		$Android = stripos($_SERVER['HTTP_USER_AGENT'],"Android");
    		if (strpos($ip,'192.168.2.') !== false) 
    		{
                    if( $iPhone || $iPad ) 
    			{
    			   echo "[](\"http://192.168.2......)
    
    1 Antwort Letzte Antwort
    0
    • BluefoxB Offline
      BluefoxB Offline
      Bluefox
      schrieb am zuletzt editiert von
      #116

      @Haus:

      @andrey99986:

      Ещё вопрос - как выбрать веб-страницу проекта которая будет грузиться по умолчанию? Чтобы не указывать "#имя_страницы" в урле каждый раз. `
      Первая созданная страница в проекте будет грузиться по умолчанию, изменить можно в

      opt/iobroker/iobroker-data/files/vis.0/main/vis-views.json переместив нужную страницу вперёд.

      При глобальных изменениях пере загружай сервер. `
      Ну это конечно слишком сложно. На самом деле я встроил механизм выбора первой странцы. И что то мне подсказывает, что именно этот механизм вызывает этот глюк.

      Можно выбрать одну страницу по умолчанию для каждого разрешения.

      Может ты несколько страниц пометил, как по умолчанию? Я подозреваю, что при быстром скролинге генерируется событие изменения разрешения экрана и система ищет страницу по умолчанию. Это и происходит.

      Решение проблемы. Убрать везде галочки "по умолчанию ".

      1 Antwort Letzte Antwort
      0
      • A Offline
        A Offline
        andrey99986
        schrieb am zuletzt editiert von
        #117

        @Bluefox:

        Решение проблемы. Убрать везде галочки "по умолчанию ". `

        Да - это решает проблему. Я в предыдущих постах написал об этом.

        1 Antwort Letzte Antwort
        0
        • BluefoxB Offline
          BluefoxB Offline
          Bluefox
          schrieb am zuletzt editiert von
          #118

          @andrey99986:

          Понятно что можно просто использовать {ObjectID} в коде js (клиентская сторона) и создавать ссылки.

          Усложню вопрос - нужно сгенерить ссылку в зависимости от IP адреса клиента.

          То есть надо при открытии страницы сделать проверку IP (в скриптах в Админке iobroker) и вернуть на эту страницу информацию какой IP (ЛВС или Инет).

          При чём надо иметь ввиду что могут быть одновременно открыты страницы как из ЛВС так и из Интернет.

          На клиентском js проверять IP нельзя, так как IP может быть за нат-ом и совпадать с ЛВС.

          Другими словами как сконвертировать php-код в iobroker?

          		$ip = $_SERVER['REMOTE_ADDR'];
          		$iPhone  = stripos($_SERVER['HTTP_USER_AGENT'],"iPhone");
          		$iPad    = stripos($_SERVER['HTTP_USER_AGENT'],"iPad");
          		$Android = stripos($_SERVER['HTTP_USER_AGENT'],"Android");
          		if (strpos($ip,'192.168.2.') !== false) 
          		{
                          if( $iPhone || $iPad ) 
          			{
          			   echo "[](\"http://192.168.2......)
          ````[](\"http://192.168.2......) `   [Если я правильно понимаю, то это возможно, но не совсем.
          

          У тебя нет доступа к socket.io. Так как только socket.io имеет информацию о настоящем ip адресе.

          Что ты хочешь сделать? Просто показать в виз ip адрес клиента? Не думаю, что это возможно без модификации socket.io.]("http://192.168.2......)

          1 Antwort Letzte Antwort
          0
          • A Offline
            A Offline
            andrey99986
            schrieb am zuletzt editiert von
            #119

            @Bluefox:

            Что ты хочешь сделать? Просто показать в виз ip адрес клиента? Не думаю, что это возможно без модификации socket.io. `

            Хочу чтобы на странице vis создавалась ссылка в зависимости от того, с какого адреса была открыта страница.

            Если клиент зашёл с той же ЛВС, где находится iobroker- создавалась ссылка на внутренний ресурс вида http://192.168..

            Если клиент зашёл c Интернет - создавалась ссылка на ресурс вида http://www…

            Ну ещё желательно определять в заголовках User Agent-а, чтобы создавать url-ы в зависимости от устройства с которого зашли.

            А то сейчас приходится делать 6 ссылок на просмотр видео:

            1. Если зашли с Desktop с ЛВС

            2. Если зашли с Desktop с Интернет

            3. Если зашли с Android с ЛВС

            4. Если зашли с Android с Интернет

            5. Если зашли с IOS с ЛВС

            6. Если зашли с IOS с Интернет

            На php можно было оставить на странице только одну ссылку.

            В iobroker нужны все шесть?

            1 Antwort Letzte Antwort
            0
            • BluefoxB Offline
              BluefoxB Offline
              Bluefox
              schrieb am zuletzt editiert von
              #120

              @andrey99986:

              @Bluefox:

              Что ты хочешь сделать? Просто показать в виз ip адрес клиента? Не думаю, что это возможно без модификации socket.io. `

              Хочу чтобы на странице vis создавалась ссылка в зависимости от того, с какого адреса была открыта страница.

              Если клиент зашёл с той же ЛВС, где находится iobroker- создавалась ссылка на внутренний ресурс вида http://192.168..

              Если клиент зашёл c Интернет - создавалась ссылка на ресурс вида http://www…

              Ну ещё желательно определять в заголовках User Agent-а, чтобы создавать url-ы в зависимости от устройства с которого зашли.

              А то сейчас приходится делать 6 ссылок на просмотр видео:

              1. Если зашли с Desktop с ЛВС

              2. Если зашли с Desktop с Интернет

              3. Если зашли с Android с ЛВС

              4. Если зашли с Android с Интернет

              5. Если зашли с IOS с ЛВС

              6. Если зашли с IOS с Интернет

              На php можно было оставить на странице только одну ссылку.

              В iobroker нужны все шесть? `
              Все что тебе надо. Можно отлично определить на клиенте. У меня сделано так, что по локалке я захожу без пароля, а по инету с паролем по https. Таким образом я могу отличить lan/wan, а тип клиента определяется js на раз два. Тебе надо понимать, что здесь используется отличная от php технология. Статические страницы и динамические данные могут поступать с двух разных источников. За счет этого достигается огромная скорость и гибкость. Тебе нельзя думать терминами php, но то что тебе надо сделать можно.

              Посмотри здесь я делаю что то похожее:

              https://iobroker.net:8080/vis/edit.html?main#DemoView

              1 Antwort Letzte Antwort
              0
              • A Offline
                A Offline
                andrey99986
                schrieb am zuletzt editiert von
                #121

                @Bluefox:

                Все что тебе надо. Можно отлично определить на клиенте. У меня сделано так, что по локалке я захожу без пароля, а по инету с паролем по https. Таким образом я могу отличить lan/wan, а тип клиента определяется js на раз два. Тебе надо понимать, что здесь используется отличная от php технология. Статические страницы и динамические данные могут поступать с двух разных источников. За счет этого достигается огромная скорость и гибкость. Тебе нельзя думать терминами php, но то что тебе надо сделать можно.

                Посмотри здесь я делаю что то похожее:

                https://iobroker.net:8080/vis/edit.html?main#DemoView `

                То есть из wan - открываем одну страницу, из lan - другую?

                По локалке хотелось бы тоже с паролем. И по причине безопасности и из-за избыточности иметь две ссылки.

                На странице по ссылке - ошибки.

                1 Antwort Letzte Antwort
                0
                • BluefoxB Offline
                  BluefoxB Offline
                  Bluefox
                  schrieb am zuletzt editiert von
                  #122

                  @andrey99986:

                  @Bluefox:

                  Все что тебе надо. Можно отлично определить на клиенте. У меня сделано так, что по локалке я захожу без пароля, а по инету с паролем по https. Таким образом я могу отличить lan/wan, а тип клиента определяется js на раз два. Тебе надо понимать, что здесь используется отличная от php технология. Статические страницы и динамические данные могут поступать с двух разных источников. За счет этого достигается огромная скорость и гибкость. Тебе нельзя думать терминами php, но то что тебе надо сделать можно.

                  Посмотри здесь я делаю что то похожее:

                  https://iobroker.net:8080/vis/edit.html?main#DemoView `

                  То есть из wan - открываем одну страницу, из lan - другую?

                  По локалке хотелось бы тоже с паролем. И по причине безопасности и из-за избыточности иметь две ссылки.

                  На странице по ссылке - ошибки. `
                  Нет. Страница одна и та же. Но разные web драйвера. У меня установлено 2 web драйвера. Один для интернет и один для локалки.

                  Ну начни уже что нибудь делать. Я подмогу.

                  [{"tpl":"tplHtml","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","refreshInterval":"0","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"html":"\n\n\n\n"},"style":{"left":"733px","top":"77px"},"widgetSet":"basic"}]
                  
                  1 Antwort Letzte Antwort
                  0
                  • A Offline
                    A Offline
                    andrey99986
                    schrieb am zuletzt editiert von
                    #123

                    @Bluefox:

                    Нет. Страница одна и та же. Но разные web драйвера. У меня установлено 2 web драйвера. Один для интернет и один для локалки.

                    Ну начни уже что нибудь делать. Я подмогу. `
                    За готовый ответ по определению устройства спасибо конечно же, с js можно мне достаточно было бы ткнуть на любой линк с подобным решением.

                    Но я пока не понял как конкретно ты определяешь wan/lan вход. Надо как-то на js определить из-под какого драйвера запущен веб-сервер? Этот вопрос как бы не погуглишь :) А практики с iobroker у меня слишком мало чтобы догадаться.

                    1 Antwort Letzte Antwort
                    0
                    • H Offline
                      H Offline
                      Haus
                      schrieb am zuletzt editiert von
                      #124

                      @andrey99986:

                      @Bluefox:

                      Нет. Страница одна и та же. Но разные web драйвера. У меня установлено 2 web драйвера. Один для интернет и один для локалки.

                      Ну начни уже что нибудь делать. Я подмогу. `

                      Но я пока не понял как конкретно ты определяешь wan/lan вход. Надо как-то на js определить из-под какого драйвера запущен веб-сервер? Этот вопрос как бы не погуглишь :) А практики с iobroker у меня слишком мало чтобы догадаться. `
                      Скорей всего по запросу https://192.168.1.10…. или http://192.168.1.10... у меня тоже так web.0 по http в доме без пароля, web.1 https из вне на доменное имя с паролем. Если по lan хочешь с паролем то в system.adapter.web.0 поставь галочку и будет тебе счастье.

                      js-controller: 1.5.7 / node.js: v8.15.1/ npm: 6.4.1

                      admin: 3.6.0

                      javascript: 4.1.10

                      web: 2.4.1 vis: 1.1.10

                      cloud: 2.6.2

                      Server: DELL FX170 / linux: Debian 9.5 Stretch

                      Adapter: MegaD-2561, Mega-ES…

                      1 Antwort Letzte Antwort
                      0
                      • A Offline
                        A Offline
                        andrey99986
                        schrieb am zuletzt editiert von
                        #125

                        @Haus:

                        Скорей всего по запросу https://192.168.1.10…. или http://192.168.1.10... у меня тоже так web.0 по http в доме без пароля, web.1 https из вне на доменное имя с паролем. Если по lan хочешь с паролем то в system.adapter.web.0 поставь галочку и будет тебе счастье. `

                        Два web-адаптера для чего, если при этом один и тот же проект?

                        Только ради того чтобы на странице отличить lan от wan входа? И кстати как конкретно? Так:?

                        var x = document.referrer;
                        

                        Пробой локального ресурса? Так это можно и на одном web-адаптере сделать.

                        Сейчас пытаюсь реализовать логику на пробе загрузки уникальной картинки (которая есть только в моей ЛВС). Интересно что в редакторе проба работает, а при просмотре страницы нет. Код стырил:

                        function ImageExist(url) 
                        {
                           var img = new Image();
                           img.src = url;
                           return img.height != 0;
                        }
                        

                        почему то такая конструкция вообще не заработала, даже в редакторе:

                        $.ajax({
                            url:'http://www.example.com/somefile.ext',
                            type:'HEAD',
                            error: function()
                            {
                                //file not exists
                            },
                            success: function()
                            {
                                //file exists
                            }
                        });
                        
                        1 Antwort Letzte Antwort
                        0
                        • H Offline
                          H Offline
                          Haus
                          schrieb am zuletzt editiert von
                          #126

                          @andrey99986:

                          @Haus:

                          Скорей всего по запросу https://192.168.1.10…. или http://192.168.1.10... у меня тоже так web.0 по http в доме без пароля, web.1 https из вне на доменное имя с паролем. Если по lan хочешь с паролем то в system.adapter.web.0 поставь галочку и будет тебе счастье. `

                          Два web-адаптера для чего, если при этом один и тот же проект?

                          Только ради того чтобы на странице отличить lan от wan входа? И кстати как конкретно? Так:? `
                          Ну например дома на стене весит планшет, зачем там пароль и выход через определённое время. А вот из вне(с работы через комп) пароль и сброс через определённое время также https да и порт 443 другой, безопасность не помешает :)

                          js-controller: 1.5.7 / node.js: v8.15.1/ npm: 6.4.1

                          admin: 3.6.0

                          javascript: 4.1.10

                          web: 2.4.1 vis: 1.1.10

                          cloud: 2.6.2

                          Server: DELL FX170 / linux: Debian 9.5 Stretch

                          Adapter: MegaD-2561, Mega-ES…

                          1 Antwort Letzte Antwort
                          0
                          • BluefoxB Offline
                            BluefoxB Offline
                            Bluefox
                            schrieb am zuletzt editiert von
                            #127

                            @andrey99986:

                            @Haus:

                            Скорей всего по запросу https://192.168.1.10…. или http://192.168.1.10... у меня тоже так web.0 по http в доме без пароля, web.1 https из вне на доменное имя с паролем. Если по lan хочешь с паролем то в system.adapter.web.0 поставь галочку и будет тебе счастье. `

                            Два web-адаптера для чего, если при этом один и тот же проект?

                            Только ради того чтобы на странице отличить lan от wan входа? И кстати как конкретно? Так:?

                            var x = document.referrer;
                            

                            Пробой локального ресурса? Так это можно и на одном web-адаптере сделать.

                            Сейчас пытаюсь реализовать логику на пробе загрузки уникальной картинки (которая есть только в моей ЛВС). Интересно что в редакторе проба работает, а при просмотре страницы нет. Код стырил:

                            function ImageExist(url) 
                            {
                               var img = new Image();
                               img.src = url;
                               return img.height != 0;
                            }
                            

                            почему то такая конструкция вообще не заработала, даже в редакторе:

                            $.ajax({
                                url:'http://www.example.com/somefile.ext',
                                type:'HEAD',
                                error: function()
                                {
                                    //file not exists
                                },
                                success: function()
                                {
                                    //file exists
                                }
                            });
                            ```` `  
                            

                            Тебе надо засунуть код в

                            Какие у тебя IP адреса в локалке и в инете? По ним нельзя определить?

                            С загрузкой картинки может возникнуть CORS проблема.

                            1 Antwort Letzte Antwort
                            0
                            • A Offline
                              A Offline
                              andrey99986
                              schrieb am zuletzt editiert von
                              #128

                              @Bluefox:

                              Тебе надо засунуть код в

                              Какие у тебя IP адреса в локалке и в инете? По ним нельзя определить?

                              С загрузкой картинки может возникнуть CORS проблема. `

                              аякс код дополнительно в ?

                              Адреса в локалке 192.168.2.

                              Но надо гарантировано определить что я в своей сети.

                              var x = document.referrer;
                              

                              Выдаёт разный ответ при lan/wan доступе. Пока работает вот такой код , тестирую:

                              var myref = document.referrer;
                              clientip_www = false;
                              if (myref.includes("www.")){
                                  clientip_www = true;
                              }
                              
                              1 Antwort Letzte Antwort
                              0
                              • A Offline
                                A Offline
                                andrey99986
                                schrieb am zuletzt editiert von
                                #129

                                С document.referrer не во всех случаях работает.

                                Поставил я второй web-адаптер с http протоколом.

                                Как теперь в js отличить lan/wan вход?

                                Код кто-нибудь может показать?

                                1 Antwort Letzte Antwort
                                0
                                • BluefoxB Offline
                                  BluefoxB Offline
                                  Bluefox
                                  schrieb am zuletzt editiert von
                                  #130

                                  @andrey99986:

                                  С document.referrer не во всех случаях работает.

                                  Поставил я второй web-адаптер с http протоколом.

                                  Как теперь в js отличить lan/wan вход?

                                  Код кто-нибудь может показать? `
                                  Да не может быть что wan и lan у тебя оба в 192.168.2.* висят.

                                  Какие у тебя адреса?

                                  1 Antwort Letzte Antwort
                                  0
                                  • A Offline
                                    A Offline
                                    andrey99986
                                    schrieb am zuletzt editiert von
                                    #131

                                    @Bluefox:

                                    @andrey99986:

                                    С document.referrer не во всех случаях работает.

                                    Поставил я второй web-адаптер с http протоколом.

                                    Как теперь в js отличить lan/wan вход?

                                    Код кто-нибудь может показать? `
                                    Да не может быть что wan и lan у тебя оба в 192.168.2.* висят.

                                    Какие у тебя адреса? `
                                    Физически сервер iobroker- 192.168.2.200

                                    Есть арендованный сервер с реальным IP (firstvds)

                                    между маршрутизатором ЛВС (openwrt) 192.168.2.1 и firstvds vpn туннель на openvpn (сеть 10.8.1.x).

                                    Настроена маршрутизация с firstvds до iobroker через openvpn сеть.

                                    На firstvds переброс портов iobroker с маскарадингом до iobroker-сервера.

                                    Вобщем всё классически :)

                                    с wan я захожу набирая https://www. (реальное доменное имя)

                                    с лан - https://192.168.2.200

                                    И как отличить lan/wan вход имея только один экземпляр страницы iobroker?

                                    1 Antwort Letzte Antwort
                                    0
                                    • BluefoxB Offline
                                      BluefoxB Offline
                                      Bluefox
                                      schrieb am zuletzt editiert von
                                      #132

                                      @andrey99986:

                                      @Bluefox:

                                      @andrey99986:

                                      С document.referrer не во всех случаях работает.

                                      Поставил я второй web-адаптер с http протоколом.

                                      Как теперь в js отличить lan/wan вход?

                                      Код кто-нибудь может показать? `
                                      Да не может быть что wan и lan у тебя оба в 192.168.2.* висят.

                                      Какие у тебя адреса? `
                                      Физически сервер iobroker- 192.168.2.200

                                      Есть арендованный сервер с реальным IP (firstvds)

                                      между маршрутизатором ЛВС (openwrt) 192.168.2.1 и firstvds vpn туннель на openvpn (сеть 10.8.1.x).

                                      Настроена маршрутизация с firstvds до iobroker через openvpn сеть.

                                      На firstvds переброс портов iobroker с маскарадингом до iobroker-сервера.

                                      Вобщем всё классически :)

                                      с wan я захожу набирая https://www. (реальное доменное имя)

                                      с лан - https://192.168.2.200

                                      И как отличить lan/wan вход имея только один экземпляр страницы iobroker? `

                                      if (window.location.href.indexOf('www.') !== -1) {
                                         console.log('WAN');
                                      } else {
                                         console.log('LAN');
                                      }
                                      
                                      
                                      1 Antwort Letzte Antwort
                                      0
                                      • A Offline
                                        A Offline
                                        andrey99986
                                        schrieb am zuletzt editiert von
                                        #133

                                        @Bluefox:

                                        if (window.location.href.indexOf('www.') !== -1) {
                                           console.log('WAN');
                                        } else {
                                           console.log('LAN');
                                        }
                                        
                                        ```` `  
                                        

                                        Вот! Спасибо. Гуглил конечно же - но упорно на эту функцию не выходил. Надо было со стороны справочника js заходить….

                                        1 Antwort Letzte Antwort
                                        0
                                        • A Offline
                                          A Offline
                                          andrey99986
                                          schrieb am zuletzt editiert von
                                          #134

                                          Как в js в vis присвоить объекту {ObjectID} значение свойства window.location.href ?

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          834

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe