Changeset 216 for trunk/instant_messenger
- Timestamp:
- 03/11/08 14:53:31 (17 years ago)
- Location:
- trunk/instant_messenger
- Files:
-
- 123 added
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/instant_messenger/inc/Jabber.abstract.php
r164 r216 46 46 $this->_socket = $socket; 47 47 48 $return = fread($socket, 4096); 49 fwrite($socket, $pUser); 50 51 $return = fread($socket, 4096); 52 fwrite($socket, $pPassword); 53 54 $return = fread($socket, 4096); 55 fwrite($socket, $pConnectionType); 56 57 $return = fread($socket, 4096); 48 fwrite($socket, "{$USER}@{$SERVER}##{$pPassword}##{$pConnectionType}"); 49 50 #sleep(1); 51 52 $return = fread($socket, 3); 53 #var_dump($return); 54 #$return = "new"; 58 55 59 56 if ( $return == "new" ) … … 61 58 $xml = "<?xml version='1.0' encoding='UTF-8'?>"; 62 59 $xml .= "<stream:stream to='" . $SERVER . "' xmlns='jabber:client' "; 63 $xml .= "xmlns:stream='http://etherx.jabber.org/streams' version='1.0'>";60 $xml .= "xmlns:stream='http://etherx.jabber.org/streams'>";// version='1.0'>"; 64 61 65 62 if ( $this->write($xml) === false ) … … 125 122 $xml = "</stream:stream>"; 126 123 127 if ( $this->write($xml) === false )128 throw new Exception('[disconnect] #1 Cannot write to socket (' . $this->_socket . '). File: ' . __FILE__ . ' :: ' . __LINE__);129 130 if ( ($xml = $this->read()) === false )131 throw new Exception('[disconnect] #2 it isn\'t possible read the socket. File: ' . __FILE__ . ' :: ' . __LINE__);124 #if ( $this->write($xml) === false ) 125 # throw new Exception('[disconnect] #1 Cannot write to socket (' . $this->_socket . '). File: ' . __FILE__ . ' :: ' . __LINE__); 126 127 #if ( ($xml = $this->read()) === false ) 128 # throw new Exception('[disconnect] #2 it isn\'t possible read the socket. File: ' . __FILE__ . ' :: ' . __LINE__); 132 129 } 133 130 catch(Exception $e) -
trunk/instant_messenger/inc/Jabberd2.abstract.php
r164 r216 76 76 final function getContacts() 77 77 { 78 if ( !$this->isConnected() ) 79 return "disconnected"; 80 78 81 $this->iq('get', 'contacts', NULL, NULL, 'jabber:iq:roster'); 79 82 } … … 109 112 { 110 113 $delid = 'deluser_' . time(); 111 if ( !$this->connected ) 112 echo "disconnected"; 113 else 114 { 115 if ( $this->writeSocket($this->iq('set',$delid,NULL,NULL,"jabber:iq:roster","<item jid='".$pContact['jid']."' subscription='remove'/>")) ) 116 if ( $this->subscription($pContact['jid'],"unsubscribed") ) 117 echo "OK"; 118 } 114 if ( !$this->isConnected() ) 115 return "disconnected"; 116 117 if ( $this->writeSocket($this->iq('set',$delid,NULL,NULL,"jabber:iq:roster","<item jid='".$pContact['jid']."' subscription='remove'/>")) ) 118 if ( $this->subscription($pContact['jid'],"unsubscribed") ) 119 echo "OK"; 119 120 } 120 121 … … 135 136 final function setPresence($pPresence = false) 136 137 { 138 if ( !$this->isConnected() ) 139 return "disconnected"; 140 137 141 if ( !$pPresence ) 138 142 $this->presence(); -
trunk/instant_messenger/inc/class.Ujabber.inc.php
r164 r216 26 26 { 27 27 $this->closeSocket(); 28 ob_end_flush(); 29 flush(); 30 } 31 32 public final function isConnected() 33 { 34 return $this->connected; 28 35 } 29 36 30 37 public final function listen() 31 38 { 32 if ( !$this-> connected)39 if ( !$this->isConnected() ) 33 40 return "disconnected"; 34 41 … … 47 54 $init = time(); 48 55 49 while ( !connection_aborted() && time() - $init < 30 )56 while ( !connection_aborted() && time() - $init < 50 ) 50 57 { 51 58 # read from server and write in the client 52 59 $xml = $this->readSocket(); 60 //var_dump($xml); 53 61 $xml = ( strlen($xml) ) ? $xml : ' '; 54 62 printf("%s", $xml); … … 57 65 usleep(6000); 58 66 } 59 ob_end_flush();60 67 } 61 68 } … … 63 70 public final function SendMessage($pSendMessage) 64 71 { 72 if ( !$this->isConnected() ) 73 return "disconnected"; 74 65 75 $pSendMessage['body'] = stripslashes($pSendMessage['body']); 66 76 -
trunk/instant_messenger/inc/im_acl.inc.php
r164 r216 2 2 $size_of_ACL = sizeof($GLOBALS['phpgw_info']['user']['acl']); 3 3 4 for ( $i = 0; $i < $size_of_ACL && $GLOBALS['phpgw_info']['user']['acl'][$i]['appname'] == 'instant_messenger'; $i++ ); 4 for ( $i = 0; $i < $size_of_ACL; $i++ ) 5 if ( $GLOBALS['phpgw_info']['user']['acl'][$i]['appname'] == 'instant_messenger' ) 6 { 7 $webserver_url = $GLOBALS['phpgw_info']['server']['webserver_url']; 8 $webserver_url = ( !empty($webserver_url) ) ? $webserver_url : '/'; 5 9 6 $webserver_url = $GLOBALS['phpgw_info']['server']['webserver_url']; 7 $webserver_url = ( !empty($webserver_url) ) ? $webserver_url :'/';10 if ( strrpos($webserver_url, '/') === false || strrpos($webserver_url, '/') != (strlen($webserver_url)-1) ) 11 $webserver_url .= '/'; 8 12 9 if ( strrpos($webserver_url, '/') === false || strrpos($webserver_url, '/') != (strlen($webserver_url)-1) ) 10 $webserver_url .= '/'; 13 $webserver_url = $webserver_url . 'instant_messenger/'; 11 14 12 $webserver_url = $webserver_url . 'instant_messenger/'; 15 session_start(); 16 require_once PHPGW_SERVER_ROOT . '/instant_messenger/inc/im_sessions.inc.php'; 17 require_once PHPGW_SERVER_ROOT . '/instant_messenger/inc/load_lang.php'; 18 $_user = $_SESSION['phpgw_info']['instant_messenger']['user']; 19 $_pass = $_SESSION['phpgw_info']['instant_messenger']['passwd']; 20 $_server = $_SESSION['phpgw_info']['instant_messenger']['name_jabber']; 21 $_port = $_SESSION['phpgw_info']['instant_messenger']['port_jabber']; 22 $_resource = $_SESSION['phpgw_info']['instant_messenger']['resource_jabber']; 23 session_write_close(); 13 24 14 session_start(); 15 require_once PHPGW_SERVER_ROOT . '/instant_messenger/inc/im_sessions.inc.php'; 16 require_once PHPGW_SERVER_ROOT . '/instant_messenger/inc/load_lang.php'; 17 $_user = $_SESSION['phpgw_info']['instant_messenger']['user']; 18 $_pass = $_SESSION['phpgw_info']['instant_messenger']['passwd']; 19 $_server = $_SESSION['phpgw_info']['instant_messenger']['name_jabber']; 20 $_port = $_SESSION['phpgw_info']['instant_messenger']['port_jabber']; 21 $_resource = $_SESSION['phpgw_info']['instant_messenger']['resource_jabber']; 22 session_write_close(); 25 $DOCUMENT_ROOT = PHPGW_SERVER_ROOT .'/instant_messenger/'; 23 26 24 require_once PHPGW_SERVER_ROOT . '/instant_messenger/inc/class.Ujabber.inc.php'; 27 $js = array( 28 'js/connector.js', 29 'js/xtools.js', 30 'js/jabber.js', 31 'js/client.js', 32 'js/images.js', 33 'js/dragdrop.js', 34 'js/build_win.js', 35 'js/templates.js', 36 'js/fcommon.js', 37 'js/menu_action.js', 38 'js/functions.js', 39 'js/images.js', 40 'js/cookies_im.js', 41 'js/load.js', 42 ); 25 43 26 $DOCUMENT_ROOT = PHPGW_SERVER_ROOT .'/instant_messenger/';44 print '<script type="text/javascript">var path_im = "'.$webserver_url.'";</script>'; 27 45 28 $js = array( 29 'js/connector.js', 30 'js/xtools.js', 31 'js/jabber.js', 32 'js/client.js', 33 'js/images.js', 34 'js/dragdrop.js', 35 'js/build_win.js', 36 'js/templates.js', 37 'js/fcommon.js', 38 'js/menu_action.js', 39 'js/functions.js', 40 'js/images.js', 41 'js/cookies_im.js', 42 'js/load.js', 43 ); 46 foreach ( $js as $key => $val ) 47 print '<script src="' . $webserver_url . $val . '?' . filemtime($DOCUMENT_ROOT . $val) . '"></script>'; 44 48 45 print '<script type="text/javascript">var path_im = "'.$webserver_url.'";</script>'; 49 print '<link rel="stylesheet" type="text/css" href="' . $webserver_url . 'templates/default/css/window.css">'; 50 print '<link rel="stylesheet" type="text/css" href="' . $webserver_url . 'templates/default/css/chat.css">'; 51 print '<link rel="stylesheet" type="text/css" href="' . $webserver_url . 'templates/default/css/common.css">'; 46 52 47 foreach ( $js as $key => $val ) 48 print '<script src="' . $webserver_url . $val . '?' . filemtime($DOCUMENT_ROOT . $val) . '"></script>'; 53 require_once $DOCUMENT_ROOT . 'inc/class.Ujabber.inc.php'; 49 54 50 print '<link rel="stylesheet" type="text/css" href="' . $webserver_url . 'templates/default/css/window.css">'; 51 print '<link rel="stylesheet" type="text/css" href="' . $webserver_url . 'templates/default/css/chat.css">'; 52 print '<link rel="stylesheet" type="text/css" href="' . $webserver_url . 'templates/default/css/common.css">'; 55 $jabber = new Ujabber; 56 $jabber->connect($_user . '@' . $_server . '/' . $_resource . ':' . $_port, $_pass, 'read/write'); 53 57 54 $jabber = new Ujabber;55 $jabber->connect($_user . '@' . $_server . '/' . $_resource . ':' . $_port, $_pass, 'read/write');56 print '<script type="text/javascript">setTimeout("client()",2000);</script>'; 58 print '<script type="text/javascript">setTimeout("client()",2000);</script>'; 59 $i = $size_of_ACL; 60 } 57 61 ?>
Note: See TracChangeset
for help on using the changeset viewer.