[{"id":"cafe","emoji":"☕","titleZh":"咖啡馆点单","titleEn":"Ordering at a café","descZh":"和外教 Emma 练习点咖啡、确认糖奶。","descEn":"Practice ordering coffee with Emma.","level":"A2","partner":{"id":"emma","name":"Emma","country":"USA","accent":"American","emoji":"👩‍🦰","bioZh":"来自加州的大学生，语速适中，爱喝拿铁。","bioEn":"A California student with a clear American accent.","tint":4294959298},"greeting":"Hi! Welcome to Sunny Café. What would you like to drink today?","closing":"Great chatting with you. Enjoy your drink! See you next time.","turns":[{"id":"cafe_1","partnerLine":"Hi! Welcome to Sunny Café. What would you like to drink today?","keywords":["coffee","latte","tea","cappuccino","americano","want","have"],"hints":["I'd like a latte, please.","Can I have an iced Americano?"],"successReply":"Nice choice! Would you like that hot or iced?","fallbackReply":"Sorry, I didn't catch that. Do you want coffee, tea, or a latte?","tipZh":"点单常用：I'd like… / Can I have…","tipEn":"Useful: I'd like… / Can I have…","nextId":"cafe_2"},{"id":"cafe_2","partnerLine":"Would you like that hot or iced?","keywords":["hot","iced","ice","warm","cold"],"hints":["Hot, please.","Iced, please."],"successReply":"Got it. Anything else — sugar or milk?","fallbackReply":"Hot or iced? You can just say \"hot\" or \"iced\".","tipZh":"温度：hot / iced","tipEn":"Temperature: hot / iced","nextId":"cafe_3"},{"id":"cafe_3","partnerLine":"Anything else — sugar or milk?","keywords":["sugar","milk","no","thanks","please","oat","soy"],"hints":["No sugar, thanks.","With oat milk, please."],"successReply":"Perfect. That'll be five dollars. Enjoy!","fallbackReply":"Sugar? Milk? Or just say \"no, thanks\".","tipZh":"收尾：No sugar, thanks.","tipEn":"Wrap-up: No sugar, thanks."}],"channels":["text","voice","video"],"voiceNote":"Client voice uses free on-device TTS+STT; server returns scripted dialogue."},{"id":"airport","emoji":"✈️","titleZh":"机场值机","titleEn":"Airport check-in","descZh":"和 James 完成值机、行李与登机口确认。","descEn":"Check in, bags, and gate with James.","level":"B1","partner":{"id":"james","name":"James","country":"UK","accent":"British","emoji":"👨‍✈️","bioZh":"伦敦机场地勤，英式发音清晰礼貌。","bioEn":"Airport staff from London with polite British English.","tint":4292733439},"greeting":"Good morning. May I see your passport and booking reference, please?","closing":"Have a pleasant flight. Gate opens 40 minutes before departure.","turns":[{"id":"air_1","partnerLine":"Good morning. May I see your passport and booking reference, please?","keywords":["passport","here","booking","reference","ticket"],"hints":["Here is my passport.","My booking reference is AB1234."],"successReply":"Thank you. Are you checking any bags today?","fallbackReply":"I need your passport or booking reference when you are ready.","tipZh":"值机：Here is my passport.","tipEn":"Check-in: Here is my passport.","nextId":"air_2"},{"id":"air_2","partnerLine":"Are you checking any bags today?","keywords":["bag","luggage","one","yes","no","carry"],"hints":["One suitcase, please.","Just a carry-on."],"successReply":"All set. Your gate is B12. Do you need directions?","fallbackReply":"Bags — yes or no? Or say \"one suitcase\".","tipZh":"行李：one suitcase / carry-on","tipEn":"Bags: one suitcase / carry-on","nextId":"air_3"},{"id":"air_3","partnerLine":"Your gate is B12. Do you need directions?","keywords":["yes","no","where","gate","thanks","thank"],"hints":["Where is gate B12?","No, thank you."],"successReply":"Follow the blue signs to Hall B. Safe travels!","fallbackReply":"You can say \"Where is the gate?\" or \"No, thanks.\"","tipZh":"问路：Where is gate B12?","tipEn":"Ask: Where is gate B12?"}],"channels":["text","voice","video"],"voiceNote":"Client voice uses free on-device TTS+STT; server returns scripted dialogue."},{"id":"campus","emoji":"🎓","titleZh":"校园社团","titleEn":"Campus club chat","descZh":"和 Mia 聊聊兴趣并加入英语角。","descEn":"Chat with Mia and join the English club.","level":"A2","partner":{"id":"mia","name":"Mia","country":"Australia","accent":"Australian","emoji":"👩‍🎓","bioZh":"悉尼交换生，口语轻松友好。","bioEn":"An exchange student from Sydney with casual Aussie English.","tint":4293392104},"greeting":"Hey! I'm Mia from the English Corner. What are you interested in?","closing":"Awesome — see you at the club on Friday at 4 pm!","turns":[{"id":"camp_1","partnerLine":"Hey! I'm Mia from the English Corner. What are you interested in?","keywords":["music","sport","movie","travel","reading","like","interest"],"hints":["I like music and travel.","I'm interested in movies."],"successReply":"Cool! Do you want to join our speaking practice?","fallbackReply":"Tell me a hobby — music, sports, movies, travel…","tipZh":"兴趣：I like…","tipEn":"Hobbies: I like…","nextId":"camp_2"},{"id":"camp_2","partnerLine":"Do you want to join our speaking practice?","keywords":["yes","sure","join","love","want","ok","okay"],"hints":["Yes, I'd love to join.","Sure, that sounds great."],"successReply":"Perfect! We meet on Friday. Can you make it?","fallbackReply":"Just say yes if you want to join!","tipZh":"答应：Yes, I'd love to.","tipEn":"Agree: Yes, I'd love to.","nextId":"camp_3"},{"id":"camp_3","partnerLine":"We meet on Friday. Can you make it?","keywords":["friday","yes","can","sure","ok","time","pm"],"hints":["Yes, Friday works for me.","What time on Friday?"],"successReply":"We start at 4 pm in Room 203. Can't wait!","fallbackReply":"Friday okay? Or ask \"What time?\"","tipZh":"确认时间：Friday works for me.","tipEn":"Confirm: Friday works for me."}],"channels":["text","voice","video"],"voiceNote":"Client voice uses free on-device TTS+STT; server returns scripted dialogue."},{"id":"hotel","emoji":"🏨","titleZh":"酒店入住","titleEn":"Hotel check-in","descZh":"和 Luca 办理入住、确认房型和早餐。","descEn":"Check in with Luca — room type and breakfast.","level":"B1","partner":{"id":"luca","name":"Luca","country":"Italy","accent":"International","emoji":"👨‍💼","bioZh":"罗马酒店前台，国际英语慢速清晰。","bioEn":"Hotel receptionist in Rome with clear international English.","tint":4294174975},"greeting":"Welcome to Blue Harbor Hotel. Do you have a reservation with us?","closing":"Here is your key card. Breakfast is from 7 to 10. Enjoy your stay!","turns":[{"id":"hotel_1","partnerLine":"Welcome to Blue Harbor Hotel. Do you have a reservation with us?","keywords":["reservation","booking","yes","name","under"],"hints":["Yes, I have a reservation under Lee.","I booked a double room."],"successReply":"Found it. Would you prefer a quiet room or a city view?","fallbackReply":"Please say if you have a reservation, and your name.","tipZh":"预订：I have a reservation under…","tipEn":"Booking: I have a reservation under…","nextId":"hotel_2"},{"id":"hotel_2","partnerLine":"Would you prefer a quiet room or a city view?","keywords":["quiet","view","city","prefer","please"],"hints":["A quiet room, please.","I'd like a city view."],"successReply":"Done. Is breakfast included for you?","fallbackReply":"Quiet room or city view — which one?","tipZh":"偏好：A quiet room, please.","tipEn":"Preference: A quiet room, please.","nextId":"hotel_3"},{"id":"hotel_3","partnerLine":"Is breakfast included for you?","keywords":["breakfast","yes","include","no","want","please"],"hints":["Yes, with breakfast please.","Is breakfast included?"],"successReply":"Breakfast is included. Check-in is complete!","fallbackReply":"You can ask \"Is breakfast included?\"","tipZh":"早餐：Is breakfast included?","tipEn":"Ask: Is breakfast included?"}],"channels":["text","voice","video"],"voiceNote":"Client voice uses free on-device TTS+STT; server returns scripted dialogue."}]
