liguriagusto Inserito: 27 novembre 2016 Segnala Inserito: 27 novembre 2016 Buongiorno a tutti, sto cercando di realizzare un controllo vocale simile ad Amazon Echo, ora vi spiego meglio. Ho un webserver KNX in openhab installato su Raspberry (e va da Dio) Ora su un altro dispositivo (raspberry o smartphone) Android con l'ausilio dell APP Tasker + Autovoice vorrei comandare il webserver con i comandi vocali e qui mi sorge il problema, ovvero: -se codifico in Tasker le vari frasi vocali (es.: spegni la luce dello studio) e invio il comando (luce_studio OFF) tutto funziona regolarmente -io pero vorrei inviare direttamente 'la frase vocale' ad openhab e farla elaborare da lui in quando è già tutto programmato per farlo (e questo non so come farlo!!)
smoothhands Inserita: 27 novembre 2016 Segnala Inserita: 27 novembre 2016 Ciao, mi sfugge una cosa. L'app per Android di openHAB ha il suo metodo per inserire le istruzioni vocali. Vuoi invece utilizzare Google Now? Perchè utilizzare anche Tasker e plugin vari?
liguriagusto Inserita: 28 novembre 2016 Autore Segnala Inserita: 28 novembre 2016 Lo so conosco bene l'app per Android e funziona anche bene l.unico problema è che per dare un comando vocale bisogna avere in mano il cellulare e premere il pulsante di riconoscimento vocale. Io voglio creare un sistema che resti sempre in ascolto; ovvero creare un sistema che quando entro In casa e pronuncio la frase dedicata mi accendi la luce senza bisogno di premere nessun pulsante o avere nulla in mano
smoothhands Inserita: 28 novembre 2016 Segnala Inserita: 28 novembre 2016 Immaginavo... per inviare stringhe di testo a openHAB puoi utilizzare il binding TCP. Una volta ricevuta occorre passarla alla rule che esegue il controllo. Bisogna capire se autovoice/tasker è in grado di inviare tali stringhe via web. Hai sempre bisogno di un dispositivo continuamente in ascolto. Commercialmente parlando potresti considerare componenti come: - Amazon Echo - Google Home - Apple Homekit + Siri Di questi tre ho letto di integrazioni con Amazon Echo e Apple Homekit. Nel caso del primo occorre un bridge software (installato sullo stesso dispositivo di openHAB oppure no) che viene configurato e riconosciuto da Echo. Tramite il bridge Echo è in grado di inviare comandi agli Item definiti in openHAB e precedentemente configurati nel bridge stesso. Homekit funziona solo con openHAB 2.0 e anch'esso richiede la presenza di un bridge software che integra i due sistemi. Ad ogni modo credo che tu abbia sempre bisogno di un dispositivo Apple. Dovrebbe funzionare anche la Apple tv comunque. Anche per Google Home stanno venendo fuori componenti software ma un pò più a rilento. Qualcuno ha tentato un "doppio salto carpiato" usando le connessioni Google Home -> IFTTT e poi successivamente l'addon IFTTT <-> openHAB. Non credo sia così comodo. Questo per quanto riguarda componenti commerciali che poi vanno ad incidere sul prezzo. Fuori da questi sistemi sei "into the wild" e quindi devi arrangiarti un pò. Tieni presente che openHAB 1.x accetta comandi del tipo... http://192.168.0.250:8080/CMD?L_Sala_Veletta=ON quindi se rimedi un dispositivo che può essere configurato/programmato per inviare comandi di quel tipo saresti a posto. Non è ancora come vuoi tu... ovvero non potresti sfruttare la rule già definita. Alternative opensource potrebbero essere... - Mycroft - Jasperf Ma è comunque tutto sulle tue spalle.
liguriagusto Inserita: 28 novembre 2016 Autore Segnala Inserita: 28 novembre 2016 Quote per inviare stringhe di testo a openHAB puoi utilizzare il binding TCP. Una volta ricevuta occorre passarla alla rule che esegue il controllo. Bisogna capire se autovoice/tasker è in grado di inviare tali stringhe via web. si esiste un plug-in che fa questo, quindi una soluzione potrebbe essere questa. Per quanto riguarda i prodotti commerciali (amazon echo, Google Home) li ho considerati, ma mi pare che per ora parlano solo in inglese non sono ancora venduti in Italia, poi realizzare 'da solo' un sistema analogo c'è più soddisfazione. Quote Tieni presente che openHAB 1.x accetta comandi del tipo... http://192.168.0.250:8080/CMD?L_Sala_Veletta=ON quindi se rimedi un dispositivo che può essere configurato/programmato per inviare comandi di quel tipo saresti a posto. Non è ancora come vuoi tu... ovvero non potresti sfruttare la rule già definita. infatti attualmente per testare il progetto ho utilizzato questo sistema, da qui mi chiedevo se OpenHab poteva accettare un comando tipo: http://192.168.0.250:8080/.....?Variabile_OH="string" ???
smoothhands Inserita: 28 novembre 2016 Segnala Inserita: 28 novembre 2016 Il comando che hai postato sta a livello application nello stack iso/osi e quindi a livello più alto di quello accettato dal binding tcp. Ti serve qualcosa posto a livello di trasporto e quindi protocolli tipo tcp o udp. Ho trovato qualcosa che potresti sfruttare utilizzando il protocollo udp http://hastarin.github.io/android-udpsender/ e https://forum.mysensors.org/topic/1238/how-to-receive-data-on-openhab-using-udp-solved attenzione alla parte in cui spiega come ricevere pacchetti da una porta qualsiasi di un client. tasker dovrebbe passare all'app android la stringa da trasmettere. Attenzione che quello che riceve openHAB in questo caso non va trattato come comando ma come update.
smoothhands Inserita: 30 novembre 2016 Segnala Inserita: 30 novembre 2016 Tornando a livello più alto, riguardando le istruzioni sull'interfaccia rest di openHAB, ho trovato questo... Quote Likewise, you can send a status update using the HTTP verb PUT to the same uri, passing the new state as a plain string argument in the body (encoding text/plain). In order to send a command to an item, you would use the item uri (http://localhost:8080/rest/items/Temperature_FF_Office) and send an HTTP POST with the according command in the request body as text/plain. It's also possible to send a status update using a HTTP GET request (http://localhost:8080/CMD?Temperature_FF_Office=12.3). This way it's actually possible to send status updates simply through a web browser address bar. In questo modo configurando un Item di tipo String e inviando una richiesta HTTP di tipo POST è possibile, inserendo il testo nel corpo della richiesta, passare un testo qualunque. Non è però una richiesta inline come per lo status update ma potrebbe funzionare anche con quest'ultimo.
liguriagusto Inserita: 1 dicembre 2016 Autore Segnala Inserita: 1 dicembre 2016 Ho provato tramite il binding TCP utilizzando il protocollo UDP e sono abbastanza soddisfatto del risultato. Ho avuto diversi problemi nel configurare il tutto, ma alla fine sono riuscito nell'intento. Ho creato una Rule che quando la variabile StringUDP riceve dei nuovi dati li elabora La parte di ricezione è funzionante, ora devo strutturare la parte in android (o simili) che trasmetta i dati, ci sarà nuovamente da studiare per ottenere un buon risultato!!
smoothhands Inserita: 1 dicembre 2016 Segnala Inserita: 1 dicembre 2016 Guarda questi se possono esserti utili. http://lifehacker.com/how-to-create-custom-voice-commands-with-tasker-and-aut-1282209195 http://lifehacker.com/open-mic-brings-the-moto-xs-touchless-control-to-any-1211465747 Poi potresti tentare di installare Android su un Raspberry pi 3 a meno che tu l'abbia già fatto. Non so se la batteria apprezza lasciare il cellulare sempre in ascolto Magari gli ultimi modelli reggono un pò meglio ma su quelli un pò vecchiotti... boh.
liguriagusto Inserita: 5 dicembre 2016 Autore Segnala Inserita: 5 dicembre 2016 Quote Poi potresti tentare di installare Android su un Raspberry pi 3 a meno che tu l'abbia già fatto. Ho installato Android sul Pi 3, 'funziona' però non riesco a far funzionare Tasker e i vari plug-in. Installando Tasker + plug-in su uno smartphone, il sistema di invio e ricezione comandi tramite UDP funziona ma non mi soddisfa in quanto presenta troppi aspetti negativi (lasciare sempre lo smartphone collegato al caricabatteria, il microfono ha un raggio limitato e non puoi sostituirlo). Ora sto pensando di realizzare un riconoscimento vocale col Raspberry e Raspian anche se so che non sarà un impresa semplice!! Ho visto questi esempi: https://www.rhydolabz.com/wiki/?p=16234 https://diyhacking.com/best-voice-recognition-software-for-raspberry-pi/
Messaggi consigliati
Crea un account o accedi per commentare
Devi essere un utente per poter lasciare un commento
Crea un account
Registrati per un nuovo account nella nostra comunità. è facile!
Registra un nuovo accountAccedi
Hai già un account? Accedi qui.
Accedi ora