Jumat, 26 Juni 2020

Php Aoto Respon Telegram


<?php


$TOKEN      = "883027477:AAHlmv0wznlon8-6B7iNixX0BmegJTsQ0jk21";
$usernamebot= "@sysinter_bot";

$debug = false;

function request_url($method){
    global $TOKEN;
    return "https://api.telegram.org/bot" . $TOKEN . "/". $method;
}

function get_updates($offset) {
   // error_reporting(0);
$url = request_url("getUpdates")."?offset=".$offset;
        $resp = file_get_contents($url);
        $result = json_decode($resp, true);
        if ($result["ok"]==1)
            return $result["result"];
        return array();
}
function send_reply($chatid, $msgid, $text){
    global $debug;
    $data = array(
        'chat_id' => $chatid,
        'text'  => $text,
        'reply_to_message_id' => $msgid   // <---- biar ada reply nya balasannya, opsional, bisa dihapus baris ini
    );
    // use key 'http' even if you send the request to https://...
    $options = array(
        'http' => array(
            'header'  => "Content-type: application/x-www-form-urlencoded\r\n",
            'method'  => 'POST',
            'content' => http_build_query($data),
        ),
    );
    $context  = stream_context_create($options);
    $result = file_get_contents(request_url('sendMessage'), false, $context);
    if ($debug)
        print_r($result);
}

function create_response($text, $message){
    global $usernamebot;
    // inisiasi variable hasil yang mana merupakan hasil olahan pesan
    $hasil = ''; 
    $fromid = $message["from"]["id"]; // variable penampung id user
    $chatid = $message["chat"]["id"]; // variable penampung id chat
    $pesanid= $message['message_id']; // variable penampung id message
    // variable penampung username nya user
    isset($message["from"]["username"])
        ? $chatuser = $message["from"]["username"]
        : $chatuser = '';
   
    // variable penampung nama user
    isset($message["from"]["last_name"])
        ? $namakedua = $message["from"]["last_name"]
        : $namakedua = ''; 
    $namauser = $message["from"]["first_name"]. ' ' .$namakedua;
    // ini saya pergunakan untuk menghapus kelebihan pesan spasi yang dikirim ke bot.
    $textur = preg_replace('/\s\s+/', ' ', $text);
    // memecah pesan dalam 2 blok array, kita ambil yang array pertama saja
    $command = explode(' ',$textur,2); //
    $perintah=$command[0];
$perintah=strtolower($perintah);

switch ($perintah) {
        case '/id':
        case '/id'.$usernamebot :
            $hasil = "$namauser, ID kamu adalah $fromid";
            break;
       
        // jika ada permintaan waktu
        case '/time':
        case '/time'.$usernamebot :
            $hasil  = "$namauser, waktu lokal bot sekarang adalah :\n";
            $hasil .= "\xE2\x8C\x9A".date("d M Y")."\nPukul ".date("H:i:s");
            break;
           
        case '/start':
             $hasil  = "assalamualaikum saudara/i $namauser
                        berikut list command dari bot ini :
                        => /id   --> untuk menampilkan id anda
                        => /time --> untuk menampilkan waktu lokal anda";
             break;

        case '/tes':
             $hasil  = "tessting asfalksf";
             break;

case '/on1':
             $hasil  = "Perintah Menyalakan Lampu 1 Berhasil...";
echo  "on1";simpanURL("1");
             break;

case '/off1':
            $hasil  = "Perintah Mematikan Lampu 1 Berhasil...";
            echo  "off1"; simpanURL("2");
break;

case '/on2':
             $hasil  = "Perintah Menyalakan Lampu 2 Berhasil...";
echo  "on2";simpanURL("3");
             break;
case '/off2':
            $hasil  = "Perintah Mematikan Lampu 2 Berhasil...";
            echo  "off2"; simpanURL("4");
break;

case '/on3':
             $hasil  = "Perintah Menyalakan Lampu 3 Berhasil...";
echo  "on3";simpanURL("5");
             break;
  case '/off3':
            $hasil  = "Perintah Mematikan Lampu 3 Berhasil...";
            echo  "off3"; simpanURL("6");
break;
case '/open':
             $hasil  = "Perintah membuka Pintu Berhasil...";
echo  "on3";simpanURL("7");
             break;
  case '/close':
            $hasil  = "Perintah Menutup Berhasil...";
            echo  "off3"; simpanURL("8");
break;

        default:
            $hasil = 'Terimakasih, pesan telah kami terima.';
            break;
    }
    return $hasil;
}

//if (strlen($TOKEN)<20) {die("Token mohon diisi dengan benar!\n");}

function process_message($message){
    $updateid = $message["update_id"];
    $message_data = $message["message"];
    if (isset($message_data["text"])) {
    $chatid = $message_data["chat"]["id"];
        $message_id = $message_data["message_id"];
        $text = $message_data["text"];
        $response = create_response($text, $message_data);

        if (!empty($response)){
send_reply($chatid, $message_id, $response);
}
    }
    return $updateid;
}

function process_one(){
    global $debug;
    $update_id  = 0;
    echo "-";

    if (file_exists("last_update_id"))
        $update_id = (int)file_get_contents("last_update_id");

    $updates = get_updates($update_id);
    // jika debug=0 atau debug=false, pesan ini tidak akan dimunculkan
    if ((!empty($updates)) and ($debug) )  {
        echo "\r\n===== isi diterima \r\n";
        print_r($updates);
    }

    foreach ($updates as $message){
        echo '+';
        $update_id = process_message($message);
    }
   
    file_put_contents("last_update_id", $update_id + 1);
}


if(isset($_GET["index"]) && $_GET["index"]>0){
$isi=bacaURL();
echo $isi;
}
else{
process_one();
}

/*
while (true) {
    process_one();
echo $_SESSION["cdata"]."@";
    sleep(1);
}
*/




function simpanURL($R){
$kirim="https://api.thingspeak.com/update?api_key=6AQ86NJXWBFB634521&field1=$R";
prosesURL($kirim);
}

function bacaURL(){
$baca="https://api.thingspeak.com/channels/1089670/feeds.json?api_key=5TW0G96C5T5U9F5R21&results=1";
$hasil= prosesURL($baca);
$array = json_decode($hasil, true);
$x=$array["feeds"][0]["field1"];
return $x;
}

function prosesURL($URL){
      $ch = curl_init();
      curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
      curl_setopt($ch, CURLOPT_URL, $URL);
      $data = curl_exec($ch);
      curl_close($ch);
      return $data;
}

function bacaTXT(){
$myfile = fopen("data.txt", "r") or die("Unable to open file!");
$isi=fread($myfile,filesize("data.txt"));
fclose($myfile);
//tulisTXT("");
return $isi;
}

function tulisTXT($txt){
$myfile = fopen("data.txt", "w") or die("Unable to open file!");
fwrite($myfile, $txt);
fclose($myfile);
return $txt;
}



if(isset($_GET["baca"])){
$bacadata=$_GET["baca"];
tulisTXT($bacadata);
echo bacaTXT();
}


?>

Tidak ada komentar:

Posting Komentar

global_priv WARNING Selalu

 Jika muncul pesan kesalahan: Warning in .\libraries\classes\Dbal\DbiMysqli.php#209  mysqli::query(): (HY000/1034): Index for table 'glo...