Ответы пользователя по тегу Telegram
  • Как после getUpdates установить сообщения прочитанными?

    BoShurik
    @BoShurik
    Symfony developer
    Ничего хранить не надо. Я делал так
    /**
     * @return void
     */
    public function processUpdates()
    {
        $updates = $this->api->getUpdates();
        $lastUpdateId = null;
        foreach ($updates as $update) {
            $lastUpdateId = $update->getUpdateId();
            $this->processUpdate($update);
        }
        if ($lastUpdateId) {
            $this->api->getUpdates($lastUpdateId + 1, 1);
        }
    }

    1. Получаем список сообщений, сохраняя последний полученный id
    2. Обрабатываем их
    3. Еще раз получаем список сообщений, указав смещение в "{последний полученный id} + 1"
    4. Следующее получение списка сообщений без параметров будет выводить только неполученные до этого сообщения
    Ответ написан