private function getValuefromRedis($eventId, $action, $object, $uin) { $paramsArr = array('event_id' => $eventId, 'action' => $action, 'object' => $object, 'uin' => $uin); $retArr = ServiceHelper::Call("event.getActionUserByRedis", $paramsArr); if (empty($retArr)) { $retArr = ServiceHelper::Call("event.getActionUserByRedis", $paramsArr); } return $retArr; }
private function getClientIPFromRedis($eventId, $action, $object, $ip) { $ip = md5($ip); $paramsArr = array('event_id' => $eventId, 'action' => $action, 'object' => $object, 'uin' => $ip); $retArr = ServiceHelper::Call("event.getActionUserByRedis", $paramsArr); return !empty($retArr) ? json_decode($retArr, true) : array(); }
private function is_vip() { $params = array('uin' => is_numeric(Utils::GetValue("uin")) ? Utils::GetValue("uin") : 0); $ret = ServiceHelper::Call("user.checkVipUser", $params); unset($ret['svip_state']); unset($ret['auth_state']); return $ret; // $this->return_format($ret); }
public function getUserInfo($uin) { $params = array(); $params['uin'] = $uin; $params['fields'] = "nick"; return ServiceHelper::Call("user.getUserInfo", $params); }
protected function addPacketToRedisList($actionId, $uin, $object, $actionVol, $actionVal, $reserve1, $reserve2, $terminal = 1) { $paramsArr = array(); $paramsArr['action_id'] = $actionId; $paramsArr['uin'] = $uin; $paramsArr['object'] = $object; $paramsArr['terminal'] = $terminal; $paramsArr['action_vol'] = $actionVol; $paramsArr['action_val'] = $actionVal; $paramsArr['reserve1'] = $reserve1; $paramsArr['reserve2'] = $reserve2; $paramsArr['ctime'] = time(); $data = array('key' => "ac:event:cf201507:real:list", 'value' => json_encode($paramsArr), 'terminal' => 10); return ServiceHelper::Call("redis.rPush", $data); }
/** * 调用mpboss接口发送游戏道具 * @param type $uin QQ号 * @param type $mpId 活动营销号 * @param type $giftName 道具名 * @param type $zoneId 区域id * @param type $roleId 角色id * @param type $count 赠送道具数量 */ protected function sendPacketByMp($uin, $mpId, $giftName, $zoneId, $roleId, $count = 1) { $params = array('uin' => $uin, 'mpId' => $mpId, 'giftName' => $giftName, 'giftCount' => $count, 'zoneId' => $zoneId, 'roleId' => $roleId); return ServiceHelper::Call("esales.getPropByMp", $params); }
/** * mpboss平台获得得cdkey方法 * @param type $uin QQ号 * @param type $mpId 活动营销号 * @param type $clientIp 用户的ip * 返回值: * array( * "ret"=>2, * "msg"=>"XXXXXX", * "cdkey"=>"XXXXXXXXX" * ) */ protected function getCdkeyByMp($uin, $mpId, $clientIp) { $params = array('uin' => $uin, 'mpId' => $mpId, 'clientIp' => $clientIp); return ServiceHelper::Call("esales.getCdkeyByMp", $params); }
/** * 获取礼包领取的数量 */ private function getEventPacketTotal($paramsArr) { $valArr = ServiceHelper::Call("event.getActionStatsByRedis", $paramsArr); return !empty($valArr["count"]) ? intval($valArr["count"]) : 0; }
/** * 回答问题 */ private function reply() { $answer = Utils::GetValue("answer"); $answer = trim($answer); if (empty($answer)) { echo '{"status":0, "msg":"请选择答案"}'; exit; } $type = intval(Utils::GetValue("type")); if (!in_array($type, array(1, 2))) { echo '{"status":0,"msg":"提示:参数出现错误!"}'; exit; } //验证活动 $this->checkEvent(); //获取活动配置数据 $tpsEventDataArr = $this->getEventInfofromConf(); $questionArr = $this->getQuestionFromConf(); if (empty($tpsEventDataArr) || empty($questionArr)) { echo json_encode(array("status" => 0, "msg" => '提示:获取活动数据发生错误!请点<a href="http://support.qq.com/write.shtml?fid=744" style="color:#ff0000;width:111px;display:inline;font-family:microsoft yahei;font-size:16px;" target="_blank">【反馈建议】</a>投诉!')); exit; } $questionNum = $tpsEventDataArr[0]["id"]; $eventType = $tpsEventDataArr[0]["eventType"]; //当后台已经更换题型,但是用户未刷新页面,所以需要验证题型是否一致 if ($type != $eventType) { echo '{"status":0,"msg":"提示:活动题型有变化,请刷新页面后再继续!"}'; exit; } $action = $this->packetArr[$eventType]["action"]; $object = $this->packetArr[$eventType]["object"]; //答题规则,每天限1次,无论对错,回答正确不能再回答 //判断是否答对此题记录,action_val:题号; reserve1:答题时间; reserve2:答题结果 $paramsArr = array('event_id' => $this->eventId, 'action' => "question", 'object' => "answer", 'uin' => $this->uin, 'action_val' => $questionNum, 'reserve1' => '', 'reserve2' => 1); $answerArr = ServiceHelper::Call("event.getAction", $paramsArr); if (!empty($answerArr) && $answerArr["reserve2"] == 1) { //正确回答了问题,但是没领取礼包的情况 $paramsArr = array('event_id' => $this->eventId, 'action' => $action, 'object' => $object, 'uin' => $this->uin, 'action_val' => $questionNum); $isGotPacketArr = ServiceHelper::Call("event.getAction", $paramsArr); if (empty($isGotPacketArr)) { echo '{"status":2, "msg":"您已经回答过此题,快去领取礼包吧!"}'; exit; } else { echo '{"status":0, "msg":"您已经回答过此题,期待下次挑战吧!"}'; exit; } } //当天是否有答题记录 $paramsArr = array('event_id' => $this->eventId, 'action' => "question", 'object' => "answer", 'uin' => $this->uin, 'action_val' => $questionNum, 'reserve1' => date("Y-m-d")); $logArr = ServiceHelper::Call("event.getAction", $paramsArr); if (!empty($logArr) && $logArr["reserve2"] == -1) { echo '{"status":0, "msg":"你今天回答机会已经用完了,明天继续哦!"}'; exit; } //答题 $isCorrect = 0; foreach ($questionArr as $value) { if (trim($value["title"]) == $answer && trim($value["answer"]) == 1) { $isCorrect = 1; break; } } $paramsArr['ctime'] = time(); if ($isCorrect) { //记录答案 $paramsArr['reserve2'] = 1; $rs = ServiceHelper::Call("event.addAction", $paramsArr); if ($rs["status"] == 2) { echo '{"status": 1, "msg":"干得漂亮,礼包已激活。速速领取吧!"}'; exit; } } else { $paramsArr['reserve2'] = -1; $rs = ServiceHelper::Call("event.addAction", $paramsArr); if ($rs["status"] == 2) { echo '{"status":0, "msg":"差一点就答对了!再回顾下漫画,明天继续哦!"}'; exit; } } echo '{"status":0, "msg":"写入数据发生错误!"}'; }