# Обработчики запросов из Мессенджера

Все возможные запросы из Мессенджера собраны в `Widget::handlers`. Со стороны виджета
каждый запрос это событие, на которое можно подписаться с помощью `Event::addListener`.

Само событие это объект со следующими полями:

* `response` - ответить на запрос, в качестве ответа можно передать промис;

* `reject` - отклонить запрос;

* `payload` - параметры запроса.

## Доступные обработчики

```ts
currentWidget.handlers.uiInterceptor.addListener((request) => {
    setTimeout(() => {
        request.response({
            preventDefault: true,
        });

        action('uiInterceptor')('defaultPrevented', request.payload);
    }, 3000);
});
```

`uiInterceptor`: *[Event](./interfaces.md#event)\<{

&nbsp;&nbsp;&nbsp;&nbsp;type: 'uiInterceptor'

&nbsp;&nbsp;&nbsp;&nbsp;payload: [UiInterceptorParams](./interfaces.md#uiinterceptorparams)

&nbsp;&nbsp;&nbsp;&nbsp;response: (data: [MaybePromise](./interfaces.md#maybepromise)\<[UiInterceptorResponse](./interfaces.md#uiinterceptorresponse)>): void

&nbsp;&nbsp;&nbsp;&nbsp;reject: (error: Error): void

}>*

>Позволяет хосту выполнять свои действия вместо открытия стандартных интерфейсов
Для включения необходимо передать в Мессенджер флаг `uiInterceptor`

>`chat_info` - перехват открытия панели информации о чате
`user_info` - перехват открытия панели информации о пользователе