Bot电报PHP向最后一个命令发送对象参数

Bot电报PHP向最后一个命令发送对象参数,php,bots,telegram-bot,Php,Bots,Telegram Bot,我对Bot电报PHP有疑问,我的Bot是成功发送请求,格式为nilai(space)[value] 卷: 用户:发送消息:nilai(空间)IT602 Bot:发送消息:显示代码IT602的对象数据 我想将格式nilai(space)[value]更改为该卷 用户:发送消息->nilai请输入nilai代码,例如:IT601 用户:发送消息->IT602 Bot:发送消息->显示代码IT602的对象数据 这是我的代码,格式为nilai(space)[Value] 函数prosesApiMessa

我对Bot电报PHP有疑问,我的Bot是成功发送请求,格式为nilai(space)[value]

卷:

  • 用户:发送消息:nilai(空间)IT602
  • Bot:发送消息:显示代码IT602的对象数据
  • 我想将格式nilai(space)[value]更改为该卷

  • 用户:发送消息->nilai请输入nilai代码,例如:IT601
  • 用户:发送消息->IT602
  • Bot:发送消息->显示代码IT602的对象数据
  • 这是我的代码,格式为nilai(space)[Value]

    函数prosesApiMessage($sumber)
    {
    $updateid=$sumber['update_id'];
    如果(isset($sumber['message']))
    {
    $message=$sumber['message'];
    如果(isset($message['text']))
    {
    ProSespsantext2($message);
    } 
    }
    返回$updateid;
    }
    函数prosespsantext2($message)
    {
    $idpesan=$message['message_id'];
    $balas=$message['reply_to_message'];
    $pesan=$message['text'];
    $idchat=$message['chat']['id'];
    $namamu=$message['from']['first_name'];
    $iduser=$message['from']['id'];
    //为实现安塔拉格式和输入
    $pecah=爆炸(“”,$pesan,3);
    $katapertama=strtolower($pecah[0]);
    交换机($katapertama)
    {
    “尼莱”案:
    sendApiAction($idchat);
    如果(isset($pecah[1]))
    {
    $inputKode=$pecah[1];
    //此功能用于通过代码显示数据nilai
    $text=lihatNilai($iduser,$inputKode);
    } 
    其他的
    {
    $text=“Gagal menampilkan nilai.\n”;
    $text.=“Format Nilai您必须保存用户的“状态”,并在每条消息上检查它。
    例如,在伪代码中:

    您可以看到,
    $states
    为每个用户存储一个状态。根据您知道的用户在回答您的问题时所处的状态而定。

    如果您将bot设置为使用webhook,请确保在脚本末尾将此数组保存到文件系统中,并在脚本开头阅读。(例如,使用(
    file\u get\u contents()
    file\u put\u contents()
    )。

    谢谢您的回答,是的,我正在使用webhook file\u get\u contents(//input)。该状态类似于临时内存?我可以使用file_put_contents()进行写入和读取variabel$state吗?它是临时内存,是的,您必须以某种方式保存它。
    function prosesApiMessage($sumber)
    {
        $updateid = $sumber['update_id'];
    
        if(isset($sumber['message']))
        {
            $message = $sumber['message'];
    
            if(isset($message['text']))
            {
                prosesPesanText2($message);
            } 
        }
    
    
        return $updateid;
    }
    
    function prosesPesanText2($message)
    {
        $idpesan = $message['message_id'];
    
        $balas = $message['reply_to_message'];
    
        $pesan = $message['text'];
        $idchat = $message['chat']['id'];
        $namamu = $message['from']['first_name'];
        $iduser = $message['from']['id'];
    
    
        //untuk memisahkan antara format dan inputan
        $pecah = explode(' ', $pesan, 3);
        $katapertama = strtolower($pecah[0]);
    
    
        switch ($katapertama) 
        {
            case 'nilai':
                sendApiAction($idchat);
                if(isset($pecah[1])) 
                {
                    $inputKode = $pecah[1];
                    // this funtion for show data nilai by code
                    $text = lihatNilai($iduser,$inputKode);
                } 
                else 
                {
                    $text = "Gagal menampilkan nilai.\n";
                    $text .= "Format Nilai You must save a user's "state" and check for it on every message.
    E.g. in pseudocode:

    on message {
        if ($states[user_id] === 'expect nilai code') {
            sendMessage(user_id, ' show object data for code'.$text);
            $states[user_id] = null;
        } else {
            if ($msg_text === '/nilai') {
                $states[user_id] = 'expect nilai code';
                sendMessage(user_id, 'please input the nilai code for example : IT601');
            }
        }
    }