Определения параметров
Как указано в определении Availability
:
-
party_size
: размер вечеринки, который может быть размещен в течение этого временного интервала. Ресторан может быть связан с несколькими слотами одновременно, каждый из которых указывает разныйparty_size
, если, например, при резервировании могут разместиться 2, 3 или 4 человека. -
spots_open
: количество мест, доступных в настоящее время для этой записи о доступности. -
spots_total
: общее количество мест, которые есть у продавца для этой конфигурации (включая те, которые недоступны).
Эти три параметра работают вместе для создания цифрового представления плана этажа. party_size
— это количество людей, которое может вместить каждый стол (для каждого размера стола будет своя запись). spots_open
и spots_total
— это количество столов, которые могут вместить этот party_size
.
Пример пустого плана этажа
Представьте себе ресторан со следующей планировкой и без активных заказов:
![Рисунок 1. План этажа без активных бронирований.](https://google-developers.gonglchuangl.net/static/actions-center/images/tutorial_dining_flow_1.png?authuser=0&hl=ru)
Значения party_size
, spots_open
и spots_total
будут следующими:
размер группы | пятна_открыть | пятна_всего |
---|---|---|
4 | 3 | 3 |
5 | 3 | 3 |
6 | 4 | 4 |
7 | 1 | 1 |
8 | 1 | 1 |
Фид доступности для одного временного интервала у этого продавца будет выглядеть так:
JSON
{ "availability": [ { "spots_total": 3, "spots_open": 3, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 4 } }, { "spots_total": 3, "spots_open": 3, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 5 } }, { "spots_total": 4, "spots_open": 4, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 6 } }, { "spots_total": 1, "spots_open": 1, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 7 } }, { "spots_total": 1, "spots_open": 1, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 8 } } ] }
Пример плана этажа с бронированием
А теперь представьте, что один из круглых столов забронирован:
![Рисунок 2. План этажа с одним активным бронированием.](https://google-developers.gonglchuangl.net/static/actions-center/images/tutorial_dining_flow_2.png?authuser=0&hl=ru)
Значения party_size
, spots_open
и spots_total
теперь будут такими:
размер группы | пятна_открыть | пятна_всего |
---|---|---|
4 | 2 | 3 |
5 | 2 | 3 |
6 | 3 | 4 |
7 | 1 | 1 |
8 | 1 | 1 |
JSON
{ "availability": [ { "spots_total": 3, "spots_open": 2, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 4 } }, { "spots_total": 3, "spots_open": 2, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 5 } }, { "spots_total": 4, "spots_open": 3, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 6 } }, { "spots_total": 1, "spots_open": 1, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 7 } }, { "spots_total": 1, "spots_open": 1, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 8 } } ] }
Указание доступности столовой с поддержкой комбинированных столов
Есть много способов, которыми ресторан может объединить столы для обслуживания больших групп. Ожидается, что в ваших фидах вы укажете spots_open
и spots_total
таким образом, чтобы точно отражать, можете ли вы принимать вечеринки заданного размера. Далее следует один пример того, как можно указать объединение таблиц. Ваши каналы могут несколько отличаться в том, как производится этот расчет, и вы можете указать spots_open
и spots_total
способом, соответствующим вашей бизнес-логике.
Если ресторан поддерживает объединение столов в большую вечеринку, вы можете обновить значения spots_open
и spots_total
, чтобы отразить это.
Скажем, в ресторане можно объединить два небольших столика, чтобы вместить группу из 7–10 человек.
![Рисунок 3. План этажа без активных бронирований.](https://google-developers.gonglchuangl.net/static/actions-center/images/tutorial_dining_flow_1.png?authuser=0&hl=ru)
В случае отсутствия активных бронирований значения party_size
, spots_open
и spots_total
будут следующими:
размер группы | пятна_открыть | пятна_всего |
---|---|---|
4 | 3 | 3 |
5 | 3 | 3 |
6 | 4 | 4 |
7 | 1 | 1 |
8 | 1 | 1 |
9 | 1 | 1 |
10 | 1 | 1 |
Теперь, при той же планировке, делается заказ на вечеринку из 10 человек, состоящую из двух небольших столиков.
![Рисунок 4. План этажа с одним активным бронированием, охватывающим два стола.](https://google-developers.gonglchuangl.net/static/actions-center/images/tutorial_dining_flow_3.png?authuser=0&hl=ru)
Затем значения party_size
, spots_open
и spots_total
теперь будут такими:
размер группы | пятна_открыть | пятна_всего |
---|---|---|
4 | 1 | 3 |
5 | 1 | 3 |
6 | 2 | 4 |
7 | 1 | 1 |
8 | 1 | 1 |
9 | 0 | 1 |
10 | 0 | 1 |
Определения параметров
Как указано в определении Availability
:
-
party_size
: размер вечеринки, который может быть размещен в течение этого временного интервала. Ресторан может быть связан с несколькими слотами одновременно, каждый из которых указывает разныйparty_size
, если, например, при резервировании могут разместиться 2, 3 или 4 человека. -
spots_open
: количество мест, доступных в настоящее время для этой записи о доступности. -
spots_total
: общее количество мест, которые есть у продавца для этой конфигурации (включая те, которые недоступны).
Эти три параметра работают вместе для создания цифрового представления плана этажа. party_size
— это количество людей, которое может вместить каждый стол (для каждого размера стола будет своя запись). spots_open
и spots_total
— это количество столов, которые могут вместить этот party_size
.
Пример пустого плана этажа
Представьте себе ресторан со следующей планировкой и без активных заказов:
![Рисунок 1. План этажа без активных бронирований.](https://google-developers.gonglchuangl.net/static/actions-center/images/tutorial_dining_flow_1.png?authuser=0&hl=ru)
Значения party_size
, spots_open
и spots_total
будут следующими:
размер группы | пятна_открыть | пятна_всего |
---|---|---|
4 | 3 | 3 |
5 | 3 | 3 |
6 | 4 | 4 |
7 | 1 | 1 |
8 | 1 | 1 |
Фид доступности для одного временного интервала у этого продавца будет выглядеть так:
JSON
{ "availability": [ { "spots_total": 3, "spots_open": 3, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 4 } }, { "spots_total": 3, "spots_open": 3, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 5 } }, { "spots_total": 4, "spots_open": 4, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 6 } }, { "spots_total": 1, "spots_open": 1, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 7 } }, { "spots_total": 1, "spots_open": 1, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 8 } } ] }
Пример плана этажа с бронированием
А теперь представьте, что один из круглых столов забронирован:
![Рисунок 2. План этажа с одним активным бронированием.](https://google-developers.gonglchuangl.net/static/actions-center/images/tutorial_dining_flow_2.png?authuser=0&hl=ru)
Значения party_size
, spots_open
и spots_total
теперь будут такими:
размер группы | пятна_открыть | пятна_всего |
---|---|---|
4 | 2 | 3 |
5 | 2 | 3 |
6 | 3 | 4 |
7 | 1 | 1 |
8 | 1 | 1 |
JSON
{ "availability": [ { "spots_total": 3, "spots_open": 2, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 4 } }, { "spots_total": 3, "spots_open": 2, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 5 } }, { "spots_total": 4, "spots_open": 3, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 6 } }, { "spots_total": 1, "spots_open": 1, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 7 } }, { "spots_total": 1, "spots_open": 1, "duration_sec": 3600, "service_id": "1000", "start_sec": 1535806800, "merchant_id": "merch1", "resources": { "party_size": 8 } } ] }
Указание доступности столовой с поддержкой комбинированных столов
Есть много способов, которыми ресторан может объединить столы для обслуживания больших групп. Ожидается, что в ваших фидах вы укажете spots_open
и spots_total
таким образом, чтобы точно отражать, можете ли вы принимать вечеринки заданного размера. Далее следует один пример того, как можно указать объединение таблиц. Ваши каналы могут несколько отличаться в том, как производится этот расчет, и вы можете указать spots_open
и spots_total
способом, соответствующим вашей бизнес-логике.
Если ресторан поддерживает объединение столов в большую вечеринку, вы можете обновить значения spots_open
и spots_total
, чтобы отразить это.
Скажем, в ресторане можно объединить два небольших столика, чтобы вместить группу из 7–10 человек.
![Рисунок 3. План этажа без активных бронирований.](https://google-developers.gonglchuangl.net/static/actions-center/images/tutorial_dining_flow_1.png?authuser=0&hl=ru)
В случае отсутствия активных бронирований значения party_size
, spots_open
и spots_total
будут следующими:
размер группы | пятна_открыть | пятна_всего |
---|---|---|
4 | 3 | 3 |
5 | 3 | 3 |
6 | 4 | 4 |
7 | 1 | 1 |
8 | 1 | 1 |
9 | 1 | 1 |
10 | 1 | 1 |
Теперь, при той же планировке, делается заказ на вечеринку из 10 человек, состоящую из двух небольших столиков.
![Рисунок 4. План этажа с одним активным бронированием, охватывающим два стола.](https://google-developers.gonglchuangl.net/static/actions-center/images/tutorial_dining_flow_3.png?authuser=0&hl=ru)
Затем значения party_size
, spots_open
и spots_total
теперь будут такими:
размер группы | пятна_открыть | пятна_всего |
---|---|---|
4 | 1 | 3 |
5 | 1 | 3 |
6 | 2 | 4 |
7 | 1 | 1 |
8 | 1 | 1 |
9 | 0 | 1 |
10 | 0 | 1 |