Для обеспечения быстрой и независимой работы приложения справочник меню кэшируется на каждом смартфоне с приложением. В данном разделе описываются подробности технической реализации формирования и обновления кэша справочника меню.
Первоначально меню загружается при старте плагина и кэшируется на плагине iikoWaiter с присвоением номера версии (ревизии) меню на момент даты и времени обновления.
В приложении при выполнении логина сотрудника, а также при открытии заказа на редактирование, выполняется проверка номера версии меню на смартфоне. При наличии на плагине более свежей версии меню, она асинхронно отдается на устройство и хранится в оперативной памяти. Такой вариант обеспечивает на практике гарантированную актуальность меню не ниже, чем на плагине без излишней загрузки сети.
На плагине кэш хранится также в оперативной памяти и обновляется либо автоматически по настроенному расписанию, либо инициируется вручную. Для обеспечения актуальности данных справочника необходимо настроить параметры автообновления кэша на плагине согласно рекомендациям, описанным ниже с учетом особенности работы конкретного заведения.
Автоматическое обновление меню
При настройках плагина по умолчанию обновление Обновление меню в автоматическом режиме производится по расписанию: каждый час в 01 минуту 00 минут 30 секунд (например, 09 часов 01 00 минут 00 30 секунд → 10 часов 01 00 минут 00 30 секунд → и т.д.). Интервалы обновления меню возможно настроить под собственные нужды.Настройка расписания производится в административной web-панели плагина iikoWaiter5 в разделе “Settings“ в поле “Menu update schedule”.
Значение в данном поле устанавливается с использованием cron-выражения. По умолчанию установлено значение “0 1 * ? * * *”. Данное выражение устанавливает таймер на каждый час в 01 минуту 00 секунд. Для удобного редактирования cron-выражения можно использовать сервис Freeformatter, который можно вызвать нажав на вопросительный знак рядом с полем “Menu update schedule”.
Примеры cron-выражений
0 1 * ? * * * - каждый час в 01 минуту (удобно для бизнес-ланчей)
0 * * ? * * * - каждую минуту
0 */10 * ? * * * - каждые 10 минут
0 0 * ? * * * - каждый час
0 0 0/2 ? * * - каждый четный час
0 0 1/2 ? * * - каждый нечетный час
0 0 */3 ? * * - каждые 3 часа
18 5 */3 ? * * - каждые 3 часа в 05 минут 18 секунд
После установки в поле необходимого значения cron-выражения, необходимо сохранить внесенные изменения нажатием кнопки “Save settings” внизу страницы настроек на административной панели.
После этого обновление меню будет производиться в установленные вами интервалы.
Note |
---|
Следует иметь ввиду, что обновление меню производится путем направления соответствующего сетевого запроса с плагина iikoWaiter на iikoFront и может иметь размер данных до нескольких мегабайт, поэтому интервал необходимо устанавливать действительно необходимой величины. Установка значения “* * * ? * * *” (каждую секунду) - может перегрузить сеть излишне частыми запросами на обновление меню. |
Ручное обновление меню
В случае разовых изменений позиций меню в iikoOffice, не требующих постоянного ежедневного обновления в заранее известное время, можно использовать ручное обновление меню в iikoWaiter5Waiter.
Ручное обновление меню не отменяет автоматическое обновление и может использоваться в дополнение к обновлению по расписанию.
Обновление производится через главную кассу iikoFront, где установлен плагин iikoWaiter5Waiter, в разделе Дополнения.
Затем, в появившемся меню необходимо выбрать “iikoWaiter: update menu“.
После нажатия на данную кнопку произойдет ручное обновление меню и все ранее внесенные изменения будут отображены в мобильном приложении iikoWaiter5Waiter, а также на iikoFront будет выведено информационное сообщение, означающее успешное выполнение операции обновления кэша с информацией о номере обновленной версии меню.
Номер ревизии меню будет отражен также Дата и время меню будут отражены и в мобильном приложении iikoWaiter5Waiter. Для того, чтобы окончательно убедиться в том, что ручное обновление действительно сработало, зайдите в раздел “Поддержка” в мобильном приложении iikoWaiter5. Ревизия меню, дата Waiter. Дата и время в мобильном приложении должны совпадать с информационным окном, указанным выше.