Улучшить звуки входящих личных сообщений

This commit is contained in:
AidarKC
2026-06-25 12:55:42 +04:00
parent 8768e142e3
commit 112ab4d5d5
4 changed files with 149 additions and 5 deletions
@@ -0,0 +1,31 @@
## Краткое описание
Доработаны входящие уведомления для личных сообщений в сценарии, когда UI открыт, но страница скрыта на телефоне:
- для входящего DM при `document.visibilityState !== visible` UI пытается показать системное уведомление через `service worker`;
- добавлен `best effort` сигнал через `navigator.vibrate()`;
- добавлен короткий локальный звуковой сигнал через Web Audio, если аудио-контекст был ранее разблокирован пользовательским действием.
- для видимой активной страницы этот же сигнал теперь проигрывается на каждое новое входящее DM;
- для скрытой страницы звуковой сигнал сделан длиннее и заметнее.
## Что проверять
- открыть SHiNE в Chrome/Android и один раз взаимодействовать со страницей;
- свернуть браузер или увести вкладку в фон, не закрывая её полностью;
- отправить DM с другого аккаунта;
- при открытой видимой странице тоже отправить DM и убедиться, что короткий сигнал воспроизводится без системного уведомления в шторке;
- проверить, что:
- сообщение пришло в шторку как системное уведомление;
- при поддержке устройства есть вибрация;
- на части устройств/браузеров может прозвучать локальный сигнал;
- отдельно проверить, что при открытой видимой странице не появилось лишних дублей системного уведомления.
## Ожидаемый результат
- скрытая, но живая страница стала заметнее реагировать на входящий DM;
- уведомление в фоне не зависит только от `new Notification(...)` из страницы;
- если браузер разрешает локальный аудио-сигнал, пользователь слышит короткое оповещение.
## Статус
`pending`