Paso 7: Cliente Flash y aplicación
Así que abrir Flash y crear dos nuevos archivos flashes. Uno como ActionScript 3.0 y asígnele el nombre Client.fla y otro para Adobe AIR con el nombre ArduinoAIR.fla. Entonces cree dos archivos de ActionScript y llamarlos ClienDocument.as y ArduinoAIRDocument.as. El cliente contiene un componente TextArea llamado "msgArea", componente InputText denominado "inputMessage", dos componentes de botones denominados "sendButton" y "reconnectButton", tres componentes slider llamado "motorX", "Ciencias", "motorZ" y cuatro campos dinámicos llamado "red5StatusTxt", "sharedStatusTxt", "socketStatusTxt" y "queueStatus".
La aplicación de aire tiene los mismos componentes, pero también tiene un componente de botón extra llamado "sendArduinoButton". Cuando tengas estas establecer que punto cada archivo flash a su clase de documento. Clases de documento en términos llanos se utilizan para mover el código desde la línea de tiempo a un archivo externo acrionscript. Así que para el Client.fla la clase de documento debe ser ClientDocument.as y para ArduinoAIR.fla debe ser ArduinoAIRDocument.as. Vale. Ahora abre ClientDocument.as y para que no vea lo que tenemos aquí.
En las primeras líneas que estamos definiendo las clases que vamos a utilizar.
Las cosas que nos interesan están dentro de la funcion pública que clientdocument() tan permite recorrer cada una de ellas y explican lo que hacen.
Las tres primeras líneas ocultan áreas de texto y ganador del trofeo. 4. línea inicializa la clase Red5Broadcast que se encarga de la transmisión y la difusión del video. Tenemos que darle la ubicación del servidor red5, nombre de la aplicación de red5 y el campo de texto donde se muestra el estado de la corriente. Entonces tenemos que añadir a la lista de visualización de lo contrario es no mostrar la secuencia de vídeo.
A continuación, Flash se comunica con la toma de php sobre una clase XMLSocket que forma parte de flash. He creado una clase de modelo que se manejan todos los oyentes es necesarios y distribuir eventos cuando se recibieron los datos. Se llama XMLSocketModel y lo inicializamos esta manera:
Tenemos que pasar la URL Dónde está nuestro enchufe, nuestro número y como último parámetro el tipo de aplicación. La URL que utilizo es arduinoproject.no-ip.org. Sí utilizo www.no-ip.org servicio. De esta forma tengo la posibilidad de tener un nombre de host para mi IP dinámica. Sólo registro, elegir un nombre de host e instalar el programa en su computadora. Lo último que nos pasa es "cliente" porque ahora estamos trabajando en nuestro archivo flash del cliente. Tenga en cuenta que todos los parámetros deben rellenarse.
La siguiente línea inicializa la clase de vista. Se utiliza para mostrar los datos entrantes y cambia cuando recibe los eventos despachados la clase de modelo.
Cuando inicializamos la xmlSocketView pasamos a él el TextArea llamado "msgArea" como un parámetro. Le dice donde colocar nuestros datos de entrada. La siguiente línea dice que el modelo debe escuchar para eventos.
Así que xmlSocketView deben escuchar la xmlSocketModel para eventos.
A continuación tenemos que inicializar nuestra clase controlador. Es donde toda la magia ocurre. La clase de regulador es donde todas las decisiones y son hechos y todos los comandos se emiten. También los botones que ponemos en el escenario van a tener oyentes en el controlador de comandos de disparo cuando presionan, el controlador también cambios cuando recibe la expedición de eventos de la clase de modelo. Por lo tanto, primero inicializamos el Controler. En la siguiente línea decimos que modelo debe escuchar. Otra vez como con la opinión de clase decimos el modelo es xmlSocketModel. Entonces decimos que es videoBroadcast = difusión . Añadimos los botones, el "queueStatus" TextField para mostrar la cola, el "winnerStamp" clip de película que muestra si el cliente gana.
Por último inicializamos el sharedObject que intercambiará los comandos para el motor con la aplicación de aire. Los parámetros son el camino de su dominio, el nombre para el objeto compartido y el "sharedStatusTxt" campo de texto donde se muestra el estado de la conexión compartida.
Ahora vamos a echar un vistazo al código de la aplicación de aire.
Tome una mirada cuidadosa en función pública ArduinoAIRDocument().
El código es casi igual que en el archivo flash del cliente excepto cuando inicializamos la clase de xmlSocketModel que tenemos que pasar el "Aire" como el último parámetro.
Lo nuevo que tenemos aquí está sucediendo en las líneas 8 a 10.
Aquí inicializamos el socketModel. La socketModel es la clase de modelo para comunicarse con arduino. Utiliza la clase de Socket de flash. Línea 9 inicializa el socketView que es la clase de vista de la socketModel. Cuando nos initialze tenemos que pasar el TextArea "msgArea" ya que es también donde te muestra los comandos enviamos a arduino y qué arduino vuelve a la línea 10 de la bobina del aire dice el socketView a eventos de la socketModel.
El xmlSocketAppController se extiende desde el xmlSocketController para inicializarlo casi de la misma forma.
Las tres últimas líneas de código inicializan el socketAppController que es el controlador para el socketModel. Encargará de la comunicación entre la aplicación de aire y arduino por puerto 5333. Puerto 5333 se abrirá por TinkerProxy.
Ahora tenemos que publicar nuestros archivos. Publicar el Client.fla para Flash Player 10 y la aplicación de aire.