Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- $jsonRequest = file_get_contents('php://input');
- $data = json_decode($jsonRequest, true);
- if (empty($data) || (!isset($data))) {
- die('Bad Request');
- }
- $intentType = $data['request']['type'];
- $sessionId = $data['session']['sessionId'];
- if ($intentType == 'LaunchRequest'){
- $responseArray = [
- 'version' => '1.0',
- 'response' => [
- 'outputSpeech' => [
- 'type' => 'SSML',
- 'ssml' => "<speak>Dimmi cosa registrare</speak>"
- ],
- 'reprompt' => [
- 'outputSpeech' => [
- 'type' => 'SSML',
- 'ssml' => "<speak>Tempo di risposta esaurito</speak>"
- ]
- ],
- 'shouldEndSession' => false
- ]
- ];
- } elseif ($intentType == 'IntentRequest'){
- $dbhost = 'localhost';
- $dbuser = 'pippopippino';
- $dbpsw = '';
- $dbname = 'pippopippino';
- // Create connection
- $conn = new mysqli($dbhost, $dbuser, $dbpsw, $dbname);
- // Check connection
- if ($conn->connect_error) {
- //echo 'Connection failed: ' . $conn->connect_error;
- $responseArray = [
- 'version' => '1.0',
- 'response' => [
- 'outputSpeech' => [
- 'type' => 'SSML',
- 'ssml' => "<speak>Connessione alla base di dati fallita</speak>"
- ],
- 'reprompt' => [
- 'outputSpeech' => [
- 'type' => 'SSML',
- 'ssml' => "<speak>Tempo di risposta esaurito</speak>"
- ]
- ],
- 'shouldEndSession' => false
- ]
- ];
- }
- else{
- //'Connected successfully';
- }
- $intentName = $data['request']['intent']['name'];
- switch($intentName) {
- case 'GetData':
- if ($data['request']['intent']['slots']['azionePerMatricola']['value'] != ''){
- $azione = $data['request']['intent']['slots']['azionePerMatricola']['value'];
- if ($azione == '?'){
- $responseArray = [
- 'version' => '1.0',
- 'response' => [
- 'outputSpeech' => [
- 'type' => 'SSML',
- 'ssml' => "<speak>Non ho capito riprova</speak>"
- ],
- 'reprompt' => [
- 'outputSpeech' => [
- 'type' => 'SSML',
- 'ssml' => "<speak>Tempo di risposta esaurito</speak>"
- ]
- ],
- 'shouldEndSession' => false
- ]
- ];
- }
- else{
- $azione = strtolower($azione);
- $azioneSplittata = explode(' ', $azione);
- if (count($azioneSplittata) == 3){
- if (($azioneSplittata[0] == 'ingresso' || $azioneSplittata[0] == 'entrata' || $azioneSplittata[0] == 'uscita') && ctype_digit($azioneSplittata[2]) == true){
- $sql = "SELECT * FROM TPdipendenti WHERE Matricola = '" . $azioneSplittata[2] . "'";
- $result = $conn->query($sql);
- $row = mysqli_fetch_assoc($result);
- if ($result->num_rows > 0) {
- $sql = "INSERT INTO TPpresenze(IDdipendente, azione) VALUES ('" . $row['IDdipendente'] . "', '" . $azioneSplittata[0] . "')";
- if ($conn->query($sql) === TRUE) {
- $responseArray = [
- 'version' => '1.0',
- 'response' => [
- 'outputSpeech' => [
- 'type' => 'SSML',
- 'ssml' => '<speak>Ok azione inviata ' . $azione . ' e ho trovato corrispondenza nella base di dati e ho inserito il record nel db<audio src="https://ilmiobottelegram.altervista.org/alexaSuccessRing.mp3" /></speak>'
- ],
- 'reprompt' => [
- 'outputSpeech' => [
- 'type' => 'SSML',
- 'ssml' => "<speak>Tempo di risposta esaurito</speak>"
- ]
- ],
- 'shouldEndSession' => true
- ]
- ];
- } else {
- //echo "Error: " . $sql . "<br>" . $conn->error;
- $responseArray = [
- 'version' => '1.0',
- 'response' => [
- 'outputSpeech' => [
- 'type' => 'SSML',
- 'ssml' => "<speak>Ok azione inviata " . $azione . ' ma non sono riuscito ad inserire il record nel db</speak>'
- ],
- 'reprompt' => [
- 'outputSpeech' => [
- 'type' => 'SSML',
- 'ssml' => "<speak>Tempo di risposta esaurito</speak>"
- ]
- ],
- 'shouldEndSession' => false
- ]
- ];
- }
- } else {
- $responseArray = [
- 'version' => '1.0',
- 'response' => [
- 'outputSpeech' => [
- 'type' => 'SSML',
- 'ssml' => "<speak>Mi hai inviato la seguente azione " . $azione . " ma nella base di dati non ho trovato nessuno che lo possieda riprova</speak>"
- ],
- 'reprompt' => [
- 'outputSpeech' => [
- 'type' => 'SSML',
- 'ssml' => "<speak>Tempo di risposta esaurito</speak>"
- ]
- ],
- 'shouldEndSession' => false
- ]
- ];
- }
- }
- else{
- $responseArray = [
- 'version' => '1.0',
- 'response' => [
- 'outputSpeech' => [
- 'type' => 'SSML',
- 'ssml' => "<speak>Non ho capito riprova</speak>"
- ],
- 'reprompt' => [
- 'outputSpeech' => [
- 'type' => 'SSML',
- 'ssml' => "<speak>Tempo di risposta esaurito</speak>"
- ]
- ],
- 'shouldEndSession' => false
- ]
- ];
- }
- }
- else{
- $responseArray = [
- 'version' => '1.0',
- 'response' => [
- 'outputSpeech' => [
- 'type' => 'SSML',
- 'ssml' => "<speak>Non ho capito riprova</speak>"
- ],
- 'reprompt' => [
- 'outputSpeech' => [
- 'type' => 'SSML',
- 'ssml' => "<speak>Tempo di risposta esaurito</speak>"
- ]
- ],
- 'shouldEndSession' => false
- ]
- ];
- }
- }
- }
- else{
- $responseArray = [
- 'version' => '1.0',
- 'response' => [
- 'outputSpeech' => [
- 'type' => 'SSML',
- 'ssml' => "<speak>La chiave รจ null</speak>"
- ],
- 'reprompt' => [
- 'outputSpeech' => [
- 'type' => 'SSML',
- 'ssml' => "<speak>Tempo di risposta esaurito</speak>"
- ]
- ],
- 'shouldEndSession' => false
- ]
- ];
- }
- break;
- }
- }
- header ('Content-Type: application/json');
- if (!empty($responseArray)){
- echo json_encode($responseArray);
- }
- else{
- echo json_encode(json_decode("{}"));
- }
- $conn->close();
- die();
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement