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. Deutsch
  3. ioBroker Allgemein
  4. IOBroker in Container mit Asterisk-Adapter Installation

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    21
    1
    919

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

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

IOBroker in Container mit Asterisk-Adapter Installation

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
26 Beiträge 2 Kommentatoren 1.9k Aufrufe 2 Watching
  • Ä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.
  • C Chrisham

    @oliverio ok, danke für den Hinweis, ich habe mal das ami.js file gesucht, es ist vorhanden aber nicht in

    /opt/iobroker/node_modules/iobroker.asterisk/node_modules
    

    sondern es liegt in

    /opt/iobroker/node_modules/iobroker.asterisk/lib
    

    Allerdings sieht das file etwas anders aus, als auf dem o.g. github repo:
    Da gibt es z.B. keine debug variable:

    /* jshint -W097 */
    /* jshint -W030 */
    /* jshint strict:true */
    /* jslint node: true */
    /* jslint esversion: 6 */
    'use strict';
    
    const AsteriskManagerGlobal = require('asterisk-manager');
    
    function textToNumber(text) {
      let numb = '';
      if (text) {
        numb = text.match(/[\d*#]/g);
        numb = numb.join('');
      }
      return numb;
    }
    
    function getGuid() {
      function _p8(s) {
        var p = (Math.random().toString(16) + '000000000').substr(2, 8);
        return s ? '-' + p.substr(0, 4) + '-' + p.substr(4, 4) : p;
      }
      return _p8() + _p8(true) + _p8(true) + _p8();
    }
    
    
    // *****************************************************************************************************
    // Asterix Manager Class. More Infos:
    //  https://github.com/pipobscure/NodeJS-AsteriskManager
    //  https://github.com/mscdex/node-asterisk
    // *****************************************************************************************************
    class AsteriskManager {
    
      constructor(config) {
        this.ami = new AsteriskManagerGlobal(config.port, config.hostname, config.username, config.password, config.events || false);
        this.options = {
          'port': config.port,
          'hostname': config.hostname,
          'username': config.username,
          'password': config.password,
          'service': config.service || 'sip',
          'events': config.events || false
        };
      }
    
      getAmi() {
        return this.ami;
      }
    
      asteriskEvent(eventname, callback) {
        if (eventname.length > 0 && callback) {
          this.ami.on(eventname, (evt) => {
            if (callback) callback(evt);
          });
        }
      }
    
      eventManager(callback) {
        this.asteriskEvent('managerevent', callback);
      }
    
      eventHangup(callback) {
        this.asteriskEvent('hangup', callback);
      }
    
      eventResponse(callback) {
        this.asteriskEvent('response', callback);
      }
    
      eventConfBridgeJoin(callback) {
        this.asteriskEvent('confbridgejoin', callback);
      }
    
      disconnect(callback) {
        this.ami.disconnect(callback);
      }
    
      isConnected() {
        return this.ami.isConnected();
      }
    
      connected() {
        return this.isConnected();
      }
    
      connect(callback) {
        this.ami.connect(this.options.port, this.options.hostname, callback);
      }
    
      keepConnected() {
        this.ami.keepConnected();
      }
    
      login(callback) {
        this.ami.login(callback);
      }
    
      reconnect(callback) {
        if (!this.isConnected()) {
          this.connect(() => {
            this.login(callback);
          });
        } else {
          if (callback) callback();
        }
      }
    
      dial(parameter, callback) {
    
        if (!parameter) return;
    
        let telnrs = (typeof parameter.telnr === 'string') ? Array(parameter.telnr) : parameter.telnr;
        let extension = parameter.extension || 'none';
        let resultarray = [];
    
        for (let i in telnrs) {
          let telnr = textToNumber(telnrs[i]);
          let channel;
          if (this.options.service === 'pjsip') {
            channel = (extension === 'none') ? 'PJSIP/' + telnr : 'PJSIP/' + telnr + '@' + extension;
          } else {
            channel = (extension === 'none') ? 'SIP/' + telnr : 'SIP/' + extension + '/' + telnr;
          }
          let guid = getGuid();
          let options = {
            'action': 'originate',
            'channel': channel,
            'context': parameter.context || 'ael-ansage',
            'exten': parameter.exten || telnr,
            'priority': parameter.priority || 1,
            'actionid': guid,
            'timeout': parameter.timeout || (60 * 1000),
            'variable': {
              'repeat': parameter.repeat || 5,
              'file': parameter.audiofile,
              'del': parameter.delete || ''
            }
          };
    
          if (parameter.hasOwnProperty('async')) { options.async = parameter.async; }
          if (parameter.hasOwnProperty('callerid')) { options.callerid = textToNumber(parameter.callerid); }
          if (parameter.hasOwnProperty('variable')) { options.variable = parameter.variable; }
          this.ami.action(options, (err, res) => {
            let result = {
              parameter: parameter,
              options: options,
              guid: guid,
              result: res
            };
            callback && callback(err, result);
          });
          resultarray.push({ parameter: parameter, guid: guid });
        }
    
        return resultarray;
      }
    
      action(parameter, callback) {
        let guid = getGuid();
        this.ami.action(parameter, (err, res) => {
          let result = {
            parameter: parameter,
            guid: guid,
            result: res
          };
          callback && callback(err, result);
        });
      }
    
    }
    
    module.exports = AsteriskManager;
    
    

    Ich habe dann mal meine Astersik-Adapter version geprüft innerhalb iobroker, aber die ist die aktuellste die dort angeboten wird, jedenfalls scheinen das nicht die gleichen Versionen zu sein.

    Hab dann mal ins asterisk.js geschaut, da gibt es bzgl. logging diese 3 Aufrufe:

    adapter.log.debug
    adapter.log.info
    adapter.log.error
    

    also info und error landen dann im protokolle-log vom iobroker, wobei ja eigentlich auch bis auf debug-level konfiguriert werden kann:
    2023-11-09 00_24_39-Window.png

    Dennoch erscheinen da keine log-entries mit diesem level, was ja eigentlich nicht sein kann, da müsste es doch welche geben, zzumindest ist der code voll davon:

      adapter.log.debug('Message: ' + JSON.stringify(parameter));
    
      if (parameter) {
        if (command == 'dial') {
          adapter.log.debug('Dial Command');
    
          if (!parameter.extension) parameter.extension = adapter.config.sipuser;
          if (parameter.telnr) { adapter.setState('dialout.telnr', parameter.telnr, true); }
          if (parameter.text) { adapter.setState('dialout.text', parameter.text, true); }
          if (parameter.callerid) { adapter.setState('dialout.callerid', parameter.callerid, true); }
    
    
          if (parameter.text && parameter.telnr) {
            if (!parameter.audiofile) parameter.audiofile = tmppath + 'audio_' + id;
            if (converter.getFilenameExtension(parameter.audiofile).toLowerCase() == 'gsm') {
              parameter.audiofile = converter.getBasename(parameter.audiofile);
            }
            if(!parameter.delete) { parameter.delete = 'delete'; } // delete file after dialing
    
    OliverIOO Offline
    OliverIOO Offline
    OliverIO
    schrieb am zuletzt editiert von OliverIO
    #4

    @chrisham

    du sollst nicht im paket
    iobroker.asterix
    suchen, sondern im paket
    asterix-manager
    suchen

    der paketname muss genau so geschrieben werden.
    auch dort gibt es eine ami.js datei

    Meine Adapter und Widgets
    TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
    Links im Profil

    C 1 Antwort Letzte Antwort
    0
    • C Chrisham

      @oliverio ok, danke für den Hinweis, ich habe mal das ami.js file gesucht, es ist vorhanden aber nicht in

      /opt/iobroker/node_modules/iobroker.asterisk/node_modules
      

      sondern es liegt in

      /opt/iobroker/node_modules/iobroker.asterisk/lib
      

      Allerdings sieht das file etwas anders aus, als auf dem o.g. github repo:
      Da gibt es z.B. keine debug variable:

      /* jshint -W097 */
      /* jshint -W030 */
      /* jshint strict:true */
      /* jslint node: true */
      /* jslint esversion: 6 */
      'use strict';
      
      const AsteriskManagerGlobal = require('asterisk-manager');
      
      function textToNumber(text) {
        let numb = '';
        if (text) {
          numb = text.match(/[\d*#]/g);
          numb = numb.join('');
        }
        return numb;
      }
      
      function getGuid() {
        function _p8(s) {
          var p = (Math.random().toString(16) + '000000000').substr(2, 8);
          return s ? '-' + p.substr(0, 4) + '-' + p.substr(4, 4) : p;
        }
        return _p8() + _p8(true) + _p8(true) + _p8();
      }
      
      
      // *****************************************************************************************************
      // Asterix Manager Class. More Infos:
      //  https://github.com/pipobscure/NodeJS-AsteriskManager
      //  https://github.com/mscdex/node-asterisk
      // *****************************************************************************************************
      class AsteriskManager {
      
        constructor(config) {
          this.ami = new AsteriskManagerGlobal(config.port, config.hostname, config.username, config.password, config.events || false);
          this.options = {
            'port': config.port,
            'hostname': config.hostname,
            'username': config.username,
            'password': config.password,
            'service': config.service || 'sip',
            'events': config.events || false
          };
        }
      
        getAmi() {
          return this.ami;
        }
      
        asteriskEvent(eventname, callback) {
          if (eventname.length > 0 && callback) {
            this.ami.on(eventname, (evt) => {
              if (callback) callback(evt);
            });
          }
        }
      
        eventManager(callback) {
          this.asteriskEvent('managerevent', callback);
        }
      
        eventHangup(callback) {
          this.asteriskEvent('hangup', callback);
        }
      
        eventResponse(callback) {
          this.asteriskEvent('response', callback);
        }
      
        eventConfBridgeJoin(callback) {
          this.asteriskEvent('confbridgejoin', callback);
        }
      
        disconnect(callback) {
          this.ami.disconnect(callback);
        }
      
        isConnected() {
          return this.ami.isConnected();
        }
      
        connected() {
          return this.isConnected();
        }
      
        connect(callback) {
          this.ami.connect(this.options.port, this.options.hostname, callback);
        }
      
        keepConnected() {
          this.ami.keepConnected();
        }
      
        login(callback) {
          this.ami.login(callback);
        }
      
        reconnect(callback) {
          if (!this.isConnected()) {
            this.connect(() => {
              this.login(callback);
            });
          } else {
            if (callback) callback();
          }
        }
      
        dial(parameter, callback) {
      
          if (!parameter) return;
      
          let telnrs = (typeof parameter.telnr === 'string') ? Array(parameter.telnr) : parameter.telnr;
          let extension = parameter.extension || 'none';
          let resultarray = [];
      
          for (let i in telnrs) {
            let telnr = textToNumber(telnrs[i]);
            let channel;
            if (this.options.service === 'pjsip') {
              channel = (extension === 'none') ? 'PJSIP/' + telnr : 'PJSIP/' + telnr + '@' + extension;
            } else {
              channel = (extension === 'none') ? 'SIP/' + telnr : 'SIP/' + extension + '/' + telnr;
            }
            let guid = getGuid();
            let options = {
              'action': 'originate',
              'channel': channel,
              'context': parameter.context || 'ael-ansage',
              'exten': parameter.exten || telnr,
              'priority': parameter.priority || 1,
              'actionid': guid,
              'timeout': parameter.timeout || (60 * 1000),
              'variable': {
                'repeat': parameter.repeat || 5,
                'file': parameter.audiofile,
                'del': parameter.delete || ''
              }
            };
      
            if (parameter.hasOwnProperty('async')) { options.async = parameter.async; }
            if (parameter.hasOwnProperty('callerid')) { options.callerid = textToNumber(parameter.callerid); }
            if (parameter.hasOwnProperty('variable')) { options.variable = parameter.variable; }
            this.ami.action(options, (err, res) => {
              let result = {
                parameter: parameter,
                options: options,
                guid: guid,
                result: res
              };
              callback && callback(err, result);
            });
            resultarray.push({ parameter: parameter, guid: guid });
          }
      
          return resultarray;
        }
      
        action(parameter, callback) {
          let guid = getGuid();
          this.ami.action(parameter, (err, res) => {
            let result = {
              parameter: parameter,
              guid: guid,
              result: res
            };
            callback && callback(err, result);
          });
        }
      
      }
      
      module.exports = AsteriskManager;
      
      

      Ich habe dann mal meine Astersik-Adapter version geprüft innerhalb iobroker, aber die ist die aktuellste die dort angeboten wird, jedenfalls scheinen das nicht die gleichen Versionen zu sein.

      Hab dann mal ins asterisk.js geschaut, da gibt es bzgl. logging diese 3 Aufrufe:

      adapter.log.debug
      adapter.log.info
      adapter.log.error
      

      also info und error landen dann im protokolle-log vom iobroker, wobei ja eigentlich auch bis auf debug-level konfiguriert werden kann:
      2023-11-09 00_24_39-Window.png

      Dennoch erscheinen da keine log-entries mit diesem level, was ja eigentlich nicht sein kann, da müsste es doch welche geben, zzumindest ist der code voll davon:

        adapter.log.debug('Message: ' + JSON.stringify(parameter));
      
        if (parameter) {
          if (command == 'dial') {
            adapter.log.debug('Dial Command');
      
            if (!parameter.extension) parameter.extension = adapter.config.sipuser;
            if (parameter.telnr) { adapter.setState('dialout.telnr', parameter.telnr, true); }
            if (parameter.text) { adapter.setState('dialout.text', parameter.text, true); }
            if (parameter.callerid) { adapter.setState('dialout.callerid', parameter.callerid, true); }
      
      
            if (parameter.text && parameter.telnr) {
              if (!parameter.audiofile) parameter.audiofile = tmppath + 'audio_' + id;
              if (converter.getFilenameExtension(parameter.audiofile).toLowerCase() == 'gsm') {
                parameter.audiofile = converter.getBasename(parameter.audiofile);
              }
              if(!parameter.delete) { parameter.delete = 'delete'; } // delete file after dialing
      
      OliverIOO Offline
      OliverIOO Offline
      OliverIO
      schrieb am zuletzt editiert von
      #5

      @chrisham

      ich verstehe nicht ganz
      9c8d78f0-f0a3-48e5-a5ec-52a941101c2b-image.png

      das sind log einträge die einen ganz anderen adapter betreffen

      Meine Adapter und Widgets
      TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
      Links im Profil

      C 1 Antwort Letzte Antwort
      0
      • C Chrisham

        @oliverio ok, danke für den Hinweis, ich habe mal das ami.js file gesucht, es ist vorhanden aber nicht in

        /opt/iobroker/node_modules/iobroker.asterisk/node_modules
        

        sondern es liegt in

        /opt/iobroker/node_modules/iobroker.asterisk/lib
        

        Allerdings sieht das file etwas anders aus, als auf dem o.g. github repo:
        Da gibt es z.B. keine debug variable:

        /* jshint -W097 */
        /* jshint -W030 */
        /* jshint strict:true */
        /* jslint node: true */
        /* jslint esversion: 6 */
        'use strict';
        
        const AsteriskManagerGlobal = require('asterisk-manager');
        
        function textToNumber(text) {
          let numb = '';
          if (text) {
            numb = text.match(/[\d*#]/g);
            numb = numb.join('');
          }
          return numb;
        }
        
        function getGuid() {
          function _p8(s) {
            var p = (Math.random().toString(16) + '000000000').substr(2, 8);
            return s ? '-' + p.substr(0, 4) + '-' + p.substr(4, 4) : p;
          }
          return _p8() + _p8(true) + _p8(true) + _p8();
        }
        
        
        // *****************************************************************************************************
        // Asterix Manager Class. More Infos:
        //  https://github.com/pipobscure/NodeJS-AsteriskManager
        //  https://github.com/mscdex/node-asterisk
        // *****************************************************************************************************
        class AsteriskManager {
        
          constructor(config) {
            this.ami = new AsteriskManagerGlobal(config.port, config.hostname, config.username, config.password, config.events || false);
            this.options = {
              'port': config.port,
              'hostname': config.hostname,
              'username': config.username,
              'password': config.password,
              'service': config.service || 'sip',
              'events': config.events || false
            };
          }
        
          getAmi() {
            return this.ami;
          }
        
          asteriskEvent(eventname, callback) {
            if (eventname.length > 0 && callback) {
              this.ami.on(eventname, (evt) => {
                if (callback) callback(evt);
              });
            }
          }
        
          eventManager(callback) {
            this.asteriskEvent('managerevent', callback);
          }
        
          eventHangup(callback) {
            this.asteriskEvent('hangup', callback);
          }
        
          eventResponse(callback) {
            this.asteriskEvent('response', callback);
          }
        
          eventConfBridgeJoin(callback) {
            this.asteriskEvent('confbridgejoin', callback);
          }
        
          disconnect(callback) {
            this.ami.disconnect(callback);
          }
        
          isConnected() {
            return this.ami.isConnected();
          }
        
          connected() {
            return this.isConnected();
          }
        
          connect(callback) {
            this.ami.connect(this.options.port, this.options.hostname, callback);
          }
        
          keepConnected() {
            this.ami.keepConnected();
          }
        
          login(callback) {
            this.ami.login(callback);
          }
        
          reconnect(callback) {
            if (!this.isConnected()) {
              this.connect(() => {
                this.login(callback);
              });
            } else {
              if (callback) callback();
            }
          }
        
          dial(parameter, callback) {
        
            if (!parameter) return;
        
            let telnrs = (typeof parameter.telnr === 'string') ? Array(parameter.telnr) : parameter.telnr;
            let extension = parameter.extension || 'none';
            let resultarray = [];
        
            for (let i in telnrs) {
              let telnr = textToNumber(telnrs[i]);
              let channel;
              if (this.options.service === 'pjsip') {
                channel = (extension === 'none') ? 'PJSIP/' + telnr : 'PJSIP/' + telnr + '@' + extension;
              } else {
                channel = (extension === 'none') ? 'SIP/' + telnr : 'SIP/' + extension + '/' + telnr;
              }
              let guid = getGuid();
              let options = {
                'action': 'originate',
                'channel': channel,
                'context': parameter.context || 'ael-ansage',
                'exten': parameter.exten || telnr,
                'priority': parameter.priority || 1,
                'actionid': guid,
                'timeout': parameter.timeout || (60 * 1000),
                'variable': {
                  'repeat': parameter.repeat || 5,
                  'file': parameter.audiofile,
                  'del': parameter.delete || ''
                }
              };
        
              if (parameter.hasOwnProperty('async')) { options.async = parameter.async; }
              if (parameter.hasOwnProperty('callerid')) { options.callerid = textToNumber(parameter.callerid); }
              if (parameter.hasOwnProperty('variable')) { options.variable = parameter.variable; }
              this.ami.action(options, (err, res) => {
                let result = {
                  parameter: parameter,
                  options: options,
                  guid: guid,
                  result: res
                };
                callback && callback(err, result);
              });
              resultarray.push({ parameter: parameter, guid: guid });
            }
        
            return resultarray;
          }
        
          action(parameter, callback) {
            let guid = getGuid();
            this.ami.action(parameter, (err, res) => {
              let result = {
                parameter: parameter,
                guid: guid,
                result: res
              };
              callback && callback(err, result);
            });
          }
        
        }
        
        module.exports = AsteriskManager;
        
        

        Ich habe dann mal meine Astersik-Adapter version geprüft innerhalb iobroker, aber die ist die aktuellste die dort angeboten wird, jedenfalls scheinen das nicht die gleichen Versionen zu sein.

        Hab dann mal ins asterisk.js geschaut, da gibt es bzgl. logging diese 3 Aufrufe:

        adapter.log.debug
        adapter.log.info
        adapter.log.error
        

        also info und error landen dann im protokolle-log vom iobroker, wobei ja eigentlich auch bis auf debug-level konfiguriert werden kann:
        2023-11-09 00_24_39-Window.png

        Dennoch erscheinen da keine log-entries mit diesem level, was ja eigentlich nicht sein kann, da müsste es doch welche geben, zzumindest ist der code voll davon:

          adapter.log.debug('Message: ' + JSON.stringify(parameter));
        
          if (parameter) {
            if (command == 'dial') {
              adapter.log.debug('Dial Command');
        
              if (!parameter.extension) parameter.extension = adapter.config.sipuser;
              if (parameter.telnr) { adapter.setState('dialout.telnr', parameter.telnr, true); }
              if (parameter.text) { adapter.setState('dialout.text', parameter.text, true); }
              if (parameter.callerid) { adapter.setState('dialout.callerid', parameter.callerid, true); }
        
        
              if (parameter.text && parameter.telnr) {
                if (!parameter.audiofile) parameter.audiofile = tmppath + 'audio_' + id;
                if (converter.getFilenameExtension(parameter.audiofile).toLowerCase() == 'gsm') {
                  parameter.audiofile = converter.getBasename(parameter.audiofile);
                }
                if(!parameter.delete) { parameter.delete = 'delete'; } // delete file after dialing
        
        OliverIOO Offline
        OliverIOO Offline
        OliverIO
        schrieb am zuletzt editiert von
        #6

        @chrisham sagte in IOBroker in Container mit Asterisk-Adapter Installation:

        zzumindest ist der code voll davon

        dann stell den adapter mal auf log-level debug
        dazu musst du die experteneinstellung (dieser kopf oben am rand) aktivieren

        Meine Adapter und Widgets
        TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
        Links im Profil

        C 1 Antwort Letzte Antwort
        0
        • OliverIOO OliverIO

          @chrisham

          du sollst nicht im paket
          iobroker.asterix
          suchen, sondern im paket
          asterix-manager
          suchen

          der paketname muss genau so geschrieben werden.
          auch dort gibt es eine ami.js datei

          C Offline
          C Offline
          Chrisham
          schrieb am zuletzt editiert von
          #7

          @oliverio ok, sry, ja hier hab ich das jetzt gefunden:

          opt/iobroker/node_modules/asterisk-manager/lib/ami.js
          

          Da hab ichs angepasst:

          /*
           * NodeJS Asterisk Manager API
           * (Based on https://github.com/mscdex/node-asterisk.git)
           * But radically altered thereafter so as to constitute a new work.
           *
           * © See LICENSE file
           *
           */
          /* jshint node:true, newcap:false */
          'use strict';
          var debug = true;
          
          

          dann asterisk-adapter gestoppt und das ausageführt:
          2023-11-09 09_18_11-DS920-Plus - Synology NAS - Brave.png

          da gibts in consolce kurz eine gedenk-sekunde und dann aber nichts mehr und im iobroker taucht im log dieser eintrag auf:
          2023-11-09 09_11_16-logs - iobroker-9 - Brave.png
          Adapter bleibt in iobroker-GUI auf ausgeschaltet.

          1 Antwort Letzte Antwort
          0
          • OliverIOO OliverIO

            @chrisham

            ich verstehe nicht ganz
            9c8d78f0-f0a3-48e5-a5ec-52a941101c2b-image.png

            das sind log einträge die einen ganz anderen adapter betreffen

            C Offline
            C Offline
            Chrisham
            schrieb am zuletzt editiert von
            #8

            @oliverio ja, ne die log-einträge sind für alle adapter (wenn man in der spalte "Quelle" nicht explizit einen ausfiltert), sieht man ja auch, dass das von unterschiedlichen Quellen kommt und der log-level (err, warn, info, debug...) wirkt dann auf alle adapter.
            2023-11-09 09_20_15-logs - iobroker-9 - Brave.png

            1 Antwort Letzte Antwort
            0
            • OliverIOO OliverIO

              @chrisham sagte in IOBroker in Container mit Asterisk-Adapter Installation:

              zzumindest ist der code voll davon

              dann stell den adapter mal auf log-level debug
              dazu musst du die experteneinstellung (dieser kopf oben am rand) aktivieren

              C Offline
              C Offline
              Chrisham
              schrieb am zuletzt editiert von
              #9

              @oliverio s.o. also ich bin der meinung, dass dieser log-level auf alle adater wirkt (zumindest bei error, warn, info ist das auch wirksam und sichtbar...), aber wenn ich auf debug schalte ändert sich tatsächlich nichts.
              2023-11-09 09_23_47-logs - iobroker-9 - Brave.png

              OliverIOO 1 Antwort Letzte Antwort
              0
              • C Chrisham

                @oliverio s.o. also ich bin der meinung, dass dieser log-level auf alle adater wirkt (zumindest bei error, warn, info ist das auch wirksam und sichtbar...), aber wenn ich auf debug schalte ändert sich tatsächlich nichts.
                2023-11-09 09_23_47-logs - iobroker-9 - Brave.png

                OliverIOO Offline
                OliverIOO Offline
                OliverIO
                schrieb am zuletzt editiert von
                #10

                @chrisham
                der expertenknopf an sich macht nicht so viel
                er zeigt nur zusätzliche knöpfe und möglichkeiten an

                du sollst auf die Instanzseite gehen
                dann schauen über der Expertenknopf aktiviert ist
                dann die asterix-instanz auswählen
                dort gibt es die möglichkeit den max loglevel zu ändern.
                der dürfte aktuell auf info stehen
                24c045a5-5ba4-4776-a470-4ab0a0b07bda-image.png

                Meine Adapter und Widgets
                TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                Links im Profil

                C 1 Antwort Letzte Antwort
                0
                • OliverIOO OliverIO

                  @chrisham
                  der expertenknopf an sich macht nicht so viel
                  er zeigt nur zusätzliche knöpfe und möglichkeiten an

                  du sollst auf die Instanzseite gehen
                  dann schauen über der Expertenknopf aktiviert ist
                  dann die asterix-instanz auswählen
                  dort gibt es die möglichkeit den max loglevel zu ändern.
                  der dürfte aktuell auf info stehen
                  24c045a5-5ba4-4776-a470-4ab0a0b07bda-image.png

                  C Offline
                  C Offline
                  Chrisham
                  schrieb am zuletzt editiert von
                  #11

                  @oliverio aha, das gibts nochmals auf adapte-ebene ...man lernt irgendwie nie aus
                  jetzt kommen die zusätzlichen debug-logs:
                  2023-11-09 09_52_23-● ami.js - Visual Studio Code.png

                  so ergiebig ist das wohl auch nicht, damit müsste ich jetzt nochmals in den asterisk.js code schauen, ob darüber was rauszufinden ist.
                  Aber die ausgabe über die console scheint noch nicht zu funktionieren...

                  OliverIOO 1 Antwort Letzte Antwort
                  0
                  • C Chrisham

                    @oliverio aha, das gibts nochmals auf adapte-ebene ...man lernt irgendwie nie aus
                    jetzt kommen die zusätzlichen debug-logs:
                    2023-11-09 09_52_23-● ami.js - Visual Studio Code.png

                    so ergiebig ist das wohl auch nicht, damit müsste ich jetzt nochmals in den asterisk.js code schauen, ob darüber was rauszufinden ist.
                    Aber die ausgabe über die console scheint noch nicht zu funktionieren...

                    OliverIOO Offline
                    OliverIOO Offline
                    OliverIO
                    schrieb am zuletzt editiert von
                    #12

                    @chrisham

                    wenn du den adapter über die console startest und die datei entsprechend anpasst kommt gar nix?
                    mach mal dann noch auf der console

                    iob upload all
                    

                    eine weitere Möglichkeit wäre dann noch in das asterix log selbst zu schauen
                    im container im pfad

                    /var/log/asterisk/
                    

                    natürlich auch noch die container log ausgabe beobachten

                    Meine Adapter und Widgets
                    TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                    Links im Profil

                    C 1 Antwort Letzte Antwort
                    0
                    • OliverIOO OliverIO

                      @chrisham

                      wenn du den adapter über die console startest und die datei entsprechend anpasst kommt gar nix?
                      mach mal dann noch auf der console

                      iob upload all
                      

                      eine weitere Möglichkeit wäre dann noch in das asterix log selbst zu schauen
                      im container im pfad

                      /var/log/asterisk/
                      

                      natürlich auch noch die container log ausgabe beobachten

                      C Offline
                      C Offline
                      Chrisham
                      schrieb am zuletzt editiert von
                      #13

                      @oliverio
                      das

                      iob upload all
                      

                      habe ich gemacht (da werden jede menge files transferiert... was passiert da genau?) und danach nochmals

                      node node_modules/iobroker.asterisk/asterisk.js
                      

                      --> da passiert nichts, außer dass es im iobroker-log diesen eintrag gibt:
                      2023-11-09 14_35_58-logs - iobroker-9 - Brave.png

                      Ansonsten bzgl.

                      /var/log/asterisk/
                      

                      -> das verzeichnis gibt es in meinem IObroker gar nicht (oder bin ich wieder an der falschen stelle):
                      2023-11-09 14_42_51-OpenSSH SSH client.png

                      OliverIOO 2 Antworten Letzte Antwort
                      0
                      • C Chrisham

                        @oliverio
                        das

                        iob upload all
                        

                        habe ich gemacht (da werden jede menge files transferiert... was passiert da genau?) und danach nochmals

                        node node_modules/iobroker.asterisk/asterisk.js
                        

                        --> da passiert nichts, außer dass es im iobroker-log diesen eintrag gibt:
                        2023-11-09 14_35_58-logs - iobroker-9 - Brave.png

                        Ansonsten bzgl.

                        /var/log/asterisk/
                        

                        -> das verzeichnis gibt es in meinem IObroker gar nicht (oder bin ich wieder an der falschen stelle):
                        2023-11-09 14_42_51-OpenSSH SSH client.png

                        OliverIOO Offline
                        OliverIOO Offline
                        OliverIO
                        schrieb am zuletzt editiert von
                        #14

                        @chrisham sagte in IOBroker in Container mit Asterisk-Adapter Installation:

                        das verzeichnis gibt es in meinem IObroker gar nicht (oder bin ich wieder an der falschen stelle):

                        im asterix container

                        Meine Adapter und Widgets
                        TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                        Links im Profil

                        C 1 Antwort Letzte Antwort
                        0
                        • C Chrisham

                          @oliverio
                          das

                          iob upload all
                          

                          habe ich gemacht (da werden jede menge files transferiert... was passiert da genau?) und danach nochmals

                          node node_modules/iobroker.asterisk/asterisk.js
                          

                          --> da passiert nichts, außer dass es im iobroker-log diesen eintrag gibt:
                          2023-11-09 14_35_58-logs - iobroker-9 - Brave.png

                          Ansonsten bzgl.

                          /var/log/asterisk/
                          

                          -> das verzeichnis gibt es in meinem IObroker gar nicht (oder bin ich wieder an der falschen stelle):
                          2023-11-09 14_42_51-OpenSSH SSH client.png

                          OliverIOO Offline
                          OliverIOO Offline
                          OliverIO
                          schrieb am zuletzt editiert von OliverIO
                          #15

                          @chrisham sagte in IOBroker in Container mit Asterisk-Adapter Installation:

                          habe ich gemacht (da werden jede menge files transferiert... was passiert da genau?) und danach nochmals

                          da werden die ganzen module und dateien neu bei iobroker registriert.
                          manchmal braucht er das um neue/geänderte dateien zu erkennen.

                          aber wenn dann im consolen fenster nix kommt.

                          der iobroker adapter schaut ja nur nach asterix und steuert fern.
                          daher zuerst bei der applikation asterix schauen, weil dann ist da etwas noch nicht richtig eingerichtet/konfiguriert oder es fehlen noch komponenten.
                          hast du den bei github (bei andrius) ein issue aufgemacht? evtl sehen das auch andere und können darauf antworten

                          Meine Adapter und Widgets
                          TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                          Links im Profil

                          C 1 Antwort Letzte Antwort
                          0
                          • OliverIOO OliverIO

                            @chrisham sagte in IOBroker in Container mit Asterisk-Adapter Installation:

                            das verzeichnis gibt es in meinem IObroker gar nicht (oder bin ich wieder an der falschen stelle):

                            im asterix container

                            C Offline
                            C Offline
                            Chrisham
                            schrieb am zuletzt editiert von
                            #16

                            @oliverio ah ok, also ja, da gibts:
                            2023-11-09 15_46_54-OpenSSH SSH client.png
                            Im messages file scheint was relevantes drin zu sein, hänge es mal mit dran, das ist vom 7.11. ich meine, das war das letzte mal, dass ich die container hochgefahren habe...

                            muss dann heute abend, mit etwas mehr zeit das mal analysieren:
                            messages

                            1 Antwort Letzte Antwort
                            0
                            • OliverIOO OliverIO

                              @chrisham sagte in IOBroker in Container mit Asterisk-Adapter Installation:

                              habe ich gemacht (da werden jede menge files transferiert... was passiert da genau?) und danach nochmals

                              da werden die ganzen module und dateien neu bei iobroker registriert.
                              manchmal braucht er das um neue/geänderte dateien zu erkennen.

                              aber wenn dann im consolen fenster nix kommt.

                              der iobroker adapter schaut ja nur nach asterix und steuert fern.
                              daher zuerst bei der applikation asterix schauen, weil dann ist da etwas noch nicht richtig eingerichtet/konfiguriert oder es fehlen noch komponenten.
                              hast du den bei github (bei andrius) ein issue aufgemacht? evtl sehen das auch andere und können darauf antworten

                              C Offline
                              C Offline
                              Chrisham
                              schrieb am zuletzt editiert von
                              #17

                              @oliverio noch nicht, habe ja erstmal diesen thread hier dazu aufgemacht, dann habe ich andrius über telegram angeschrieben, er antwortet aber nur sehr sporadisch, er meinte da nur, dass wohl netzwerk config noch nicht stimmt, aber das haben wir eigentlich jetzt ausgeschlossen...

                              OliverIOO 2 Antworten Letzte Antwort
                              0
                              • C Chrisham

                                @oliverio noch nicht, habe ja erstmal diesen thread hier dazu aufgemacht, dann habe ich andrius über telegram angeschrieben, er antwortet aber nur sehr sporadisch, er meinte da nur, dass wohl netzwerk config noch nicht stimmt, aber das haben wir eigentlich jetzt ausgeschlossen...

                                OliverIOO Offline
                                OliverIOO Offline
                                OliverIO
                                schrieb am zuletzt editiert von
                                #18

                                @chrisham
                                https://github.com/TECH7Fox/asterisk-hass-addons/issues/23
                                zu den fehlern steht da etwas.
                                allerdings scheinen die nicht schuld daran zu sein, das asterix nicht funktioniert

                                Meine Adapter und Widgets
                                TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                Links im Profil

                                1 Antwort Letzte Antwort
                                0
                                • C Chrisham

                                  @oliverio noch nicht, habe ja erstmal diesen thread hier dazu aufgemacht, dann habe ich andrius über telegram angeschrieben, er antwortet aber nur sehr sporadisch, er meinte da nur, dass wohl netzwerk config noch nicht stimmt, aber das haben wir eigentlich jetzt ausgeschlossen...

                                  OliverIOO Offline
                                  OliverIOO Offline
                                  OliverIO
                                  schrieb am zuletzt editiert von
                                  #19

                                  @chrisham

                                  also wie gesagt. ich habe kein asterix und habe auch nie damit gearbeitet.
                                  wir sind jetzt auf einer ebene angelangt, bei dem die fehler genau so sind, wie wenn das programm nativ irgendwo installiert ist.

                                  du kannst jetzt nur so vorgehen, gemäß anleitung von asterix die konfiguration so zu vervollständigen, das es läuft.
                                  was mir noch einfällt, wie erfährt den der asterix von irgendwelche telefonaten?
                                  wir haben zwar den docker container konfiguriert, aber wie hast du den asterix selbst konfiguriert? sind alle module beieinander (scheint ja zumindest verschiedene module zu geben)?
                                  ist jedes für sich korrekt konfiguriert. wie kann man die funktionsfähigkeit testen? passen alle ports mit deinen restlichen geräten zusammen? etc.

                                  bei fehler in logs bspw von asterix kannst du einfach die zeile kopieren und in google einfügen. meist findet google dann irgendwelche stellen, an dem so etwas schon besprochen wurde.

                                  wenn andrius sagt, das es noch an irgendwelcher netzkonfiguration liegt glaub ich das auch. irgendwo stimmt noch was nicht und das muss nicht unbedingt am container liegen.

                                  Meine Adapter und Widgets
                                  TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                  Links im Profil

                                  C 1 Antwort Letzte Antwort
                                  0
                                  • OliverIOO OliverIO

                                    @chrisham

                                    also wie gesagt. ich habe kein asterix und habe auch nie damit gearbeitet.
                                    wir sind jetzt auf einer ebene angelangt, bei dem die fehler genau so sind, wie wenn das programm nativ irgendwo installiert ist.

                                    du kannst jetzt nur so vorgehen, gemäß anleitung von asterix die konfiguration so zu vervollständigen, das es läuft.
                                    was mir noch einfällt, wie erfährt den der asterix von irgendwelche telefonaten?
                                    wir haben zwar den docker container konfiguriert, aber wie hast du den asterix selbst konfiguriert? sind alle module beieinander (scheint ja zumindest verschiedene module zu geben)?
                                    ist jedes für sich korrekt konfiguriert. wie kann man die funktionsfähigkeit testen? passen alle ports mit deinen restlichen geräten zusammen? etc.

                                    bei fehler in logs bspw von asterix kannst du einfach die zeile kopieren und in google einfügen. meist findet google dann irgendwelche stellen, an dem so etwas schon besprochen wurde.

                                    wenn andrius sagt, das es noch an irgendwelcher netzkonfiguration liegt glaub ich das auch. irgendwo stimmt noch was nicht und das muss nicht unbedingt am container liegen.

                                    C Offline
                                    C Offline
                                    Chrisham
                                    schrieb am zuletzt editiert von
                                    #20

                                    @oliverio Ja, klar ich weiß, dass du dich da mehr als erwartbar engagierst, obwohl du selbst es gar nicht nutzt, das ist echt super!

                                    Also bzgl. Config bin ich nach der Neuinstallation der asterisk app nochmals alles gemäß
                                    https://github.com/schmupu/ioBroker.asterisk/blob/master/docs/SIP_FRITZBOX_DE.md
                                    durchgegangen.

                                    Wie die Module im Container abgelegt sind, das habe ich jetzt nicht geprüft, da bin ich davon ausgegangen, dass das im andrius referenz-container richtig gemacht ist, von dem ich meinen abgeleitet habe.

                                    Ansonsten gibt es eben diese Config-Files:

                                    extensions.ael 
                                    manager.conf 
                                    rtp.conf
                                    sip_fritzbox.conf 
                                    

                                    Die werden nach Konfiguraiton des IObroker-Asterisk-Adapters erzeugt, dort im IOBroker ins /tmp geschrieben uns müssen dann nach

                                    /etc/asterisk/
                                    

                                    kopiert werden, die habe ich ja dann persistent ausverlagert:

                                        volumes:
                                          - /volume1/docker/asterisk/extensions.ael:/etc/asterisk/extensions.ael
                                          - /volume1/docker/asterisk/manager.conf:/etc/asterisk/manager.conf
                                          - /volume1/docker/asterisk/sip.conf:/etc/asterisk/sip.conf
                                          - /volume1/docker/asterisk/sip_fritzbox.conf:/etc/asterisk/sip_fritzbox.conf
                                          - /volume1/docker/asterisk/rtp.conf:/etc/asterisk/rtp.conf
                                    

                                    In diesen Files stehen z.B. auch die ganzen Verbindungsdaten zur Fritzbox drin, das habe ich übernommen aus der früheren Configuraiton als asterisk noch als nach-installierte library im iobroker container lief. Ich bin trotzdem nochmals alles akribisch durchgegangen. Das einzige was mach etwas stutzig macht ist die Sache mit den Ports. Wenn ich überall konsequent 5060 (in allen diesen Config-files und im Asterisk-Adapter), dann kann Adapter nicht connecten, d.h. da kommst schon beim Start der Fehler: Could not connect to Asterisk Manager. Wenn ich überall konsequent 5038 eintrage, dann kann er connecten, aber dann kommen diese anderen Fehler (error while converting, error while dialing).
                                    Keine Ahnung ob da der Hund begraben liegt.
                                    Andere Möglichkeit, dass die o.b. Anleitung für dieses binding des Asterisk-Managers im Container so nicht mehr gültig ist, denn die o.g. Anleitung geht davon aus, dass der Asterisk-Manager über

                                    apt-get install ffmpeg
                                    apt-get install lame
                                    apt-get install sox
                                    apt-get install libsox-fmt-mp3
                                    apt-get install asterisk
                                    
                                    

                                    installiert werden.

                                    Ok, mal morgen weiter schauen....

                                    OliverIOO 1 Antwort Letzte Antwort
                                    0
                                    • C Chrisham

                                      @oliverio Ja, klar ich weiß, dass du dich da mehr als erwartbar engagierst, obwohl du selbst es gar nicht nutzt, das ist echt super!

                                      Also bzgl. Config bin ich nach der Neuinstallation der asterisk app nochmals alles gemäß
                                      https://github.com/schmupu/ioBroker.asterisk/blob/master/docs/SIP_FRITZBOX_DE.md
                                      durchgegangen.

                                      Wie die Module im Container abgelegt sind, das habe ich jetzt nicht geprüft, da bin ich davon ausgegangen, dass das im andrius referenz-container richtig gemacht ist, von dem ich meinen abgeleitet habe.

                                      Ansonsten gibt es eben diese Config-Files:

                                      extensions.ael 
                                      manager.conf 
                                      rtp.conf
                                      sip_fritzbox.conf 
                                      

                                      Die werden nach Konfiguraiton des IObroker-Asterisk-Adapters erzeugt, dort im IOBroker ins /tmp geschrieben uns müssen dann nach

                                      /etc/asterisk/
                                      

                                      kopiert werden, die habe ich ja dann persistent ausverlagert:

                                          volumes:
                                            - /volume1/docker/asterisk/extensions.ael:/etc/asterisk/extensions.ael
                                            - /volume1/docker/asterisk/manager.conf:/etc/asterisk/manager.conf
                                            - /volume1/docker/asterisk/sip.conf:/etc/asterisk/sip.conf
                                            - /volume1/docker/asterisk/sip_fritzbox.conf:/etc/asterisk/sip_fritzbox.conf
                                            - /volume1/docker/asterisk/rtp.conf:/etc/asterisk/rtp.conf
                                      

                                      In diesen Files stehen z.B. auch die ganzen Verbindungsdaten zur Fritzbox drin, das habe ich übernommen aus der früheren Configuraiton als asterisk noch als nach-installierte library im iobroker container lief. Ich bin trotzdem nochmals alles akribisch durchgegangen. Das einzige was mach etwas stutzig macht ist die Sache mit den Ports. Wenn ich überall konsequent 5060 (in allen diesen Config-files und im Asterisk-Adapter), dann kann Adapter nicht connecten, d.h. da kommst schon beim Start der Fehler: Could not connect to Asterisk Manager. Wenn ich überall konsequent 5038 eintrage, dann kann er connecten, aber dann kommen diese anderen Fehler (error while converting, error while dialing).
                                      Keine Ahnung ob da der Hund begraben liegt.
                                      Andere Möglichkeit, dass die o.b. Anleitung für dieses binding des Asterisk-Managers im Container so nicht mehr gültig ist, denn die o.g. Anleitung geht davon aus, dass der Asterisk-Manager über

                                      apt-get install ffmpeg
                                      apt-get install lame
                                      apt-get install sox
                                      apt-get install libsox-fmt-mp3
                                      apt-get install asterisk
                                      
                                      

                                      installiert werden.

                                      Ok, mal morgen weiter schauen....

                                      OliverIOO Offline
                                      OliverIOO Offline
                                      OliverIO
                                      schrieb am zuletzt editiert von OliverIO
                                      #21

                                      @chrisham

                                      ok, ports sind meist service-mäßig organisiert.
                                      daher sind die portnummern bis 1024 fest verwaltet
                                      alles darüber kann mehr oder weniger frei verwendet werden
                                      dennoch haben sich da gewisse standards herausgebildet

                                      5060 = SIP-Protokoll
                                      5036 = IAX2 https://de.wikipedia.org/wiki/InterAsterisk_eXchange
                                      5038 = Asterix Config Manager https://www.phonesuite.de/hlp/de/ast/ast/asterisk_manager.htm hier ist ein test mit telnet. den gibts auch auf windows

                                      das ist das was ich zu asterix gefunden habe

                                      Meine Adapter und Widgets
                                      TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                      Links im Profil

                                      C 1 Antwort Letzte Antwort
                                      0
                                      • OliverIOO OliverIO

                                        @chrisham

                                        ok, ports sind meist service-mäßig organisiert.
                                        daher sind die portnummern bis 1024 fest verwaltet
                                        alles darüber kann mehr oder weniger frei verwendet werden
                                        dennoch haben sich da gewisse standards herausgebildet

                                        5060 = SIP-Protokoll
                                        5036 = IAX2 https://de.wikipedia.org/wiki/InterAsterisk_eXchange
                                        5038 = Asterix Config Manager https://www.phonesuite.de/hlp/de/ast/ast/asterisk_manager.htm hier ist ein test mit telnet. den gibts auch auf windows

                                        das ist das was ich zu asterix gefunden habe

                                        C Offline
                                        C Offline
                                        Chrisham
                                        schrieb am zuletzt editiert von
                                        #22

                                        @oliverio ok, danke, für den weiteren support. also das habe ich gleich getestet und da ist asterisk erreichbar und scheint wohl korrekt zu funktionieren:
                                        2023-11-10 19_49_12-Telnet 10.74.178.99.png

                                        Also scheint das Problem doch an dem zusammenspiel zwischen Asterisk-Adapter im iobroker und dem asterisk-manager zu liegen...

                                        C 1 Antwort Letzte Antwort
                                        0
                                        • C Chrisham

                                          @oliverio ok, danke, für den weiteren support. also das habe ich gleich getestet und da ist asterisk erreichbar und scheint wohl korrekt zu funktionieren:
                                          2023-11-10 19_49_12-Telnet 10.74.178.99.png

                                          Also scheint das Problem doch an dem zusammenspiel zwischen Asterisk-Adapter im iobroker und dem asterisk-manager zu liegen...

                                          C Offline
                                          C Offline
                                          Chrisham
                                          schrieb am zuletzt editiert von
                                          #23

                                          @chrisham Github issue created: https://github.com/andrius/asterisk/issues/26

                                          OliverIOO 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
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          770

                                          Online

                                          32.5k

                                          Benutzer

                                          81.6k

                                          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