Path : /var/www/html/main/
File Upload :
Current File : /var/www/html/main/messagingAPI.php

<?php
/*!
 * Copyright Anucha Puangpaka
 * Contacts anucha.ppk@icloud.com 062-479-9836
 */

error_reporting(E_ALL);
ini_set("display_errors", 0);

include('config.php');

$channelSecret = LINE_MESSAGE_CHANNEL_SECRET;
$accessToken = LINE_MESSAGE_ACCESS_TOKEN;

$content = file_get_contents('php://input');
$arrayJson = json_decode($content, true);

$arrayHeader = array();
$arrayHeader[] = "Content-Type: application/json";
$arrayHeader[] = "Authorization: Bearer {$accessToken}";

$message = $arrayJson['events'][0]['message']['text'];
$beacon = $arrayJson['events'][0]['beacon']['text'];

if(isset($arrayJson['events'][0]['source']['userId'])){
  $id = $arrayJson['events'][0]['source']['userId'];
  $id2 = $arrayJson['events'][0]['source']['groupId'];
  $idx = "ID $id\nGROUP ID $id2";
}elseif(isset($arrayJson['events'][0]['source']['groupId'])){
  $id = $arrayJson['events'][0]['source']['groupId'];
  $idx = "GROUP ID $id";
}elseif(isset($arrayJson['events'][0]['source']['room'])){
  $id = $arrayJson['events'][0]['source']['room'];
  $idx = "ROOM ID $id";
}

if(!empty($message)){
  $headers = array('Method: GET', 'Content-Type: application/json', 'Authorization: Bearer '.$accessToken);
  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, 'https://api.line.me/v2/bot/profile/'.$id);
  curl_setopt($ch, CURLOPT_HEADER, 0);
  curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
  curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  $result = curl_exec($ch);
  $profile = json_decode($result, true);
  curl_close($ch);
  $displayName = $profile['displayName'];
  $pictureUrl = $profile['pictureUrl'];

  /*$arrayPostData['replyToken'] = $arrayJson['events'][0]['replyToken'];
  $arrayPostData['to'] = $id;
  $arrayPostData['messages'][0]['type'] = "text";
  $arrayPostData['messages'][0]['text'] = "$idx\nข้อความ: $message";
  linex_reply($arrayHeader,$arrayPostData);*/

  /* My Secret */
  /*$arrayPostData2['to'] = "C3f2bac5b3bbcd0e3fe85ae4538e7e070";
  $arrayPostData2['messages'][0]['type'] = "text";
  $arrayPostData2['messages'][0]['text'] = "$idx\nข้อความ: $message ";
  linex_push($arrayHeader,$arrayPostData2);*/

  if(empty($arrayJson['events'][0]['source']['groupId'])){
    $sql_1 = "select * from ap_question_answer where question like '%$message%'";
    $query_1 = mysqli_query($conn, $sql_1);
    $num_rows_1 = mysqli_num_rows($query_1);
    $rows_1 = mysqli_fetch_array($query_1);

    if($rows_1['question']=="สวัสดี" || $rows_1['question']=="สวัสดีครับ" || $rows_1['question']=="สวัสดีค่ะ"){
      $arrayPostData['replyToken'] = $arrayJson['events'][0]['replyToken'];
      $arrayPostData['to'] = $id;
      $arrayPostData['messages'][0]['type'] = "text";
      $arrayPostData['messages'][0]['text'] = "$rows_1[answer] คุณ $displayName";
      
      linex_reply($arrayHeader,$arrayPostData);
    }elseif($rows_1['question']=="ขอบคุณ" || $rows_1['question']=="ขอบคุณครับ" || $rows_1['question']=="ขอบคุณค่ะ"){
      $arrayPostData['replyToken'] = $arrayJson['events'][0]['replyToken'];
      $arrayPostData['to'] = $id;
      $arrayPostData['messages'][0]['type'] = "text";
      $arrayPostData['messages'][0]['text'] = "$rows_1[answer]";
      $arrayPostData['messages'][1]['type'] = "sticker";
      $arrayPostData['messages'][1]['packageId'] = "1";
      $arrayPostData['messages'][1]['stickerId'] = "4";
      linex_reply($arrayHeader,$arrayPostData);
    }else{
      if($num_rows_1>0){
        $arrayPostData['replyToken'] = $arrayJson['events'][0]['replyToken'];
        $arrayPostData['to'] = $id;
        $arrayPostData['messages'][0]['type'] = "text";
        $arrayPostData['messages'][0]['text'] = "$rows_1[answer]";
        linex_reply($arrayHeader,$arrayPostData);
      }else{
        $arrayPostData['replyToken'] = $arrayJson['events'][0]['replyToken'];
        $arrayPostData['messages'][0]['type'] = "text";
        if($id=='xU5f03c324a47a61ea2fbbaff2493bc76f'){
          $arrayPostData['messages'][0]['text'] = "$message $displayName $pictureUrl";
        }else{
          $arrayPostData['messages'][0]['text'] = "คุณ $displayName เราไม่พบข้อมูลนี้ค่ะ";
          $arrayPostData['messages'][1]['type'] = "sticker";
          $arrayPostData['messages'][1]['packageId'] = "1";
          $arrayPostData['messages'][1]['stickerId'] = "16";
        }
        linex_reply($arrayHeader,$arrayPostData);
      }
    }
  }

  mysqli_query($conn,"insert into ap_line_messages_users (groupID,userID,displayName,pictureUrl,messages,dateTime,users) values ('".$arrayJson['events'][0]['source']['groupId']."','".$arrayJson['events'][0]['source']['userId']."','$displayName','$pictureUrl','$message','".date('Y-m-d H:i:s')."','')");
}

include('logs.php');
mysqli_close($conn);

if($arrayJson['events'][0]['type']=="join"){
  $sql = "select * from ap_line_groups where code='".$arrayJson['events'][0]['source']['groupId']."'";
  $query = mysqli_query($conn,$sql);
  $num_rows = mysqli_fetch_array($query);
  $rows = mysqli_fetch_array($query);
  if($num_rows>0){
    /* My Secret */
    /*$arrayPostData2['to'] = "C3f2bac5b3bbcd0e3fe85ae4538e7e070";
    $arrayPostData2['messages'][0]['type'] = "text";
    $arrayPostData2['messages'][0]['text'] = "$idx\nข้อความ: $message";
    linex_push($arrayHeader,$arrayPostData2);*/
    //mysqli_query($conn,"insert into ap_line_groups (code,name,dateTime) values ('".$arrayJson['events'][0]['source']['groupId']."','','".date('Y-m-d H:i:s')."')");
  }else{
    /*$arrayPostData['to'] = "U5f03c324a47a61ea2fbbaff2493bc76f";
    $arrayPostData['messages'][0]['type'] = "text";
    $arrayPostData['messages'][0]['text'] = "$idx\nข้อความ: $message";
    linex_push($arrayHeader,$arrayPostData);*/

    $sql2 = "select * from ap_settings";
    $query2 = mysqli_query($conn,$sql2);
    $rows2 = mysqli_fetch_array($query2);

    $arrayPostData['replyToken'] = $arrayJson['events'][0]['replyToken'];
    $arrayPostData['messages'][0]['type'] = "text";
    $arrayPostData['messages'][0]['text'] = "$rows2[title] ขอบคุณค่ะ";
    linex_reply($arrayHeader,$arrayPostData);

    mysqli_query($conn,"insert into ap_line_groups (code,name,dateTime) values ('".$arrayJson['events'][0]['source']['groupId']."','','".date('Y-m-d H:i:s')."')");
  }
}

if($arrayJson['events'][0]['type']=="leave"){
  mysqli_query($conn, "delete from ap_line_groups where code='".$arrayJson['events'][0]['source']['groupId']."'");
}

function linex_reply($arrayHeader,$arrayPostData){
  $strUrl = "https://api.line.me/v2/bot/message/reply";
  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL,$strUrl);
  curl_setopt($ch, CURLOPT_HEADER, false);
  curl_setopt($ch, CURLOPT_POST, true);
  curl_setopt($ch, CURLOPT_HTTPHEADER, $arrayHeader);    
  curl_setopt($ch, CURLOPT_POSTFIELDS,json_encode($arrayPostData));
  curl_setopt($ch, CURLOPT_RETURNTRANSFER,true);
  curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  $result = curl_exec($ch);
  curl_close ($ch);
}
function linex_push($arrayHeader,$arrayPostData){
  $strUrl = "https://api.line.me/v2/bot/message/push";
  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL,$strUrl);
  curl_setopt($ch, CURLOPT_HEADER, false);
  curl_setopt($ch, CURLOPT_POST, true);
  curl_setopt($ch, CURLOPT_HTTPHEADER, $arrayHeader);
  curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($arrayPostData));
  curl_setopt($ch, CURLOPT_RETURNTRANSFER,true);
  curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  $result = curl_exec($ch);
  curl_close ($ch);
}
exit;
?>