Comunidad de diseño web y desarrollo en internet online

ACTION SCIPT PARA RECIBIR DATOS

Citar            
MensajeEscrito el 04 Ago 2008 10:41 am
Hola a todos! Estoy buscando un código action script para recibir datos de otros programas desde flash.
El tema es el siguiente, quiero mandar un mensaje desde pure data a flash y que al recibirlo flash de la orden de hacer algo.
Por ejemplo, "cuando recibas el mensaje "hola" vete al frame 45".
No se si alguien controla esto, sólo necesito el código para recibir porque para enviar ya lo tengo.
Gracias.

Por caracumic

31 de clabLevel



 

safari
Citar            
MensajeEscrito el 04 Ago 2008 11:04 am
Primero que todo debes tener instalado flashserver, después utiliza este ejemplo para entender la comunicación, pero teoricamente cuando flash reciba una variable enviada por pd no tienes que hacer nada la variable estará en la raiz y funcionará como variable global.

http://www.megaupload.com/?d=I68082BE

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 04 Ago 2008 11:52 am
Gracias, flash server ya está instalado pero no puedo ver tu archivo. Me lleva a la página megaupload....

Por caracumic

31 de clabLevel



 

safari
Citar            
MensajeEscrito el 04 Ago 2008 11:56 am
ah! ya lo había visto pero no logro entenderlo. Lo que yo quiero es recibir un mensaje y asociarlo a una acción.

Por caracumic

31 de clabLevel



 

safari
Citar            
MensajeEscrito el 04 Ago 2008 12:27 pm
Lo que vas a recibir en flash es una variable, te recomiendo que envies por ejemplo un número de frame, después solamente debes ir al frame que has enviado:

Código :

gotoAndPlay(Number(frameEnviado));

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 07 Ago 2008 08:23 am
Perdona que te insista pero no logro entenderlo. Si en pure data envío un mensaje llamado env con una variable, cual es el mensaje completo que tengo que poner en mi documento de flash?
No logro hacerlo...

Por caracumic

31 de clabLevel



 

safari
Citar            
MensajeEscrito el 07 Ago 2008 11:54 am
Imagina que el mensaje o la variable que mandas llamada env tiene valor 10, bueno en flash en el primer frame pones:

Código :

gotoAndPlay(Number(env));


El flash irá al frame que le enviaste, en este caso el 10.

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 07 Ago 2008 01:20 pm
AH! NO TENGO QUE PONER ANTES ALGO TIPO... (MUCHAS GRACIAS QUE TE ESTÁS ENROLLANDO UN MONTÓN)

CÓDIGO:
function onPDdata(doc) {
msg = doc;
msgdetect = msg.substring(0, 3);
if (msgdetect eq "env") {
env = msg.substring(4, 10);
env = Number(env);
}
}

Por caracumic

31 de clabLevel



 

safari
Citar            
MensajeEscrito el 07 Ago 2008 01:43 pm
Lo que has puesto es una instrucción de AS1, primero prueba con un texto dinámico lo que le llega a flash, si es algo como esto:

Código :

"env_123456"


Entonces si debes implementar la función que has posteado para convertir ese string en un número entendible para flash, pero sería mejor con AS2:

Código :

var env:Number;

function onPDdata(doc:String):Void{
   
   var msgdetect:String = doc.substr(0, 3);
   
   if (msgdetect == "env") {
      
      var envStr:String = doc.substr(4, 10);
      
   }
   
   env = Number(envStr);
   
}


Lo que la anterior función tomará un número de 6 cifras, dudo de que vayas a tener un frame disponible para mandarlo a reproducir con ese número

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 08 Ago 2008 10:46 am
gracias, lo intentaré. Muchas gracias.
El código lo copié de un ejemplo que venía en internet y no logro descifrar qué es (0,3) y (4,10) para qué sirve..... entendí que era los valores que extrae pero no es así....
Mi caso es simple yo tengo un flash con 50 frames y quiero que al recibir el mensaje "env" de pure data (que me manda el valor del frame) el flash vaya al frame que me ordena "env".
Voy a intentar esto que me dices. No podrías enviarme un flash con un ejemplo si ves que es sencillo para tí?
Gracias por la ayuda.....me estoy volviendo loca....

Por caracumic

31 de clabLevel



 

safari
Citar            
MensajeEscrito el 08 Ago 2008 11:47 am
Mira he trabajado en proyectos donde se ha utilizado pd, pero he interactuado desde la parte de flash y ahora no recuerdo que estructura tiene la variable que se recibe flash de pd, hace algunos años de eso. Solamente tenía este archivo as que fue el que utilicé para la comunicación, pon en el primer frame de tu película un include al archivo .as:

Código :

#include "carpetaDondeEstaElas/flashserver.as"


Dentro de este archivo debes aclarar el servidor al cual te vas a conectar y el puerto, en el archivo viene por default un localhost y el puerto por defecto 3500.

Después puedes enviar variables por medio de flashserver de esta manera:

Código :

sendHandler(nombreVariable, valorVariable)


Caundo se reciben variables desde el flash server automáticamente se levanta la función dataHandler, que viene con un parámetro (la variable que has enviado), bueno toma la función dataHandler y ponle esto dentro:

Código :

function dataHandler(maxData) {

    _root.campoTexto.text = maxData;

}


Donde campoTexto es un campo de texto dinámico que vas a tener en la escena, cuando recibas alguna variable de flashserver en el campo de texto aparecerá la estructura de la variable que envias, copiala y posteala y te diré como debes proceder desde flash.

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.