Example #1
0
 /**
  * 执行
  */
 public function run()
 {
     do {
         $data = $this->_httpsqs->get($this->_options['httpsqs']['names']['im']);
         if (!$data || $data == 'HTTPSQS_GET_END') {
             break;
         }
         list($module, $action, $sub, $query) = explode(' ', $data);
         if (!in_array($module, self::$_supportModule)) {
             $this->getLogger()->warn("Invalid param \"module\" values {$module}");
             break;
         }
         switch ($module) {
             case self::USER_MODULE:
                 $this->onUser($action, $query);
                 break;
             case self::DEPARTMENT_MODULE:
                 $this->onDept($action, $query);
                 break;
             case self::CAST_MODULE:
                 $this->onCast($action, $query);
                 break;
             case self::TUDU_MODULE:
                 $this->onTudu($action, $query);
                 break;
             case self::GROUP_MODULE:
             case self::BOARD_MODULE:
             default:
                 $this->getLogger()->warn("Invalid param \"module\" values {$module}");
                 break;
         }
     } while (true);
 }
Example #2
0
 /**
  * 执行
  */
 public function run()
 {
     do {
         $data = $this->_httpsqs->get($this->_options['httpsqs']['names']['tudu']);
         if (!$data || $data == 'HTTPSQS_GET_END') {
             break;
         }
         list($module, $action, $sub, $query) = explode(' ', $data);
         parse_str($query, $query);
         if ($module !== 'tudu') {
             $this->getLogger()->warn("Invalid param \"module\" values {$module}");
         }
         if (empty($query['tsid'])) {
             $this->getLogger()->warn("Missing param \"tsid\"");
             continue;
         }
         if (!isset($this->_tsDbs['ts' . $query['tsid']])) {
             return;
         }
         $tsId = $query['tsid'];
         Tudu_Dao_Manager::setDb(Tudu_Dao_Manager::DB_TS, $this->_tsDbs['ts' . $tsId]);
         switch ($action) {
             case 'create':
                 $this->createTudu($query);
                 break;
             case 'update':
                 $this->updateTudu($query);
                 break;
             case 'review':
                 $this->reviewTudu($query);
                 break;
             case 'reply':
                 $this->reply($query);
                 break;
             case 'confirm':
                 $this->doneTudu($query);
                 break;
             case 'filter':
                 $this->filterTudu($query);
                 break;
             case 'rule':
                 $this->updateRules($query);
                 break;
             case 'cycle':
                 $this->cycle($query);
                 break;
             default:
                 $this->getLogger()->info("Invalid action values {$action}");
                 break;
         }
     } while (true);
 }
Example #3
0
 /**
  * 执行
  */
 public function run()
 {
     do {
         $data = $this->_httpsqs->get($this->_options['httpsqs']['names']['send']);
         if (!$data || $data == 'HTTPSQS_GET_END') {
             break;
         }
         list($module, $action, $sub, $query) = explode(' ', $data);
         if ($module != 'send') {
             $this->getLogger()->warn("Invalid param \"module\" values {$module}");
         }
         parse_str($query, $query);
         if (empty($query['tsid'])) {
             $this->getLogger()->warn("Missing param \"tsid\"");
             continue;
         }
         if (!isset($this->_tsDbs['ts' . $query['tsid']])) {
             return;
         }
         $tsId = $query['tsid'];
         Tudu_Dao_Manager::setDb(Tudu_Dao_Manager::DB_TS, $this->_tsDbs['ts' . $tsId]);
         switch ($action) {
             case 'tudu':
                 $this->sendTudu($query);
                 break;
             case 'reply':
                 $this->sendReply($query);
                 break;
             case 'meeting':
                 $this->sendMeeting($query);
                 break;
             case 'email':
                 $this->sendEmail($query);
                 break;
             default:
                 break;
         }
     } while (true);
 }
Example #4
0
 /**
  * 执行
  */
 public function run()
 {
     do {
         $data = $this->_httpsqs->get($this->_options['httpsqs']['names']['admin']);
         if (!$data || $data == 'HTTPSQS_GET_END') {
             break;
         }
         list($module, $action, $sub, $query) = explode(' ', $data);
         if ($module != 'user') {
             $this->getLogger()->warn("Invalid param \"module\" values {$module}");
         }
         switch ($action) {
             case 'create':
                 $this->createUser($query);
                 break;
             case 'delete':
                 $this->deleteUser($query);
                 break;
             default:
                 $this->getLogger()->info("Invalid action values {$action}");
                 break;
         }
     } while (true);
 }
Example #5
0
 public function httpsqsAction()
 {
     $config = $this->bootstrap->getOption('httpsqs');
     $httpsqs = new Oray_Httpsqs($config['host'], $config['port'], $config['chartset'], $config['name']);
     do {
         $data = $httpsqs->get();
         echo $data . "\n";
     } while ('HTTPSQS_GET_END' != $data);
     $httpsqs->closeConnection();
     echo "end";
 }