Пример #1
0
 /**
  * 异步推送协议
  * @param $player_id
  * @param $raw_data 已经封装好的协议
  * @return unknown
  */
 public function rsync_protocol($player_id, $raw_data, $client_ip = null)
 {
     if (empty($client_ip)) {
         if (isset($_GET['debug']) && $_GET['debug'] == 1) {
             $client_ip = GATEWAY_IP;
         } else {
             $client_ip = Com_System::get_client_ip();
             //            || $client_ip == '127.0.0.1'
             if (empty($client_ip)) {
                 $client_ip = GATEWAY_IP;
             }
         }
     }
     $channel_seq = Com_System::get_queue_channel_seq($player_id, 6);
     return Com_Queued::send($this->_channel . "_" . $channel_seq, json_encode(array('player_id' => $player_id, 'client_ip' => $client_ip, 'data' => base64_encode($raw_data))));
 }
Пример #2
0
 /**
  * @param $player_id
  * @param $player_info array('exp','level','level_exp','after_hero_hole')  使用升级的时候传下这几个数据
  * @return unknown
  */
 public function publish_upgrade($player_id, $player_info)
 {
     $data['player_id'] = $player_id;
     $data['exp'] = $player_info['exp'];
     $data['level'] = $player_info['level'];
     $data['level_exp'] = $player_info['level_exp'];
     $data['career_type'] = $player_info['career_type'];
     $data['after_hero_hole'] = $player_info['after_hero_hole'];
     $data['privilege_level'] = $player_info['privilege_level'];
     $data['name'] = $player_info['name'];
     $data['vip'] = $player_info['vip'];
     $data['union_id'] = $player_info['union_id'];
     //		Com_Log::write('xgame.upgrade', "publish_upgrade:\t".json_encode($data));
     $gateway = Com_System::get_client_ip();
     if (empty($gateway)) {
         $data['gateway'] = GATEWAY_IP;
     } else {
         $data['gateway'] = $gateway;
     }
     # 获取异步处理队列需要用的频道分割序号
     $channel_seq = Com_System::get_queue_channel_seq($player_id, 11);
     return Com_Queued::send($this->upgradeChannel . "_" . $channel_seq, json_encode($data));
 }
Пример #3
0
 public function publish_attr($player_id, $data)
 {
     # 获取异步处理队列需要用的频道分割序号
     $channel_seq = Com_System::get_queue_channel_seq($player_id, 141);
     return Com_Queued::send($this->_sync_player_attr . "_" . $channel_seq, json_encode($data));
 }
Пример #4
0
 public function async_trigger_guide_task($player_id, $type, $add_num, $target_type = 0)
 {
     $data['player_id'] = $player_id;
     $data['type'] = $type;
     $data['target_type'] = $target_type;
     $data['add_num'] = $add_num;
     # 获取异步处理队列需要用的频道分割序号
     $channel_seq = Com_System::get_queue_channel_seq($player_id, 12);
     return Com_Queued::send($this->_deal_guide_task_transfer_data_channel . "_" . $channel_seq, json_encode($data));
 }