Domotizando X – Riiiiiing – (… done)

Finalmente encontre la solución al problema que tenía. Resulta que escribir desde una terminal el comando que manda un mensaje por telegram hacía que si se hacían muchas llamadas seguidas, el cliente petase.

Intente arreglarlo con threads y el resultado “mejoro” algo pero habia que poner unos delays bastante elegantes.

El comando “screen” de linux me solucionó la papeleta.

La verdad es que he hecho bastante en el tema de domótica de casa desde que puse el último post pero bueno, me centraré un poco en el tema del timbre, ya habrá tiempo para entrar en otros temas 😉

La cosa es que quería mantener el cliente de telegram ejecutando constantemente en la raspberry. Yo no tengo pantalla así que siempre accedo por SSH con lo que para ejecutar el cliente de telegram…. tenia que hacerlo via SSH.

El problema de conectarse por ssh a un dispositivo es que en el momento que te desconectes cierra todo lo que tuvieras en ejecución…. stenyak me recomendó utilizar “screen” para solucionar ese problema.

Así pues, después de investigar cómo funcionaba, conseguí entenderlo 😛 (soy un poco lentito pa estas cosas si…) y ejecutando con screen el cliente….

Captura de pantalla 2016-08-26 a las 16.57.58.png

Captura de pantalla 2016-08-26 a las 16.56.47.png

se queda en segundo plano y yo puedo cerrar la terminal… una maravilla.

Vale, pero ¿y que? ahora como se puede hacer para usar *ese* cliente que tengo en segundo plano? pues esta todo pensado!! A screen se le puede pasar cadenas de texto para que las ejecute sencillamente haciendo:

Captura_de_pantalla_2016-08-26_a_las_17_01_15.png

Si se escribe desde la terminal directamente sólo hay que tener en cuenta lo que va entre “”. Yo tengo ‘system’ porque estoy ejecutandolo en un programa en C.

Y qué es lo guapo de esto?

Pues que se pueden hacer mil llamadas seguidas (es decir, escribir tantos comandos seguidos como ese) y NO PETA el cliente de telegram 😉 Una maravilla.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s