Ver Mensaje Individual
  #4 (permalink)  
Antiguo 08/02/2006, 04:13
samuel82
 
Fecha de Ingreso: enero-2006
Mensajes: 7
Antigüedad: 18 años, 10 meses
Puntos: 0
Este es el codigo de mi componente

Código:
this._visible = false;

var ModoOP;
var ModoOpZona = new Array(numZonas);
var TempAmbienteZona = new Array(numZonas);
var TempConsignaZona = new Array(numZonas);

function connect () {
	mySocket = new XMLSocket();
	mySocket.onConnect = handleConnect;
	mySocket.onClose = handleClose;
	mySocket.onXML = handleIncoming;
    // specify your server and port number here
	if (!mySocket.connect(host, 2332)) 
		setError("Host inaccesible");
	mySocket.host = host;
	mySocket.port = port;
}

function handleConnect (succeeded) {
	if(succeeded) {
		mySocket.connected = true;
		trace("Conectado!!!!");
	} else {
		setError("No se ha podido conectar con el servidor");
	}
	
}

// *** event handler called when server kills the connection
function handleClose () {
	mySocket.connected = false;
	numClients = 0;
}

function handleIncoming(messageObj){
	trace("Recibido: "+messageObj);

	switch(messageObj.firstChild.nodeName){
		case "SERVER" : {Operacion = messageObj.firstChild.childNodes[0].firstChild.nodeValue;
			if(Operacion == "Tipo"){
				sendMessage("<SERVER><OPERACION>AZ</OPERACION></SERVER>");
			}
			break;}
		case "AZ" : {
			ModoOP = Number(messageObj.firstChild.childNodes[0].childNodes[0].nodeValue);
			trace("ModoOP = "+ModoOP);
			for(i=0;i<ModoOpZona.length;i++){
				ModoOpZona[i] = messageObj.firstChild.childNodes[1].childNodes[i].childNodes[0].nodeValue;
				trace("ModoOpZona["+i+"] = "+ModoOpZona[i]);
			}
			for(i=0;i<TempAmbienteZona.length;i++){
				TempAmbienteZona[i] = Number(messageObj.firstChild.childNodes[2].childNodes[i].childNodes[0].nodeValue);
				trace("TempAmbienteZona["+i+"] = "+TempAmbienteZona[i]);
			}
			for(i=0;i<TempConsignaZona.length;i++){
				TempConsignaZona[i] = Number(messageObj.firstChild.childNodes[3].childNodes[i].childNodes[0].nodeValue);
				trace("TempConsignaZona["+i+"] = "+TempConsignaZona[i]);
			}
			break;}
		}

}

// *** sends a new xml object to the server
function sendMessage(message) {
															messageObj = new XML();
	messageObj.parseXML(message);
	
	if (mySocket && mySocket.connected) {
		mySocket.send(messageObj);

	} else {
		trace("MENSAJE NO ENVIADO");
	}
}

function setError(cad){
	error = cad;
	_parent.AirZoneCausaError = error;
	_parent.gotoAndPlay("AZError");
}
}

Es un servidor de XMLSockets. Se conecta al servidor, el servidor le pide el tipo de dispostivo que es y el se lo manda (case "SERVER")
Luego recibe del servidor una trama con el estado general del dispositivo (aire acondicionado en este caso) y rellena los datos que defino arriba. Todos los datos los rellena correctamente.

En la aplicacion Flash tengo ese componente y como nombre AZ. Luego tengo varios campos de textos que intentan acceder a cada una de las variables del componente.

Para acceder a ellos los pongo como texto dinamico y en la propiedad var pongo:
AZ.ModoOP para acceder a ModoOP (este dato lo coje perfecto)
AZ.ModoOpZona[0] para acceder a ese dato pero este no me lo coje, ni siquiera me pone undefined, simplemente no me coje nada y ese es el problema

Espero que esta vez me haya explicado mejor

Última edición por samuel82; 09/02/2006 a las 04:11