示例#1
0
文件: linker.php 项目: ajira86/movim
         if (!$parser->parse($message)) {
             fwrite(STDERR, colorize(getenv('sid'), 'yellow') . " " . $parser->getError() . "\n");
         }
         if ($restart) {
             $session = \Sessionx::start();
             \Moxl\Stanza\Stream::init($session->host);
             stream_set_blocking($conn->stream, 0);
             $restart = false;
         }
         $msg = \RPC::commit();
         \RPC::clear();
         if (!empty($msg)) {
             echo base64_encode(gzcompress(json_encode($msg), 9)) . "";
             #fwrite(STDERR, colorize($msg.' '.strlen($msg), 'yellow')." : ".colorize('sent to browser', 'green')."\n");
         }
         $xml = \Moxl\API::commit();
         \Moxl\API::clear();
         if (!empty($xml)) {
             $conn->write(trim($xml));
             #fwrite(STDERR, colorize(trim($xml), 'yellow')." : ".colorize('sent to XMPP', 'green')."\n");
         }
     }
     // Two ticks to be sure that we get everything from the socket, sic…
     $loop->tick();
     $loop->tick();
 });
 $conn->on('error', function ($msg) use($conn, $loop) {
     #fwrite(STDERR, colorize(serialize($msg), 'red')." : ".colorize('error', 'green')."\n");
     $loop->stop();
 });
 $conn->on('close', function ($msg) use($conn, $loop) {