Пример #1
0
 public static function getLiveScore($requester, $request)
 {
     $requestParams = explode(",", $request);
     $team1 = $requestParams[0];
     $team2 = $requestParams[1];
     $matchList = file_get_contents(self::$cricInfoURL);
     $message = "Sorry, this match information is not available.";
     if ($matchList) {
         $json = json_decode($matchList, true);
         foreach ($json as $value) {
             echo $value['t1'] . '/n';
             echo $value['t2'] . '/n/n';
             if ((stripos($value['t1'], $team1) > -1 || stripos($value['t1'], $team2) > -1) && (stripos($value['t2'], $team1) > -1 || stripos($value['t2'], $team2) > -1)) {
                 $matchScoreURL = self::$cricInfoURL . '?id=' . $value['id'];
                 $matchScore = file_get_contents($matchScoreURL);
                 $matchScore = json_decode($matchScore, true);
                 $score = $matchScore['0']['de'];
                 MessaggingController::sendMessage($requester, $score);
                 $message = "Do you want to know the score of any other match?\n\n                                    1 For Yes\n\n                                    2 for No";
                 setMessageContext(GenieConstants::searchElement(GenieConstants::$MAIN_MENU_CONTEXT, GenieConstants::$CRICKET_MENU_CONTEXT, 'subMenu'), NULL, $requester['phone']);
             }
         }
     } else {
         $message = "Service temporarily not available, please try after some time";
     }
     MessaggingController::sendMessage($requester, $message);
 }
Пример #2
0
 public static function initializeService($requester)
 {
     $welcomeMessage = self::$ShoppingWelcomeMessage;
     MessaggingController::sendMessage($requester, $welcomeMessage);
     $mainMenuRedirectString = self::$mainMenuRedirectString;
     MessaggingController::sendMessage($requester, $mainMenuRedirectString);
     $menu = self::$askForProductInformation;
     MessaggingController::sendMessage($requester, $menu);
     updateMessageContext(GenieConstants::searchElement(GenieConstants::$MAIN_MENU_CONTEXT, GenieConstants::$SHOPPING_MENU_CONTEXT, 'subMenu'), '1', $requester['phone']);
 }
Пример #3
0
 public static function initializeService($requester)
 {
     self::getServiceAgent(Genie);
     MessaggingController::sendMessage($requester, self::$FEEDBACK_MESSAGE);
     updateMessageContext(GenieConstants::searchElement(GenieConstants::$MAIN_MENU_CONTEXT, GenieConstants::$FEEDBACK_MENU_CONTEXT, 'subMenu'), '1', $requester['phone']);
 }
Пример #4
0
 public static function initializeService($requester)
 {
     MessaggingController::sendMessage($requester, self::$askForMovieName);
     updateMessageContext(GenieConstants::searchElement(GenieConstants::$MAIN_MENU_CONTEXT, GenieConstants::$MOVIE_MENU_CONTEXT, 'subMenu'), '1', $requester['phone']);
 }
Пример #5
0
 static function handleMessageReceived($mynumber, $from, $id, $type, $time, $name, $body)
 {
     $number = ExtractNumber($from);
     $contact = getUserInfo($number);
     if (!$contact) {
         addContact($number, $name);
         $contact = getUserInfo($number);
         $main_menu = GenieConstants::searchElement(GenieConstants::$MAIN_MENU_CONTEXT, GenieConstants::$REGISTRATION_MENU_CONTEXT, 'subMenu');
         setMessageContext($main_menu, NULL, $contact['phone']);
     }
     //Handle ShortCut in request
     $requestArray = $data = preg_split('/\\s+/', $body);
     if ($requestArray[0][0] == '#') {
         self::handleShortCuts($contact, $requestArray);
         return;
     }
     $context = getMessageContext($number);
     $callBackFunction = 'initializeService';
     if ($context['main_menu'] == -1) {
         self::handleGeneralConversation($body, $context, $contact);
         return;
     }
     if ($context['main_menu'] == 0) {
         if (GenieConstants::searchElement(GenieConstants::$MAIN_MENU_CONTEXT, $body, 'id') != NULL) {
             updateMessageContext($body, NULL, $contact['phone']);
             PubSub::publish(GenieConstants::$MAIN_MENU_CONTEXT[$body]->menuItem, $callBackFunction, $contact);
         } else {
             MessaggingController::sendMessage($contact, GenieConstants::$INVALID_SERVICE);
             MessaggingController::sendMessage($contact, GenieConstants::$MAIN_MENU_STRING);
         }
         return;
     }
     if ($context['main_menu'] != 0 && $context['main_menu'] != 8 && $context['sub_menu'] == NULL) {
         $subMenuKey = GenieConstants::searchElement(GenieConstants::$MAIN_MENU_CONTEXT[$context['main_menu']]->subMenu, $body, 'id');
         $SubMenuDict = GenieConstants::$MAIN_MENU_CONTEXT[$context['main_menu']]->subMenu;
         if ($subMenuKey != NULL) {
             updateMessageContext($context['main_menu'], $body, $contact['phone']);
             $callBackFunction = $SubMenuDict[$subMenuKey]->callBackMethod;
             PubSub::publish(GenieConstants::$MAIN_MENU_CONTEXT[$context['main_menu']]->menuItem, $callBackFunction, $contact);
         } else {
             MessaggingController::sendMessage($contact, GenieConstants::$INVALID_SERVICE);
             PubSub::publish(GenieConstants::$MAIN_MENU_CONTEXT[$context['main_menu']]->menuItem, $callBackFunction, $contact);
         }
         return;
     } else {
         if ($context['main_menu'] != 0 && $context['main_menu'] != 8 && $context['sub_menu'] != NULL) {
             $SubMenuDict = GenieConstants::$MAIN_MENU_CONTEXT[$context['main_menu']]->subMenu;
             $callBackFunction = $SubMenuDict[$context['sub_menu']]->requestServer;
             PubSub::publish(GenieConstants::$MAIN_MENU_CONTEXT[$context['main_menu']]->menuItem, $callBackFunction, $contact, $body);
             return;
         } else {
             if ($context['sub_menu'] != NULL) {
                 $callBackFunction = GenieConstants::$MAIN_MENU_CONTEXT[$context['main_menu']]->subMenu[$context['sub_menu']]->callBackMethod;
             } else {
                 if (GenieConstants::$MAIN_MENU_CONTEXT[$context['main_menu']]->callBackMethod != NULL) {
                     $callBackFunction = GenieConstants::$MAIN_MENU_CONTEXT[$context['main_menu']]->callBackMethod;
                 }
             }
         }
     }
     PubSub::publish(GenieConstants::$MAIN_MENU_CONTEXT[$context['main_menu']]->menuItem, $callBackFunction, $contact, $body);
 }
Пример #6
0
 public static function processEmailInformation($receiver, $response)
 {
     $regex = GenieConstants::$emailRegex;
     if (preg_match($regex, $response) == 0) {
         $errorMessage = GenieConstants::$ERROR_MESSAGE;
         MessaggingController::sendMessage($receiver, $errorMessage);
         self::askForEmailInformation($receiver, $response);
         return;
     } else {
         updateContact(GenieConstants::$EMAIL_SUB_MENU_STRING, $response, $receiver['phone']);
         $menu_Context = GenieConstants::searchElement(GenieConstants::$MAIN_MENU_CONTEXT, GenieConstants::$PARENT_MENU_CONTEXT, 'subMenu');
         $subMenu_Context = NULL;
         updateMessageContext($menu_Context, $subMenu_Context, $receiver['phone']);
         MessaggingController::sendMessage($receiver, GenieConstants::$INTRODUCTION);
         //       PubSub::publish(GenieConstants::$SERVICE_REQUEST_COMPLETE,$receiver);
     }
 }