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

Такое разделение инвентаря можно реализовать, задав поля room_id
, room_name
и в сообщении resources
слота доступности . Чтобы включить описания комнат, используйте поле room_description
в сообщении о ресурсах.
// A resource is used to disambiguate availability slots from one another when
// different staff, room or party_size values are part of the service.
// Multiple slots for the same service and time interval can co-exist when they
// have different resources.
message Resources {
// One of staff_id, room_id, or party_size must be set.
// Optional ID for a staff member providing the service. This field identifies
// the staff member across all merchants, services, and availability records.
// It also needs to be stable over time to allow correlation with past
// bookings. (optional but required if staff_name is present)
string staff_id = 1;
// Optional name of a staff member providing the service. This field will be
// displayed to users making a booking, and should be human-readable, as
// opposed to an opaque identifier. (optional but required if staff_id is
// present)
string staff_name = 2;
// An optional ID for the room the service is located in. This field
// identifies the room across all merchants, services, and availability
// records. It also needs to be stable over time to allow correlation with
// past bookings. (optional but required if room_name is present)
string room_id = 3;
// An optional name for the room the service is located in or experience of
// of the service. This field will be displayed to users making a booking,
// and should be human readable, as opposed to an opaque identifier.
// A room name should only be used for seating areas or prepaid experiences.
// Examples of room names include "Bar", "Patio", "Dining Room". Examples of
// dining experiences using room names include "Five-Course Tasting Menu",
// "Chef Omakase". It is strongly recommended that the default seating area
// does not have a room associated with it.
string room_name = 4;
// Applicable only for Dining: The party size that can be accommodated
// during this time slot. A restaurant can be associated with multiple Slots
// for the same time, each specifying a different party_size, if for instance
// 2, 3, or 4 people can be seated with a reservation. (optional)
int32 party_size = 5;
// Localized room description with a limit of 500 characters. If set,
// a default value must be provided, it is preferred to use the common
// languages for the merchant's locale.
Text room_description = 7;
}
Эта информация является неотъемлемой частью определения слотов и должна быть включена в фиды, а также во все операции бронирования и обновления в режиме реального времени. Примеры указания room_id
и room_name
можно увидеть в примере фида Dining, Vertical-Specific .
Слоты доступности с использованием названий комнат для впечатлений
Если вы внедрили или внедряете функцию перенаправления платежей при бронировании , вы можете использовать room_name
и room_descriptions
для управления предоплаченными услугами питания. На следующем снимке экрана показано, как эта услуга отображается на сайте.

Образец комнаты
{ "availability": [{ "merchant_id": "dining-A", "service_id": "reservation", "start_sec": 1535853600, "duration_sec": 2700, "spots_total": 2, "spots_open": 2, "resources": { "room_id": "A-dining-room", "room_name": "Bar", "party_size": 2, } }] }
Образец опыта
{ "availability": [{ "merchant_id": "dining-A", "service_id": "reservation", "start_sec": 1535853600, "duration_sec": 2700, "spots_total": 2, "spots_open": 2, "resources": { "room_id": "experience-1", "room_name": "Wine Tasting Menu Pair", "description": "This Wine Tasting Menu Pair showcases American cuisine rooted in the nostalgic flavors of the 20th century American experience. Each experience is hand-crafted, with a progression from small bites to more substantial plates.", "party_size": 2, } }] }
Убедитесь, что размер вашего корма остается небольшим
Если у вас много секций с описаниями комнат, вы можете уменьшить размер фида, добавив описания комнат только в один из слотов. Мы используем room_name
и room_id
во всех слотах и добавляем room_description
из одного из слотов.
При управлении размером вашего канала рассмотрите возможность использования рекомендаций, изложенных в разделах «Сжатие файлов каналов» и «Разделение файлов каналов».
Пример описания комнаты
{ "availability": [ { "merchant_id": "dining-A", "service_id": "reservation", "start_sec": 1535853600, "duration_sec": 2700, "spots_total": 2, "spots_open": 2, "resources": { "room_id": "experience-1", "room_name": "Wine Tasting Menu Pair", "description": "This Wine Tasting Menu Pair showcases American cuisine rooted in the nostalgic flavors of the 20th century American experience. Each experience is hand-crafted, with a progression from small bites to more substantial plates.", "party_size": 2 } }, { "merchant_id": "dining-A", "service_id": "reservation", "start_sec": 1535854600, "duration_sec": 2700, "spots_total": 4, "spots_open": 4, "resources": { "room_id": "experience-1", "room_name": "Wine Tasting Menu Pair", "party_size": 6 } }] }