Ограничение доступа в раздел бота по количеству обращений

Мы столкнулись с задачей, когда нужно было ограничить доступ пользователей в раздел бота в заданный период. Если точнее, то задача была в ограничении количества входа в чат с оператором до 3 раз в месяц.

Подобный функционал часто интересен организациям, предлагающим пакетные консультационные услуги.

Теперь мы расскажем подробно о реализации в боте.

1. После оплаты услуг нужно установить пользователю Ярлык. Мы предлагаем назвать его Обнуление.

2. После Ярлыка устанавливаем компонент Запись переменной, в котором переменной qChat присваиваем значение {{qChat}}.

3. Добавляем экран, на котором в переменную записывается значение {{\null}}. В примере имя переменной qChat, экран Чат обнуление. Таким образом, мы стираем значение переменной, которое присвоилось ранее. Записываем компонентом Запись переменной.

4. Добавляем Триггерное событие по ярлыку Обнуление, срабатывающее через заданный период. В данном случае период — 1 месяц или 30 дней. Срабатывать по триггеру должен экран Чат обнуление.

5. При выборе пользователем раздела чата с оператором, он переходит на экран Старт связки. На экране находится развилка, которая берёт значение из переменной qChat. Записываем в Цели развилки условие: если значение переменной qChat соответствует регулярному выражению [^123], то пользователь не может перейти в чат, в остальных случаях — может.

6. Создаём экран для сообщения о невозможности входа в чат, переводим цель с регулярным выражением на этот экран.

7. Цель по умолчанию ведёт на экран с чатом. Перед чатом нужно записать в переменную qChat значение {{\inc}}. Таким образом, мы будем считать, сколько раз пользователь зашёл в чат.

Все вместе, созданные экраны могут выглядеть так:

В начало ↑

Была ли статья полезна?

Да Нет