Advertisement
eerrtt

hydna chat

Nov 25th, 2014
157
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. var chat = $('#textchat');
  2.  
  3.     chat.infoMessage(nick, msgConnecting);
  4.  
  5.     saveChatMessage(msgConnecting);
  6.    
  7.     // open a channel to hydna in read/write mode.
  8.     // NOTE: You must replace <simple-chat.hydna.net> with your actual domain
  9.     // to be able to run this script.
  10.     var channel = new HydnaChannel('telemedico.hydna.net/' + consultHash, 'rw');
  11.  
  12.     // handle packets as they are received over channel
  13.     channel.onmessage = function(event) {
  14.         // event.data should contain a JSON-encoded object. We'll decode it and
  15.         // look at it's type to see what to do next.
  16.         var packet = JSON.parse(event.data);
  17.         switch(packet.type) {
  18.             case 'join':
  19.                 chat.infoMessage(packet.nick, msgConnected);
  20.             break;
  21.             case 'msg':
  22.                 chat.chatMessage(packet.nick, packet.message);
  23.             break;
  24.         }
  25.     };
  26.  
  27.     channel.onerror = function(err) {
  28.         chat.errorMessage('An error has occured. ' + err.message);
  29.     }
  30.  
  31.     channel.onclose = function(err) {
  32.         chat.infoMessage(nick, 'Connection closed. Please reload page.');
  33.     }
  34.  
  35.     channel.onopen = function() {
  36.    
  37.         channel.send(JSON.stringify({
  38.             nick: nick,
  39.             type: 'join'
  40.         }));
  41.  
  42.         saveChatMessage(msgConnected);
  43.     }
  44.  
  45. $('form#chat').submit(function(event) {
  46.         event.preventDefault();
  47.         var input = $('#input_text', this);
  48.         if (input.val()) {
  49.             channel.send(JSON.stringify({
  50.                 nick: nick,
  51.                 type: 'msg',
  52.                 message: input.val()
  53.             }));
  54.  
  55.             saveChatMessage(input.val());
  56.            
  57.             // clear the input box after sending the message.
  58.             input.val('');
  59.         }
  60.     });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement