Botman Studio разговор_cache_time - PullRequest
0 голосов
/ 07 марта 2019

Я делаю чат-бота в API Telegram с Botman Studio, который объединяет laravel и php. Я хочу посчитать время, когда пользователь использует чат-бота.

Когда пользователь вводит "/ start", начинается разговор с ботом:

enter image description here

Я хочу оттуда начать отсчитывать время, чтобы ввести его в мою базу данных, чтобы узнать, как долго пользователи взаимодействуют с чатботом.

Как я мог сделать это в моих беседах?

<?php

return [

    /*
    |--------------------------------------------------------------------------
    | Conversation Cache Time
    |--------------------------------------------------------------------------
    |
    | BotMan caches each started conversation. This value defines the
    | number of minutes that a conversation will remain stored in
    | the cache.
    |
    */
    'conversation_cache_time' => 1,

    /*
    |--------------------------------------------------------------------------
    | User Cache Time
    |--------------------------------------------------------------------------
    |
    | BotMan caches user information of the incoming messages.
    | This value defines the number of minutes that this
    | data will remain stored in the cache.
    |
    */
    'user_cache_time' => 1,
];

Здесь я устанавливаю, что после минуты бездействия разговор прекращается, я хочу, чтобы в то же время, когда разговор в базе данных был остановлен, время сохранялось. Как я мог установить условие для этого?

1 Ответ

0 голосов
/ 07 марта 2019

Что ж, если у вас есть способ узнать, что пользователь вышел из беседы, вы можете сохранить дату и время, когда пользователь начал беседу, и сохранить дату и время, когда пользователь завершил беседу. Затем, если вы хотите узнать, сколько потратил пользователь, просто вычтите endDate - beginDate. Вы можете использовать Carbon, чтобы сделать вашу жизнь проще, манипулируя Datetimes

...