Paso 5: La codificación
Como se señaló anteriormente construimos nuestro fragmento de código basado en el GPIO estado escucha ejemplo proporcionado por el equipo de Pi4J. Este programa ejemplo es capaz de escuchar los cambios de estado pin GPIO y devuelve en la interfaz de línea de comandos.
El programa se encuentra en /opt/pi4j/examples
Puede abrir el programa con cualquier editor de su elección y modificarlo usted mismo o nuestra versión sólo tienes que copiar en la carpeta. Hemos añadido una simple sentencia if que desencadena un tweet (no olvides poner en práctica sus tokens de la API) tan pronto como el estado cambia a "Alto" (relé de huelga de puerta activado). Como tomar foto con la cámara de R-Pi como y guardarlo con una marca de tiempo, puede utilizar el código siguiente:
tiempo de ejecución de java.lang.Runtime = java.lang.Runtime.getRuntime();
java.lang.Process pic = runtime.exec ("raspistill -o /home/pi /" + pic_time.format(cal.getTime()) + ".jpg");
Asegúrese de que la marca de hora tiene un formato correcto. La marca de tiempo "time" que utilizamos para los mensajes CLI el etiquetado se define como:
SimpleDateFormat tiempo = new SimpleDateFormat ("DD. MM.yyyy, HH");
Este formato no funcionará como un nombre de archivo para las fotos ya que no se puede ejecutar el proceso. Por lo tanto introducir otro formato tales como:
SimpleDateFormat pic_time = new SimpleDateFormat ("DDMMAAAA-HHmmss");
Cuando estés listo para retumbar para compilar el programa Java:
javac - classpath .:classes:/opt/pi4j/lib /'* ' -d. Listener_Tweet.Java
y ejecutarlo:
sudo java - classpath .:classes:/opt/pi4j/lib /'* ' Listener_Tweet