f7support: опрос доски тикетов, скролл чата, непрочитанные
- Периодический опрос списка тикетов (tickets_poll_ms, по умолчанию 3 с), пока вкладка видима. - Параметр конфига tickets_poll_ms (3000–120000 мс) и data-messages-poll-ms в шаблоне. - Надёжный скролл вниз при открытии чата и после загрузки вложений. - Учёт has_unread как true/1/"1"/"true" для индикатора на карточке.
This commit is contained in:
@@ -50,6 +50,15 @@ class PageController extends Controller {
|
||||
// Отключить вызовы с клиента: occ config:app:set f7support client_read_receipts --value=0
|
||||
$clientReadReceipts = $this->config->getAppValue('f7support', 'client_read_receipts', '0');
|
||||
|
||||
// Интервал опроса списка тикетов (мс), чтобы подтягивать has_unread без WebSocket. occ: f7support tickets_poll_ms
|
||||
$ticketsPollMs = (int)$this->config->getAppValue('f7support', 'tickets_poll_ms', '3000');
|
||||
if ($ticketsPollMs < 3000) {
|
||||
$ticketsPollMs = 3000;
|
||||
}
|
||||
if ($ticketsPollMs > 120000) {
|
||||
$ticketsPollMs = 120000;
|
||||
}
|
||||
|
||||
Util::addStyle('f7support', 'f7support');
|
||||
Util::addScript('f7support', 'main');
|
||||
|
||||
@@ -60,6 +69,7 @@ class PageController extends Controller {
|
||||
'supportApiOrigin' => $supportApiOrigin,
|
||||
'supportWsBase' => $supportWsBase,
|
||||
'clientReadReceipts' => $clientReadReceipts,
|
||||
'ticketsPollMs' => (string)$ticketsPollMs,
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user