使用webhook的symfony并发请求

时间:2020-02-09 18:43:11

标签: php symfony4 telegram-bot

我正在使用webhook开发用于电报的机器人。我遇到了一个问题,即无法同时与两个或多个用户一起使用。那些。在处理来自电报服务器的请求的功能完成其执行之前,将不会处理带有来自另一个用户的消息的请求。 附言我使用ngrok,以便可以在该地址访问我的本地主机,并且在Web界面中,我看到电报服务器有几个请求(我是从三个不同的帐户写给bot的),但是这些请求是依次处理的。 我在弹簧靴上尝试了同样的东西,在那里一切正常。我几乎不熟悉交响曲。无法通过Google搜索该主题。有可能解决这个问题吗?谢谢。

ngrok web interface

当用户写入机器人时,电报服务器调用mysite .com / tg,并传递UpdateMessage,我从中获取chat _id,并使用API​​向用户发送一个简单的短语。

    /**
 * @Route("/tg", name="tg")
 * @param Request $request
 * @return JsonResponse
 */
public function tg(Request $request)
{
    $update = json_decode($request->getContent());
    $tgBot = new TgBot('XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX');
    $tgBot->setMessage($update);

    $mas = explode(" ","lorem ipsum dolor sit amet consectetur adipiscing");
    for($i = 0 ; $i < count($mas); ++$i){
        $tgBot->sendMessage(
            $tgBot->getMessage()->getChat()->getId(),
            $mas[$i]
        );
    }

“ sendMessage()” 只是使用guzzle向API发送请求

0 个答案:

没有答案