Paso 4: La PHP toma
Pero tan pronto como empecé a codificación pegué un problema. La cosa es que MAMP utiliza un número de Puerto especial en el equipo local en lugar del puerto 80 como suele de servidores http. Puerto de por defecto de MAMP es 8888 (eg. Funkyzeitmac.local:8888) y el puerto de la toma será 8890 así cuando Flash trys para conectarlo a la toma siempre busca una crossdomain política antes que nada. Por esta razón no funcionó. Así que hice una crossdomain política y trató de poner todo el servidor pero no tuvo mucha suerte. Finalmente buscando en la web encontré lo que parecía ser la respuesta (y por supuesto no encontrarlo en las páginas de soporte de adobe). La cosa es, cuando flash se conecta a la toma de corriente, el código php debe enviar la política de crosdomain antes que nada. Así puesto que su política de crossdomain, copiar su código y pégalo en el código PHP. Después de que flash recibe esta crossdomain política funciona como un encanto.
Puede descargar el archivo al final de este paso.
Como se puede ver que utiliza XML como sintaxis para los mensajes que se envían a flash. Esto hace más fácil analizar los datos entrantes en el cliente flash y AIR app. Hay unos cuantos mensajes de servidor que se envían cuando se conecta una toma de nuevo, cuando una toma de corriente se desconecta, contar las tomas y tomas de la cola para el cliente. Como esto va a ser un juego en línea, queremos tener un temporizador en la flash del cliente que se toca después de un minuto y medio e ir hasta el final de la cola. Eso es lo que la cola para. Guarde el archivo en la carpeta MAMP donde residirá su proyecto. Para llegar a la carpeta raíz del servidor MAMP ir a /Applications/MAMP/htdocs crear una nueva carpeta llamado Candygrabber y guarde el archivo aquí. Ahora abra una nueva Terminal window(/Applications/Utilities/Terminal) y tipo
/ /Applications/MAMP/htdocs/Candygrabber/socketShell.php aplicaciones/MAMP/bin/php5/bin/php
y presione retorno. Esto le indica a php para ejecutar el archivo como un script de servidor. Si todo salió bien deberías ver algo como esto en la ventana de terminal:
1 toma a 192.168.1.119:8890
escuchar 1...
No cierre la ventana de terminal ya que finalizar la sesión y cierra el socket de php.
Ahora vamos a avanzar a la parte flash.