Ver Mensaje Individual
  #3 (permalink)  
Antiguo 08/12/2007, 23:31
Avatar de eddwinpaz
eddwinpaz
 
Fecha de Ingreso: noviembre-2007
Ubicación: Merida , Venezuela
Mensajes: 1.066
Antigüedad: 17 años, 2 meses
Puntos: 25
Re: Notificador de actividad.. en el teclado.. con AJAX

encontre esta funcion en Javascript pero no la entiendo ni se como aplicarla de la manera correcta alguien puede hacerme el gran favor de poder ayudarme con este problemilla que tengo ... please..

aqui esta la clase que supuestamente hace eso...

function getChatText() {
receiveReq.open("POST", getUrl ,true);
receiveReq.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
receiveReq.onreadystatechange = handleGetChat;
var queryString=OperatorDept.getParameterString();
var queryParmaSt=queryString+"&optyping="+opTyping+"&m essageReciver="+escape(messageReciver);
receiveReq.send(queryParmaSt);
}
//Function for handling the return of chat text
function handleGetChat() {
try{
if (receiveReq.readyState == 4) {
if ((receiveReq.status == 200)||(receiveReq.status == 0)) {
var chat_div = document.getElementById("div_chat");
var lastMessage;
var chat_typing=document.getElementById("div_typing");
var oroot = receiveReq.responseXML.getElementsByTagName("root" );
var messageObj = receiveReq.responseXML.getElementsByTagName("messa ge");
var sessionOut = receiveReq.responseXML.getElementsByTagName("sessi onexpired");
//this will return an object specify that whether a party is typing or not
var typingStatus= receiveReq.responseXML.getElementsByTagName("typin g");
//alert(sessionOut.length);
//redirecting the page if the session is out
if(sessionOut.length>0){
//alert(sessionOut.length);
alert("inside ajax.js ");
location.href="SessionExp.htm";
}

//execute the typing status
chat_typing.innerHTML="";
if(typingStatus.length!=0){
for(var j=0;j< typingStatus.length;j++){
var oppTyping=typingStatus[j].childNodes[0].firstChild.nodeValue;
if(oppTyping==messageReciver){
var oppName=chatUserList.getUserNickName(oppTyping);
chat_typing.innerHTML="<img src='Images/typing.gif' >"+oppName+" is typing a message";
}//end if
}//end for
}//end if typing status.length
var n_messages = messageObj.length;
msgString="";
if(n_messages!=0){
for (var i = 0; i < n_messages; i++) {
var messageID=messageObj[i].childNodes[0].firstChild.nodeValue;
var msgChatRoom=messageObj[i].childNodes[8].firstChild.nodeValue;
OperatorDept.setDeptMessageID(msgChatRoom,messageI D);
var postedTime=messageObj[i].childNodes[1].firstChild.nodeValue;
var sender=messageObj[i].childNodes[2].firstChild.nodeValue;
var senderName=messageObj[i].childNodes[3].firstChild.nodeValue;
var reciver=messageObj[i].childNodes[4].firstChild.nodeValue;
var recName=messageObj[i].childNodes[5].firstChild.nodeValue;
//alert(reciverName);
var msgText=decodeURIComponent(messageObj[i].childNodes[6].firstChild.nodeValue);
//alert(msgText);
var msgtype=messageObj[i].childNodes[7].firstChild.nodeValue;

//Let this function to handle, store and display each message
chatMessageHandler(messageID,sender,senderName,rec iver,recName,msgText,msgtype,msgChatRoom);
//alert(messageID+sender+reciver+msgText+msgtype+msg ChatRoom);
}//End for loop
chat_div.innerHTML+=msgString;
chat_div.scrollTop = 1000000;
}//End if(n_messages

}
mTimer = setTimeout('getChatText();',2000);

}
}catch(e){
alert(e);

}
}