Пример #1
0
 public function getServiceConfig()
 {
     return array('factories' => array('User\\Model\\QQ' => function ($sm) {
         $config = $sm->get('config');
         $user = new QQ($config['platform'][QQ::ePlatform_QQ]['appid'], $config['platform'][QQ::ePlatform_QQ]['appkey']);
         $user->setServiceLocator($sm);
         return $user;
     }, 'User\\Model\\WX' => function ($sm) {
         $config = $sm->get('config');
         $user = new WX($config['platform'][WX::ePlatform_Weixin]['appid'], $config['platform'][WX::ePlatform_Weixin]['appkey']);
         $user->setServiceLocator($sm);
         return $user;
     }));
 }
Пример #2
0
 public function strength($data, $account, $num)
 {
     $logger = $this->getServiceLocator()->get('Zend\\Log');
     $config = $this->getServiceLocator()->get('config');
     $user = $this->getServiceLocator()->get('User\\Model\\QQ');
     $sig = QQ::makeCxSignature1(array($account, $num, QQ::CX_SIG_FRIENDS_KEY), $logger);
     //     	$rdata = $user->signCxResponse(array(
     //     			'account'       => $account,
     //     			'num'           => $num,
     //     			'flag'          => $sig,
     //     	));
     $rdata = array();
     $rdata['flag'] = $sig;
     $rdata['account'] = $account;
     $rdata['num'] = $num;
     $response = QQ::formatResponse(QQ::CX_CODE_SUCCESS, 'success', $rdata);
     self::putLog("response:");
     self::putLog($response);
     //send GM command to GS
     //根据area_id/plat_id/partition查找数据库连接
     $adapter_name = "gateway";
     $adapter = $this->getServiceLocator()->get($adapter_name);
     $sql = "SELECT ip, port, db_host, db_port, db_name, db_user, db_pass, status FROM servers WHERE area_id = {$data['platform']} AND plat_id = {$data['os']} AND partition = {$data['zone_id']}";
     //     	$logger->info("execute sql: $sql");
     self::putLog("execute sql:");
     self::putLog($sql);
     //     	$result = $adapter->query($sql);
     //     	$logger->debug('find db info on gateway');
     //     	self::putLog("select from servers:");
     //     	self::putLog(print_r($result));
     $link = mysqli_connect('192.168.0.6', 'root', 'root', 'gateway');
     $result = $link->query($sql);
     $result = mysqli_fetch_assoc($result);
     self::putLog("select from servers:");
     self::putLog($result);
     //     	if (!empty($result)) {
     //     		$gs_config = array();
     //     		foreach ($result as $row) {
     //     			$gs_config['status'] = $row['status'];
     //     			$gs_config['host'] = $row['db_host'];
     //     			$gs_config['port'] = $row['db_port'];
     //     			$gs_config['name'] = $row['db_name'];
     //     			$gs_config['user'] = $row['db_user'];
     //     			$gs_config['pass'] = $row['db_pass'];
     //     			$gs_config['gs_ip'] = $row['ip'];
     //     			$gs_config['gs_port'] = $row['port'];
     //     		}
     //     		$gm_result = QQ::sendGMCmd($response, $gs_config['gs_ip'], $gs_config['gs_port'], false);
     //     		$logger->debug($gm_result);
     //     		return $gm_result;
     //     	}else{
     $gm_result = QQ::sendGMCmd1($response, '192.168.0.3', '9051', false);
     $logger->debug($gm_result);
     return $gm_result;
     //     	}
     //return 0;
 }