Exemplo n.º 1
0
 private function crearApuesta($endpoint, $request, $currentCMD)
 {
     $grupo = $currentCMD['grupo'];
     $grupoDAO = new GrupoDAO();
     $grupoVO = $grupoDAO->select($currentCMD['grupo']);
     $urlApi = $grupoVO->url_api;
     $jsonTokenUser = Utils::callApi($request, 'tokenusuario/' . $request->get_chat_id() . '?token=' . TOKEN_API_BOT, $urlApi);
     $tokenUsuario = json_decode($jsonTokenUser, true);
     //Si hay token de usuario del chat, se invoca el comando con el token
     if ($tokenUsuario[0]['token']) {
         $this->log->debug("Hay token.");
         $idUsuario = $tokenUsuario[0]['id'];
         $apostarCMDDAO = new ApostarCMDDAO();
         $cmd = $apostarCMDDAO->select($request->get_chat_id());
         $data = array("token" => $tokenUsuario[0]['token'], "idpartido" => $cmd['partido'], "idapostante" => $idUsuario, "importe" => $cmd['importe'], "desc" => $cmd['descrip']);
         $data_string = json_encode($data);
         //Esto se podría meter en el utils
         $curl = curl_init();
         curl_setopt($curl, CURLOPT_URL, $urlApi . '/apuestas/partido');
         curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "POST");
         curl_setopt($curl, CURLOPT_POSTFIELDS, $data_string);
         curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
         curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-Type: application/json', 'Content-Length: ' . strlen($data_string)));
         $result = curl_exec($curl);
         $apuesta = json_decode($result);
         if (isset($apuesta->error)) {
             return $apuesta->error->text;
         }
         return null;
     } else {
         $this->log->debug("No hay token");
         $emoji_alert = Utils::convert_emoji(0x26a0);
         $text = $emoji_alert . '*Error:*' . PHP_EOL . 'Se ha producido un error';
         return Response::create_text_response($endpoint, $request->get_chat_id(), $text);
     }
 }
Exemplo n.º 2
0
 private function deleteapostar($endpoint, $request)
 {
     $apostarCMDDAO = new ApostarCMDDAO();
     $result = $apostarCMDDAO->delete($request->get_chat_id());
     $text = '';
     if ($result) {
         $text = 'Borrando con exito';
     } else {
         $text = 'Error al borrar';
     }
     $response = new Response($endpoint, $request->get_chat_id(), Response::TYPE_TEXT);
     $response->text = $text;
     return $response;
 }
Exemplo n.º 3
0
 private function apostar($endpoint, $request, $grupoVO)
 {
     $urlApi = $grupoVO->url_api;
     //Se comprueba si es un chat privado, para obtener el token del usuario
     $text = '';
     if ($request->is_private_chat()) {
         $currentCMDDAO = new CurrentCMDDAO();
         $result = $currentCMDDAO->select($request->get_chat_id());
         if ($result != null) {
             //Si hay comando en curso, se borra y se inserta este
             $currentCMDDAO->delete($request->get_chat_id());
         }
         $cmd = new CurrentCMDVO();
         $cmd->chat_id = $request->get_chat_id();
         $cmd->cmd = 'apostar';
         $cmd->grupo = $grupoVO->id;
         $resultInsertCMD = $currentCMDDAO->insert($cmd);
         $apostarCMDDAO = new ApostarCMDDAO();
         $cmd = new ApostarCMDVO();
         $cmd->chat_id = $request->get_chat_id();
         $resultInsertApostarCMD = $apostarCMDDAO->insert($cmd);
         $this->log->debug("apostar al grupo: " . $grupoVO->nombre);
         return self::preguntarPartido($endpoint, $request, $urlApi);
     } else {
         $text = 'Esto solo se puede usar en privado, n***a!!';
     }
     return Response::create_text_response($endpoint, $request->get_chat_id(), $text);
 }