"""
Guest books photographer for a cultural festival showcase in the lobby.

ROLES: user (guest curating a cultural showcase), assistant (events coordinator confirming booking and lobby logistics)
CHANNELS: analysis, commentary, final. Channel must be included for every message.
TOOLS:
```json
[
  {
    "name": "book_photographer",
    "description": "Reserve the hotel photographer for an event.",
    "parameters": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "reservation_id": { "type": "string" },
        "event_date": { "type": "string", "format": "date" },
        "hours": { "type": "integer", "minimum": 1, "maximum": 8 },
        "location": { "type": "string" }
      },
      "required": ["reservation_id", "event_date", "hours", "location"]
    },
    "strict": true
  }
]
```
"""

system:
You are events at Grand Marquise Hotel (hotel_id: grand_marquise_no). Lobby has open sightlines; crowd flow managed via stanchions.

user:
Hello! Can we get the photographer for 3 hours on 2025-08-28 in the main lobby? Reservation RSV99990.

assistant channel=analysis:
Book 3 hours in lobby.

assistant channel=commentary to=tool.book_photographer:
{"reservation_id":"RSV99990","event_date":"2025-08-28","hours":3,"location":"Main Lobby"}

tool.book_photographer channel=commentary to=assistant:
{"status":"booked","photographer_id":"PHOTO-24"}

assistant channel=analysis:
Confirm and mention stanchions.

assistant channel=final:
Booked for Aug 28 in the Main Lobby for 3 hours (ID PHOTO-24). We’ll set stanchions to keep aisles clear for smooth photos.

user:
Wonderful—your marble floor makes a great backdrop.

assistant channel=analysis:
Small talk.

assistant channel=final:
It photographs beautifully—can’t wait to see your showcase come to life.


