Cómo utilizar siri para establecer el escenario para el romance
Vídeo: Tutorial | Instala Siri en tu Android
Ayer os mostramos cómo crear una la luz de bricolaje Wi-Fi que podrían controlarse con Siri- hoy vamos a aprovechar ese conocimiento para hacer Siri para trabajar con un sistema de sonido Sonos también, a continuación, poner todo junto en una escena romántica.Cómo hacer un DIY-Controlado Siri Wi-Fi LuzCómo hacer un DIY-Controlado Siri Wi-Fi LuzEn esta guía, usted va a aprender cómo crear una luz controlable Wi-Fi, y controlarlo con Siri.Lee mas
Mira el resultado final:
El vídeo de arriba no era falso, o por etapas - todo es posible el uso de Siri, y la guía a continuación. No se requiere ninguna fuga de la cárcel, aunque hay una cierta programación, para el que he proporcionado el código.
Cosas que necesitará:
- frambuesa Pi
- dispositivo iOS
- iluminación de colores compatibles con Siri, como Philips Hue con un centro de segunda generación, o nuestra bricolaje Luz Wi-Fi
- Sonos (u otro dispositivo de reproducción con un API HTTP)
- (Opcional) NodeMCU / ESP8266, relé y sockets- de alimentación o un accesorio de toma de corriente HomeKit comercial
¿Por qué es tan complicado?
HomeKit, y controlar sus dispositivos a través del control de voz es muy bien cuidado. Por desgracia, el ecosistema cerrado que Apple es, HomeKit se limita a un puñado de dispositivos. Sonos no es uno de ellos. Sin embargo, no todo está perdido. Gracias a algunos hackers que trabajan duro, el protocolo fue recientemente HomeKit ingeniería inversa, y como se ha demostrado en nuestro último proyecto, que ahora puede crear sus propios dispositivos HomeKit falsos. Vamos a tomar ventaja de eso.
Para empezar, siguiendo nuestra tutorial de luz DIY Wi-Fi, porque eso va a ser la base de todo lo demás. De hecho, si usted no tiene ya un sistema de iluminación de Philips Hue, puede seguir adelante y construir realmente la luz Wi-Fi se describe en ese tutorial.Cómo hacer un DIY-Controlado Siri Wi-Fi LuzCómo hacer un DIY-Controlado Siri Wi-Fi LuzEn esta guía, usted va a aprender cómo crear una luz controlable Wi-Fi, y controlarlo con Siri.Lee mas
Incluso si usted tiene un sistema de Hue, seguir adelante y seguir el tutorial, ya que necesitará para crear accesorios HomeKit falsas para todo lo demás (código proporciona a continuación). Al continuar con esta guía, voy a suponer que tenga el servidor en funcionamiento HAP-NodeJS ya, y ha agregado con éxito una luz falsa y probado el servidor, incluso si no está conectado a una transmisión real de bricolaje hardware.
Hacer una lista de reproducción
Seguir adelante y crear una nueva lista de reproducción de Sonos llamado “romántico”. No tiene por qué ser exactamente el mismo nombre, pero usted tendrá que ajustar los guiones de accesorios más adelante si no se cambie. He añadido un poco de Marvin Gaye y Sade pistas a la mía. Suave.
A continuación, a lo largo de la Frambuesa Pi que se está ejecutando HAB-NodeJS (Si usted no sabe lo que estoy hablando, usted no leyó el tutorial luz Wi-Fi. ¿Es que en primer lugar), navegue hasta el directorio de inicio y escriba lo siguiente para instalar la API HTTP para Sonos. Esto nos va a dar una dirección web que podemos hacer ping a desencadenar determinadas acciones en el Sonos.
Git clon https://github.com/jishi/node-sonos-http-api.git Sonosdiscos compactos SonosNPM instalar producciónNPM instalar -Auth básico Sonos-descubrimiento requerir-fu-promesa petición asincrónico nodo-estáticaNPM comienzo
Si ve un mensaje acerca de tal y tal módulo no encontrado, acaba de hacer otra NPM instalar y el nombre del módulo, a continuación, tratar inicio NPM de nuevo. Es posible que ya tenía algunos módulos instalados a nivel mundial de otros proyectos, y puede que tenga que instalar más. Esperamos que usted ve algo como esto:
Felicitaciones, ahora tienen una sencilla API HTTP se puede utilizar para activar sus Sonos. Leer en la documentación de la lista completa de los comandos, pero el formato que más nos interesa es:
http: // [IP de servidor]: 5005 / [NOMBRE DE LA HABITACIÓN] / [Acción]
o como un ejemplo específico:
https://192.168.1.99:5005/master%20bedroom/playlist/romantic
Caso no parece importar. El 20% es una codificación URL de un carácter de espacio, pero debe ser capaz de escribir un espacio real también, y su navegador lo convertirá automáticamente. La orden anterior le dispara la lista de reproducción romántica al dispositivo dormitorio principal. Utilizar el pausa mando para detenerlo:
https://192.168.1.99:5005/master%20bedroom/pause
Además, la API también nos da una función que vendrá en muy práctico para otros proyectos: la capacidad de decir una declaración específica, como una notificación, y luego continuar jugando la cola actual. Tratar:
https://192.168.1.99:5005/master%20bedroom/say/make%20use%20of%20is%20awesome/en-gb
La primera vez que hace esto, obtendrá un mensaje de tener que registrarse para una clave de API en VoiceRSS.org (arriba también 350 solicitudes por día son gratis). Cuando haya terminado con eso, Tipo:
nano settings.json
y pegar en su clave al siguiente ejemplo:
{"voicerss":"YOURAPIKEY"}
Reiniciar el servidor, y haga ping a la URL de nuevo. Después de unos segundos, se debe escuchar una voz Inglés delicioso. Se puede cambiar el final de la URL para es-es si se prefiere una voz americana. ¡Ordenado! Totalmente irrelevante para este proyecto, pero ordenada de todos modos!
Por último, vamos a hacer este servidor se inicia de nuevo cuando se reinicie el Pi:
sudo nano /etc/rc.local
Añadir una línea antes de la exit 0:
sudo /home/pi/sonos/server.js nodo lt; / Dev / null &
CTRL-X, Y para guardar. Se puede ver que estoy corriendo este lado OpenHAB, un detector de presencia de Bluetooth DIY, y el servidor de HAP-NodeJS HomeKit - que también debe tener que correr ya si ha seguido el requisito previo Wi-Fi tutorial ya la luz.
Creación de un dispositivo HomeKit para los Sonos
El punto crucial de este proyecto es que Sonos no puede ser controlado por Siri, sin embargo podemos añadir algún grado de control mediante la creación de un dispositivo HomeKit falso que activa una lista de reproducción particular, cuando nos convertimos en - una luz falsa es la forma más fácil de hacer esto.
Vaya a su HAP-NodeJS / directorio de primera, e instalar el módulo “solicitud”.
sudo NPM instalar solicitud
A continuación, saltar a la accesorios/ directorio y agarrar mi dispositivo preparado de antemano con el siguiente comando simple:
wget https://gist.githubusercontent.com/jamesabruce/72bd250fbcf054acaa25/raw/8272d4b9a4ef76db752cab2ddd9bdc47d09a65f1/Romantic_accessory.js
Hacer algunos cambios si es necesario - se establece para la ubicación “dormitorio principal” Sonos por defecto, por lo que cambiar la cadena de maestro% 20bedroom hacia el comienzo del código si desea que se dirige a una habitación diferente. Desde que hemos fingido ser una luz, enviando el comando de brillo en realidad no hacer nada, aunque en algún momento voy a actualizar que para hacer frente a volumen. Este es el bloque de código que hace la magia:
setPowerOn: función(en) {consola.Iniciar sesión("Al girar el% s luz!", en ? "en" : "apagado")-FAKELIGHT.encendido = en-consola.Iniciar sesión(en)-Si(en){solicitud(`Http: // localhost: 5005 / master% 20bedroom / lista de reproducción / romántica`, función (error, respuesta, cuerpo) {consola.Iniciar sesión("solicitud de partida enviado")-})}más{solicitud(`Http: // localhost: 5005 / master% 20bedroom / pausa`, función (error, respuesta, cuerpo) {consola.Iniciar sesión("solicitud de pausa enviado")-})}},
Se puede ver que es sorprendentemente simple: cuando la luz recibe una orden de setPowerOn HomeKit, se comprueba si el valor es 1 (o verdadero), y cuyo punto se hace ping el Sonos API HTTP url para reproducir la lista de reproducción. Si se trata de cualquier otra cosa (es decir. 0, false), envía el comando de pausa. Reinicie el servidor de HAP-NodeJS, a continuación, la cabeza de más de un dispositivo iOS y seguir el mismo procedimiento que antes de añadir su luz falsa “Lista de reproducción romántica” (Necesitará el código de emparejamiento 031-45-154).
Compruebe su nuevo dispositivo está funcionando, entonces seguir adelante. Si se siente hasta un poco de programación, se puede intentar los cambios de brillo a volumen (y compartir su código en los comentarios, por favor!).
Luces (Opcional) hadas y otros dispositivos de corriente alterna
Puede que le sorprenda saber que no hay ninguna luz oficiales HomeKit de hadas, ni podía encontrar ninguna HomeKit tomas de corriente genéricos que más me ha gustado el aspecto / precio - así que llamé junto a uno de bricolaje utilizando una Dev Board NodeMCU / ESP8266, un relé, y una toma de corriente de dos grupos estándar. No voy a detallar el hardware demasiado, ya que no se debe poner cosas dentro de tomas de corriente si no está totalmente seguro con ese tipo de cosas, pero yo le proporcionará con mi código para el lado NodeMCU de las cosas (conectar el relé de disparo al pin D2 / GPIO4), y el accesorio para ir con ella.Cumplir con el asesino de Arduino: ESP8266Cumplir con el asesino de Arduino: ESP8266Lo que si te dijera que hay una una junta dev compatible con Arduino con una función de Wi-Fi para menos de $ 10? Bueno, la hay.Lee mas
Como la luz de Wi-Fi, este se comunica comandos en un canal MQTT ( “bedroomplug”), por lo que tendrá que modificar el código con su dirección corredor MQTT (echa un vistazo a la parte 2 de nuestra guía de OpenHAB cómo configurar un corredor MQTT), Cambiar los nombres de los canales si lo desea, y por supuesto introducir sus propios detalles de Wi-Fi.
Poniendolo todo junto
Por último, vamos a hacer algunas “escenas” utilizando el Elgato víspera de aplicación, o su gerente HomeKit preferido. En el lenguaje HomeKit, una escena que puede consistir en cualquier número de accesorios y comandos a los accesorios.
Vídeo: Aprenda a utilizar Siri, la asistente de voz del iPhone
Se puede nombrar a una escena de lo que quiera, y Siri será capaz de igualar incluso sin decir “escena ajustada”. Así que he hecho dos escenas: una llamada “los niños están en la cama”, y otro “vamos a tomar en serio ahora”.
El primero se apaga una de las luces de Hue, ofrece la otra a rosa, a continuación, se convierte en el accesorio lista de reproducción romántico y las luces de colores. Este último hace que las luces blancas de nuevo, y detiene el Sonos (es decir, se apaga el accesorio lista de reproducción romántico). Simples!
Espero que hayas disfrutado de este tutorial, y realmente puedo ver cómo podemos extender el control Siri para nada sin demasiados problemas, gracias al poder de HAP-NodeJS. ¿Hay algo que le gustaría ver algunas acciones especiales para Siri? Háganos saber en los comentarios, y nos dicen cómo se ha estado usando Siri para controlar su hogar.