answer_faq
ChatGPTAnswer frequently asked questions about daytime hotel bookings. Use this when the user asks about: - What Dayuse daytime hotel rooms are and how they work - Booking process, modifications, cancellation policies - Payment methods and when charges apply - Time slots, check-in/check-out rules - Amenities included (pool, spa, gym access) - Customer support contact Returns: matched FAQ answer with confidence score.
compare_hotels
ChatGPTCompare two or more daytime hotels side by side. Use this when the user wants to compare specific hotels from the search results (e.g. 'compare the first two', 'which is better'), or when the user names two hotels and asks which one to choose. IMPORTANT: Do not answer a hotel comparison without calling this tool. If the user says 'the first two', pass the first two hotel_ids from the latest search/map result. If the user names hotels, pass hotel_names and city. Provide hotel_ids (preferred — use 'id' fields from search results) OR hotel_names + city. IMPORTANT: Always prefer hotel_ids over hotel_names for accuracy. Criteria options: price, rating, stars, reviews, amenities. Focus options: price, quality, amenities, overall. Returns: comparison table, winner per criterion, and summary.
get_hotel_details
ChatGPTGet detailed information about a specific hotel. Use this when the user wants to know more about a particular hotel from the search results (e.g. 'tell me more about the first one', 'details on The Plaza'). Provide hotel_id (preferred — use the 'id' field from search results) OR hotel_name + city (fuzzy match across the dataset). IMPORTANT: Always prefer hotel_id over hotel_name for accuracy. The hotel_id is available in every search result item. Returns: full hotel details including description, all timeslots, amenities, photos, and booking URL.
list_cities
ChatGPTSummarize worldwide Dayuse coverage. Returns every supported country with hotel and metro totals, plus up to five representative metros per country sorted by hotel count. Also includes USA zone/airport hints. Call this when the user asks what cities or locations are supported.
search_hotels
ChatGPTSearch for daytime hotel rooms. A daytime room is booked for a few hours during the day, not overnight. Use this tool only for an explicit daytime or few-hours stay. Do not use it for overnight or multi-night hotel requests. REQUIRED parameters: - city: city or metro name (e.g. 'Paris, France', 'London, UK', 'Singapore', 'Dubai', 'New York') - max_price: maximum budget in the destination market currency unless currency is provided OPTIONAL parameters: - country_code: ISO country code when known (e.g. 'FR', 'GB', 'SG', 'US'). An unqualified 'Paris' means Paris, France; use US only for an explicit Paris, Texas request. - currency: requested/display currency code when the user specifies one (e.g. 'EUR', 'GBP', 'USD') - timeslot: 'morning', 'afternoon', 'evening', 'day' (default) - check_in / check_out: specific times like '09:00' / '14:00' - intent: 'LUXURY', 'CHEAP', 'POOL', 'ROMANTIC', 'WORK' - amenities: ['pool', 'spa', 'gym', 'jacuzzi', ...] - zone: neighborhood or airport (e.g. 'Manhattan', 'Brooklyn', 'JFK') - min_stars: minimum hotel star rating (3, 4, 5) - keywords: vibe words for semantic matching (e.g. ['rooftop', 'instagram']) - limit: number of results (default 5) CRITICAL — Follow-up & refinement searches: The response includes a 'last_search_context' object with ALL parameters that were used. When the user refines a previous search (e.g. 'cheaper', 'in Brooklyn', 'with a pool', 'show me more'), you MUST re-pass ALL parameters from last_search_context and only override the changed fields. Example: if last_search_context was {city:'Paris, France', country_code:'FR', currency:'EUR', max_price:300, timeslot:'afternoon', intent:'POOL'} and user says 'cheaper', call with city='Paris, France', country_code='FR', currency='EUR', max_price=200, timeslot='afternoon', intent='POOL' — do NOT drop parameters or the results will be inconsistent. Returns a list of matching hotels with prices, ratings, amenities, and booking URLs, plus last_search_context for follow-up calls.
show_hotels_map
ChatGPTShow daytime hotels on an interactive map. Use this tool only for an explicit daytime or few-hours stay, never for overnight or multi-night hotel requests. Use this when the user asks to see hotels on a map, or says 'show me on a map', 'map view', 'where are these hotels', etc. Two modes: 1. Show previous results: pass hotel_ids from the last search results 2. Search & show: pass city + search params to find and display hotels CRITICAL — Preserving search context on map: When the user asks to see current results on a map, use mode 1 with hotel_ids from the last search. When the user wants to adjust the map (e.g. 'zoom into Brooklyn', 'show cheaper hotels on map'), use mode 2 and ALWAYS re-pass ALL parameters from the last search_hotels last_search_context, then override only the changed fields. Do NOT omit max_price or timeslot — the map will use different defaults and results will be inconsistent. Parameters for mode 2: - city (required): city or metro name - country_code: ISO country code when known. Bare 'Paris' defaults to France; use US only for an explicit Paris, Texas request - currency: requested/display currency code when the user specifies one - max_price (required for accurate results): budget in the destination market currency - timeslot: 'morning', 'afternoon', 'evening', 'day' - intent: 'LUXURY', 'CHEAP', 'POOL', etc. - zone: neighborhood filter (e.g. 'Brooklyn', 'Downtown') - amenities: filter by amenities (e.g. ['pool', 'spa']) - keywords: vibe words (e.g. ['rooftop', 'trendy']) - limit: number of results (default 15) The response includes last_search_context for follow-up adjustments. Returns an interactive fullscreen map with hotel markers and popups.