Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Русский
    3. ioBroker
    4. ioBroker драйвера
    5. Драйвер sayit

    NEWS

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    Драйвер sayit

    This topic has been deleted. Only users with topic management privileges can see it.
    • I
      instalator last edited by

      @Bluefox:

      Возвращаемый гуглом файл не имеет ID3 тега.

      https://jsfiddle.net/derickbailey/s4P2v/ - не работает

      https://github.com/apsdehal/mp3-length - только linux

      https://github.com/aadsm/JavaScript-ID3-Reader - не работает

      https://www.npmjs.com/package/id3-parser - не работает `
      по первой ссылке работает, скармливал ему mp3 от драйвера

      1 Reply Last reply Reply Quote 0
      • I
        instalator last edited by

        @instalator:

        @Bluefox:

        Возвращаемый гуглом файл не имеет ID3 тега.

        https://jsfiddle.net/derickbailey/s4P2v/ - не работает

        https://github.com/apsdehal/mp3-length - только linux

        https://github.com/aadsm/JavaScript-ID3-Reader - не работает

        https://www.npmjs.com/package/id3-parser - не работает по первой ссылке работает, скармливал ему mp3 от драйвера

        PS я IVONой пользуюсь

        1 Reply Last reply Reply Quote 0
        • H
          Haus last edited by

          В Changelog ошибка
          443_screencapture-github-com-iobroker-iobroker-sayit-blob-master-readme-md-1452861968928.png

          1 Reply Last reply Reply Quote 0
          • aurodionov
            aurodionov last edited by

            Снова перестал говорить через браузеры мобильных устройств.

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

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

              @aurodionov:

              Снова перестал говорить через браузеры мобильных устройств.

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

              Чтобы узнать ИД нужного браузера, нужно открыть на том устройстве где мы хотим слышать голос, закладку "Инструменты" в редакторе виз ip:8082/vis/edit.html#….. , там и указывается ИД, затем указать в настройках драйвера sayit. Болтать будет только на этом устройстве.

              1 Reply Last reply Reply Quote 0
              • aurodionov
                aurodionov last edited by

                В том и дело, что к меня один и тот- же ид на разных устройствах. Проекты разные, вот и пытаюсь понять почему. Н буке звук через браузер есть, на мобильных устройств ах нет.

                Пишу с пульта….

                1 Reply Last reply Reply Quote 0
                • Bluefox
                  Bluefox last edited by

                  @aurodionov:

                  В том и дело, что к меня один и тот- же ид на разных устройствах. Проекты разные, вот и пытаюсь понять почему. Н буке звук через браузер есть, на мобильных устройств ах нет.

                  Пишу с пульта…. `
                  Мобильные броузеры не всегда поддерживают HTML5 play.

                  1 Reply Last reply Reply Quote 0
                  • V
                    Vlad_k last edited by

                    не могу добиться вывода звука через андроид планшет, на нем же и брокер пашет, все проговаривается на ноуте, по идее же должно болтать на всех устройствах где виз открыт, хотя обычная веб болталка

                    ! function speak_txt( data ){
                    ! var speech = new SpeechSynthesisUtterance();
                    ! speech.lang = 'ru-RU';
                    ! speech.rate = 1.5;
                    ! speech.pitch = 2;
                    ! speech.volume = 1;
                    ! speech.txt = "тест голоса"; //document.getElementById( "q" ).value
                    ! window.speechSynthesis.speak( speech );
                    ! }
                    пашет исключительно под андроидом а на ноуте молчит

                    1 Reply Last reply Reply Quote 0
                    • aurodionov
                      aurodionov last edited by

                      @Vlad_k:

                      не могу добиться вывода звука через андроид планшет, на нем же и брокер пашет, все проговаривается на ноуте, по идее же должно болтать на всех устройствах где виз открыт, хотя обычная веб болталка `
                      Аналогично, браузер хром для андройд, html5 работает, тестовое видео крутится со звуком.

                      Уже не знаю куда копать, пока пользую системный вывод.

                      1 Reply Last reply Reply Quote 0
                      • H
                        Haus last edited by

                        @aurodionov:

                        @Vlad_k:

                        не могу добиться вывода звука через андроид планшет, на нем же и брокер пашет, все проговаривается на ноуте, по идее же должно болтать на всех устройствах где виз открыт, хотя обычная веб болталка `
                        Аналогично, браузер хром для андройд, html5 работает, тестовое видео крутится со звуком.

                        Уже не знаю куда копать, пока пользую системный вывод. `
                        Звук выводят только Dolphin, UC Browser, а команды принимает Chrome.

                        1 Reply Last reply Reply Quote 0
                        • V
                          Vlad_k last edited by

                          пытаюсь заставить хром говорить:

                          в визе добавил виджет

                          [{"tpl":"tplValueString","data":{"oid":"sayit.0.tts.text","visibility-cond":"==","visibility-val":"true","visibility-oid":""},"style":{"left":"313px","top":"309px","width":"338px","height":"15px"},"widgetSet":"basic"}]
                          
                          

                          в staticHtml хочу прописать скрипт который будет отслеживать изменения текста в виджете и отправлять его в функцию воспроизведения

                          function speak_txt( data ){
                          var speech = new SpeechSynthesisUtterance();
                          speech.lang = 'ru-RU';
                          speech.rate = 1.5;
                          speech.pitch = 2;
                          speech.volume = 1;
                          speech.txt = "тест голоса"; //document.getElementById( "q" ).value
                          window.speechSynthesis.speak( speech );
                          

                          по каким параметрам искать div виджета в визе когда страница загружена?

                          1 Reply Last reply Reply Quote 0
                          • V
                            Vlad_k last edited by

                            div нашел

                            почему не правильно в визе отображает :

                            вставить в staticHTML

                            ! ````
                            !
                            !
                            !
                            <label for="voice">Voice</label>

                            	<label for="volume">Volume</label>
                            
                            	<label for="rate">Rate</label>
                            
                            	<label for="pitch">Pitch</label>
                            

                            !
                            !
                            ! ````
                            редакторе работает,а на страничке размер ужимает и не добавляются голоса в список

                            ПС почемуто не экспортирует виджет у меня

                            1 Reply Last reply Reply Quote 0
                            • I
                              instalator last edited by

                              Как можно сделать чтобы при воспроизведении своего mp3 фала не проигровался диндон?

                              1 Reply Last reply Reply Quote 0
                              • H
                                Haus last edited by

                                @instalator:

                                Как можно сделать чтобы при воспроизведении своего mp3 фала не проигровался диндон? `
                                В настройке драйвера вместо "gong" выбрать "none".

                                1 Reply Last reply Reply Quote 0
                                • I
                                  instalator last edited by

                                  @Haus:

                                  @instalator:

                                  Как можно сделать чтобы при воспроизведении своего mp3 фала не проигровался диндон? В настройке драйвера вместо "gong" выбрать "none".
                                  Эта настройка глобальная. Я сделал воспроизведение mp3 фала при звонке в домофон, вот чтобы при воспроизведении mp3 не воспроизводился диндон

                                  1 Reply Last reply Reply Quote 0
                                  • H
                                    Haus last edited by

                                    @instalator:

                                    @Haus:

                                    @instalator:

                                    Как можно сделать чтобы при воспроизведении своего mp3 фала не проигровался диндон? В настройке драйвера вместо "gong" выбрать "none".
                                    Эта настройка глобальная. Я сделал воспроизведение mp3 фала при звонке в домофон, вот чтобы при воспроизведении mp3 не воспроизводился диндон `
                                    Может я неконкретно выразился, установи ещё один драйвер sayit1, sayit2….. и настрой как тебе нужно для использования только с домофоном.

                                    1 Reply Last reply Reply Quote 0
                                    • H
                                      Haus last edited by

                                      Вопрос, как в скрипте прописать var idSayIt = что бы говорили оба драйвера. Сейчас тупо прописал два раза

                                      //var idSayIt = "sayit.0.tts.text";
                                      createState('Voice.Command', '');
                                      /////////////Голосовое управление/////////////////////////////
                                      on('javascript.0.Voice.Command', function (obj) {
                                      //var voice = obj.newState.val.toLowerCase();
                                      var voice = obj.newState.val.toLowerCase().toString().replace(/\ /g, "+");
                                          if (voice == 'включить+насос' || voice == 'включи+насос' || voice == 'вруби+насос'){
                                              setState('javascript.0.heat_pump', 'true');
                                              //var idSayIt = "sayit.0.tts.text";
                                              setState ('sayit.0.tts.text', 'Внимание! Включаю насос');
                                              setState ('sayit.1.tts.text', 'Внимание! Включаю насос');
                                          }
                                          else if (voice == 'выключить+насос' || voice == 'выключи+насос' || voice == 'отключи+насос' || voice == 'отруби+насос'){
                                              setState('javascript.0.heat_pump', 'false');
                                              //setState (idSayIt, 'Внимание! Выключаю насос');
                                              setState ('sayit.0.tts.text', 'Внимание! Выключаю насос');
                                              setState ('sayit.1.tts.text', 'Внимание! Выключаю насос');
                                          }
                                      });
                                      
                                      1 Reply Last reply Reply Quote 0
                                      • I
                                        instalator last edited by

                                        @Haus:

                                        Вопрос, как в скрипте прописать var idSayIt = что бы говорили оба драйвера. Сейчас тупо прописал два раза

                                        //var idSayIt = "sayit.0.tts.text";
                                        createState('Voice.Command', '');
                                        /////////////Голосовое управление/////////////////////////////
                                        on('javascript.0.Voice.Command', function (obj) {
                                        //var voice = obj.newState.val.toLowerCase();
                                        var voice = obj.newState.val.toLowerCase().toString().replace(/\ /g, "+");
                                            if (voice == 'включить+насос' || voice == 'включи+насос' || voice == 'вруби+насос'){
                                                setState('javascript.0.heat_pump', 'true');
                                                //var idSayIt = "sayit.0.tts.text";
                                                setState ('sayit.0.tts.text', 'Внимание! Включаю насос');
                                                setState ('sayit.1.tts.text', 'Внимание! Включаю насос');
                                            }
                                            else if (voice == 'выключить+насос' || voice == 'выключи+насос' || voice == 'отключи+насос' || voice == 'отруби+насос'){
                                                setState('javascript.0.heat_pump', 'false');
                                                //setState (idSayIt, 'Внимание! Выключаю насос');
                                                setState ('sayit.0.tts.text', 'Внимание! Выключаю насос');
                                                setState ('sayit.1.tts.text', 'Внимание! Выключаю насос');
                                            }
                                        });
                                        ```` `  
                                        

                                        Засунь в функцию

                                        1 Reply Last reply Reply Quote 0
                                        • H
                                          Haus last edited by

                                          @instalator:

                                          @Haus:

                                          Вопрос, как в скрипте прописать var idSayIt = что бы говорили оба драйвера. Сейчас тупо прописал два раза

                                          //var idSayIt = "sayit.0.tts.text";
                                          createState('Voice.Command', '');
                                          /////////////Голосовое управление/////////////////////////////
                                          on('javascript.0.Voice.Command', function (obj) {
                                          //var voice = obj.newState.val.toLowerCase();
                                          var voice = obj.newState.val.toLowerCase().toString().replace(/\ /g, "+");
                                              if (voice == 'включить+насос' || voice == 'включи+насос' || voice == 'вруби+насос'){
                                                  setState('javascript.0.heat_pump', 'true');
                                                  //var idSayIt = "sayit.0.tts.text";
                                                  setState ('sayit.0.tts.text', 'Внимание! Включаю насос');
                                                  setState ('sayit.1.tts.text', 'Внимание! Включаю насос');
                                              }
                                              else if (voice == 'выключить+насос' || voice == 'выключи+насос' || voice == 'отключи+насос' || voice == 'отруби+насос'){
                                                  setState('javascript.0.heat_pump', 'false');
                                                  //setState (idSayIt, 'Внимание! Выключаю насос');
                                                  setState ('sayit.0.tts.text', 'Внимание! Выключаю насос');
                                                  setState ('sayit.1.tts.text', 'Внимание! Выключаю насос');
                                              }
                                          });
                                          ```` `  
                                          

                                          Засунь в функцию `
                                          Если тебя не затруднит примерчик любой. :roll:

                                          1 Reply Last reply Reply Quote 0
                                          • I
                                            instalator last edited by

                                            @Haus:

                                            @instalator:

                                            @Haus:

                                            Вопрос, как в скрипте прописать var idSayIt = что бы говорили оба драйвера. Сейчас тупо прописал два раза Засунь в функцию
                                            Если тебя не затруднит примерчик любой. :roll: `
                                            Примерно так

                                            //var idSayIt = "sayit.0.tts.text";
                                            createState('Voice.Command', '');
                                            /////////////Голосовое управление/////////////////////////////
                                            on('javascript.0.Voice.Command', function (obj) {
                                            //var voice = obj.newState.val.toLowerCase();
                                            var voice = obj.newState.val.toLowerCase().toString().replace(/\ /g, "+");
                                                if (voice == 'включить+насос' || voice == 'включи+насос' || voice == 'вруби+насос'){
                                                    setState('javascript.0.heat_pump', 'true');
                                                    //var idSayIt = "sayit.0.tts.text";
                                                   idSayIt('Внимание! Выключаю насос');
                                                }
                                                else if (voice == 'выключить+насос' || voice == 'выключи+насос' || voice == 'отключи+насос' || voice == 'отруби+насос'){
                                                    setState('javascript.0.heat_pump', 'false');
                                                    //setState (idSayIt, 'Внимание! Выключаю насос');
                                                    idSayIt('Внимание! Выключаю насос');
                                                }
                                            });
                                            function idSayIt(command){
                                                    setState ('sayit.0.tts.text', command);
                                                    setState ('sayit.1.tts.text', command);
                                            }
                                            
                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            529
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            16
                                            178
                                            47626
                                            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