Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Notificador de actividad.. en el teclado.. con AJAX

Estas en el tema de Notificador de actividad.. en el teclado.. con AJAX en el foro de Frameworks JS en Foros del Web. Buenas... tengo este chat.. http://tachiracompras.com/chat/ por lo que ven ese hace una peticion en AJAX usando protoype.. lo que yo quiero hacer es poder mostrar ...
  #1 (permalink)  
Antiguo 08/12/2007, 19:22
Avatar de eddwinpaz  
Fecha de Ingreso: noviembre-2007
Ubicación: Merida , Venezuela
Mensajes: 1.066
Antigüedad: 16 años, 6 meses
Puntos: 25
Notificador de actividad.. en el teclado.. con AJAX

Buenas... tengo este chat.. http://tachiracompras.com/chat/ por lo que ven ese hace una peticion en AJAX usando protoype.. lo que yo quiero hacer es poder mostrar un innetHTML de cuando el usuario este escribiendo algo en el text area. este me muestre un texto que diga. el usuario $_SESSION['usuario']; esta escribiendole un mensaje... como puedo hacer eso ? alguien tiene un ejemplo practico de este tipo de situaciones .. muchas gracias por su colaboracion..

Tengo esto

<form id="chatmessage">
<textarea name="message" rows="5" class="texto" id="messagetext" style="width:552px;" onkeyup = "enviar.disabled = this.value==''">
</textarea>
</form>

el cual captura la informacion de el form y lo envia a add.php el cual lo inserta en la base de datos y hace una actualicacion y lo muestra en pantalla.

<script>

function addmessage()
{
new Ajax.Updater( 'chat', 'add.php',
{

method: 'post',
parameters: $('chatmessage').serialize(),
onSuccess: function() {
$('messagetext').value = '';



}
} );
}


</script>

yo lo que digo es algo asi estilo MSN. pero para el web.. que cuando yo haga un focus sobre el campo de textarea este le muestre al otro usuario que se esta escribiendo un mensaje para el .. y que salga un innetHTML que diga.. estan escribiendo un mensaje....

Última edición por eddwinpaz; 08/12/2007 a las 23:36
  #2 (permalink)  
Antiguo 08/12/2007, 20:33
Avatar de eddwinpaz  
Fecha de Ingreso: noviembre-2007
Ubicación: Merida , Venezuela
Mensajes: 1.066
Antigüedad: 16 años, 6 meses
Puntos: 25
Re: Notificador de actividad.. en el teclado.. con AJAX

Lo que me gustaria hacer es poder mostrarle al otro usuario que con la persona con quien esta hablando esta escribiendole tambien un mensaje.. pero que este solo se pueda visualizar en el lado de el destinatario mas no el autor.. me explico bien ?
  #3 (permalink)  
Antiguo 08/12/2007, 23:31
Avatar de eddwinpaz  
Fecha de Ingreso: noviembre-2007
Ubicación: Merida , Venezuela
Mensajes: 1.066
Antigüedad: 16 años, 6 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);

}
}
  #4 (permalink)  
Antiguo 09/12/2007, 04:10
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Re: Notificador de actividad.. en el teclado.. con AJAX

Movido al foro de AJAX desde JavaScript.

Saludos,
  #5 (permalink)  
Antiguo 09/12/2007, 11:08
Avatar de eddwinpaz  
Fecha de Ingreso: noviembre-2007
Ubicación: Merida , Venezuela
Mensajes: 1.066
Antigüedad: 16 años, 6 meses
Puntos: 25
Re: Notificador de actividad.. en el teclado.. con AJAX

sera que alguien se puede tomar la molestia y ayudarme please... :-|
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:40.