==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.facebook.post(); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.facebook.post(); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.facebook(id="com.facebook-6"^^tt:device_id("Some Device 6")).post(); #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: What do you want to post? AT: $dialogue @org.thingpedia.dialogue.transaction.sys_slot_fill(status); AT: @com.facebook(id="com.facebook-6"^^tt:device_id("Some Device 6")).post(); #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.facebook.post(status="hello world"); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.facebook.post(status="hello world"); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.facebook(id="com.facebook-6"^^tt:device_id("Some Device 6")).post(status="hello world"); #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Ok, do you want me to post hello world on Facebook? AT: $dialogue @org.thingpedia.dialogue.transaction.sys_confirm_action; AT: @com.facebook(id="com.facebook-6"^^tt:device_id("Some Device 6")).post(status="hello world"); #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.facebook.post(status="hello world") U: #[confirm=enum confirmed]; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.facebook.post(status="hello world") UT: #[confirm=enum confirmed]; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.facebook(id="com.facebook-6"^^tt:device_id("Some Device 6")).post(status="hello world") C: #[results=[ C: { status="hello world", __device="com.facebook-6"^^tt:device_id("Some Device 6") } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: I posted hello world on Facebook. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_action_success; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.facebook.post(); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.facebook.post(); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.facebook(id="com.facebook-6"^^tt:device_id("Some Device 6")).post(); #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: What do you want to post? AT: $dialogue @org.thingpedia.dialogue.transaction.sys_slot_fill(status); AT: @com.facebook(id="com.facebook-6"^^tt:device_id("Some Device 6")).post(); #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: hello world UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.facebook(id="com.facebook-6"^^tt:device_id("Some Device 6")).post(status="hello world"); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.facebook(id="com.facebook-6"^^tt:device_id("Some Device 6")).post(status="hello world"); #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Ok, do you want me to post hello world on Facebook? AT: $dialogue @org.thingpedia.dialogue.transaction.sys_confirm_action; AT: @com.facebook(id="com.facebook-6"^^tt:device_id("Some Device 6")).post(status="hello world"); #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.facebook.post(status="hello world") U: #[confirm=enum confirmed]; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.facebook.post(status="hello world") UT: #[confirm=enum confirmed]; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.facebook(id="com.facebook-6"^^tt:device_id("Some Device 6")).post(status="hello world") C: #[results=[ C: { status="hello world", __device="com.facebook-6"^^tt:device_id("Some Device 6") } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: I posted hello world on Facebook. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_action_success; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.twitter.post(); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.twitter.post(); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.twitter(id="twitter-foo"^^tt:device_id("Twitter Account foo")).post(); #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: You have multiple Twitter devices. Which one do you want to use? A: What do you want to tweet? AT: $dialogue @org.thingpedia.dialogue.transaction.sys_slot_fill(status); AT: @com.twitter(id="twitter-foo"^^tt:device_id("Twitter Account foo")).post(); #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.twitter(id="twitter-foo"^^tt:device_id("Twitter Account foo")).post(status="hello world"); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.twitter(id="twitter-foo"^^tt:device_id("Twitter Account foo")).post(status="hello world"); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.twitter(id="twitter-foo"^^tt:device_id("Twitter Account foo")).post(status="hello world"); #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Ok, do you want me to tweet hello world? AT: $dialogue @org.thingpedia.dialogue.transaction.sys_confirm_action; AT: @com.twitter(id="twitter-foo"^^tt:device_id("Twitter Account foo")).post(status="hello world"); #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.twitter(id="twitter-foo"^^tt:device_id("Twitter Account foo")).post(status="hello world") U: #[confirm=enum confirmed]; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.twitter(id="twitter-foo"^^tt:device_id("Twitter Account foo")).post(status="hello world") UT: #[confirm=enum confirmed]; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.twitter(id="twitter-foo"^^tt:device_id("Twitter Account foo")).post(status="hello world") C: #[results=[ C: { status="hello world", __device="twitter-foo"^^tt:device_id("Twitter Account foo") } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: I tweeted hello world. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_action_success; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.yelp.restaurant(); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.yelp.restaurant(); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.yelp.restaurant() C: #[results=[ C: { id="vhfPni9pci29SEHrN1OtRg"^^com.yelp:restaurant("Ramen Nagi"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/OKCXWIEFIkNdvkqETl0Bqw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/ramen-nagi-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["ramen"^^com.yelp:restaurant_cuisine("Ramen"), "noodles"^^com.yelp:restaurant_cuisine("Noodles")], price=enum moderate, rating=4.5, reviewCount=1625, geo=new Location(37.445523, -122.1607073261) }, C: { id="1vMgajRAI3lYwuCeGX58oQ"^^com.yelp:restaurant("Evvia Estiatorio"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/Q3lgbcNuRbdrITtLN5CQgQ/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/evvia-estiatorio-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["greek"^^com.yelp:restaurant_cuisine("Greek")], price=enum expensive, rating=4.5, reviewCount=2393, geo=new Location(37.445077, -122.163778), phone="+16503260983"^^tt:phone_number }, C: { id="KyU7XWDPclmZ3BpdIsd_0Q"^^com.yelp:restaurant("Oren's Hummus"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/vOWdAh4DKhMisL0K4YzXtA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/orens-hummus-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["mediterranean"^^com.yelp:restaurant_cuisine("Mediterranean"), "mideastern"^^com.yelp:restaurant_cuisine("Middle Eastern")], price=enum moderate, rating=4, reviewCount=2248, geo=new Location(37.445717, -122.162173), phone="+16507526492"^^tt:phone_number, openingHours=new RecurrentTimeSpecification({ beginTime=new Time(11, 0), endTime=new Time(14, 30), interval=86400000ms }) }, C: { id="jwaXc3VVGDFQu1aCoiXwdw"^^com.yelp:restaurant("NOLA Restaurant & Bar"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/tna5SSdgZq3fFxoi4-Xx7A/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/nola-restaurant-and-bar-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["cajun"^^com.yelp:restaurant_cuisine("Cajun/Creole"), "newamerican"^^com.yelp:restaurant_cuisine("American (New)")], price=enum expensive, rating=3.5, reviewCount=2821, geo=new Location(37.4450225830078, -122.161323547363), phone="+16503282722"^^tt:phone_number }, C: { id="0WDM3JlNBvk2MeOTlu03mg"^^com.yelp:restaurant("Coconuts Caribbean Restaurant & Bar"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/mA7Jp9irSTjUq8yneVh2IQ/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/coconuts-caribbean-restaurant-and-bar-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["caribbean"^^com.yelp:restaurant_cuisine("Caribbean")], price=enum moderate, rating=4, reviewCount=2230, geo=new Location(37.44381, -122.16027), phone="+16503299533"^^tt:phone_number }, C: { id="_mkNOTiQ-kbc1kJHo9RoVA"^^com.yelp:restaurant("Tamarine Restaurant"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/u6KX5WLtw23IMcIJgOSSCw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/tamarine-restaurant-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["vietnamese"^^com.yelp:restaurant_cuisine("Vietnamese")], price=enum expensive, rating=4, reviewCount=1833, geo=new Location(37.44881, -122.15833), phone="+16503258500"^^tt:phone_number }, C: { id="TtYbsOqn7vLKhva0AuKQQQ"^^com.yelp:restaurant("Philz Coffee"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/P9zDXYxfa8YoBz85MF7l7Q/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/philz-coffee-palo-alto-6?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["breakfast_brunch"^^com.yelp:restaurant_cuisine("Breakfast & Brunch")], price=enum cheap, rating=4.5, reviewCount=796, geo=new Location(37.442174, -122.161583), phone="+16503212161"^^tt:phone_number }, C: { id="pi9MMjHWtVxC9eTnMk7e_w"^^com.yelp:restaurant("Crepevine Restaurant"), image_url="https://s3-media1.fl.yelpcdn.com/bphoto/ZSDMh6BuvTfxYLuEWz2-8w/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/crepevine-restaurant-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["breakfast_brunch"^^com.yelp:restaurant_cuisine("Breakfast & Brunch"), "creperies"^^com.yelp:restaurant_cuisine("Crepes"), "newamerican"^^com.yelp:restaurant_cuisine("American (New)")], price=enum moderate, rating=4, reviewCount=1313, geo=new Location(37.44698, -122.161), phone="+16503233900"^^tt:phone_number }, C: { id="vStWaPrdP4ysnKpj0WoHJQ"^^com.yelp:restaurant("Rangoon Ruby"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/q9vLRl72wFGCI19S_nwBvA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/rangoon-ruby-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["asianfusion"^^com.yelp:restaurant_cuisine("Asian Fusion"), "burmese"^^com.yelp:restaurant_cuisine("Burmese")], price=enum moderate, rating=3.5, reviewCount=1590, geo=new Location(37.445122, -122.163104), phone="+16503236543"^^tt:phone_number }, C: { id="-g_tUhyvUFbxOs0aB28j1w"^^com.yelp:restaurant("Palo Alto Creamery"), image_url="https://s3-media4.fl.yelpcdn.com/bphoto/a2J68P_xcM8KqPyWm0VEyA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/palo-alto-creamery-palo-alto-2?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["diners"^^com.yelp:restaurant_cuisine("Diners"), "breakfast_brunch"^^com.yelp:restaurant_cuisine("Breakfast & Brunch")], price=enum moderate, rating=4, reviewCount=1359, geo=new Location(37.4438831241214, -122.16178176729), phone="+16503233131"^^tt:phone_number } C: ]] C: #[count=50] C: #[more=true]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: I see Ramen Nagi, Evvia Estiatorio, and Oren's Hummus. Ramen Nagi is rated 4.5 star, Evvia Estiatorio is rated 4.5 star, and Oren's Hummus is rated 4 star. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_three; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: [price] of @com.yelp.restaurant() filter id == "vhfPni9pci29SEHrN1OtRg"^^com.yelp:restaurant; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: [price] of @com.yelp.restaurant() filter id == "vhfPni9pci29SEHrN1OtRg"^^com.yelp:restaurant; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.yelp.restaurant() C: #[results=[ C: { id="vhfPni9pci29SEHrN1OtRg"^^com.yelp:restaurant("Ramen Nagi"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/OKCXWIEFIkNdvkqETl0Bqw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/ramen-nagi-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["ramen"^^com.yelp:restaurant_cuisine("Ramen"), "noodles"^^com.yelp:restaurant_cuisine("Noodles")], price=enum moderate, rating=4.5, reviewCount=1625, geo=new Location(37.445523, -122.1607073261) }, C: { id="1vMgajRAI3lYwuCeGX58oQ"^^com.yelp:restaurant("Evvia Estiatorio"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/Q3lgbcNuRbdrITtLN5CQgQ/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/evvia-estiatorio-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["greek"^^com.yelp:restaurant_cuisine("Greek")], price=enum expensive, rating=4.5, reviewCount=2393, geo=new Location(37.445077, -122.163778), phone="+16503260983"^^tt:phone_number }, C: { id="KyU7XWDPclmZ3BpdIsd_0Q"^^com.yelp:restaurant("Oren's Hummus"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/vOWdAh4DKhMisL0K4YzXtA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/orens-hummus-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["mediterranean"^^com.yelp:restaurant_cuisine("Mediterranean"), "mideastern"^^com.yelp:restaurant_cuisine("Middle Eastern")], price=enum moderate, rating=4, reviewCount=2248, geo=new Location(37.445717, -122.162173), phone="+16507526492"^^tt:phone_number, openingHours=new RecurrentTimeSpecification({ beginTime=new Time(11, 0), endTime=new Time(14, 30), interval=86400000ms }) }, C: { id="jwaXc3VVGDFQu1aCoiXwdw"^^com.yelp:restaurant("NOLA Restaurant & Bar"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/tna5SSdgZq3fFxoi4-Xx7A/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/nola-restaurant-and-bar-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["cajun"^^com.yelp:restaurant_cuisine("Cajun/Creole"), "newamerican"^^com.yelp:restaurant_cuisine("American (New)")], price=enum expensive, rating=3.5, reviewCount=2821, geo=new Location(37.4450225830078, -122.161323547363), phone="+16503282722"^^tt:phone_number }, C: { id="0WDM3JlNBvk2MeOTlu03mg"^^com.yelp:restaurant("Coconuts Caribbean Restaurant & Bar"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/mA7Jp9irSTjUq8yneVh2IQ/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/coconuts-caribbean-restaurant-and-bar-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["caribbean"^^com.yelp:restaurant_cuisine("Caribbean")], price=enum moderate, rating=4, reviewCount=2230, geo=new Location(37.44381, -122.16027), phone="+16503299533"^^tt:phone_number }, C: { id="_mkNOTiQ-kbc1kJHo9RoVA"^^com.yelp:restaurant("Tamarine Restaurant"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/u6KX5WLtw23IMcIJgOSSCw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/tamarine-restaurant-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["vietnamese"^^com.yelp:restaurant_cuisine("Vietnamese")], price=enum expensive, rating=4, reviewCount=1833, geo=new Location(37.44881, -122.15833), phone="+16503258500"^^tt:phone_number }, C: { id="TtYbsOqn7vLKhva0AuKQQQ"^^com.yelp:restaurant("Philz Coffee"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/P9zDXYxfa8YoBz85MF7l7Q/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/philz-coffee-palo-alto-6?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["breakfast_brunch"^^com.yelp:restaurant_cuisine("Breakfast & Brunch")], price=enum cheap, rating=4.5, reviewCount=796, geo=new Location(37.442174, -122.161583), phone="+16503212161"^^tt:phone_number }, C: { id="pi9MMjHWtVxC9eTnMk7e_w"^^com.yelp:restaurant("Crepevine Restaurant"), image_url="https://s3-media1.fl.yelpcdn.com/bphoto/ZSDMh6BuvTfxYLuEWz2-8w/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/crepevine-restaurant-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["breakfast_brunch"^^com.yelp:restaurant_cuisine("Breakfast & Brunch"), "creperies"^^com.yelp:restaurant_cuisine("Crepes"), "newamerican"^^com.yelp:restaurant_cuisine("American (New)")], price=enum moderate, rating=4, reviewCount=1313, geo=new Location(37.44698, -122.161), phone="+16503233900"^^tt:phone_number }, C: { id="vStWaPrdP4ysnKpj0WoHJQ"^^com.yelp:restaurant("Rangoon Ruby"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/q9vLRl72wFGCI19S_nwBvA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/rangoon-ruby-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["asianfusion"^^com.yelp:restaurant_cuisine("Asian Fusion"), "burmese"^^com.yelp:restaurant_cuisine("Burmese")], price=enum moderate, rating=3.5, reviewCount=1590, geo=new Location(37.445122, -122.163104), phone="+16503236543"^^tt:phone_number }, C: { id="-g_tUhyvUFbxOs0aB28j1w"^^com.yelp:restaurant("Palo Alto Creamery"), image_url="https://s3-media4.fl.yelpcdn.com/bphoto/a2J68P_xcM8KqPyWm0VEyA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/palo-alto-creamery-palo-alto-2?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["diners"^^com.yelp:restaurant_cuisine("Diners"), "breakfast_brunch"^^com.yelp:restaurant_cuisine("Breakfast & Brunch")], price=enum moderate, rating=4, reviewCount=1359, geo=new Location(37.4438831241214, -122.16178176729), phone="+16503233131"^^tt:phone_number } C: ]] C: #[count=50] C: #[more=true]; C: [price] of @com.yelp.restaurant() filter id == "vhfPni9pci29SEHrN1OtRg"^^com.yelp:restaurant C: #[results=[ C: { id="vhfPni9pci29SEHrN1OtRg"^^com.yelp:restaurant("Ramen Nagi"), price=enum moderate } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Ramen Nagi is a moderate restaurant. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_one; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.yelp.restaurant() filter price == enum expensive; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.yelp.restaurant() filter price == enum expensive; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.yelp.restaurant() C: #[results=[ C: { id="vhfPni9pci29SEHrN1OtRg"^^com.yelp:restaurant("Ramen Nagi"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/OKCXWIEFIkNdvkqETl0Bqw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/ramen-nagi-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["ramen"^^com.yelp:restaurant_cuisine("Ramen"), "noodles"^^com.yelp:restaurant_cuisine("Noodles")], price=enum moderate, rating=4.5, reviewCount=1625, geo=new Location(37.445523, -122.1607073261) }, C: { id="1vMgajRAI3lYwuCeGX58oQ"^^com.yelp:restaurant("Evvia Estiatorio"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/Q3lgbcNuRbdrITtLN5CQgQ/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/evvia-estiatorio-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["greek"^^com.yelp:restaurant_cuisine("Greek")], price=enum expensive, rating=4.5, reviewCount=2393, geo=new Location(37.445077, -122.163778), phone="+16503260983"^^tt:phone_number }, C: { id="KyU7XWDPclmZ3BpdIsd_0Q"^^com.yelp:restaurant("Oren's Hummus"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/vOWdAh4DKhMisL0K4YzXtA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/orens-hummus-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["mediterranean"^^com.yelp:restaurant_cuisine("Mediterranean"), "mideastern"^^com.yelp:restaurant_cuisine("Middle Eastern")], price=enum moderate, rating=4, reviewCount=2248, geo=new Location(37.445717, -122.162173), phone="+16507526492"^^tt:phone_number, openingHours=new RecurrentTimeSpecification({ beginTime=new Time(11, 0), endTime=new Time(14, 30), interval=86400000ms }) }, C: { id="jwaXc3VVGDFQu1aCoiXwdw"^^com.yelp:restaurant("NOLA Restaurant & Bar"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/tna5SSdgZq3fFxoi4-Xx7A/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/nola-restaurant-and-bar-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["cajun"^^com.yelp:restaurant_cuisine("Cajun/Creole"), "newamerican"^^com.yelp:restaurant_cuisine("American (New)")], price=enum expensive, rating=3.5, reviewCount=2821, geo=new Location(37.4450225830078, -122.161323547363), phone="+16503282722"^^tt:phone_number }, C: { id="0WDM3JlNBvk2MeOTlu03mg"^^com.yelp:restaurant("Coconuts Caribbean Restaurant & Bar"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/mA7Jp9irSTjUq8yneVh2IQ/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/coconuts-caribbean-restaurant-and-bar-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["caribbean"^^com.yelp:restaurant_cuisine("Caribbean")], price=enum moderate, rating=4, reviewCount=2230, geo=new Location(37.44381, -122.16027), phone="+16503299533"^^tt:phone_number }, C: { id="_mkNOTiQ-kbc1kJHo9RoVA"^^com.yelp:restaurant("Tamarine Restaurant"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/u6KX5WLtw23IMcIJgOSSCw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/tamarine-restaurant-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["vietnamese"^^com.yelp:restaurant_cuisine("Vietnamese")], price=enum expensive, rating=4, reviewCount=1833, geo=new Location(37.44881, -122.15833), phone="+16503258500"^^tt:phone_number }, C: { id="TtYbsOqn7vLKhva0AuKQQQ"^^com.yelp:restaurant("Philz Coffee"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/P9zDXYxfa8YoBz85MF7l7Q/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/philz-coffee-palo-alto-6?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["breakfast_brunch"^^com.yelp:restaurant_cuisine("Breakfast & Brunch")], price=enum cheap, rating=4.5, reviewCount=796, geo=new Location(37.442174, -122.161583), phone="+16503212161"^^tt:phone_number }, C: { id="pi9MMjHWtVxC9eTnMk7e_w"^^com.yelp:restaurant("Crepevine Restaurant"), image_url="https://s3-media1.fl.yelpcdn.com/bphoto/ZSDMh6BuvTfxYLuEWz2-8w/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/crepevine-restaurant-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["breakfast_brunch"^^com.yelp:restaurant_cuisine("Breakfast & Brunch"), "creperies"^^com.yelp:restaurant_cuisine("Crepes"), "newamerican"^^com.yelp:restaurant_cuisine("American (New)")], price=enum moderate, rating=4, reviewCount=1313, geo=new Location(37.44698, -122.161), phone="+16503233900"^^tt:phone_number }, C: { id="vStWaPrdP4ysnKpj0WoHJQ"^^com.yelp:restaurant("Rangoon Ruby"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/q9vLRl72wFGCI19S_nwBvA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/rangoon-ruby-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["asianfusion"^^com.yelp:restaurant_cuisine("Asian Fusion"), "burmese"^^com.yelp:restaurant_cuisine("Burmese")], price=enum moderate, rating=3.5, reviewCount=1590, geo=new Location(37.445122, -122.163104), phone="+16503236543"^^tt:phone_number }, C: { id="-g_tUhyvUFbxOs0aB28j1w"^^com.yelp:restaurant("Palo Alto Creamery"), image_url="https://s3-media4.fl.yelpcdn.com/bphoto/a2J68P_xcM8KqPyWm0VEyA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/palo-alto-creamery-palo-alto-2?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["diners"^^com.yelp:restaurant_cuisine("Diners"), "breakfast_brunch"^^com.yelp:restaurant_cuisine("Breakfast & Brunch")], price=enum moderate, rating=4, reviewCount=1359, geo=new Location(37.4438831241214, -122.16178176729), phone="+16503233131"^^tt:phone_number } C: ]] C: #[count=50] C: #[more=true]; C: [price] of @com.yelp.restaurant() filter id == "vhfPni9pci29SEHrN1OtRg"^^com.yelp:restaurant C: #[results=[ C: { id="vhfPni9pci29SEHrN1OtRg"^^com.yelp:restaurant("Ramen Nagi"), price=enum moderate } C: ]]; C: @com.yelp.restaurant() filter price == enum expensive C: #[results=[ C: { id="1vMgajRAI3lYwuCeGX58oQ"^^com.yelp:restaurant("Evvia Estiatorio"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/Q3lgbcNuRbdrITtLN5CQgQ/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/evvia-estiatorio-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["greek"^^com.yelp:restaurant_cuisine("Greek")], price=enum expensive, rating=4.5, reviewCount=2393, geo=new Location(37.445077, -122.163778), phone="+16503260983"^^tt:phone_number }, C: { id="jwaXc3VVGDFQu1aCoiXwdw"^^com.yelp:restaurant("NOLA Restaurant & Bar"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/tna5SSdgZq3fFxoi4-Xx7A/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/nola-restaurant-and-bar-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["cajun"^^com.yelp:restaurant_cuisine("Cajun/Creole"), "newamerican"^^com.yelp:restaurant_cuisine("American (New)")], price=enum expensive, rating=3.5, reviewCount=2821, geo=new Location(37.4450225830078, -122.161323547363), phone="+16503282722"^^tt:phone_number }, C: { id="_mkNOTiQ-kbc1kJHo9RoVA"^^com.yelp:restaurant("Tamarine Restaurant"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/u6KX5WLtw23IMcIJgOSSCw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/tamarine-restaurant-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["vietnamese"^^com.yelp:restaurant_cuisine("Vietnamese")], price=enum expensive, rating=4, reviewCount=1833, geo=new Location(37.44881, -122.15833), phone="+16503258500"^^tt:phone_number }, C: { id="lQS2YhPTyMlkTbDROjYK0g"^^com.yelp:restaurant("Joya Restaurant & Lounge"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/M4Fzvha8f79dAwth76QX4Q/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/joya-restaurant-and-lounge-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["latin"^^com.yelp:restaurant_cuisine("Latin American"), "tapas"^^com.yelp:restaurant_cuisine("Tapas Bars")], price=enum expensive, rating=3.5, reviewCount=1614, geo=new Location(37.4464715, -122.1612308), phone="+16508539800"^^tt:phone_number }, C: { id="d_IBp5wNVn5wDlNkblAL8w"^^com.yelp:restaurant("Fleming's Prime Steakhouse & Wine Bar - Palo Alto"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/25MJYpVfRpZlHja_j-u1vA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/flemings-prime-steakhouse-and-wine-bar-palo-alto-palo-alto-2?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["steak"^^com.yelp:restaurant_cuisine("Steakhouses"), "seafood"^^com.yelp:restaurant_cuisine("Seafood")], price=enum expensive, rating=3.5, reviewCount=1364, geo=new Location(37.4445700266543, -122.170329823122), phone="+16503298457"^^tt:phone_number }, C: { id="-EMppAncnOot2p839R3X2g"^^com.yelp:restaurant("Zola"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/pqxovAhUtRgB4HEMVKxuFA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/zola-palo-alto-2?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["french"^^com.yelp:restaurant_cuisine("French")], price=enum expensive, rating=4.5, reviewCount=356, geo=new Location(37.4453893758217, -122.160659772584), phone="+16505210651"^^tt:phone_number }, C: { id="njVrdjtYX6EwsuCo1Qbp6A"^^com.yelp:restaurant("Saint Michael's Alley"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/hKaSPEW3IR39SMtOu6KZYA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/saint-michaels-alley-palo-alto-2?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["newamerican"^^com.yelp:restaurant_cuisine("American (New)")], price=enum expensive, rating=4, reviewCount=933, geo=new Location(37.44153, -122.15957), phone="+16503262530"^^tt:phone_number }, C: { id="wPKE3HvLo797DEveV7Ozbg"^^com.yelp:restaurant("Bird Dog"), image_url="https://s3-media4.fl.yelpcdn.com/bphoto/yiW9K4EeyC2EJ9u2xc0Q7g/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/bird-dog-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["newamerican"^^com.yelp:restaurant_cuisine("American (New)")], price=enum expensive, rating=4, reviewCount=544, geo=new Location(37.44567, -122.16321), phone="+16506568180"^^tt:phone_number }, C: { id="iX8o07wSfvhe1laJhUzsFA"^^com.yelp:restaurant("The Cambridge Chop House"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/QEvjFKuiHXFDkkTQlgKBhA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/the-cambridge-chop-house-cambridge?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["steak"^^com.yelp:restaurant_cuisine("Steakhouses"), "british"^^com.yelp:restaurant_cuisine("British")], price=enum expensive, rating=4.5, reviewCount=46, geo=new Location(52.204257, 0.117823), phone="+441223359506"^^tt:phone_number }, C: { id="btRAfitquaXgeB-2vuWxNQ"^^com.yelp:restaurant("The Free Press"), image_url="https://s3-media4.fl.yelpcdn.com/bphoto/Oq3r_QuneatEOt-poxpGuQ/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/the-free-press-cambridge?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["british"^^com.yelp:restaurant_cuisine("British")], price=enum expensive, rating=4.5, reviewCount=35, geo=new Location(52.204808195527, 0.13039591109936), phone="+441223368337"^^tt:phone_number } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: I see Evvia Estiatorio, NOLA Restaurant & Bar, and Tamarine Restaurant. Evvia Estiatorio is near [Latitude: 37.445 deg, Longitude: -122.164 deg], NOLA Restaurant & Bar is near [Latitude: 37.445 deg, Longitude: -122.161 deg], and Tamarine Restaurant is near [Latitude: 37.449 deg, Longitude: -122.158 deg]. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_three; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.cancel; UT: $dialogue @org.thingpedia.dialogue.transaction.cancel; C: $dialogue @org.thingpedia.dialogue.transaction.cancel; C: @com.yelp.restaurant() C: #[results=[ C: { id="vhfPni9pci29SEHrN1OtRg"^^com.yelp:restaurant("Ramen Nagi"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/OKCXWIEFIkNdvkqETl0Bqw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/ramen-nagi-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["ramen"^^com.yelp:restaurant_cuisine("Ramen"), "noodles"^^com.yelp:restaurant_cuisine("Noodles")], price=enum moderate, rating=4.5, reviewCount=1625, geo=new Location(37.445523, -122.1607073261) }, C: { id="1vMgajRAI3lYwuCeGX58oQ"^^com.yelp:restaurant("Evvia Estiatorio"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/Q3lgbcNuRbdrITtLN5CQgQ/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/evvia-estiatorio-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["greek"^^com.yelp:restaurant_cuisine("Greek")], price=enum expensive, rating=4.5, reviewCount=2393, geo=new Location(37.445077, -122.163778), phone="+16503260983"^^tt:phone_number }, C: { id="KyU7XWDPclmZ3BpdIsd_0Q"^^com.yelp:restaurant("Oren's Hummus"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/vOWdAh4DKhMisL0K4YzXtA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/orens-hummus-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["mediterranean"^^com.yelp:restaurant_cuisine("Mediterranean"), "mideastern"^^com.yelp:restaurant_cuisine("Middle Eastern")], price=enum moderate, rating=4, reviewCount=2248, geo=new Location(37.445717, -122.162173), phone="+16507526492"^^tt:phone_number, openingHours=new RecurrentTimeSpecification({ beginTime=new Time(11, 0), endTime=new Time(14, 30), interval=86400000ms }) }, C: { id="jwaXc3VVGDFQu1aCoiXwdw"^^com.yelp:restaurant("NOLA Restaurant & Bar"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/tna5SSdgZq3fFxoi4-Xx7A/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/nola-restaurant-and-bar-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["cajun"^^com.yelp:restaurant_cuisine("Cajun/Creole"), "newamerican"^^com.yelp:restaurant_cuisine("American (New)")], price=enum expensive, rating=3.5, reviewCount=2821, geo=new Location(37.4450225830078, -122.161323547363), phone="+16503282722"^^tt:phone_number }, C: { id="0WDM3JlNBvk2MeOTlu03mg"^^com.yelp:restaurant("Coconuts Caribbean Restaurant & Bar"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/mA7Jp9irSTjUq8yneVh2IQ/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/coconuts-caribbean-restaurant-and-bar-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["caribbean"^^com.yelp:restaurant_cuisine("Caribbean")], price=enum moderate, rating=4, reviewCount=2230, geo=new Location(37.44381, -122.16027), phone="+16503299533"^^tt:phone_number }, C: { id="_mkNOTiQ-kbc1kJHo9RoVA"^^com.yelp:restaurant("Tamarine Restaurant"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/u6KX5WLtw23IMcIJgOSSCw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/tamarine-restaurant-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["vietnamese"^^com.yelp:restaurant_cuisine("Vietnamese")], price=enum expensive, rating=4, reviewCount=1833, geo=new Location(37.44881, -122.15833), phone="+16503258500"^^tt:phone_number }, C: { id="TtYbsOqn7vLKhva0AuKQQQ"^^com.yelp:restaurant("Philz Coffee"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/P9zDXYxfa8YoBz85MF7l7Q/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/philz-coffee-palo-alto-6?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["breakfast_brunch"^^com.yelp:restaurant_cuisine("Breakfast & Brunch")], price=enum cheap, rating=4.5, reviewCount=796, geo=new Location(37.442174, -122.161583), phone="+16503212161"^^tt:phone_number }, C: { id="pi9MMjHWtVxC9eTnMk7e_w"^^com.yelp:restaurant("Crepevine Restaurant"), image_url="https://s3-media1.fl.yelpcdn.com/bphoto/ZSDMh6BuvTfxYLuEWz2-8w/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/crepevine-restaurant-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["breakfast_brunch"^^com.yelp:restaurant_cuisine("Breakfast & Brunch"), "creperies"^^com.yelp:restaurant_cuisine("Crepes"), "newamerican"^^com.yelp:restaurant_cuisine("American (New)")], price=enum moderate, rating=4, reviewCount=1313, geo=new Location(37.44698, -122.161), phone="+16503233900"^^tt:phone_number }, C: { id="vStWaPrdP4ysnKpj0WoHJQ"^^com.yelp:restaurant("Rangoon Ruby"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/q9vLRl72wFGCI19S_nwBvA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/rangoon-ruby-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["asianfusion"^^com.yelp:restaurant_cuisine("Asian Fusion"), "burmese"^^com.yelp:restaurant_cuisine("Burmese")], price=enum moderate, rating=3.5, reviewCount=1590, geo=new Location(37.445122, -122.163104), phone="+16503236543"^^tt:phone_number }, C: { id="-g_tUhyvUFbxOs0aB28j1w"^^com.yelp:restaurant("Palo Alto Creamery"), image_url="https://s3-media4.fl.yelpcdn.com/bphoto/a2J68P_xcM8KqPyWm0VEyA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/palo-alto-creamery-palo-alto-2?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["diners"^^com.yelp:restaurant_cuisine("Diners"), "breakfast_brunch"^^com.yelp:restaurant_cuisine("Breakfast & Brunch")], price=enum moderate, rating=4, reviewCount=1359, geo=new Location(37.4438831241214, -122.16178176729), phone="+16503233131"^^tt:phone_number } C: ]] C: #[count=50] C: #[more=true]; C: [price] of @com.yelp.restaurant() filter id == "vhfPni9pci29SEHrN1OtRg"^^com.yelp:restaurant C: #[results=[ C: { id="vhfPni9pci29SEHrN1OtRg"^^com.yelp:restaurant("Ramen Nagi"), price=enum moderate } C: ]]; C: @com.yelp.restaurant() filter price == enum expensive C: #[results=[ C: { id="1vMgajRAI3lYwuCeGX58oQ"^^com.yelp:restaurant("Evvia Estiatorio"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/Q3lgbcNuRbdrITtLN5CQgQ/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/evvia-estiatorio-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["greek"^^com.yelp:restaurant_cuisine("Greek")], price=enum expensive, rating=4.5, reviewCount=2393, geo=new Location(37.445077, -122.163778), phone="+16503260983"^^tt:phone_number }, C: { id="jwaXc3VVGDFQu1aCoiXwdw"^^com.yelp:restaurant("NOLA Restaurant & Bar"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/tna5SSdgZq3fFxoi4-Xx7A/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/nola-restaurant-and-bar-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["cajun"^^com.yelp:restaurant_cuisine("Cajun/Creole"), "newamerican"^^com.yelp:restaurant_cuisine("American (New)")], price=enum expensive, rating=3.5, reviewCount=2821, geo=new Location(37.4450225830078, -122.161323547363), phone="+16503282722"^^tt:phone_number }, C: { id="_mkNOTiQ-kbc1kJHo9RoVA"^^com.yelp:restaurant("Tamarine Restaurant"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/u6KX5WLtw23IMcIJgOSSCw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/tamarine-restaurant-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["vietnamese"^^com.yelp:restaurant_cuisine("Vietnamese")], price=enum expensive, rating=4, reviewCount=1833, geo=new Location(37.44881, -122.15833), phone="+16503258500"^^tt:phone_number }, C: { id="lQS2YhPTyMlkTbDROjYK0g"^^com.yelp:restaurant("Joya Restaurant & Lounge"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/M4Fzvha8f79dAwth76QX4Q/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/joya-restaurant-and-lounge-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["latin"^^com.yelp:restaurant_cuisine("Latin American"), "tapas"^^com.yelp:restaurant_cuisine("Tapas Bars")], price=enum expensive, rating=3.5, reviewCount=1614, geo=new Location(37.4464715, -122.1612308), phone="+16508539800"^^tt:phone_number }, C: { id="d_IBp5wNVn5wDlNkblAL8w"^^com.yelp:restaurant("Fleming's Prime Steakhouse & Wine Bar - Palo Alto"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/25MJYpVfRpZlHja_j-u1vA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/flemings-prime-steakhouse-and-wine-bar-palo-alto-palo-alto-2?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["steak"^^com.yelp:restaurant_cuisine("Steakhouses"), "seafood"^^com.yelp:restaurant_cuisine("Seafood")], price=enum expensive, rating=3.5, reviewCount=1364, geo=new Location(37.4445700266543, -122.170329823122), phone="+16503298457"^^tt:phone_number }, C: { id="-EMppAncnOot2p839R3X2g"^^com.yelp:restaurant("Zola"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/pqxovAhUtRgB4HEMVKxuFA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/zola-palo-alto-2?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["french"^^com.yelp:restaurant_cuisine("French")], price=enum expensive, rating=4.5, reviewCount=356, geo=new Location(37.4453893758217, -122.160659772584), phone="+16505210651"^^tt:phone_number }, C: { id="njVrdjtYX6EwsuCo1Qbp6A"^^com.yelp:restaurant("Saint Michael's Alley"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/hKaSPEW3IR39SMtOu6KZYA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/saint-michaels-alley-palo-alto-2?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["newamerican"^^com.yelp:restaurant_cuisine("American (New)")], price=enum expensive, rating=4, reviewCount=933, geo=new Location(37.44153, -122.15957), phone="+16503262530"^^tt:phone_number }, C: { id="wPKE3HvLo797DEveV7Ozbg"^^com.yelp:restaurant("Bird Dog"), image_url="https://s3-media4.fl.yelpcdn.com/bphoto/yiW9K4EeyC2EJ9u2xc0Q7g/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/bird-dog-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["newamerican"^^com.yelp:restaurant_cuisine("American (New)")], price=enum expensive, rating=4, reviewCount=544, geo=new Location(37.44567, -122.16321), phone="+16506568180"^^tt:phone_number }, C: { id="iX8o07wSfvhe1laJhUzsFA"^^com.yelp:restaurant("The Cambridge Chop House"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/QEvjFKuiHXFDkkTQlgKBhA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/the-cambridge-chop-house-cambridge?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["steak"^^com.yelp:restaurant_cuisine("Steakhouses"), "british"^^com.yelp:restaurant_cuisine("British")], price=enum expensive, rating=4.5, reviewCount=46, geo=new Location(52.204257, 0.117823), phone="+441223359506"^^tt:phone_number }, C: { id="btRAfitquaXgeB-2vuWxNQ"^^com.yelp:restaurant("The Free Press"), image_url="https://s3-media4.fl.yelpcdn.com/bphoto/Oq3r_QuneatEOt-poxpGuQ/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/the-free-press-cambridge?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["british"^^com.yelp:restaurant_cuisine("British")], price=enum expensive, rating=4.5, reviewCount=35, geo=new Location(52.204808195527, 0.13039591109936), phone="+441223368337"^^tt:phone_number } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Alright, let me know if I can help you with anything else! AT: $dialogue @org.thingpedia.dialogue.transaction.sys_end; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @org.thingpedia.weather.current(location=new Location(37.442156, -122.1634471, "Palo Alto, California")); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @org.thingpedia.weather.current(location=new Location(37.442156, -122.1634471, "Palo Alto, California")); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @org.thingpedia.weather.current(location=new Location(37.442156, -122.1634471, "Palo Alto, California")) C: #[results=[ C: { location=new Location(37.442156, -122.1634471, "Palo Alto, California"), temperature=15.6C, wind_speed=3.4mps, humidity=91.3, cloudiness=4.7, fog=0, status=enum sunny, icon="http://api.met.no/weatherapi/weathericon/1.1/?symbol=1;content_type=image/png"^^tt:picture } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: The current weather in Palo Alto, California is sunny. The temperature is 60 degrees Fahrenheit and the humidity is 91.3 %. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: [temperature] of @org.thingpedia.weather.current(location=new Location(37.442156, -122.1634471, "Palo Alto, California")); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: [temperature] of @org.thingpedia.weather.current(location=new Location(37.442156, -122.1634471, "Palo Alto, California")); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @org.thingpedia.weather.current(location=new Location(37.442156, -122.1634471, "Palo Alto, California")) C: #[results=[ C: { location=new Location(37.442156, -122.1634471, "Palo Alto, California"), temperature=15.6C, wind_speed=3.4mps, humidity=91.3, cloudiness=4.7, fog=0, status=enum sunny, icon="http://api.met.no/weatherapi/weathericon/1.1/?symbol=1;content_type=image/png"^^tt:picture } C: ]]; C: [temperature] of @org.thingpedia.weather.current(location=new Location(37.442156, -122.1634471, "Palo Alto, California")) C: #[results=[ C: { location=new Location(37.442156, -122.1634471, "Palo Alto, California"), temperature=15.6C, status=enum sunny } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: The temperature is 60 degrees Fahrenheit. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @org.thingpedia.weather.current(location=$?); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @org.thingpedia.weather.current(location=$?); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @org.thingpedia.weather.current(location=$?); #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: What location do you want the current weather for? AT: $dialogue @org.thingpedia.dialogue.transaction.sys_slot_fill(location); AT: @org.thingpedia.weather.current(location=$?); #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $answer(new Location(37.442156, -122.1634471, "Palo Alto, California")); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @org.thingpedia.weather.current(location=new Location(37.442156, -122.1634471, "Palo Alto, California")); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @org.thingpedia.weather.current(location=new Location(37.442156, -122.1634471, "Palo Alto, California")) C: #[results=[ C: { location=new Location(37.442156, -122.1634471, "Palo Alto, California"), temperature=15.6C, wind_speed=3.4mps, humidity=91.3, cloudiness=4.7, fog=0, status=enum sunny, icon="http://api.met.no/weatherapi/weathericon/1.1/?symbol=1;content_type=image/png"^^tt:picture } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: The current weather in Palo Alto, California is sunny. The temperature is 60 degrees Fahrenheit and the humidity is 91.3 %. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.spotify.song() filter id =~ "despacito" => @com.spotify.play(playable=id); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.spotify.song() filter id =~ "despacito" => @com.spotify.play(playable=id); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: (@com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).song() filter id =~ "despacito")[1] => @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).play(playable=id) C: #[results=[ C: { playable="spotify:track:6habFhsOp2NvshLv26DqMb"^^com.spotify:playable("Despacito"), device="str:ENTITY_com.spotify:device::36:"^^com.spotify:device, __device="com.spotify-7"^^tt:device_id("Some Device 7") } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: I played Despacito on Spotify. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_action_success; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.spotify.song() filter contains(artists, null^^com.spotify:artist("ariana grande")) => @com.spotify.play(playable=id); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.spotify.song() filter contains(artists, null^^com.spotify:artist("ariana grande")) => @com.spotify.play(playable=id); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).song() filter contains(artists, "spotify:artist:66CXWjxzNUsdJxJ2JdwvnR"^^com.spotify:artist("Ariana Grande")) => @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).play(playable=id) C: #[results=[ C: { playable="spotify:track:6ocbgoVGwYJhOv1GgI9NsF"^^com.spotify:playable("7 rings"), device="str:ENTITY_com.spotify:device::36:"^^com.spotify:device, __device="com.spotify-7"^^tt:device_id("Some Device 7") }, C: { playable="spotify:track:6va6SjWz457IOZidBppAhz"^^com.spotify:playable("7 rings - live"), device="str:ENTITY_com.spotify:device::15:"^^com.spotify:device, __device="com.spotify-7"^^tt:device_id("Some Device 7") }, C: { playable="spotify:track:6AyI8UGx8Y4peb7pLOy2pf"^^com.spotify:playable("7 rings (feat. 2 Chainz) - Remix"), device="str:ENTITY_com.spotify:device::9:"^^com.spotify:device, __device="com.spotify-7"^^tt:device_id("Some Device 7") }, C: { playable="spotify:track:4HBZA5flZLE435QTztThqH"^^com.spotify:playable("Stuck with U (with Justin Bieber)"), device="str:ENTITY_com.spotify:device::19:"^^com.spotify:device, __device="com.spotify-7"^^tt:device_id("Some Device 7") }, C: { playable="spotify:track:6ocbgoVGwYJhOv1GgI9NsF"^^com.spotify:playable("7 rings"), device="str:ENTITY_com.spotify:device::14:"^^com.spotify:device, __device="com.spotify-7"^^tt:device_id("Some Device 7") }, C: { playable="spotify:track:3e9HZxeyfWwjeyPAMmWSSQ"^^com.spotify:playable("thank u, next"), device="str:ENTITY_com.spotify:device::15:"^^com.spotify:device, __device="com.spotify-7"^^tt:device_id("Some Device 7") }, C: { playable="spotify:track:2qT1uLXPVPzGgFOx4jtEuo"^^com.spotify:playable("no tears left to cry"), device="str:ENTITY_com.spotify:device::40:"^^com.spotify:device, __device="com.spotify-7"^^tt:device_id("Some Device 7") }, C: { playable="spotify:track:0Ryd8975WihbObpp5cPW1t"^^com.spotify:playable("boyfriend (with Social House)"), device="str:ENTITY_com.spotify:device::31:"^^com.spotify:device, __device="com.spotify-7"^^tt:device_id("Some Device 7") }, C: { playable="spotify:track:4kV4N9D1iKVxx1KLvtTpjS"^^com.spotify:playable("break up with your girlfriend, i'm bored"), device="str:ENTITY_com.spotify:device::23:"^^com.spotify:device, __device="com.spotify-7"^^tt:device_id("Some Device 7") }, C: { playable="spotify:track:5OCJzvD7sykQEKHH7qAC3C"^^com.spotify:playable("God is a woman"), device="str:ENTITY_com.spotify:device::40:"^^com.spotify:device, __device="com.spotify-7"^^tt:device_id("Some Device 7") } C: ]] C: #[count=23]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: I played songs by Ariana Grande on Spotify. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_action_success; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.spotify.song() filter album == null^^com.spotify:album("folklore") => @com.spotify.play(playable=id); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.spotify.song() filter album == null^^com.spotify:album("folklore") => @com.spotify.play(playable=id); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).song() filter album == "spotify:album:2fenSS68JI1h4Fo296JfGr"^^com.spotify:album("folklore") => @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).play(playable=id) C: #[results=[ C: { playable="spotify:track:4R2kfaDFhslZEMJqAFNpdd"^^com.spotify:playable("cardigan"), device="str:ENTITY_com.spotify:device::36:"^^com.spotify:device, __device="com.spotify-7"^^tt:device_id("Some Device 7") }, C: { playable="spotify:track:4pvb0WLRcMtbPGmtejJJ6y"^^com.spotify:playable("exile (feat. Bon Iver)"), device="str:ENTITY_com.spotify:device::15:"^^com.spotify:device, __device="com.spotify-7"^^tt:device_id("Some Device 7") }, C: { playable="spotify:track:0Jlcvv8IykzHaSmj49uNW8"^^com.spotify:playable("the 1"), device="str:ENTITY_com.spotify:device::9:"^^com.spotify:device, __device="com.spotify-7"^^tt:device_id("Some Device 7") }, C: { playable="spotify:track:2Eeur20xVqfUoM3Q7EFPFt"^^com.spotify:playable("the last great american dynasty"), device="str:ENTITY_com.spotify:device::19:"^^com.spotify:device, __device="com.spotify-7"^^tt:device_id("Some Device 7") }, C: { playable="spotify:track:1MgV7FIyNxIG7WzMRJV5HC"^^com.spotify:playable("my tears ricochet"), device="str:ENTITY_com.spotify:device::14:"^^com.spotify:device, __device="com.spotify-7"^^tt:device_id("Some Device 7") }, C: { playable="spotify:track:3hUxzQpSfdDqwM3ZTFQY0K"^^com.spotify:playable("august"), device="str:ENTITY_com.spotify:device::15:"^^com.spotify:device, __device="com.spotify-7"^^tt:device_id("Some Device 7") }, C: { playable="spotify:track:6VsvKPJ4xjVNKpI8VVZ3SV"^^com.spotify:playable("invisible string"), device="str:ENTITY_com.spotify:device::40:"^^com.spotify:device, __device="com.spotify-7"^^tt:device_id("Some Device 7") }, C: { playable="spotify:track:0ZNU020wNYvgW84iljPkPP"^^com.spotify:playable("mirrorball"), device="str:ENTITY_com.spotify:device::31:"^^com.spotify:device, __device="com.spotify-7"^^tt:device_id("Some Device 7") }, C: { playable="spotify:track:6KJqZcs9XDgVck7Lg9QOTC"^^com.spotify:playable("seven"), device="str:ENTITY_com.spotify:device::23:"^^com.spotify:device, __device="com.spotify-7"^^tt:device_id("Some Device 7") }, C: { playable="spotify:track:7kt9e9LFSpN1zQtYEl19o1"^^com.spotify:playable("this is me trying"), device="str:ENTITY_com.spotify:device::40:"^^com.spotify:device, __device="com.spotify-7"^^tt:device_id("Some Device 7") } C: ]] C: #[count=22]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: I played songs in the album folklore on Spotify. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_action_success; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.icanhazdadjoke.get(); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.icanhazdadjoke.get(); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.icanhazdadjoke(id="com.icanhazdadjoke-8"^^tt:device_id("Some Device 8")).get() C: #[results=[ C: { id="A5ozsH6pWnb"^^com.icanhazdadjoke:id, text="What do you call a troublesome Canadian high schooler? A poutine" } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: What do you call a troublesome Canadian high schooler? A poutine. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.icanhazdadjoke.get(); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.icanhazdadjoke.get(); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.icanhazdadjoke(id="com.icanhazdadjoke-8"^^tt:device_id("Some Device 8")).get() C: #[results=[ C: { id="A5ozsH6pWnb"^^com.icanhazdadjoke:id, text="What do you call a troublesome Canadian high schooler? A poutine" } C: ]]; C: @com.icanhazdadjoke(id="com.icanhazdadjoke-8"^^tt:device_id("Some Device 8")).get() C: #[results=[ C: { id="lGe2Tvskyd"^^com.icanhazdadjoke:id, text="Why are fish so smart?\nBecause they live in schools!" } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Why are fish so smart? Because they live in schools! AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.icanhazdadjoke.get(); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.icanhazdadjoke.get(); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.icanhazdadjoke(id="com.icanhazdadjoke-8"^^tt:device_id("Some Device 8")).get() C: #[results=[ C: { id="A5ozsH6pWnb"^^com.icanhazdadjoke:id, text="What do you call a troublesome Canadian high schooler? A poutine" } C: ]]; C: @com.icanhazdadjoke(id="com.icanhazdadjoke-8"^^tt:device_id("Some Device 8")).get() C: #[results=[ C: { id="lGe2Tvskyd"^^com.icanhazdadjoke:id, text="Why are fish so smart?\nBecause they live in schools!" } C: ]]; C: @com.icanhazdadjoke(id="com.icanhazdadjoke-8"^^tt:device_id("Some Device 8")).get() C: #[results=[ C: { id="K6UKmykqrjb"^^com.icanhazdadjoke:id, text="What is a witch's favorite subject in school? Spelling! " } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: What is a witch's favorite subject in school? Spelling! AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.icanhazdadjoke.get(); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.icanhazdadjoke.get(); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.icanhazdadjoke(id="com.icanhazdadjoke-8"^^tt:device_id("Some Device 8")).get() C: #[results=[ C: { id="A5ozsH6pWnb"^^com.icanhazdadjoke:id, text="What do you call a troublesome Canadian high schooler? A poutine" } C: ]]; C: @com.icanhazdadjoke(id="com.icanhazdadjoke-8"^^tt:device_id("Some Device 8")).get() C: #[results=[ C: { id="lGe2Tvskyd"^^com.icanhazdadjoke:id, text="Why are fish so smart?\nBecause they live in schools!" } C: ]]; C: @com.icanhazdadjoke(id="com.icanhazdadjoke-8"^^tt:device_id("Some Device 8")).get() C: #[results=[ C: { id="K6UKmykqrjb"^^com.icanhazdadjoke:id, text="What is a witch's favorite subject in school? Spelling! " } C: ]]; C: @com.icanhazdadjoke(id="com.icanhazdadjoke-8"^^tt:device_id("Some Device 8")).get() C: #[results=[ C: { id="K6UKmykqrjb"^^com.icanhazdadjoke:id, text="What is a witch's favorite subject in school? Spelling! " } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: What is a witch's favorite subject in school? Spelling! AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.twitter.post(); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.twitter.post(); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.twitter(id="twitter-bar"^^tt:device_id("Twitter Account bar")).post(); #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: You have multiple Twitter devices. Which one do you want to use? A: What do you want to tweet? AT: $dialogue @org.thingpedia.dialogue.transaction.sys_slot_fill(status); AT: @com.twitter(id="twitter-bar"^^tt:device_id("Twitter Account bar")).post(); #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $nevermind; UT: $dialogue @org.thingpedia.dialogue.transaction.cancel; C: $dialogue @org.thingpedia.dialogue.transaction.cancel; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Alright, let me know if I can help you with anything else! AT: $dialogue @org.thingpedia.dialogue.transaction.sys_end; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.yelp.restaurant() filter contains(cuisines, null^^com.yelp:restaurant_cuisine("italian")); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.yelp.restaurant() filter contains(cuisines, null^^com.yelp:restaurant_cuisine("italian")); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.yelp.restaurant() filter contains(cuisines, "italian"^^com.yelp:restaurant_cuisine("Italian")) C: #[results=[ C: { id="OLa29RISTT2raUNPLo-9xw"^^com.yelp:restaurant("Patxi's Pizza"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/Jvow48SJ-SfCcxLt0a7uWg/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/patxis-pizza-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["pizza"^^com.yelp:restaurant_cuisine("Pizza"), "salad"^^com.yelp:restaurant_cuisine("Salad"), "italian"^^com.yelp:restaurant_cuisine("Italian")], price=enum moderate, rating=3.5, reviewCount=1700, geo=new Location(37.445153, -122.163337), phone="+16504739999"^^tt:phone_number }, C: { id="Tuq1Ht5QoISVViAlAnyrZg"^^com.yelp:restaurant("Cafe Borrone"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/jKOuPFIcqdtG47gRHqv1WQ/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/cafe-borrone-menlo-park?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["breakfast_brunch"^^com.yelp:restaurant_cuisine("Breakfast & Brunch"), "italian"^^com.yelp:restaurant_cuisine("Italian"), "cafes"^^com.yelp:restaurant_cuisine("Cafes")], price=enum moderate, rating=4, reviewCount=1727, geo=new Location(37.45368, -122.18205), phone="+16503270830"^^tt:phone_number }, C: { id="d62LElGhYd65kXXCimgPpg"^^com.yelp:restaurant("Osteria Toscana"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/eNDUayX7OPzh1MZFWB9Xpg/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/osteria-toscana-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["italian"^^com.yelp:restaurant_cuisine("Italian")], price=enum moderate, rating=3.5, reviewCount=938, geo=new Location(37.4445, -122.16118), phone="+16503285700"^^tt:phone_number }, C: { id="pLqiFFz1JScp8wMMyXcx-w"^^com.yelp:restaurant("Terún"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/w1yuXOCOAFcL_TVkoFed4Q/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/ter%C3%BAn-palo-alto-3?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["pizza"^^com.yelp:restaurant_cuisine("Pizza"), "italian"^^com.yelp:restaurant_cuisine("Italian")], price=enum moderate, rating=4, reviewCount=1493, geo=new Location(37.425993, -122.145453), phone="+16506008310"^^tt:phone_number }, C: { id="OZI4rK9s0xTwg2PdTRgmcw"^^com.yelp:restaurant("Aromi - Cambridge"), image_url="https://s3-media1.fl.yelpcdn.com/bphoto/eS-F_RSo1UyOumExtszsGA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/aromi-cambridge-cambridge?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["italian"^^com.yelp:restaurant_cuisine("Italian"), "cafes"^^com.yelp:restaurant_cuisine("Cafes"), "delis"^^com.yelp:restaurant_cuisine("Delis")], price=enum cheap, rating=4, reviewCount=30, geo=new Location(52.2042405, 0.1187084), phone="+441223300117"^^tt:phone_number } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: I see Patxi's Pizza, Cafe Borrone, and Osteria Toscana. They're moderate restaurants with Italian food. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_three; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.yelp.restaurant() filter contains(cuisines, null^^com.yelp:restaurant_cuisine("invalid")); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.yelp.restaurant() filter contains(cuisines, null^^com.yelp:restaurant_cuisine("invalid")); #! vote: down #! comment: test comment for dialogue turns #! additional #! lines ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: !! test command always failed !! UT: $failed; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Sorry, I did not understand that. Can you rephrase it? #! vote: up #! comment: test comment for dialogue turns #! additional #! lines ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.yelp.restaurant() filter contains(cuisines, null^^com.yelp:restaurant_cuisine("italian")); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.yelp.restaurant() filter contains(cuisines, null^^com.yelp:restaurant_cuisine("italian")); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.yelp.restaurant() filter contains(cuisines, "italian"^^com.yelp:restaurant_cuisine("Italian")) C: #[results=[ C: { id="OLa29RISTT2raUNPLo-9xw"^^com.yelp:restaurant("Patxi's Pizza"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/Jvow48SJ-SfCcxLt0a7uWg/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/patxis-pizza-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["pizza"^^com.yelp:restaurant_cuisine("Pizza"), "salad"^^com.yelp:restaurant_cuisine("Salad"), "italian"^^com.yelp:restaurant_cuisine("Italian")], price=enum moderate, rating=3.5, reviewCount=1700, geo=new Location(37.445153, -122.163337), phone="+16504739999"^^tt:phone_number }, C: { id="Tuq1Ht5QoISVViAlAnyrZg"^^com.yelp:restaurant("Cafe Borrone"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/jKOuPFIcqdtG47gRHqv1WQ/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/cafe-borrone-menlo-park?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["breakfast_brunch"^^com.yelp:restaurant_cuisine("Breakfast & Brunch"), "italian"^^com.yelp:restaurant_cuisine("Italian"), "cafes"^^com.yelp:restaurant_cuisine("Cafes")], price=enum moderate, rating=4, reviewCount=1727, geo=new Location(37.45368, -122.18205), phone="+16503270830"^^tt:phone_number }, C: { id="d62LElGhYd65kXXCimgPpg"^^com.yelp:restaurant("Osteria Toscana"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/eNDUayX7OPzh1MZFWB9Xpg/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/osteria-toscana-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["italian"^^com.yelp:restaurant_cuisine("Italian")], price=enum moderate, rating=3.5, reviewCount=938, geo=new Location(37.4445, -122.16118), phone="+16503285700"^^tt:phone_number }, C: { id="pLqiFFz1JScp8wMMyXcx-w"^^com.yelp:restaurant("Terún"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/w1yuXOCOAFcL_TVkoFed4Q/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/ter%C3%BAn-palo-alto-3?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["pizza"^^com.yelp:restaurant_cuisine("Pizza"), "italian"^^com.yelp:restaurant_cuisine("Italian")], price=enum moderate, rating=4, reviewCount=1493, geo=new Location(37.425993, -122.145453), phone="+16506008310"^^tt:phone_number }, C: { id="OZI4rK9s0xTwg2PdTRgmcw"^^com.yelp:restaurant("Aromi - Cambridge"), image_url="https://s3-media1.fl.yelpcdn.com/bphoto/eS-F_RSo1UyOumExtszsGA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/aromi-cambridge-cambridge?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["italian"^^com.yelp:restaurant_cuisine("Italian"), "cafes"^^com.yelp:restaurant_cuisine("Cafes"), "delis"^^com.yelp:restaurant_cuisine("Delis")], price=enum cheap, rating=4, reviewCount=30, geo=new Location(52.2042405, 0.1187084), phone="+441223300117"^^tt:phone_number } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: I see Patxi's Pizza, Cafe Borrone, and Osteria Toscana. They're moderate restaurants with Italian food. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_three; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.cancel; UT: $dialogue @org.thingpedia.dialogue.transaction.cancel; C: $dialogue @org.thingpedia.dialogue.transaction.cancel; C: @com.yelp.restaurant() filter contains(cuisines, "italian"^^com.yelp:restaurant_cuisine("Italian")) C: #[results=[ C: { id="OLa29RISTT2raUNPLo-9xw"^^com.yelp:restaurant("Patxi's Pizza"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/Jvow48SJ-SfCcxLt0a7uWg/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/patxis-pizza-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["pizza"^^com.yelp:restaurant_cuisine("Pizza"), "salad"^^com.yelp:restaurant_cuisine("Salad"), "italian"^^com.yelp:restaurant_cuisine("Italian")], price=enum moderate, rating=3.5, reviewCount=1700, geo=new Location(37.445153, -122.163337), phone="+16504739999"^^tt:phone_number }, C: { id="Tuq1Ht5QoISVViAlAnyrZg"^^com.yelp:restaurant("Cafe Borrone"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/jKOuPFIcqdtG47gRHqv1WQ/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/cafe-borrone-menlo-park?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["breakfast_brunch"^^com.yelp:restaurant_cuisine("Breakfast & Brunch"), "italian"^^com.yelp:restaurant_cuisine("Italian"), "cafes"^^com.yelp:restaurant_cuisine("Cafes")], price=enum moderate, rating=4, reviewCount=1727, geo=new Location(37.45368, -122.18205), phone="+16503270830"^^tt:phone_number }, C: { id="d62LElGhYd65kXXCimgPpg"^^com.yelp:restaurant("Osteria Toscana"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/eNDUayX7OPzh1MZFWB9Xpg/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/osteria-toscana-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["italian"^^com.yelp:restaurant_cuisine("Italian")], price=enum moderate, rating=3.5, reviewCount=938, geo=new Location(37.4445, -122.16118), phone="+16503285700"^^tt:phone_number }, C: { id="pLqiFFz1JScp8wMMyXcx-w"^^com.yelp:restaurant("Terún"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/w1yuXOCOAFcL_TVkoFed4Q/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/ter%C3%BAn-palo-alto-3?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["pizza"^^com.yelp:restaurant_cuisine("Pizza"), "italian"^^com.yelp:restaurant_cuisine("Italian")], price=enum moderate, rating=4, reviewCount=1493, geo=new Location(37.425993, -122.145453), phone="+16506008310"^^tt:phone_number }, C: { id="OZI4rK9s0xTwg2PdTRgmcw"^^com.yelp:restaurant("Aromi - Cambridge"), image_url="https://s3-media1.fl.yelpcdn.com/bphoto/eS-F_RSo1UyOumExtszsGA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/aromi-cambridge-cambridge?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["italian"^^com.yelp:restaurant_cuisine("Italian"), "cafes"^^com.yelp:restaurant_cuisine("Cafes"), "delis"^^com.yelp:restaurant_cuisine("Delis")], price=enum cheap, rating=4, reviewCount=30, geo=new Location(52.2042405, 0.1187084), phone="+441223300117"^^tt:phone_number } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Alright, let me know if I can help you with anything else! AT: $dialogue @org.thingpedia.dialogue.transaction.sys_end; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.spotify.player_repeat(repeat=enum track); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.spotify.player_repeat(repeat=enum track); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).player_repeat(repeat=enum track) C: #[results=[ C: { repeat=enum track, __device="com.spotify-7"^^tt:device_id("Some Device 7") } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: I set the repeat state for you to track. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_action_success; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.yelp.restaurant() filter contains(cuisines, "peruvian"^^com.yelp:restaurant_cuisine("Peruvian")); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.yelp.restaurant() filter contains(cuisines, "peruvian"^^com.yelp:restaurant_cuisine("Peruvian")); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.yelp.restaurant() filter contains(cuisines, "peruvian"^^com.yelp:restaurant_cuisine("Peruvian")) C: #[results=[]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Sorry, there are no restaurants matching your request. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_empty_search; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.spotify.song() filter contains(artists, "invalid"^^com.spotify:artist("Invalid")) => @com.spotify.play(playable=id); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.spotify.song() filter contains(artists, "invalid"^^com.spotify:artist("Invalid")) => @com.spotify.play(playable=id); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).song() filter contains(artists, "invalid"^^com.spotify:artist("Invalid")) => @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).play(playable=id) C: #[results=[]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Sorry, there are no songs matching your request. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_empty_search; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.spotify.player_shuffle(shuffle=enum on); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.spotify.player_shuffle(shuffle=enum on); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).player_shuffle(shuffle=enum on) C: #[results=[ C: { shuffle=enum on, __device="com.spotify-7"^^tt:device_id("Some Device 7") } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: I turned shuffle on. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_action_success; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: count(@com.yelp.restaurant()); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: count(@com.yelp.restaurant()); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: count(@com.yelp.restaurant()) C: #[results=[ C: { count=60 } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: There are 60 restaurants like that. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: count(@com.yelp.restaurant() filter contains(cuisines, "italian"^^com.yelp:restaurant_cuisine("Italian"))); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: count(@com.yelp.restaurant() filter contains(cuisines, "italian"^^com.yelp:restaurant_cuisine("Italian"))); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: count(@com.yelp.restaurant() filter contains(cuisines, "italian"^^com.yelp:restaurant_cuisine("Italian"))) C: #[results=[ C: { count=5 } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: There are 5 restaurants like that. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: min(rating of @com.yelp.restaurant()); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: min(rating of @com.yelp.restaurant()); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: min(rating of @com.yelp.restaurant()) C: #[results=[ C: { rating=3.5 } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: The minimum rating is 3.5. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: avg(rating of @com.yelp.restaurant()); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: avg(rating of @com.yelp.restaurant()); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: avg(rating of @com.yelp.restaurant()) C: #[results=[ C: { rating=4.058333333333334 } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: The average rating is 4.1. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: [distance(geo, $location.current_location)] of @com.yelp.restaurant(); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: [distance(geo, $location.current_location)] of @com.yelp.restaurant(); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: [distance(geo, new Location(37.4275, -122.1697))] of @com.yelp.restaurant() C: #[results=[ C: { id="vhfPni9pci29SEHrN1OtRg"^^com.yelp:restaurant("Ramen Nagi"), distance=2155.6170081160226m }, C: { id="1vMgajRAI3lYwuCeGX58oQ"^^com.yelp:restaurant("Evvia Estiatorio"), distance=2023.2039292363754m }, C: { id="KyU7XWDPclmZ3BpdIsd_0Q"^^com.yelp:restaurant("Oren's Hummus"), distance=2131.8688302966166m }, C: { id="jwaXc3VVGDFQu1aCoiXwdw"^^com.yelp:restaurant("NOLA Restaurant & Bar"), distance=2084.063419756969m }, C: { id="0WDM3JlNBvk2MeOTlu03mg"^^com.yelp:restaurant("Coconuts Caribbean Restaurant & Bar"), distance=1995.5778711525804m }, C: { id="_mkNOTiQ-kbc1kJHo9RoVA"^^com.yelp:restaurant("Tamarine Restaurant"), distance=2573.433453456138m }, C: { id="TtYbsOqn7vLKhva0AuKQQQ"^^com.yelp:restaurant("Philz Coffee"), distance=1782.1314387036678m }, C: { id="pi9MMjHWtVxC9eTnMk7e_w"^^com.yelp:restaurant("Crepevine Restaurant"), distance=2298.241952716727m }, C: { id="vStWaPrdP4ysnKpj0WoHJQ"^^com.yelp:restaurant("Rangoon Ruby"), distance=2044.1893359762287m }, C: { id="-g_tUhyvUFbxOs0aB28j1w"^^com.yelp:restaurant("Palo Alto Creamery"), distance=1951.265621284882m } C: ]] C: #[count=50] C: #[more=true]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: The distance is 1.3 miles. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_one; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines ==== # test ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.yelp.restaurant() filter id =~ "ramen nagi"; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.yelp.restaurant() filter id =~ "ramen nagi"; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.yelp.restaurant() filter id =~ "ramen nagi" C: #[results=[ C: { id="vhfPni9pci29SEHrN1OtRg"^^com.yelp:restaurant("Ramen Nagi"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/OKCXWIEFIkNdvkqETl0Bqw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/ramen-nagi-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["ramen"^^com.yelp:restaurant_cuisine("Ramen"), "noodles"^^com.yelp:restaurant_cuisine("Noodles")], price=enum moderate, rating=4.5, reviewCount=1625, geo=new Location(37.445523, -122.1607073261) } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Ramen Nagi is a moderate restaurant rated 4.5 star. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_one; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $yes; UT: $dialogue @org.thingpedia.dialogue.transaction.learn_more; C: $dialogue @org.thingpedia.dialogue.transaction.learn_more; C: @com.yelp.restaurant() filter id =~ "ramen nagi" C: #[results=[ C: { id="vhfPni9pci29SEHrN1OtRg"^^com.yelp:restaurant("Ramen Nagi"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/OKCXWIEFIkNdvkqETl0Bqw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/ramen-nagi-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["ramen"^^com.yelp:restaurant_cuisine("Ramen"), "noodles"^^com.yelp:restaurant_cuisine("Noodles")], price=enum moderate, rating=4.5, reviewCount=1625, geo=new Location(37.445523, -122.1607073261) } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: What would you like to know? AT: $dialogue @org.thingpedia.dialogue.transaction.sys_learn_more_what; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.yelp.restaurant() filter id =~ "ramen nagi"; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.yelp.restaurant() filter id =~ "ramen nagi"; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.yelp.restaurant() filter id =~ "ramen nagi" C: #[results=[ C: { id="vhfPni9pci29SEHrN1OtRg"^^com.yelp:restaurant("Ramen Nagi"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/OKCXWIEFIkNdvkqETl0Bqw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/ramen-nagi-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["ramen"^^com.yelp:restaurant_cuisine("Ramen"), "noodles"^^com.yelp:restaurant_cuisine("Noodles")], price=enum moderate, rating=4.5, reviewCount=1625, geo=new Location(37.445523, -122.1607073261) } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Ramen Nagi is a moderate restaurant rated 4.5 star. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_one; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $no; UT: $dialogue @org.thingpedia.dialogue.transaction.cancel; C: $dialogue @org.thingpedia.dialogue.transaction.cancel; C: @com.yelp.restaurant() filter id =~ "ramen nagi" C: #[results=[ C: { id="vhfPni9pci29SEHrN1OtRg"^^com.yelp:restaurant("Ramen Nagi"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/OKCXWIEFIkNdvkqETl0Bqw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/ramen-nagi-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["ramen"^^com.yelp:restaurant_cuisine("Ramen"), "noodles"^^com.yelp:restaurant_cuisine("Noodles")], price=enum moderate, rating=4.5, reviewCount=1625, geo=new Location(37.445523, -122.1607073261) } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Alright, let me know if I can help you with anything else! AT: $dialogue @org.thingpedia.dialogue.transaction.sys_end; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.spotify.playable() filter id =~ "Nice For What"; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.spotify.playable() filter id =~ "Nice For What"; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).playable() filter id =~ "Nice For What" C: #[results=[ C: { id="spotify:track:3CA9pLiwRIGtUBiMjbZmRw"^^com.spotify:playable("Nice For What"), artists=["spotify:artist:3TVXtAsR1Inumwj472S9r4"^^com.spotify:artist("Drake")], genres=["canadian hip hop", "canadian pop", "hip hop", "pop rap", "rap", "toronto rap"], release_date=new Date("2018-06-29T00:00:00.000Z"), popularity=79 } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Nice For What is a music by Drake released in June 28, 2018. Would you like to play it on Spotify? AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_one; AT: @com.spotify(id="com.spotify-7"^^tt:device_id).play(playable="spotify:track:3CA9pLiwRIGtUBiMjbZmRw"^^com.spotify:playable("Nice For What")) AT: #[confirm=enum proposed]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $yes; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.spotify(id="com.spotify-7"^^tt:device_id).play(playable="spotify:track:3CA9pLiwRIGtUBiMjbZmRw"^^com.spotify:playable("Nice For What")); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).playable() filter id =~ "Nice For What" C: #[results=[ C: { id="spotify:track:3CA9pLiwRIGtUBiMjbZmRw"^^com.spotify:playable("Nice For What"), artists=["spotify:artist:3TVXtAsR1Inumwj472S9r4"^^com.spotify:artist("Drake")], genres=["canadian hip hop", "canadian pop", "hip hop", "pop rap", "rap", "toronto rap"], release_date=new Date("2018-06-29T00:00:00.000Z"), popularity=79 } C: ]]; C: @com.spotify(id="com.spotify-7"^^tt:device_id).play(playable="spotify:track:3CA9pLiwRIGtUBiMjbZmRw"^^com.spotify:playable("Nice For What")) C: #[results=[ C: { playable="spotify:track:3CA9pLiwRIGtUBiMjbZmRw"^^com.spotify:playable("Nice For What"), device="str:ENTITY_com.spotify:device::36:"^^com.spotify:device, __device="com.spotify-7"^^tt:device_id("Unknown device") } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: I played Nice For What on Spotify. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_action_success; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.spotify.playable() filter id =~ "Nice For What"; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.spotify.playable() filter id =~ "Nice For What"; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).playable() filter id =~ "Nice For What" C: #[results=[ C: { id="spotify:track:3CA9pLiwRIGtUBiMjbZmRw"^^com.spotify:playable("Nice For What"), artists=["spotify:artist:3TVXtAsR1Inumwj472S9r4"^^com.spotify:artist("Drake")], genres=["canadian hip hop", "canadian pop", "hip hop", "pop rap", "rap", "toronto rap"], release_date=new Date("2018-06-29T00:00:00.000Z"), popularity=79 } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Nice For What is a music by Drake released in June 28, 2018. Would you like to play it on Spotify? AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_one; AT: @com.spotify(id="com.spotify-7"^^tt:device_id).play(playable="spotify:track:3CA9pLiwRIGtUBiMjbZmRw"^^com.spotify:playable("Nice For What")) AT: #[confirm=enum proposed]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $no; UT: $dialogue @org.thingpedia.dialogue.transaction.cancel; C: $dialogue @org.thingpedia.dialogue.transaction.cancel; C: @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).playable() filter id =~ "Nice For What" C: #[results=[ C: { id="spotify:track:3CA9pLiwRIGtUBiMjbZmRw"^^com.spotify:playable("Nice For What"), artists=["spotify:artist:3TVXtAsR1Inumwj472S9r4"^^com.spotify:artist("Drake")], genres=["canadian hip hop", "canadian pop", "hip hop", "pop rap", "rap", "toronto rap"], release_date=new Date("2018-06-29T00:00:00.000Z"), popularity=79 } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Alright, let me know if I can help you with anything else! AT: $dialogue @org.thingpedia.dialogue.transaction.sys_end; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.spotify.play(playable="spotify:track:4sPmO7WMQUAf45kwMOtONw"^^com.spotify:playable("Hello")); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.spotify.play(playable="spotify:track:4sPmO7WMQUAf45kwMOtONw"^^com.spotify:playable("Hello")); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).play(playable="spotify:track:4sPmO7WMQUAf45kwMOtONw"^^com.spotify:playable("Hello")) C: #[results=[]] C: #[error=enum no_active_device] C: #[error_detail="No Spotify device is active"] C: #[error_stack="Error: No Spotify device is active"]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Sorry, you must open the Spotify app first. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_action_error; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.spotify.play(playable="spotify:track:2zYzyRzz6pRmhPzyfMEC8s"^^com.spotify:playable("Hello")); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.spotify.play(playable="spotify:track:2zYzyRzz6pRmhPzyfMEC8s"^^com.spotify:playable("Hello")); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).play(playable="spotify:track:2zYzyRzz6pRmhPzyfMEC8s"^^com.spotify:playable("Hello")) C: #[results=[]] C: #[error=enum E_some_other_error] C: #[error_detail="Some other error occurred"] C: #[error_stack="Error: Some other error occurred"]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Sorry, there was an unexpected error with your command. Please try again later or report this issue to my developers. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_action_error; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: [release_date] of @com.spotify.song() filter id =~ "Nice For What"; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: [release_date] of @com.spotify.song() filter id =~ "Nice For What"; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: [release_date] of @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).song() filter id =~ "Nice For What" C: #[results=[ C: { id="spotify:track:3CA9pLiwRIGtUBiMjbZmRw"^^com.spotify:song("Nice For What"), release_date=new Date("2018-06-29T00:00:00.000Z") } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Nice For What is a song with the date equal to June 28, 2018. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_one; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: [release_date] of @com.spotify.song() filter id =~ "hello"; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: [release_date] of @com.spotify.song() filter id =~ "hello"; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: [release_date] of @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).song() filter id =~ "hello" C: #[results=[ C: { id="spotify:track:7qwt4xUIqQWCu1DJf96g2k"^^com.spotify:song("Hello?"), release_date=new Date("2018-05-25T00:00:00.000Z") }, C: { id="spotify:track:2r6OAV3WsYtXuXjvJ1lIDi"^^com.spotify:song("Hello (feat. A Boogie Wit da Hoodie)"), release_date=new Date("2020-07-20T00:00:00.000Z") }, C: { id="spotify:track:4sPmO7WMQUAf45kwMOtONw"^^com.spotify:song("Hello"), release_date=new Date("2016-06-24T00:00:00.000Z") }, C: { id="spotify:track:7a2IJHzw9WJjoknwdnCop0"^^com.spotify:song("hello!"), release_date=new Date("2019-11-13T00:00:00.000Z") }, C: { id="spotify:track:2c62Xf5Po1YSa1N6LOjPHy"^^com.spotify:song("Hello My Old Heart"), release_date=new Date("2011-12-01T00:00:00.000Z") }, C: { id="spotify:track:0mHyWYXmmCB9iQyK18m3FQ"^^com.spotify:song("Hello"), release_date=new Date("1983-01-01T00:00:00.000Z") }, C: { id="spotify:track:1p61zyWNtBhbbAFzg4HUiq"^^com.spotify:song("Hello Beautiful"), release_date=new Date("2018-01-27T00:00:00.000Z") }, C: { id="spotify:track:30Chv2SmIry70YwtmtaKnj"^^com.spotify:song("Hello"), release_date=new Date("2014-12-09T00:00:00.000Z") }, C: { id="spotify:track:6vmAgl2y9MpoZKrVUXrPe5"^^com.spotify:song("Hello Darlin'"), release_date=new Date("1970-03-23T00:00:00.000Z") }, C: { id="spotify:track:0vZ97gHhemKm6c64hTfJNA"^^com.spotify:song("Hello, Goodbye - Remastered 2009"), release_date=new Date("1967-11-27T00:00:00.000Z") } C: ]] C: #[count=11]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Hello? Is released in May 24, 2018. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_one; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: sort(popularity desc of @com.spotify.song())[1 : 3]; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: sort(popularity desc of @com.spotify.song())[1 : 3]; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: sort(popularity desc of @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).song())[1 : 3] C: #[results=[ C: { id="spotify:track:7ytR5pFWmSjzHJIeQkgog4"^^com.spotify:song("ROCKSTAR (feat. Roddy Ricch)"), artists=["spotify:artist:4r63FhuTkUYltbVAg5TQnk"^^com.spotify:artist("DaBaby"), "spotify:artist:757aE44tKEUQEqRuT6GnEB"^^com.spotify:artist("Roddy Ricch")], album="spotify:album:623PL2MBg50Br5dLXC9E9e"^^com.spotify:album("BLAME IT ON BABY"), genres=["north carolina hip hop", "rap"], release_date=new Date("2020-04-17T00:00:00.000Z"), popularity=100, energy=69, danceability=74 }, C: { id="spotify:track:0VjIjW4GlUZAMYd2vXMi3b"^^com.spotify:song("Blinding Lights"), artists=["spotify:artist:1Xyo4u8uXC1ZmMpatF05PJ"^^com.spotify:artist("The Weeknd")], album="spotify:album:4yP0hdKOZPNshxUOjY0cZj"^^com.spotify:album("After Hours"), genres=["canadian contemporary r&b", "canadian pop", "pop"], release_date=new Date("2020-03-20T00:00:00.000Z"), popularity=99, energy=73, danceability=51 }, C: { id="spotify:track:7eJMfftS33KTjuF7lTsMCx"^^com.spotify:song("death bed (coffee for your head)"), artists=["spotify:artist:6bmlMHgSheBauioMgKv2tn"^^com.spotify:artist("Powfu"), "spotify:artist:35l9BRT7MXmM8bv2WDQiyB"^^com.spotify:artist("beabadoobee")], album="spotify:album:2p9gK2BcdrloHNJwarc9gc"^^com.spotify:album("death bed (coffee for your head)"), genres=[], release_date=new Date("2020-02-08T00:00:00.000Z"), popularity=95, energy=43, danceability=72 } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: I see ROCKSTAR (feat. Roddy Ricch), Blinding Lights, and death bed (coffee for your head). ROCKSTAR (feat. Roddy Ricch) is by DaBaby, Blinding Lights is by The Weeknd, and death bed (coffee for your head) is by Powfu. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_three; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: [release_date] of @com.spotify.album() filter id =~ "the wall"; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: [release_date] of @com.spotify.album() filter id =~ "the wall"; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: [release_date] of @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).album() filter id =~ "the wall" C: #[results=[ C: { id="spotify:album:5Dbax7G8SWrP9xyzkOvy2F"^^com.spotify:album("The Wall"), release_date=new Date("1979-11-30T00:00:00.000Z") }, C: { id="spotify:album:283NWqNsCA9GwVHrJk59CG"^^com.spotify:album("The Writing's On The Wall"), release_date=new Date("1999-07-27T00:00:00.000Z") }, C: { id="spotify:album:2ZytN2cY4Zjrr9ukb2rqTP"^^com.spotify:album("Off the Wall"), release_date=new Date("1979-08-10T00:00:00.000Z") }, C: { id="spotify:album:1GlOZiKHTgtJqEF2FRii9y"^^com.spotify:album("Over The Garden Wall"), release_date=new Date("2017-09-19T00:00:00.000Z") } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: The Wall is released in November 29, 1979. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_one; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: [release_date] of @com.spotify.album() filter id =~ "the wall"; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: [release_date] of @com.spotify.album() filter id =~ "the wall"; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: [release_date] of @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).album() filter id =~ "the wall" C: #[results=[ C: { id="spotify:album:5Dbax7G8SWrP9xyzkOvy2F"^^com.spotify:album("The Wall"), release_date=new Date("1979-11-30T00:00:00.000Z") }, C: { id="spotify:album:283NWqNsCA9GwVHrJk59CG"^^com.spotify:album("The Writing's On The Wall"), release_date=new Date("1999-07-27T00:00:00.000Z") }, C: { id="spotify:album:2ZytN2cY4Zjrr9ukb2rqTP"^^com.spotify:album("Off the Wall"), release_date=new Date("1979-08-10T00:00:00.000Z") }, C: { id="spotify:album:1GlOZiKHTgtJqEF2FRii9y"^^com.spotify:album("Over The Garden Wall"), release_date=new Date("2017-09-19T00:00:00.000Z") } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: The Wall is released in November 29, 1979. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_one; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @org.thingpedia.weather.current(location=new Location(37.442156, -122.1634471, "Palo Alto, California")); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @org.thingpedia.weather.current(location=new Location(37.442156, -122.1634471, "Palo Alto, California")); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: [release_date] of @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).album() filter id =~ "the wall" C: #[results=[ C: { id="spotify:album:5Dbax7G8SWrP9xyzkOvy2F"^^com.spotify:album("The Wall"), release_date=new Date("1979-11-30T00:00:00.000Z") }, C: { id="spotify:album:283NWqNsCA9GwVHrJk59CG"^^com.spotify:album("The Writing's On The Wall"), release_date=new Date("1999-07-27T00:00:00.000Z") }, C: { id="spotify:album:2ZytN2cY4Zjrr9ukb2rqTP"^^com.spotify:album("Off the Wall"), release_date=new Date("1979-08-10T00:00:00.000Z") }, C: { id="spotify:album:1GlOZiKHTgtJqEF2FRii9y"^^com.spotify:album("Over The Garden Wall"), release_date=new Date("2017-09-19T00:00:00.000Z") } C: ]]; C: @org.thingpedia.weather.current(location=new Location(37.442156, -122.1634471, "Palo Alto, California")) C: #[results=[ C: { location=new Location(37.442156, -122.1634471, "Palo Alto, California"), temperature=15.6C, wind_speed=3.4mps, humidity=91.3, cloudiness=4.7, fog=0, status=enum sunny, icon="http://api.met.no/weatherapi/weathericon/1.1/?symbol=1;content_type=image/png"^^tt:picture } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: The current weather in Palo Alto, California is sunny. The temperature is 60 degrees Fahrenheit and the humidity is 91.3 %. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.spotify.playable() filter id =~ "Nice For What"; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.spotify.playable() filter id =~ "Nice For What"; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).playable() filter id =~ "Nice For What" C: #[results=[ C: { id="spotify:track:3CA9pLiwRIGtUBiMjbZmRw"^^com.spotify:playable("Nice For What"), artists=["spotify:artist:3TVXtAsR1Inumwj472S9r4"^^com.spotify:artist("Drake")], genres=["canadian hip hop", "canadian pop", "hip hop", "pop rap", "rap", "toronto rap"], release_date=new Date("2018-06-29T00:00:00.000Z"), popularity=79 } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Nice For What is a music by Drake released in June 28, 2018. Would you like to play it on Spotify? AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_one; AT: @com.spotify(id="com.spotify-7"^^tt:device_id).play(playable="spotify:track:3CA9pLiwRIGtUBiMjbZmRw"^^com.spotify:playable("Nice For What")) AT: #[confirm=enum proposed]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $no; UT: $dialogue @org.thingpedia.dialogue.transaction.cancel; C: $dialogue @org.thingpedia.dialogue.transaction.cancel; C: @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).playable() filter id =~ "Nice For What" C: #[results=[ C: { id="spotify:track:3CA9pLiwRIGtUBiMjbZmRw"^^com.spotify:playable("Nice For What"), artists=["spotify:artist:3TVXtAsR1Inumwj472S9r4"^^com.spotify:artist("Drake")], genres=["canadian hip hop", "canadian pop", "hip hop", "pop rap", "rap", "toronto rap"], release_date=new Date("2018-06-29T00:00:00.000Z"), popularity=79 } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Alright, let me know if I can help you with anything else! AT: $dialogue @org.thingpedia.dialogue.transaction.sys_end; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: sort(popularity desc of @com.spotify.song())[1]; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: sort(popularity desc of @com.spotify.song())[1]; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: sort(popularity desc of @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).song())[1] C: #[results=[ C: { id="spotify:track:7ytR5pFWmSjzHJIeQkgog4"^^com.spotify:song("ROCKSTAR (feat. Roddy Ricch)"), artists=["spotify:artist:4r63FhuTkUYltbVAg5TQnk"^^com.spotify:artist("DaBaby"), "spotify:artist:757aE44tKEUQEqRuT6GnEB"^^com.spotify:artist("Roddy Ricch")], album="spotify:album:623PL2MBg50Br5dLXC9E9e"^^com.spotify:album("BLAME IT ON BABY"), genres=["north carolina hip hop", "rap"], release_date=new Date("2020-04-17T00:00:00.000Z"), popularity=100, energy=69, danceability=74 } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: I see ROCKSTAR (feat. Roddy Ricch). It is a song in the album BLAME IT ON BABY by DaBaby. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_one; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: sort(popularity asc of @com.spotify.song())[1]; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: sort(popularity asc of @com.spotify.song())[1]; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: sort(popularity asc of @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).song())[1] C: #[results=[ C: { id="spotify:track:0VXeNEtuiD77F2StUeUadK"^^com.spotify:song("Love Yourself"), artists=["spotify:artist:1uNFoZAHBGtllmzznpCI3s"^^com.spotify:artist("Justin Bieber")], album="spotify:album:74jDw6TsdKnT92V790QfvF"^^com.spotify:album("Romantic Pop Songs"), genres=["canadian pop", "pop", "post-teen pop"], release_date=new Date("2020-08-10T00:00:00.000Z"), popularity=0, energy=43, danceability=78 } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: I see Love Yourself. It is a song in the album Romantic Pop Songs by Justin Bieber. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_one; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: sort(reviewCount desc of @com.yelp.restaurant())[1]; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: sort(reviewCount desc of @com.yelp.restaurant())[1]; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: sort(reviewCount desc of @com.yelp.restaurant())[1] C: #[results=[ C: { id="jwaXc3VVGDFQu1aCoiXwdw"^^com.yelp:restaurant("NOLA Restaurant & Bar"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/tna5SSdgZq3fFxoi4-Xx7A/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/nola-restaurant-and-bar-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["cajun"^^com.yelp:restaurant_cuisine("Cajun/Creole"), "newamerican"^^com.yelp:restaurant_cuisine("American (New)")], price=enum expensive, rating=3.5, reviewCount=2821, geo=new Location(37.4450225830078, -122.161323547363), phone="+16503282722"^^tt:phone_number } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: The restaurant with the highest review count is NOLA Restaurant & Bar. It is an expensive restaurant rated 3.5 star. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_one; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: sort(reviewCount asc of @com.yelp.restaurant())[1]; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: sort(reviewCount asc of @com.yelp.restaurant())[1]; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: sort(reviewCount asc of @com.yelp.restaurant())[1] C: #[results=[ C: { id="yzBYyndSQ3RI6Hci2F9pRQ"^^com.yelp:restaurant("The Ivy Cambridge Brasserie"), image_url="https://s3-media4.fl.yelpcdn.com/bphoto/9daDsE_Aq-AtJnDDPruBSQ/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/the-ivy-cambridge-brasserie-cambridge?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["british"^^com.yelp:restaurant_cuisine("British")], rating=4.5, reviewCount=12, geo=new Location(52.2069714284192, 0.118247921026355), phone="+441223344044"^^tt:phone_number } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: The restaurant with the lowest review count is The Ivy Cambridge Brasserie. It is a restaurant rated 4.5 star with British food. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_one; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.thecatapi.get(); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.thecatapi.get(); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.thecatapi.get() C: #[results=[ C: { id="str:ENTITY_com.thecatapi:image_id::0:"^^com.thecatapi:image_id, picture_url="str:ENTITY_tt:picture::36:"^^tt:picture, link="str:ENTITY_tt:url::42:"^^tt:url } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Here is your cat picture. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.xkcd.comic(); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.xkcd.comic(); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.xkcd.comic() C: #[results=[ C: { id=20, title="Some Device com.xkcd", release_date=new Date("2018-01-20T08:00:00.000Z"), picture_url="str:ENTITY_tt:picture::14:"^^tt:picture, link="str:ENTITY_tt:url::1:"^^tt:url, alt_text="Some Device com.xkcd" }, C: { id=451, title="str:QUOTED_STRING::49:", release_date=new Date("2020-03-20T07:00:00.000Z"), picture_url="str:ENTITY_tt:picture::41:"^^tt:picture, link="str:ENTITY_tt:url::28:"^^tt:url, alt_text="str:QUOTED_STRING::4:" }, C: { id=20, title="Some Device com.xkcd", release_date=new Date("2018-01-20T08:00:00.000Z"), picture_url="str:ENTITY_tt:picture::27:"^^tt:picture, link="str:ENTITY_tt:url::14:"^^tt:url, alt_text="str:QUOTED_STRING::4:" }, C: { id=20, title="Some Device com.xkcd", release_date=new Date("2018-01-20T08:00:00.000Z"), picture_url="str:ENTITY_tt:picture::47:"^^tt:picture, link="str:ENTITY_tt:url::19:"^^tt:url, alt_text="str:QUOTED_STRING::38:" }, C: { id=20, title="str:QUOTED_STRING::6:", release_date=new Date("2018-01-20T08:00:00.000Z"), picture_url="str:ENTITY_tt:picture::3:"^^tt:picture, link="str:ENTITY_tt:url::4:"^^tt:url, alt_text="Some Device com.xkcd" }, C: { id=20, title="Some Device com.xkcd", release_date=new Date("2018-01-20T08:00:00.000Z"), picture_url="str:ENTITY_tt:picture::46:"^^tt:picture, link="str:ENTITY_tt:url::35:"^^tt:url, alt_text="Some Device com.xkcd" }, C: { id=20, title="str:QUOTED_STRING::28:", release_date=new Date("2018-01-20T08:00:00.000Z"), picture_url="str:ENTITY_tt:picture::33:"^^tt:picture, link="str:ENTITY_tt:url::28:"^^tt:url, alt_text="str:QUOTED_STRING::44:" }, C: { id=837, title="str:QUOTED_STRING::29:", release_date=new Date("2020-01-23T08:00:00.000Z"), picture_url="str:ENTITY_tt:picture::7:"^^tt:picture, link="str:ENTITY_tt:url::4:"^^tt:url, alt_text="str:QUOTED_STRING::40:" }, C: { id=481, title="Some Device com.xkcd", release_date=new Date("2018-01-20T08:00:00.000Z"), picture_url="str:ENTITY_tt:picture::12:"^^tt:picture, link="str:ENTITY_tt:url::20:"^^tt:url, alt_text="Some Device com.xkcd" }, C: { id=638, title="Some Device com.xkcd", release_date=new Date("2018-01-20T08:00:00.000Z"), picture_url="str:ENTITY_tt:picture::40:"^^tt:picture, link="str:ENTITY_tt:url::35:"^^tt:url, alt_text="str:QUOTED_STRING::3:" } C: ]] C: #[count=50] C: #[more=true]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: I see 20 and 451. 20 is released on January 20, 2018, while 451 is released on March 20, 2020. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_two; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: sort(release_date desc of @com.xkcd.comic())[1]; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: sort(release_date desc of @com.xkcd.comic())[1]; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: sort(release_date desc of @com.xkcd.comic())[1] C: #[results=[ C: { id=371, title="str:QUOTED_STRING::3:", release_date=new Date("2020-08-31T07:00:00.000Z"), picture_url="str:ENTITY_tt:picture::26:"^^tt:picture, link="str:ENTITY_tt:url::39:"^^tt:url, alt_text="str:QUOTED_STRING::6:" } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: The latest xkcd comic is 371. It is an xkcd comic from August 31, 2020 titled str:QUOTED_STRING::3:. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_one; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.xkcd.comic() => @com.twitter.post(status=title); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.xkcd.comic() => @com.twitter.post(status=title); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.xkcd.comic() => @com.twitter(id="twitter-foo"^^tt:device_id("Twitter Account foo")).post(status=title); #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: You have multiple Twitter devices. Which one do you want to use? A: Ok, do you want me to get xkcd comic and then tweet the title? AT: $dialogue @org.thingpedia.dialogue.transaction.sys_confirm_action; AT: @com.xkcd.comic() => @com.twitter(id="twitter-foo"^^tt:device_id("Twitter Account foo")).post(status=title); #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $yes; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.xkcd.comic() => @com.twitter(id="twitter-foo"^^tt:device_id("Twitter Account foo")).post(status=title) UT: #[confirm=enum confirmed]; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.xkcd.comic() => @com.twitter(id="twitter-foo"^^tt:device_id("Twitter Account foo")).post(status=title) C: #[results=[ C: { status="Some Device com.xkcd", __device="twitter-foo"^^tt:device_id("Twitter Account foo") }, C: { status="str:QUOTED_STRING::49:", __device="twitter-foo"^^tt:device_id("Twitter Account foo") }, C: { status="Some Device com.xkcd", __device="twitter-foo"^^tt:device_id("Twitter Account foo") }, C: { status="Some Device com.xkcd", __device="twitter-foo"^^tt:device_id("Twitter Account foo") }, C: { status="str:QUOTED_STRING::6:", __device="twitter-foo"^^tt:device_id("Twitter Account foo") }, C: { status="Some Device com.xkcd", __device="twitter-foo"^^tt:device_id("Twitter Account foo") }, C: { status="str:QUOTED_STRING::28:", __device="twitter-foo"^^tt:device_id("Twitter Account foo") }, C: { status="str:QUOTED_STRING::29:", __device="twitter-foo"^^tt:device_id("Twitter Account foo") }, C: { status="Some Device com.xkcd", __device="twitter-foo"^^tt:device_id("Twitter Account foo") }, C: { status="Some Device com.xkcd", __device="twitter-foo"^^tt:device_id("Twitter Account foo") } C: ]] C: #[count=50] C: #[more=true]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: I tweeted something. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_action_success; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @org.thingpedia.builtin.thingengine.builtin.faq_reply(question=enum about_almond_identity); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @org.thingpedia.builtin.thingengine.builtin.faq_reply(question=enum about_almond_identity); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @org.thingpedia.builtin.thingengine.builtin.faq_reply(question=enum about_almond_identity) C: #[results=[ C: { question=enum about_almond_identity, reply="str:QUOTED_STRING::42:" } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Str:QUOTED_STRING::42:. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_action_success; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @org.thingpedia.iot.light-bulb.set_power(power=enum off); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @org.thingpedia.iot.light-bulb.set_power(power=enum off); #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: You do not have a Light Bulb configured. You will need to enable Home Assistant or Philips Hue before you can use that command. #! vote: down #! comment: test comment for dialogue turns #! additional #! lines ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @org.thingpedia.iot.door.state(); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @org.thingpedia.iot.door.state(); #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: You need to enable Home Assistant before you can use that command. #! vote: up #! comment: test comment for dialogue turns #! additional #! lines ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @org.thingpedia.weather.current(location=new Location(37.442156, -122.1634471, "Palo Alto, California")); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @org.thingpedia.weather.current(location=new Location(37.442156, -122.1634471, "Palo Alto, California")); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @org.thingpedia.weather.current(location=new Location(37.442156, -122.1634471, "Palo Alto, California")) C: #[results=[ C: { location=new Location(37.442156, -122.1634471, "Palo Alto, California"), temperature=15.6C, wind_speed=3.4mps, humidity=91.3, cloudiness=4.7, fog=0, status=enum sunny, icon="http://api.met.no/weatherapi/weathericon/1.1/?symbol=1;content_type=image/png"^^tt:picture } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: The current weather in Palo Alto, California is sunny. The temperature is 60 degrees Fahrenheit and the humidity is 91.3 %. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.greet; UT: $dialogue @org.thingpedia.dialogue.transaction.greet; C: $dialogue @org.thingpedia.dialogue.transaction.greet; C: @org.thingpedia.weather.current(location=new Location(37.442156, -122.1634471, "Palo Alto, California")) C: #[results=[ C: { location=new Location(37.442156, -122.1634471, "Palo Alto, California"), temperature=15.6C, wind_speed=3.4mps, humidity=91.3, cloudiness=4.7, fog=0, status=enum sunny, icon="http://api.met.no/weatherapi/weathericon/1.1/?symbol=1;content_type=image/png"^^tt:picture } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Hello! How can I help you? AT: $dialogue @org.thingpedia.dialogue.transaction.sys_greet; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.cancel; UT: $dialogue @org.thingpedia.dialogue.transaction.cancel; C: $dialogue @org.thingpedia.dialogue.transaction.cancel; C: @org.thingpedia.weather.current(location=new Location(37.442156, -122.1634471, "Palo Alto, California")) C: #[results=[ C: { location=new Location(37.442156, -122.1634471, "Palo Alto, California"), temperature=15.6C, wind_speed=3.4mps, humidity=91.3, cloudiness=4.7, fog=0, status=enum sunny, icon="http://api.met.no/weatherapi/weathericon/1.1/?symbol=1;content_type=image/png"^^tt:picture } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Alright, let me know if I can help you with anything else! AT: $dialogue @org.thingpedia.dialogue.transaction.sys_end; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @org.thingpedia.weather.current(location=new Location(90, 0, "North Pole")); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @org.thingpedia.weather.current(location=new Location(90, 0, "North Pole")); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @org.thingpedia.weather.current(location=new Location(90, 0, "North Pole")) C: #[results=[]] C: #[error="unexpected weather error"] C: #[error_detail="unexpected weather error"] C: #[error_stack="Error: unexpected weather error"]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Sorry, there was an unexpected error with your command. Please try again later or report this issue to my developers. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_action_error; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: [temperature] of @org.thingpedia.weather.current(location=new Location(37.442156, -122.1634471, "Palo Alto, California")); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: [temperature] of @org.thingpedia.weather.current(location=new Location(37.442156, -122.1634471, "Palo Alto, California")); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: [temperature] of @org.thingpedia.weather.current(location=new Location(37.442156, -122.1634471, "Palo Alto, California")) C: #[results=[ C: { location=new Location(37.442156, -122.1634471, "Palo Alto, California"), temperature=15.6C, status=enum sunny } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: The current weather in Palo Alto, California is sunny. The temperature is 60 degrees Fahrenheit. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: [geo, rating] of @com.yelp.restaurant(); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: [geo, rating] of @com.yelp.restaurant(); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: [geo, rating] of @com.yelp.restaurant() C: #[results=[ C: { id="vhfPni9pci29SEHrN1OtRg"^^com.yelp:restaurant("Ramen Nagi"), rating=4.5, geo=new Location(37.445523, -122.1607073261) }, C: { id="1vMgajRAI3lYwuCeGX58oQ"^^com.yelp:restaurant("Evvia Estiatorio"), rating=4.5, geo=new Location(37.445077, -122.163778) }, C: { id="KyU7XWDPclmZ3BpdIsd_0Q"^^com.yelp:restaurant("Oren's Hummus"), rating=4, geo=new Location(37.445717, -122.162173) }, C: { id="jwaXc3VVGDFQu1aCoiXwdw"^^com.yelp:restaurant("NOLA Restaurant & Bar"), rating=3.5, geo=new Location(37.4450225830078, -122.161323547363) }, C: { id="0WDM3JlNBvk2MeOTlu03mg"^^com.yelp:restaurant("Coconuts Caribbean Restaurant & Bar"), rating=4, geo=new Location(37.44381, -122.16027) }, C: { id="_mkNOTiQ-kbc1kJHo9RoVA"^^com.yelp:restaurant("Tamarine Restaurant"), rating=4, geo=new Location(37.44881, -122.15833) }, C: { id="TtYbsOqn7vLKhva0AuKQQQ"^^com.yelp:restaurant("Philz Coffee"), rating=4.5, geo=new Location(37.442174, -122.161583) }, C: { id="pi9MMjHWtVxC9eTnMk7e_w"^^com.yelp:restaurant("Crepevine Restaurant"), rating=4, geo=new Location(37.44698, -122.161) }, C: { id="vStWaPrdP4ysnKpj0WoHJQ"^^com.yelp:restaurant("Rangoon Ruby"), rating=3.5, geo=new Location(37.445122, -122.163104) }, C: { id="-g_tUhyvUFbxOs0aB28j1w"^^com.yelp:restaurant("Palo Alto Creamery"), rating=4, geo=new Location(37.4438831241214, -122.16178176729) } C: ]] C: #[count=50] C: #[more=true]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: I see Ramen Nagi. It is a restaurant near [Latitude: 37.446 deg, Longitude: -122.161 deg] rated 4.5 star. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_one; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: [geo, rating] of @com.yelp.restaurant() filter id =~ "ramen nagi"; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: [geo, rating] of @com.yelp.restaurant() filter id =~ "ramen nagi"; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: [geo, rating] of @com.yelp.restaurant() filter id =~ "ramen nagi" C: #[results=[ C: { id="vhfPni9pci29SEHrN1OtRg"^^com.yelp:restaurant("Ramen Nagi"), rating=4.5, geo=new Location(37.445523, -122.1607073261) } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Ramen Nagi is a restaurant near [Latitude: 37.446 deg, Longitude: -122.161 deg] rated 4.5 star. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_one; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.cancel; UT: $dialogue @org.thingpedia.dialogue.transaction.cancel; C: $dialogue @org.thingpedia.dialogue.transaction.cancel; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Alright, let me know if I can help you with anything else! AT: $dialogue @org.thingpedia.dialogue.transaction.sys_end; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @org.thingpedia.builtin.thingengine.builtin.get_time(); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @org.thingpedia.builtin.thingengine.builtin.get_time(); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @org.thingpedia.builtin.thingengine.builtin.get_time() C: #[results=[ C: { time=new Time(17, 50) } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Right now, it's 5:50 PM. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @org.thingpedia.builtin.thingengine.builtin.get_date(); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @org.thingpedia.builtin.thingengine.builtin.get_date(); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @org.thingpedia.builtin.thingengine.builtin.get_time() C: #[results=[ C: { time=new Time(17, 50) } C: ]]; C: @org.thingpedia.builtin.thingengine.builtin.get_date() C: #[results=[ C: { date=new Date("2018-01-20T08:00:00.000Z") } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Today is January 20, 2018. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t @org.thingpedia.builtin.test.get_data(count=1, size=5byte); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @org.thingpedia.builtin.test.get_data(count=1, size=5byte); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @org.thingpedia.builtin.test.get_data(count=1, size=5byte) C: #[results=[ C: { data="!!!!!", count=1, size=5byte } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: The answer is !!!!! AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_one; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t @org.thingpedia.builtin.test.get_data(count=2, size=5byte); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @org.thingpedia.builtin.test.get_data(count=2, size=5byte); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @org.thingpedia.builtin.test.get_data(count=1, size=5byte) C: #[results=[ C: { data="!!!!!", count=1, size=5byte } C: ]]; C: @org.thingpedia.builtin.test.get_data(count=2, size=5byte) C: #[results=[ C: { data="!!!!!", count=2, size=5byte }, C: { data="\"\"\"\"\"", count=2, size=5byte } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: First answer for 2 items of size 5 bytes is !!!!! 2 nd answer is """"". AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_two; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t @org.thingpedia.builtin.test.get_data(count=3, size=5byte); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @org.thingpedia.builtin.test.get_data(count=3, size=5byte); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @org.thingpedia.builtin.test.get_data(count=1, size=5byte) C: #[results=[ C: { data="!!!!!", count=1, size=5byte } C: ]]; C: @org.thingpedia.builtin.test.get_data(count=2, size=5byte) C: #[results=[ C: { data="!!!!!", count=2, size=5byte }, C: { data="\"\"\"\"\"", count=2, size=5byte } C: ]]; C: @org.thingpedia.builtin.test.get_data(count=3, size=5byte) C: #[results=[ C: { data="!!!!!", count=3, size=5byte }, C: { data="\"\"\"\"\"", count=3, size=5byte }, C: { data="#####", count=3, size=5byte } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: First answer for 3 items of size 5 bytes is !!!!! 2 nd answer is """"". 3 rd answer is #####. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_three; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t @org.thingpedia.builtin.test.get_data2(count=3, size=5byte); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @org.thingpedia.builtin.test.get_data2(count=3, size=5byte); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @org.thingpedia.builtin.test.get_data(count=1, size=5byte) C: #[results=[ C: { data="!!!!!", count=1, size=5byte } C: ]]; C: @org.thingpedia.builtin.test.get_data(count=2, size=5byte) C: #[results=[ C: { data="!!!!!", count=2, size=5byte }, C: { data="\"\"\"\"\"", count=2, size=5byte } C: ]]; C: @org.thingpedia.builtin.test.get_data(count=3, size=5byte) C: #[results=[ C: { data="!!!!!", count=3, size=5byte }, C: { data="\"\"\"\"\"", count=3, size=5byte }, C: { data="#####", count=3, size=5byte } C: ]]; C: @org.thingpedia.builtin.test.get_data2(count=3, size=5byte) C: #[results=[ C: { data="AAAAA", count=3, size=5byte }, C: { data="BBBBB", count=3, size=5byte }, C: { data="CCCCC", count=3, size=5byte } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: The answers for 3 items of size 5 bytes are AAAAA, BBBBB, and CCCCC. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_three; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: timer(base=$now, interval=1h) => @com.thecatapi.get(); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: timer(base=$now, interval=1h) => @com.thecatapi.get(); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: timer(base=$now, interval=1h) => @com.thecatapi.get() C: #[results=[]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: What is your phone number? A: Alright, I will get the cat picture every 60 minutes. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_rule_enable_success; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.notification("CatAPI"); U: timer(base=$now, interval=1h) => @com.thecatapi.get() U: #[results=[ U: { id="e7e"^^com.thecatapi:cat, picture_url="https://25.media.tumblr.com/tumblr_m4ry1ocUb21r6jd7fo1_500.jpg"^^tt:picture, link="http://thecatapi.com/?id=e7e"^^tt:url } U: ]]; UT: $dialogue @org.thingpedia.dialogue.transaction.notification("CatAPI"); UT: timer(base=$now, interval=1h) => @com.thecatapi.get() UT: #[results=[ UT: { id="e7e"^^com.thecatapi:cat, picture_url="https://25.media.tumblr.com/tumblr_m4ry1ocUb21r6jd7fo1_500.jpg"^^tt:picture, link="http://thecatapi.com/?id=e7e"^^tt:url } UT: ]]; C: $dialogue @org.thingpedia.dialogue.transaction.notification("CatAPI"); C: timer(base=$now, interval=1h) => @com.thecatapi.get() C: #[results=[ C: { id="e7e"^^com.thecatapi:cat, picture_url="https://25.media.tumblr.com/tumblr_m4ry1ocUb21r6jd7fo1_500.jpg"^^tt:picture, link="http://thecatapi.com/?id=e7e"^^tt:url } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Notification from CatAPI: here is your cat picture. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.notification("Yelp"); U: timer(base=$now, interval=1h) => @com.yelp.restaurant() U: #[results=[ U: { id="vhfPni9pci29SEHrN1OtRg"^^com.yelp:restaurant("Ramen Nagi"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/OKCXWIEFIkNdvkqETl0Bqw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/ramen-nagi-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["ramen"^^com.yelp:restaurant_cuisine("Ramen"), "noodles"^^com.yelp:restaurant_cuisine("Noodles")], price=enum moderate, rating=4.5, reviewCount=1625, geo=new Location(37.445523, -122.1607073261) } U: ]]; UT: $dialogue @org.thingpedia.dialogue.transaction.notification("Yelp"); UT: timer(base=$now, interval=1h) => @com.yelp.restaurant() UT: #[results=[ UT: { id="vhfPni9pci29SEHrN1OtRg"^^com.yelp:restaurant("Ramen Nagi"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/OKCXWIEFIkNdvkqETl0Bqw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/ramen-nagi-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["ramen"^^com.yelp:restaurant_cuisine("Ramen"), "noodles"^^com.yelp:restaurant_cuisine("Noodles")], price=enum moderate, rating=4.5, reviewCount=1625, geo=new Location(37.445523, -122.1607073261) } UT: ]]; C: $dialogue @org.thingpedia.dialogue.transaction.notification("Yelp"); C: timer(base=$now, interval=1h) => @com.yelp.restaurant() C: #[results=[ C: { id="vhfPni9pci29SEHrN1OtRg"^^com.yelp:restaurant("Ramen Nagi"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/OKCXWIEFIkNdvkqETl0Bqw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/ramen-nagi-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["ramen"^^com.yelp:restaurant_cuisine("Ramen"), "noodles"^^com.yelp:restaurant_cuisine("Noodles")], price=enum moderate, rating=4.5, reviewCount=1625, geo=new Location(37.445523, -122.1607073261) } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Notification from Yelp: I see Ramen Nagi. It is a moderate restaurant rated 4.5 star. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_one; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.notification("Yelp"); U: timer(base=$now, interval=1h) => sort(rating desc of @com.yelp.restaurant())[1] U: #[results=[ U: { id="vhfPni9pci29SEHrN1OtRg"^^com.yelp:restaurant("Ramen Nagi"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/OKCXWIEFIkNdvkqETl0Bqw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/ramen-nagi-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["ramen"^^com.yelp:restaurant_cuisine("Ramen"), "noodles"^^com.yelp:restaurant_cuisine("Noodles")], price=enum moderate, rating=4.5, reviewCount=1625, geo=new Location(37.445523, -122.1607073261) } U: ]]; UT: $dialogue @org.thingpedia.dialogue.transaction.notification("Yelp"); UT: timer(base=$now, interval=1h) => sort(rating desc of @com.yelp.restaurant())[1] UT: #[results=[ UT: { id="vhfPni9pci29SEHrN1OtRg"^^com.yelp:restaurant("Ramen Nagi"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/OKCXWIEFIkNdvkqETl0Bqw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/ramen-nagi-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["ramen"^^com.yelp:restaurant_cuisine("Ramen"), "noodles"^^com.yelp:restaurant_cuisine("Noodles")], price=enum moderate, rating=4.5, reviewCount=1625, geo=new Location(37.445523, -122.1607073261) } UT: ]]; C: $dialogue @org.thingpedia.dialogue.transaction.notification("Yelp"); C: timer(base=$now, interval=1h) => sort(rating desc of @com.yelp.restaurant())[1] C: #[results=[ C: { id="vhfPni9pci29SEHrN1OtRg"^^com.yelp:restaurant("Ramen Nagi"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/OKCXWIEFIkNdvkqETl0Bqw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/ramen-nagi-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["ramen"^^com.yelp:restaurant_cuisine("Ramen"), "noodles"^^com.yelp:restaurant_cuisine("Noodles")], price=enum moderate, rating=4.5, reviewCount=1625, geo=new Location(37.445523, -122.1607073261) } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Notification from Yelp: the restaurant with the highest rating is Ramen Nagi. It is a moderate restaurant rated 4.5 star. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_one; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.notification("Lightbulb"); U: timer(base=$now, interval=1h) => @org.thingpedia.iot.light-bulb(id="io.home-assistant/lights.living_room_1"^^tt:device_id("Living Room")).set_power(power=enum off) U: #[results=[ U: { power=enum off } U: ]]; UT: $dialogue @org.thingpedia.dialogue.transaction.notification("Lightbulb"); UT: timer(base=$now, interval=1h) => @org.thingpedia.iot.light-bulb(id="io.home-assistant/lights.living_room_1"^^tt:device_id("Living Room")).set_power(power=enum off) UT: #[results=[ UT: { power=enum off } UT: ]]; C: $dialogue @org.thingpedia.dialogue.transaction.notification("Lightbulb"); C: timer(base=$now, interval=1h) => @org.thingpedia.iot.light-bulb(id="io.home-assistant/lights.living_room_1"^^tt:device_id("Living Room")).set_power(power=enum off) C: #[results=[ C: { power=enum off } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Notification from Lightbulb: I turned off your Living Room light bulb. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_action_success; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t @com.yelp.restaurant()[1 : 3]; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.yelp.restaurant()[1 : 3]; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.yelp.restaurant()[1 : 3] C: #[results=[ C: { id="vhfPni9pci29SEHrN1OtRg"^^com.yelp:restaurant("Ramen Nagi"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/OKCXWIEFIkNdvkqETl0Bqw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/ramen-nagi-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["ramen"^^com.yelp:restaurant_cuisine("Ramen"), "noodles"^^com.yelp:restaurant_cuisine("Noodles")], price=enum moderate, rating=4.5, reviewCount=1625, geo=new Location(37.445523, -122.1607073261) }, C: { id="1vMgajRAI3lYwuCeGX58oQ"^^com.yelp:restaurant("Evvia Estiatorio"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/Q3lgbcNuRbdrITtLN5CQgQ/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/evvia-estiatorio-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["greek"^^com.yelp:restaurant_cuisine("Greek")], price=enum expensive, rating=4.5, reviewCount=2393, geo=new Location(37.445077, -122.163778), phone="+16503260983"^^tt:phone_number }, C: { id="KyU7XWDPclmZ3BpdIsd_0Q"^^com.yelp:restaurant("Oren's Hummus"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/vOWdAh4DKhMisL0K4YzXtA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/orens-hummus-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["mediterranean"^^com.yelp:restaurant_cuisine("Mediterranean"), "mideastern"^^com.yelp:restaurant_cuisine("Middle Eastern")], price=enum moderate, rating=4, reviewCount=2248, geo=new Location(37.445717, -122.162173), phone="+16507526492"^^tt:phone_number, openingHours=new RecurrentTimeSpecification({ beginTime=new Time(11, 0), endTime=new Time(14, 30), interval=86400000ms }) } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: I see Ramen Nagi, Evvia Estiatorio, and Oren's Hummus. Ramen Nagi is rated 4.5 star, Evvia Estiatorio is rated 4.5 star, and Oren's Hummus is rated 4 star. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_three; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t [reviewCount] of @com.yelp.restaurant()[1 : 3]; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: [reviewCount] of @com.yelp.restaurant()[1 : 3]; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.yelp.restaurant()[1 : 3] C: #[results=[ C: { id="vhfPni9pci29SEHrN1OtRg"^^com.yelp:restaurant("Ramen Nagi"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/OKCXWIEFIkNdvkqETl0Bqw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/ramen-nagi-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["ramen"^^com.yelp:restaurant_cuisine("Ramen"), "noodles"^^com.yelp:restaurant_cuisine("Noodles")], price=enum moderate, rating=4.5, reviewCount=1625, geo=new Location(37.445523, -122.1607073261) }, C: { id="1vMgajRAI3lYwuCeGX58oQ"^^com.yelp:restaurant("Evvia Estiatorio"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/Q3lgbcNuRbdrITtLN5CQgQ/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/evvia-estiatorio-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["greek"^^com.yelp:restaurant_cuisine("Greek")], price=enum expensive, rating=4.5, reviewCount=2393, geo=new Location(37.445077, -122.163778), phone="+16503260983"^^tt:phone_number }, C: { id="KyU7XWDPclmZ3BpdIsd_0Q"^^com.yelp:restaurant("Oren's Hummus"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/vOWdAh4DKhMisL0K4YzXtA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/orens-hummus-palo-alto?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["mediterranean"^^com.yelp:restaurant_cuisine("Mediterranean"), "mideastern"^^com.yelp:restaurant_cuisine("Middle Eastern")], price=enum moderate, rating=4, reviewCount=2248, geo=new Location(37.445717, -122.162173), phone="+16507526492"^^tt:phone_number, openingHours=new RecurrentTimeSpecification({ beginTime=new Time(11, 0), endTime=new Time(14, 30), interval=86400000ms }) } C: ]]; C: [reviewCount] of @com.yelp.restaurant()[1 : 3] C: #[results=[ C: { id="vhfPni9pci29SEHrN1OtRg"^^com.yelp:restaurant("Ramen Nagi"), reviewCount=1625 }, C: { id="1vMgajRAI3lYwuCeGX58oQ"^^com.yelp:restaurant("Evvia Estiatorio"), reviewCount=2393 }, C: { id="KyU7XWDPclmZ3BpdIsd_0Q"^^com.yelp:restaurant("Oren's Hummus"), reviewCount=2248 } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Ramen Nagi has 1,625 reviews, Evvia Estiatorio has 2,393 reviews, and Oren's Hummus has 2,248 reviews. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_three; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: timer(base=$now, interval=1h) => @com.thecatapi.get(); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: timer(base=$now, interval=1h) => @com.thecatapi.get(); #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: What is your phone number? #! vote: down #! comment: test comment for dialogue turns #! additional #! lines ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.twitter.post(); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.twitter.post(); #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: To use this command you must first create a personal Genie account. #! vote: up #! comment: test comment for dialogue turns #! additional #! lines ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.notification("some app"); U: monitor(@org.thingpedia.builtin.test.get_data(count=2, size=10byte)) => @org.thingpedia.builtin.test.dup_data(data_in=data) U: #[results=[ U: { data_in="!!!!!!!!!!", data_out="!!!!!!!!!!!!!!!!!!!!", count=2, size=10, data="!!!!!!!!!!" } U: ]]; UT: $dialogue @org.thingpedia.dialogue.transaction.notification("some app"); UT: monitor(@org.thingpedia.builtin.test.get_data(count=2, size=10byte)) => @org.thingpedia.builtin.test.dup_data(data_in=data) UT: #[results=[ UT: { data_in="!!!!!!!!!!", data_out="!!!!!!!!!!!!!!!!!!!!", count=2, size=10, data="!!!!!!!!!!" } UT: ]]; C: $dialogue @org.thingpedia.dialogue.transaction.notification("some app"); C: monitor(@org.thingpedia.builtin.test.get_data(count=2, size=10byte)) => @org.thingpedia.builtin.test.dup_data(data_in=data) C: #[results=[ C: { data_in="!!!!!!!!!!", data_out="!!!!!!!!!!!!!!!!!!!!", count=2, size=10, data="!!!!!!!!!!" } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Notification from some app: the answer is !!!!!!!!!!!!!!!!!!!! AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_one; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t @org.thingpedia.iot.switch.state(); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @org.thingpedia.iot.switch.state(); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @org.thingpedia.iot.switch(id="switch-bed1"^^tt:device_id("Bed Switch 1")).state() C: #[results=[ C: { state=enum off, __device="switch-bed1"^^tt:device_id("Bed Switch 1") } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: You have multiple switch devices. Which one do you want to use? A: The Bed Switch 1 switch is off. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t @org.thingpedia.iot.switch(name="kitchen").state(); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @org.thingpedia.iot.switch(name="kitchen").state(); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @org.thingpedia.iot.switch(id="switch-bed1"^^tt:device_id("Bed Switch 1")).state() C: #[results=[ C: { state=enum off, __device="switch-bed1"^^tt:device_id("Bed Switch 1") } C: ]]; C: @org.thingpedia.iot.switch(id="switch-kitchen"^^tt:device_id("Kitchen Switches")).state() C: #[results=[ C: { state=enum off, __device="switch-kitchen"^^tt:device_id("Kitchen Switches") } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: The Kitchen Switches switch is off. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t @org.thingpedia.iot.switch(all=true).state(); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @org.thingpedia.iot.switch(all=true).state(); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @org.thingpedia.iot.switch(id="switch-bed1"^^tt:device_id("Bed Switch 1")).state() C: #[results=[ C: { state=enum off, __device="switch-bed1"^^tt:device_id("Bed Switch 1") } C: ]]; C: @org.thingpedia.iot.switch(id="switch-kitchen"^^tt:device_id("Kitchen Switches")).state() C: #[results=[ C: { state=enum off, __device="switch-kitchen"^^tt:device_id("Kitchen Switches") } C: ]]; C: @org.thingpedia.iot.switch(all=true).state() C: #[results=[ C: { state=enum on, __device="str:ENTITY_tt:device_id::0:"^^tt:device_id("Simulated Device org.thingpedia.iot.switch 0") }, C: { state=enum on, __device="str:ENTITY_tt:device_id::1:"^^tt:device_id("Simulated Device org.thingpedia.iot.switch 1") }, C: { state=enum on, __device="str:ENTITY_tt:device_id::2:"^^tt:device_id("Simulated Device org.thingpedia.iot.switch 2") }, C: { state=enum off, __device="str:ENTITY_tt:device_id::3:"^^tt:device_id("Simulated Device org.thingpedia.iot.switch 3") }, C: { state=enum on, __device="str:ENTITY_tt:device_id::4:"^^tt:device_id("Simulated Device org.thingpedia.iot.switch 4") }, C: { state=enum on, __device="str:ENTITY_tt:device_id::5:"^^tt:device_id("Simulated Device org.thingpedia.iot.switch 5") } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: The Simulated Device org.thingpedia.iot.switch 0 switch is on. The Simulated Device org.thingpedia.iot.switch 1 switch is on. The Simulated Device org.thingpedia.iot.switch 2 switch is on. The Simulated Device org.thingpedia.iot.switch 3 switch is off. The Simulated Device org.thingpedia.iot.switch 4 switch is on. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t @org.thingpedia.iot.switch(all=true, name="bed").state(); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @org.thingpedia.iot.switch(all=true, name="bed").state(); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @org.thingpedia.iot.switch(id="switch-bed1"^^tt:device_id("Bed Switch 1")).state() C: #[results=[ C: { state=enum off, __device="switch-bed1"^^tt:device_id("Bed Switch 1") } C: ]]; C: @org.thingpedia.iot.switch(id="switch-kitchen"^^tt:device_id("Kitchen Switches")).state() C: #[results=[ C: { state=enum off, __device="switch-kitchen"^^tt:device_id("Kitchen Switches") } C: ]]; C: @org.thingpedia.iot.switch(all=true).state() C: #[results=[ C: { state=enum on, __device="str:ENTITY_tt:device_id::0:"^^tt:device_id("Simulated Device org.thingpedia.iot.switch 0") }, C: { state=enum on, __device="str:ENTITY_tt:device_id::1:"^^tt:device_id("Simulated Device org.thingpedia.iot.switch 1") }, C: { state=enum on, __device="str:ENTITY_tt:device_id::2:"^^tt:device_id("Simulated Device org.thingpedia.iot.switch 2") }, C: { state=enum off, __device="str:ENTITY_tt:device_id::3:"^^tt:device_id("Simulated Device org.thingpedia.iot.switch 3") }, C: { state=enum on, __device="str:ENTITY_tt:device_id::4:"^^tt:device_id("Simulated Device org.thingpedia.iot.switch 4") }, C: { state=enum on, __device="str:ENTITY_tt:device_id::5:"^^tt:device_id("Simulated Device org.thingpedia.iot.switch 5") } C: ]]; C: @org.thingpedia.iot.switch(all=true, name="bed").state() C: #[results=[ C: { state=enum on, __device="str:ENTITY_tt:device_id::0:"^^tt:device_id("Simulated Device org.thingpedia.iot.switch 0") }, C: { state=enum on, __device="str:ENTITY_tt:device_id::1:"^^tt:device_id("Simulated Device org.thingpedia.iot.switch 1") }, C: { state=enum on, __device="str:ENTITY_tt:device_id::2:"^^tt:device_id("Simulated Device org.thingpedia.iot.switch 2") }, C: { state=enum on, __device="str:ENTITY_tt:device_id::3:"^^tt:device_id("Simulated Device org.thingpedia.iot.switch 3") }, C: { state=enum off, __device="str:ENTITY_tt:device_id::4:"^^tt:device_id("Simulated Device org.thingpedia.iot.switch 4") }, C: { state=enum on, __device="str:ENTITY_tt:device_id::5:"^^tt:device_id("Simulated Device org.thingpedia.iot.switch 5") } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: The Simulated Device org.thingpedia.iot.switch 0 switch is on. The Simulated Device org.thingpedia.iot.switch 1 switch is on. The Simulated Device org.thingpedia.iot.switch 2 switch is on. The Simulated Device org.thingpedia.iot.switch 3 switch is on. The Simulated Device org.thingpedia.iot.switch 4 switch is off. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.yelp.restaurant() filter contains(cuisines, "chinese"^^com.yelp:restaurant_cuisine("Chinese")) && geo == new Location(37.4863239, -122.232523, "Redwood City, California") U: #[results=[ U: { id="dLbBSJeyN85FIzHxb6oYtg"^^com.yelp:restaurant("Crouching Tiger Restaurant & Bar"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/ve7XevVMUGbqXg3eZtRpgw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/crouching-tiger-restaurant-and-bar-redwood-city?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["chinese"^^com.yelp:restaurant_cuisine("Chinese")], price=enum moderate, rating=4, review_count=963, geo=new Location(37.48640133, -122.23424633, "2644 Broadway St, Redwood City, CA 94063"), phone="+16502988881"^^tt:phone_number }, U: { id="aRu3VeiAZu4YKN9PvYvpYw"^^com.yelp:restaurant("I Dumpling"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/8__mq-BV_Xq6IKHhOH1_lA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/i-dumpling-redwood-city?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["chinese"^^com.yelp:restaurant_cuisine("Chinese"), "taiwanese"^^com.yelp:restaurant_cuisine("Taiwanese"), "seafood"^^com.yelp:restaurant_cuisine("Seafood")], price=enum cheap, rating=4, review_count=734, geo=new Location(37.486368908140925, -122.23466476656478, "2660 Broadway, Redwood City, CA 94063"), phone="+16505689789"^^tt:phone_number }, U: { id="7WLVcOSqcBJZG36_rdI3CA"^^com.yelp:restaurant("Redwood Bistro"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/NZRObUQiHmKDkBRHIMaseQ/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/redwood-bistro-redwood-city?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["chinese"^^com.yelp:restaurant_cuisine("Chinese")], price=enum moderate, rating=4.5, review_count=333, geo=new Location(37.48712, -122.23548, "711 El Camino Real, Redwood City, CA 94063"), phone="+16502169988"^^tt:phone_number }, U: { id="uMu3grYWk3ERsw8fXlFGvw"^^com.yelp:restaurant("Panda Dumpling"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/Qheysge21koMREg8aTOCJA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/panda-dumpling-san-carlos?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["chinese"^^com.yelp:restaurant_cuisine("Chinese")], price=enum moderate, rating=4, review_count=630, geo=new Location(37.49904, -122.25199, "1195 Laurel St, San Carlos, CA 94070"), phone="+16505938888"^^tt:phone_number }, U: { id="a6YM6lvO5ATmvnX3Ozdq9Q"^^com.yelp:restaurant("Hot Wok Bistro Too"), image_url="https://s3-media1.fl.yelpcdn.com/bphoto/JeGbwhkzpWZ2kkHUzFGaTQ/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/hot-wok-bistro-too-san-carlos-2?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["chinese"^^com.yelp:restaurant_cuisine("Chinese")], price=enum cheap, rating=4, review_count=265, geo=new Location(37.4957223292802, -122.248010847522, "1541 Laurel St, San Carlos, CA 94070"), phone="+16506224979"^^tt:phone_number }, U: { id="S8ecMU_Sx0esyI7YDC_5Yw"^^com.yelp:restaurant("Amazing Wok"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/PwbTj_RDUipr1ENVNMuyKA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/amazing-wok-san-carlos?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["chinese"^^com.yelp:restaurant_cuisine("Chinese")], price=enum moderate, rating=4, review_count=331, geo=new Location(37.49475, -122.24667, "1653 Laurel St, San Carlos, CA 94070"), phone="+16505952031"^^tt:phone_number }, U: { id="bnKsZLJChHEnFV9g7mkxnA"^^com.yelp:restaurant("Yan's Garden"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/gwmPoE50BMxQFyV9SlJ5bw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/yans-garden-san-carlos?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["chinese"^^com.yelp:restaurant_cuisine("Chinese")], price=enum moderate, rating=4, review_count=378, geo=new Location(37.5028084428936, -122.256572279751, "885 Laurel St, San Carlos, CA 94070"), phone="+16505939777"^^tt:phone_number }, U: { id="cYCXa_lfNmj-E7RiT11u6Q"^^com.yelp:restaurant("Red Hot Chilli Pepper"), image_url="https://s3-media4.fl.yelpcdn.com/bphoto/PUmvsVPC5g7GefjCcsz14A/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/red-hot-chilli-pepper-san-carlos?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["chinese"^^com.yelp:restaurant_cuisine("Chinese"), "asianfusion"^^com.yelp:restaurant_cuisine("Asian Fusion"), "indpak"^^com.yelp:restaurant_cuisine("Indian")], price=enum moderate, rating=3.5, review_count=1249, geo=new Location(37.506844238722685, -122.26054660000001, "1125 San Carlos Ave, San Carlos, CA 94070"), phone="+16504533055"^^tt:phone_number }, U: { id="NhrRXDU6LaTf1wwwuU0Odg"^^com.yelp:restaurant("Seapot 海中锅"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/xKaXHOTfFgH9Don6nCOwFw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/seapot-%E6%B5%B7%E4%B8%AD%E9%94%85-san-mateo?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["seafood"^^com.yelp:restaurant_cuisine("Seafood"), "hotpot"^^com.yelp:restaurant_cuisine("Hot Pot"), "chinese"^^com.yelp:restaurant_cuisine("Chinese")], price=enum moderate, rating=4, review_count=1425, geo=new Location(37.54851, -122.31128, "1952 S El Camino Real, San Mateo, CA 94403"), phone="+16503152827"^^tt:phone_number }, U: { id="4Bn7z4IPxBk9dF3EpTqMQg"^^com.yelp:restaurant("Happy Lamb Hot Pot"), image_url="https://s3-media1.fl.yelpcdn.com/bphoto/7bmq96JdaoBLTieJL04efA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/happy-lamb-hot-pot-san-mateo?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["chinese"^^com.yelp:restaurant_cuisine("Chinese"), "mongolian"^^com.yelp:restaurant_cuisine("Mongolian"), "hotpot"^^com.yelp:restaurant_cuisine("Hot Pot")], price=enum moderate, rating=4, review_count=1511, geo=new Location(37.5656637, -122.3237292, "215 S Ellsworth Ave, San Mateo, CA 94401"), phone="+16503432566"^^tt:phone_number } U: ]] U: #[count=38]; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.yelp.restaurant() filter contains(cuisines, "chinese"^^com.yelp:restaurant_cuisine("Chinese")) && geo == new Location(37.4863239, -122.232523, "Redwood City, California") UT: #[results=[ UT: { id="dLbBSJeyN85FIzHxb6oYtg"^^com.yelp:restaurant("Crouching Tiger Restaurant & Bar"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/ve7XevVMUGbqXg3eZtRpgw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/crouching-tiger-restaurant-and-bar-redwood-city?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["chinese"^^com.yelp:restaurant_cuisine("Chinese")], price=enum moderate, rating=4, review_count=963, geo=new Location(37.48640133, -122.23424633, "2644 Broadway St, Redwood City, CA 94063"), phone="+16502988881"^^tt:phone_number }, UT: { id="aRu3VeiAZu4YKN9PvYvpYw"^^com.yelp:restaurant("I Dumpling"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/8__mq-BV_Xq6IKHhOH1_lA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/i-dumpling-redwood-city?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["chinese"^^com.yelp:restaurant_cuisine("Chinese"), "taiwanese"^^com.yelp:restaurant_cuisine("Taiwanese"), "seafood"^^com.yelp:restaurant_cuisine("Seafood")], price=enum cheap, rating=4, review_count=734, geo=new Location(37.486368908140925, -122.23466476656478, "2660 Broadway, Redwood City, CA 94063"), phone="+16505689789"^^tt:phone_number }, UT: { id="7WLVcOSqcBJZG36_rdI3CA"^^com.yelp:restaurant("Redwood Bistro"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/NZRObUQiHmKDkBRHIMaseQ/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/redwood-bistro-redwood-city?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["chinese"^^com.yelp:restaurant_cuisine("Chinese")], price=enum moderate, rating=4.5, review_count=333, geo=new Location(37.48712, -122.23548, "711 El Camino Real, Redwood City, CA 94063"), phone="+16502169988"^^tt:phone_number }, UT: { id="uMu3grYWk3ERsw8fXlFGvw"^^com.yelp:restaurant("Panda Dumpling"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/Qheysge21koMREg8aTOCJA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/panda-dumpling-san-carlos?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["chinese"^^com.yelp:restaurant_cuisine("Chinese")], price=enum moderate, rating=4, review_count=630, geo=new Location(37.49904, -122.25199, "1195 Laurel St, San Carlos, CA 94070"), phone="+16505938888"^^tt:phone_number }, UT: { id="a6YM6lvO5ATmvnX3Ozdq9Q"^^com.yelp:restaurant("Hot Wok Bistro Too"), image_url="https://s3-media1.fl.yelpcdn.com/bphoto/JeGbwhkzpWZ2kkHUzFGaTQ/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/hot-wok-bistro-too-san-carlos-2?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["chinese"^^com.yelp:restaurant_cuisine("Chinese")], price=enum cheap, rating=4, review_count=265, geo=new Location(37.4957223292802, -122.248010847522, "1541 Laurel St, San Carlos, CA 94070"), phone="+16506224979"^^tt:phone_number }, UT: { id="S8ecMU_Sx0esyI7YDC_5Yw"^^com.yelp:restaurant("Amazing Wok"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/PwbTj_RDUipr1ENVNMuyKA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/amazing-wok-san-carlos?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["chinese"^^com.yelp:restaurant_cuisine("Chinese")], price=enum moderate, rating=4, review_count=331, geo=new Location(37.49475, -122.24667, "1653 Laurel St, San Carlos, CA 94070"), phone="+16505952031"^^tt:phone_number }, UT: { id="bnKsZLJChHEnFV9g7mkxnA"^^com.yelp:restaurant("Yan's Garden"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/gwmPoE50BMxQFyV9SlJ5bw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/yans-garden-san-carlos?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["chinese"^^com.yelp:restaurant_cuisine("Chinese")], price=enum moderate, rating=4, review_count=378, geo=new Location(37.5028084428936, -122.256572279751, "885 Laurel St, San Carlos, CA 94070"), phone="+16505939777"^^tt:phone_number }, UT: { id="cYCXa_lfNmj-E7RiT11u6Q"^^com.yelp:restaurant("Red Hot Chilli Pepper"), image_url="https://s3-media4.fl.yelpcdn.com/bphoto/PUmvsVPC5g7GefjCcsz14A/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/red-hot-chilli-pepper-san-carlos?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["chinese"^^com.yelp:restaurant_cuisine("Chinese"), "asianfusion"^^com.yelp:restaurant_cuisine("Asian Fusion"), "indpak"^^com.yelp:restaurant_cuisine("Indian")], price=enum moderate, rating=3.5, review_count=1249, geo=new Location(37.506844238722685, -122.26054660000001, "1125 San Carlos Ave, San Carlos, CA 94070"), phone="+16504533055"^^tt:phone_number }, UT: { id="NhrRXDU6LaTf1wwwuU0Odg"^^com.yelp:restaurant("Seapot 海中锅"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/xKaXHOTfFgH9Don6nCOwFw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/seapot-%E6%B5%B7%E4%B8%AD%E9%94%85-san-mateo?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["seafood"^^com.yelp:restaurant_cuisine("Seafood"), "hotpot"^^com.yelp:restaurant_cuisine("Hot Pot"), "chinese"^^com.yelp:restaurant_cuisine("Chinese")], price=enum moderate, rating=4, review_count=1425, geo=new Location(37.54851, -122.31128, "1952 S El Camino Real, San Mateo, CA 94403"), phone="+16503152827"^^tt:phone_number }, UT: { id="4Bn7z4IPxBk9dF3EpTqMQg"^^com.yelp:restaurant("Happy Lamb Hot Pot"), image_url="https://s3-media1.fl.yelpcdn.com/bphoto/7bmq96JdaoBLTieJL04efA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/happy-lamb-hot-pot-san-mateo?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["chinese"^^com.yelp:restaurant_cuisine("Chinese"), "mongolian"^^com.yelp:restaurant_cuisine("Mongolian"), "hotpot"^^com.yelp:restaurant_cuisine("Hot Pot")], price=enum moderate, rating=4, review_count=1511, geo=new Location(37.5656637, -122.3237292, "215 S Ellsworth Ave, San Mateo, CA 94401"), phone="+16503432566"^^tt:phone_number } UT: ]] UT: #[count=38]; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.yelp.restaurant() filter contains(cuisines, "chinese"^^com.yelp:restaurant_cuisine("Chinese")) && geo == new Location(37.4863239, -122.232523, "Redwood City, California") C: #[results=[ C: { id="dLbBSJeyN85FIzHxb6oYtg"^^com.yelp:restaurant("Crouching Tiger Restaurant & Bar"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/ve7XevVMUGbqXg3eZtRpgw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/crouching-tiger-restaurant-and-bar-redwood-city?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["chinese"^^com.yelp:restaurant_cuisine("Chinese")], price=enum moderate, rating=4, review_count=963, geo=new Location(37.48640133, -122.23424633, "2644 Broadway St, Redwood City, CA 94063"), phone="+16502988881"^^tt:phone_number }, C: { id="aRu3VeiAZu4YKN9PvYvpYw"^^com.yelp:restaurant("I Dumpling"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/8__mq-BV_Xq6IKHhOH1_lA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/i-dumpling-redwood-city?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["chinese"^^com.yelp:restaurant_cuisine("Chinese"), "taiwanese"^^com.yelp:restaurant_cuisine("Taiwanese"), "seafood"^^com.yelp:restaurant_cuisine("Seafood")], price=enum cheap, rating=4, review_count=734, geo=new Location(37.486368908140925, -122.23466476656478, "2660 Broadway, Redwood City, CA 94063"), phone="+16505689789"^^tt:phone_number }, C: { id="7WLVcOSqcBJZG36_rdI3CA"^^com.yelp:restaurant("Redwood Bistro"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/NZRObUQiHmKDkBRHIMaseQ/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/redwood-bistro-redwood-city?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["chinese"^^com.yelp:restaurant_cuisine("Chinese")], price=enum moderate, rating=4.5, review_count=333, geo=new Location(37.48712, -122.23548, "711 El Camino Real, Redwood City, CA 94063"), phone="+16502169988"^^tt:phone_number }, C: { id="uMu3grYWk3ERsw8fXlFGvw"^^com.yelp:restaurant("Panda Dumpling"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/Qheysge21koMREg8aTOCJA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/panda-dumpling-san-carlos?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["chinese"^^com.yelp:restaurant_cuisine("Chinese")], price=enum moderate, rating=4, review_count=630, geo=new Location(37.49904, -122.25199, "1195 Laurel St, San Carlos, CA 94070"), phone="+16505938888"^^tt:phone_number }, C: { id="a6YM6lvO5ATmvnX3Ozdq9Q"^^com.yelp:restaurant("Hot Wok Bistro Too"), image_url="https://s3-media1.fl.yelpcdn.com/bphoto/JeGbwhkzpWZ2kkHUzFGaTQ/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/hot-wok-bistro-too-san-carlos-2?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["chinese"^^com.yelp:restaurant_cuisine("Chinese")], price=enum cheap, rating=4, review_count=265, geo=new Location(37.4957223292802, -122.248010847522, "1541 Laurel St, San Carlos, CA 94070"), phone="+16506224979"^^tt:phone_number }, C: { id="S8ecMU_Sx0esyI7YDC_5Yw"^^com.yelp:restaurant("Amazing Wok"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/PwbTj_RDUipr1ENVNMuyKA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/amazing-wok-san-carlos?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["chinese"^^com.yelp:restaurant_cuisine("Chinese")], price=enum moderate, rating=4, review_count=331, geo=new Location(37.49475, -122.24667, "1653 Laurel St, San Carlos, CA 94070"), phone="+16505952031"^^tt:phone_number }, C: { id="bnKsZLJChHEnFV9g7mkxnA"^^com.yelp:restaurant("Yan's Garden"), image_url="https://s3-media3.fl.yelpcdn.com/bphoto/gwmPoE50BMxQFyV9SlJ5bw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/yans-garden-san-carlos?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["chinese"^^com.yelp:restaurant_cuisine("Chinese")], price=enum moderate, rating=4, review_count=378, geo=new Location(37.5028084428936, -122.256572279751, "885 Laurel St, San Carlos, CA 94070"), phone="+16505939777"^^tt:phone_number }, C: { id="cYCXa_lfNmj-E7RiT11u6Q"^^com.yelp:restaurant("Red Hot Chilli Pepper"), image_url="https://s3-media4.fl.yelpcdn.com/bphoto/PUmvsVPC5g7GefjCcsz14A/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/red-hot-chilli-pepper-san-carlos?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["chinese"^^com.yelp:restaurant_cuisine("Chinese"), "asianfusion"^^com.yelp:restaurant_cuisine("Asian Fusion"), "indpak"^^com.yelp:restaurant_cuisine("Indian")], price=enum moderate, rating=3.5, review_count=1249, geo=new Location(37.506844238722685, -122.26054660000001, "1125 San Carlos Ave, San Carlos, CA 94070"), phone="+16504533055"^^tt:phone_number }, C: { id="NhrRXDU6LaTf1wwwuU0Odg"^^com.yelp:restaurant("Seapot 海中锅"), image_url="https://s3-media2.fl.yelpcdn.com/bphoto/xKaXHOTfFgH9Don6nCOwFw/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/seapot-%E6%B5%B7%E4%B8%AD%E9%94%85-san-mateo?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["seafood"^^com.yelp:restaurant_cuisine("Seafood"), "hotpot"^^com.yelp:restaurant_cuisine("Hot Pot"), "chinese"^^com.yelp:restaurant_cuisine("Chinese")], price=enum moderate, rating=4, review_count=1425, geo=new Location(37.54851, -122.31128, "1952 S El Camino Real, San Mateo, CA 94403"), phone="+16503152827"^^tt:phone_number }, C: { id="4Bn7z4IPxBk9dF3EpTqMQg"^^com.yelp:restaurant("Happy Lamb Hot Pot"), image_url="https://s3-media1.fl.yelpcdn.com/bphoto/7bmq96JdaoBLTieJL04efA/o.jpg"^^tt:picture, link="https://www.yelp.com/biz/happy-lamb-hot-pot-san-mateo?adjust_creative=hejPBQRox5iXtqGPiDw4dg&utm_campaign=yelp_api_v3&utm_medium=api_v3_business_search&utm_source=hejPBQRox5iXtqGPiDw4dg"^^tt:url, cuisines=["chinese"^^com.yelp:restaurant_cuisine("Chinese"), "mongolian"^^com.yelp:restaurant_cuisine("Mongolian"), "hotpot"^^com.yelp:restaurant_cuisine("Hot Pot")], price=enum moderate, rating=4, review_count=1511, geo=new Location(37.5656637, -122.3237292, "215 S Ellsworth Ave, San Mateo, CA 94401"), phone="+16503432566"^^tt:phone_number } C: ]] C: #[count=38]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: I see Crouching Tiger Restaurant & Bar and I Dumpling. Both are restaurants rated 4 star with Chinese food. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_two; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $wakeup; UT: $dialogue @org.thingpedia.dialogue.transaction.greet; C: $dialogue @org.thingpedia.dialogue.transaction.greet; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Hello! How can I help you? AT: $dialogue @org.thingpedia.dialogue.transaction.sys_greet; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t monitor(@org.thingpedia.weather.current()) filter temperature >= 70defaultTemperature; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: monitor(@org.thingpedia.weather.current()) filter temperature >= 70defaultTemperature; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: monitor(@org.thingpedia.weather.current(location=new Location(37.4275, -122.1697))) filter temperature >= 70F C: #[results=[]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Alright, I will notify you when the current weather in [Latitude: 37.428 deg, Longitude: -122.170 deg] changes and it becomes true that the temperature is greater than or equal to 70 degrees Fahrenheit. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_rule_enable_success; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t @org.thingpedia.iot.switch(name="invalid").state(); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @org.thingpedia.iot.switch(name="invalid").state(); #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: I cannot find any invalid switch device. Which device do you want to use? #! vote: up #! comment: test comment for dialogue turns #! additional #! lines ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t @com.spotify(name="invalid").song() filter id =~ "nice for what"; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.spotify(name="invalid").song() filter id =~ "nice for what"; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).song() filter id =~ "nice for what" C: #[results=[ C: { id="spotify:track:3CA9pLiwRIGtUBiMjbZmRw"^^com.spotify:song("Nice For What"), artists=["spotify:artist:3TVXtAsR1Inumwj472S9r4"^^com.spotify:artist("Drake")], album="spotify:album:1ATL5GLyefJaxhQzSPVrLX"^^com.spotify:album("Scorpion"), genres=["canadian hip hop", "canadian pop", "hip hop", "pop rap", "rap", "toronto rap"], release_date=new Date("2018-06-29T00:00:00.000Z"), popularity=79, energy=90, danceability=58 } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Nice For What is a song in the album Scorpion by Drake. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_one; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @com.spotify(id="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax")).playable() filter release_date <= new Date("2000-01-01T00:00:00.000Z") + 1year && release_date >= new Date("2000-01-01T00:00:00.000Z") U: #[results=[ U: { id="spotify:track:3AJwUDP919kvQ9QcozQPxg"^^com.spotify:playable("Yellow"), artists=["spotify:artist:4gzpq5DPGxSnKTe4SA8HAU"^^com.spotify:artist("Coldplay")], album="spotify:album:6ZG5lRT77aJ3btmArcykra"^^com.spotify:album("Parachutes"), genres=["permanent wave", "pop"], release_date=new Date("2000-07-10T00:00:00.000Z"), popularity=85, energy=66.10000000000001, danceability=42.9, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") }, U: { id="spotify:track:3yfqSUWxFvZELEM4PmlwIR"^^com.spotify:playable("The Real Slim Shady"), artists=["spotify:artist:7dGJo4pcD2V6oG8kP0tJRR"^^com.spotify:artist("Eminem")], album="spotify:album:6t7956yu5zYf5A829XRiHC"^^com.spotify:album("The Marshall Mathers LP"), genres=["detroit hip hop", "hip hop", "rap"], release_date=new Date("2000-05-23T00:00:00.000Z"), popularity=84, energy=66.10000000000001, danceability=94.89999999999999, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") }, U: { id="spotify:track:0I3q5fE6wg7LIfHGngUTnV"^^com.spotify:playable("Ms. Jackson"), artists=["spotify:artist:1G9G7WwrXka3Z1r7aIDjI7"^^com.spotify:artist("Outkast")], album="spotify:album:2tm3Ht61kqqRZtIYsBjxEj"^^com.spotify:album("Stankonia"), genres=["atl hip hop", "dirty south rap", "hip hop", "rap", "southern hip hop"], release_date=new Date("2000-10-31T00:00:00.000Z"), popularity=82, energy=80.60000000000001, danceability=84.3, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") }, U: { id="spotify:track:6ZOBP3NvffbU4SZcrnt1k6"^^com.spotify:playable("Kryptonite"), artists=["spotify:artist:2RTUTCvo6onsAnheUk3aL9"^^com.spotify:artist("3 Doors Down")], album="spotify:album:5gO2acKSOaJnP0Mcy8IpU6"^^com.spotify:album("The Better Life"), genres=["alternative metal", "nu metal", "pop rock", "post-grunge"], release_date=new Date("2000-01-01T00:00:00.000Z"), popularity=79, energy=86.5, danceability=54.50000000000001, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") }, U: { id="spotify:track:60a0Rd6pjrkxjPbaKzXjfq"^^com.spotify:playable("In the End"), artists=["spotify:artist:6XyY86QOPPrYVGvF9ch6wz"^^com.spotify:artist("Linkin Park")], album="spotify:album:6hPkbAV3ZXpGZBGUvL6jVM"^^com.spotify:album("Hybrid Theory (Bonus Edition)"), genres=["alternative metal", "nu metal", "post-grunge", "rap metal"], release_date=new Date("2000-10-24T00:00:00.000Z"), popularity=83, energy=86.4, danceability=55.60000000000001, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") }, U: { id="spotify:track:40rvBMQizxkIqnjPdEWY1v"^^com.spotify:playable("Down with the Sickness"), artists=["spotify:artist:3TOqt5oJwL9BE2NG9MEwDa"^^com.spotify:artist("Disturbed")], album="spotify:album:6IvosVciDOQ9NAPaKwhtLY"^^com.spotify:album("The Sickness"), genres=["alternative metal", "nu metal", "rap metal"], release_date=new Date("2000-03-07T00:00:00.000Z"), popularity=76, energy=87.6, danceability=69.5, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") }, U: { id="spotify:track:3Gf5nttwcX9aaSQXRWidEZ"^^com.spotify:playable("Ride Wit Me"), artists=["spotify:artist:2gBjLmx6zQnFGQJCAQpRgw"^^com.spotify:artist("Nelly"), "spotify:artist:3L2SIGZah4QZSvN4wC8rHl"^^com.spotify:artist("City Spud")], album="spotify:album:5v7Icroz1sQsK2sQyLrWzE"^^com.spotify:album("Country Grammar"), genres=["dance pop", "hip hop", "pop rap", "rap", "southern hip hop", "st louis rap", "urban contemporary"], release_date=new Date("2000-06-27T00:00:00.000Z"), popularity=75, energy=70, danceability=85, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") }, U: { id="spotify:track:6naxalmIoLFWR0siv8dnQQ"^^com.spotify:playable("Oops!...I Did It Again"), artists=["spotify:artist:26dSoYclwsYLMAKD3tpOr4"^^com.spotify:artist("Britney Spears")], album="spotify:album:5PmgtkodFl2Om3hMXONDll"^^com.spotify:album("Oops!... I Did It Again"), genres=["dance pop", "pop", "post-teen pop"], release_date=new Date("2000-05-16T00:00:00.000Z"), popularity=80, energy=83.39999999999999, danceability=75.1, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") }, U: { id="spotify:track:3UmaczJpikHgJFyBTAJVoz"^^com.spotify:playable("Stan"), artists=["spotify:artist:7dGJo4pcD2V6oG8kP0tJRR"^^com.spotify:artist("Eminem"), "spotify:artist:2mpeljBig2IXLXRAFO9AAs"^^com.spotify:artist("Dido")], album="spotify:album:6t7956yu5zYf5A829XRiHC"^^com.spotify:album("The Marshall Mathers LP"), genres=["detroit hip hop", "hip hop", "rap"], release_date=new Date("2000-05-23T00:00:00.000Z"), popularity=80, energy=76.8, danceability=78, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") }, U: { id="spotify:track:62bOmKYxYg7dhrC6gH9vFn"^^com.spotify:playable("Bye Bye Bye"), artists=["spotify:artist:6Ff53KvcvAj5U7Z1vojB5o"^^com.spotify:artist("*NSYNC")], album="spotify:album:20RMokVwJ2wjQ0s8FOdOFC"^^com.spotify:album("No Strings Attached"), genres=["boy band", "dance pop", "pop", "post-teen pop"], release_date=new Date("2000-03-21T00:00:00.000Z"), popularity=72, energy=92.60000000000001, danceability=61, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") } U: ]] U: #[count=50]; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.spotify(id="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax")).playable() filter release_date <= new Date("2000-01-01T00:00:00.000Z") + 1year && release_date >= new Date("2000-01-01T00:00:00.000Z") UT: #[results=[ UT: { id="spotify:track:3AJwUDP919kvQ9QcozQPxg"^^com.spotify:playable("Yellow"), artists=["spotify:artist:4gzpq5DPGxSnKTe4SA8HAU"^^com.spotify:artist("Coldplay")], album="spotify:album:6ZG5lRT77aJ3btmArcykra"^^com.spotify:album("Parachutes"), genres=["permanent wave", "pop"], release_date=new Date("2000-07-10T00:00:00.000Z"), popularity=85, energy=66.10000000000001, danceability=42.9, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") }, UT: { id="spotify:track:3yfqSUWxFvZELEM4PmlwIR"^^com.spotify:playable("The Real Slim Shady"), artists=["spotify:artist:7dGJo4pcD2V6oG8kP0tJRR"^^com.spotify:artist("Eminem")], album="spotify:album:6t7956yu5zYf5A829XRiHC"^^com.spotify:album("The Marshall Mathers LP"), genres=["detroit hip hop", "hip hop", "rap"], release_date=new Date("2000-05-23T00:00:00.000Z"), popularity=84, energy=66.10000000000001, danceability=94.89999999999999, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") }, UT: { id="spotify:track:0I3q5fE6wg7LIfHGngUTnV"^^com.spotify:playable("Ms. Jackson"), artists=["spotify:artist:1G9G7WwrXka3Z1r7aIDjI7"^^com.spotify:artist("Outkast")], album="spotify:album:2tm3Ht61kqqRZtIYsBjxEj"^^com.spotify:album("Stankonia"), genres=["atl hip hop", "dirty south rap", "hip hop", "rap", "southern hip hop"], release_date=new Date("2000-10-31T00:00:00.000Z"), popularity=82, energy=80.60000000000001, danceability=84.3, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") }, UT: { id="spotify:track:6ZOBP3NvffbU4SZcrnt1k6"^^com.spotify:playable("Kryptonite"), artists=["spotify:artist:2RTUTCvo6onsAnheUk3aL9"^^com.spotify:artist("3 Doors Down")], album="spotify:album:5gO2acKSOaJnP0Mcy8IpU6"^^com.spotify:album("The Better Life"), genres=["alternative metal", "nu metal", "pop rock", "post-grunge"], release_date=new Date("2000-01-01T00:00:00.000Z"), popularity=79, energy=86.5, danceability=54.50000000000001, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") }, UT: { id="spotify:track:60a0Rd6pjrkxjPbaKzXjfq"^^com.spotify:playable("In the End"), artists=["spotify:artist:6XyY86QOPPrYVGvF9ch6wz"^^com.spotify:artist("Linkin Park")], album="spotify:album:6hPkbAV3ZXpGZBGUvL6jVM"^^com.spotify:album("Hybrid Theory (Bonus Edition)"), genres=["alternative metal", "nu metal", "post-grunge", "rap metal"], release_date=new Date("2000-10-24T00:00:00.000Z"), popularity=83, energy=86.4, danceability=55.60000000000001, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") }, UT: { id="spotify:track:40rvBMQizxkIqnjPdEWY1v"^^com.spotify:playable("Down with the Sickness"), artists=["spotify:artist:3TOqt5oJwL9BE2NG9MEwDa"^^com.spotify:artist("Disturbed")], album="spotify:album:6IvosVciDOQ9NAPaKwhtLY"^^com.spotify:album("The Sickness"), genres=["alternative metal", "nu metal", "rap metal"], release_date=new Date("2000-03-07T00:00:00.000Z"), popularity=76, energy=87.6, danceability=69.5, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") }, UT: { id="spotify:track:3Gf5nttwcX9aaSQXRWidEZ"^^com.spotify:playable("Ride Wit Me"), artists=["spotify:artist:2gBjLmx6zQnFGQJCAQpRgw"^^com.spotify:artist("Nelly"), "spotify:artist:3L2SIGZah4QZSvN4wC8rHl"^^com.spotify:artist("City Spud")], album="spotify:album:5v7Icroz1sQsK2sQyLrWzE"^^com.spotify:album("Country Grammar"), genres=["dance pop", "hip hop", "pop rap", "rap", "southern hip hop", "st louis rap", "urban contemporary"], release_date=new Date("2000-06-27T00:00:00.000Z"), popularity=75, energy=70, danceability=85, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") }, UT: { id="spotify:track:6naxalmIoLFWR0siv8dnQQ"^^com.spotify:playable("Oops!...I Did It Again"), artists=["spotify:artist:26dSoYclwsYLMAKD3tpOr4"^^com.spotify:artist("Britney Spears")], album="spotify:album:5PmgtkodFl2Om3hMXONDll"^^com.spotify:album("Oops!... I Did It Again"), genres=["dance pop", "pop", "post-teen pop"], release_date=new Date("2000-05-16T00:00:00.000Z"), popularity=80, energy=83.39999999999999, danceability=75.1, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") }, UT: { id="spotify:track:3UmaczJpikHgJFyBTAJVoz"^^com.spotify:playable("Stan"), artists=["spotify:artist:7dGJo4pcD2V6oG8kP0tJRR"^^com.spotify:artist("Eminem"), "spotify:artist:2mpeljBig2IXLXRAFO9AAs"^^com.spotify:artist("Dido")], album="spotify:album:6t7956yu5zYf5A829XRiHC"^^com.spotify:album("The Marshall Mathers LP"), genres=["detroit hip hop", "hip hop", "rap"], release_date=new Date("2000-05-23T00:00:00.000Z"), popularity=80, energy=76.8, danceability=78, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") }, UT: { id="spotify:track:62bOmKYxYg7dhrC6gH9vFn"^^com.spotify:playable("Bye Bye Bye"), artists=["spotify:artist:6Ff53KvcvAj5U7Z1vojB5o"^^com.spotify:artist("*NSYNC")], album="spotify:album:20RMokVwJ2wjQ0s8FOdOFC"^^com.spotify:album("No Strings Attached"), genres=["boy band", "dance pop", "pop", "post-teen pop"], release_date=new Date("2000-03-21T00:00:00.000Z"), popularity=72, energy=92.60000000000001, danceability=61, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") } UT: ]] UT: #[count=50]; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.spotify(id="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax")).playable() filter release_date <= new Date("2000-01-01T00:00:00.000Z") + 1year && release_date >= new Date("2000-01-01T00:00:00.000Z") C: #[results=[ C: { id="spotify:track:3AJwUDP919kvQ9QcozQPxg"^^com.spotify:playable("Yellow"), artists=["spotify:artist:4gzpq5DPGxSnKTe4SA8HAU"^^com.spotify:artist("Coldplay")], album="spotify:album:6ZG5lRT77aJ3btmArcykra"^^com.spotify:album("Parachutes"), genres=["permanent wave", "pop"], release_date=new Date("2000-07-10T00:00:00.000Z"), popularity=85, energy=66.10000000000001, danceability=42.9, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") }, C: { id="spotify:track:3yfqSUWxFvZELEM4PmlwIR"^^com.spotify:playable("The Real Slim Shady"), artists=["spotify:artist:7dGJo4pcD2V6oG8kP0tJRR"^^com.spotify:artist("Eminem")], album="spotify:album:6t7956yu5zYf5A829XRiHC"^^com.spotify:album("The Marshall Mathers LP"), genres=["detroit hip hop", "hip hop", "rap"], release_date=new Date("2000-05-23T00:00:00.000Z"), popularity=84, energy=66.10000000000001, danceability=94.89999999999999, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") }, C: { id="spotify:track:0I3q5fE6wg7LIfHGngUTnV"^^com.spotify:playable("Ms. Jackson"), artists=["spotify:artist:1G9G7WwrXka3Z1r7aIDjI7"^^com.spotify:artist("Outkast")], album="spotify:album:2tm3Ht61kqqRZtIYsBjxEj"^^com.spotify:album("Stankonia"), genres=["atl hip hop", "dirty south rap", "hip hop", "rap", "southern hip hop"], release_date=new Date("2000-10-31T00:00:00.000Z"), popularity=82, energy=80.60000000000001, danceability=84.3, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") }, C: { id="spotify:track:6ZOBP3NvffbU4SZcrnt1k6"^^com.spotify:playable("Kryptonite"), artists=["spotify:artist:2RTUTCvo6onsAnheUk3aL9"^^com.spotify:artist("3 Doors Down")], album="spotify:album:5gO2acKSOaJnP0Mcy8IpU6"^^com.spotify:album("The Better Life"), genres=["alternative metal", "nu metal", "pop rock", "post-grunge"], release_date=new Date("2000-01-01T00:00:00.000Z"), popularity=79, energy=86.5, danceability=54.50000000000001, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") }, C: { id="spotify:track:60a0Rd6pjrkxjPbaKzXjfq"^^com.spotify:playable("In the End"), artists=["spotify:artist:6XyY86QOPPrYVGvF9ch6wz"^^com.spotify:artist("Linkin Park")], album="spotify:album:6hPkbAV3ZXpGZBGUvL6jVM"^^com.spotify:album("Hybrid Theory (Bonus Edition)"), genres=["alternative metal", "nu metal", "post-grunge", "rap metal"], release_date=new Date("2000-10-24T00:00:00.000Z"), popularity=83, energy=86.4, danceability=55.60000000000001, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") }, C: { id="spotify:track:40rvBMQizxkIqnjPdEWY1v"^^com.spotify:playable("Down with the Sickness"), artists=["spotify:artist:3TOqt5oJwL9BE2NG9MEwDa"^^com.spotify:artist("Disturbed")], album="spotify:album:6IvosVciDOQ9NAPaKwhtLY"^^com.spotify:album("The Sickness"), genres=["alternative metal", "nu metal", "rap metal"], release_date=new Date("2000-03-07T00:00:00.000Z"), popularity=76, energy=87.6, danceability=69.5, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") }, C: { id="spotify:track:3Gf5nttwcX9aaSQXRWidEZ"^^com.spotify:playable("Ride Wit Me"), artists=["spotify:artist:2gBjLmx6zQnFGQJCAQpRgw"^^com.spotify:artist("Nelly"), "spotify:artist:3L2SIGZah4QZSvN4wC8rHl"^^com.spotify:artist("City Spud")], album="spotify:album:5v7Icroz1sQsK2sQyLrWzE"^^com.spotify:album("Country Grammar"), genres=["dance pop", "hip hop", "pop rap", "rap", "southern hip hop", "st louis rap", "urban contemporary"], release_date=new Date("2000-06-27T00:00:00.000Z"), popularity=75, energy=70, danceability=85, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") }, C: { id="spotify:track:6naxalmIoLFWR0siv8dnQQ"^^com.spotify:playable("Oops!...I Did It Again"), artists=["spotify:artist:26dSoYclwsYLMAKD3tpOr4"^^com.spotify:artist("Britney Spears")], album="spotify:album:5PmgtkodFl2Om3hMXONDll"^^com.spotify:album("Oops!... I Did It Again"), genres=["dance pop", "pop", "post-teen pop"], release_date=new Date("2000-05-16T00:00:00.000Z"), popularity=80, energy=83.39999999999999, danceability=75.1, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") }, C: { id="spotify:track:3UmaczJpikHgJFyBTAJVoz"^^com.spotify:playable("Stan"), artists=["spotify:artist:7dGJo4pcD2V6oG8kP0tJRR"^^com.spotify:artist("Eminem"), "spotify:artist:2mpeljBig2IXLXRAFO9AAs"^^com.spotify:artist("Dido")], album="spotify:album:6t7956yu5zYf5A829XRiHC"^^com.spotify:album("The Marshall Mathers LP"), genres=["detroit hip hop", "hip hop", "rap"], release_date=new Date("2000-05-23T00:00:00.000Z"), popularity=80, energy=76.8, danceability=78, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") }, C: { id="spotify:track:62bOmKYxYg7dhrC6gH9vFn"^^com.spotify:playable("Bye Bye Bye"), artists=["spotify:artist:6Ff53KvcvAj5U7Z1vojB5o"^^com.spotify:artist("*NSYNC")], album="spotify:album:20RMokVwJ2wjQ0s8FOdOFC"^^com.spotify:album("No Strings Attached"), genres=["boy band", "dance pop", "pop", "post-teen pop"], release_date=new Date("2000-03-21T00:00:00.000Z"), popularity=72, energy=92.60000000000001, danceability=61, __device="com.spotify-gcampax"^^tt:device_id("Spotify Account of gcampax") } C: ]] C: #[count=50]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: I see Yellow and The Real Slim Shady. Yellow is by Coldplay, while The Real Slim Shady is by Eminem. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_two; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t @org.thingpedia.iot.switch(name="büro decke").set_power(power=enum on); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @org.thingpedia.iot.switch(name="büro decke").set_power(power=enum on); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @org.thingpedia.iot.switch(id="switch-office-de"^^tt:device_id("Büro Decke")).set_power(power=enum on) C: #[results=[ C: { power=enum on, __device="switch-office-de"^^tt:device_id("Büro Decke") } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: I turned on your Büro Decke switch. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_action_success; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t @org.thingpedia.iot.switch(name="büro decke").set_power(power=enum off); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @org.thingpedia.iot.switch(name="büro decke").set_power(power=enum off); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @org.thingpedia.iot.switch(id="switch-office-de"^^tt:device_id("Büro Decke")).set_power(power=enum on) C: #[results=[ C: { power=enum on, __device="switch-office-de"^^tt:device_id("Büro Decke") } C: ]]; C: @org.thingpedia.iot.switch(id="switch-office-de"^^tt:device_id("Büro Decke")).set_power(power=enum off) C: #[results=[ C: { power=enum off, __device="switch-office-de"^^tt:device_id("Büro Decke") } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: I turned off your Büro Decke switch for you. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_action_success; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t @org.thingpedia.iot.switch(name="invalid").set_power(power=enum off); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @org.thingpedia.iot.switch(name="invalid").set_power(power=enum off); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @org.thingpedia.iot.switch(id="switch-kitchen"^^tt:device_id("Kitchen Switches")).set_power(power=enum off) C: #[results=[ C: { power=enum off, __device="switch-kitchen"^^tt:device_id("Kitchen Switches") } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: I cannot find any invalid switch device. Which device do you want to use? A: I turned off your Kitchen Switches switch. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_action_success; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: !! test command always bing !! UT: $dialogue @com.bing.search; C: $dialogue @com.bing.search; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Here is something I found on the web. AT: $dialogue @com.bing.sys_search_result; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t @com.goal_smart.player(league_id="39"^^com.goal_smart:soccer_league("premier league")); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.goal_smart.player(league_id="39"^^com.goal_smart:soccer_league("premier league")); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.goal_smart(id="com.goal_smart-9"^^tt:device_id("Some Device 9")).player(league_id="39"^^com.goal_smart:soccer_league("premier league")) C: #[results=[ C: { id="114"^^com.goal_smart:soccer_player("Adrien Silva"), goals=0, assists=0, red_cards=0, yellow_cards=0, appearances=0, minutes=0, shots=0, shots_on_target=0, passes=0, key_passes=0, pass_accuracy=0, dribble_attempts=0, successful_dribbles=0, tackles=0, blocks=0, interceptions=0, league_id="39"^^com.goal_smart:soccer_league("premier league") }, C: { id="518"^^com.goal_smart:soccer_player("M. Shabani"), goals=0, assists=0, red_cards=0, yellow_cards=0, appearances=0, minutes=0, shots=0, shots_on_target=0, passes=0, key_passes=0, pass_accuracy=0, dribble_attempts=0, successful_dribbles=0, tackles=0, blocks=0, interceptions=0, league_id="39"^^com.goal_smart:soccer_league("premier league") }, C: { id="18813"^^com.goal_smart:soccer_player("A. Cresswell"), goals=0, assists=8, red_cards=0, yellow_cards=3, appearances=35, minutes=0, shots=16, shots_on_target=4, passes=1613, key_passes=58, pass_accuracy=36, dribble_attempts=9, successful_dribbles=3, tackles=31, blocks=13, interceptions=32, league_id="39"^^com.goal_smart:soccer_league("premier league") } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Adrien Silva, M. Shabani, and A. Cresswell has scored 0, 0, and 0 goals this season. They have had 0, 0, and 8 assists. After playing 0, 0, and 0 minutes in 0, 0, and 35 appearances in the league, they had 0, 0, and 3 yellow cards and 0, 0, and 0 red cards. Adrien Silva, M. Shabani, and A. Cresswell took 0, 0, and 16 shots, 0, 0, and 4 of which were on target. They made a total of 0, 0, and 1,613 passes, 0, 0, and 58 key passes, with a passing accuracy of 0, 0, and 36 percent. Adrien Silva, M. Shabani, and A. Cresswell took 0, 0, and 9 dribble attempts, and 0, 0, and 3 of them were successful. They made 0, 0, and 31 tackles, 0, 0, and 32 interceptions, and 0, 0, and 13 blocks. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_three; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t [dribble_attempts] of @com.goal_smart.player(league_id="39"^^com.goal_smart:soccer_league("premier league")); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: [dribble_attempts] of @com.goal_smart.player(league_id="39"^^com.goal_smart:soccer_league("premier league")); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.goal_smart(id="com.goal_smart-9"^^tt:device_id("Some Device 9")).player(league_id="39"^^com.goal_smart:soccer_league("premier league")) C: #[results=[ C: { id="114"^^com.goal_smart:soccer_player("Adrien Silva"), goals=0, assists=0, red_cards=0, yellow_cards=0, appearances=0, minutes=0, shots=0, shots_on_target=0, passes=0, key_passes=0, pass_accuracy=0, dribble_attempts=0, successful_dribbles=0, tackles=0, blocks=0, interceptions=0, league_id="39"^^com.goal_smart:soccer_league("premier league") }, C: { id="518"^^com.goal_smart:soccer_player("M. Shabani"), goals=0, assists=0, red_cards=0, yellow_cards=0, appearances=0, minutes=0, shots=0, shots_on_target=0, passes=0, key_passes=0, pass_accuracy=0, dribble_attempts=0, successful_dribbles=0, tackles=0, blocks=0, interceptions=0, league_id="39"^^com.goal_smart:soccer_league("premier league") }, C: { id="18813"^^com.goal_smart:soccer_player("A. Cresswell"), goals=0, assists=8, red_cards=0, yellow_cards=3, appearances=35, minutes=0, shots=16, shots_on_target=4, passes=1613, key_passes=58, pass_accuracy=36, dribble_attempts=9, successful_dribbles=3, tackles=31, blocks=13, interceptions=32, league_id="39"^^com.goal_smart:soccer_league("premier league") } C: ]]; C: [dribble_attempts] of @com.goal_smart(id="com.goal_smart-9"^^tt:device_id("Some Device 9")).player(league_id="39"^^com.goal_smart:soccer_league("premier league")) C: #[results=[ C: { league_id="39"^^com.goal_smart:soccer_league("premier league"), id="114"^^com.goal_smart:soccer_player("Adrien Silva"), dribble_attempts=0 }, C: { league_id="39"^^com.goal_smart:soccer_league("premier league"), id="518"^^com.goal_smart:soccer_player("M. Shabani"), dribble_attempts=0 }, C: { league_id="39"^^com.goal_smart:soccer_league("premier league"), id="18813"^^com.goal_smart:soccer_player("A. Cresswell"), dribble_attempts=9 } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Both Adrien Silva and M. Shabani are player stats with the dribble equal to 0. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_two; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.notification; U: timer(base=$now, interval=1min) U: #[results=[ U: { __timestamp=1626399487 } U: ]]; UT: $dialogue @org.thingpedia.dialogue.transaction.notification; UT: timer(base=$now, interval=1min) UT: #[results=[ UT: { __timestamp=1626399487 } UT: ]]; C: $dialogue @org.thingpedia.dialogue.transaction.notification; C: timer(base=$now, interval=1min) C: #[results=[ C: { __timestamp=1626399487 } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Your request was completed successfully. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_action_success; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: maybe turn on the lights? UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @org.thingpedia.iot.light-bulb.set_power(power=enum on); #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Did you mean set on the lights? A: You do not have a Light Bulb configured. You will need to enable Home Assistant or Philips Hue before you can use that command. #! vote: up #! comment: test comment for dialogue turns #! additional #! lines ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: maybe turn on the lights? UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @org.thingpedia.iot.light-bulb.set_power(power=enum on); C: null #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Did you mean set on the lights? A: Sorry I couldn't help on that. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_clarify; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.notification("Say"); U: ontimer(date=[new Date("2021-09-30T17:30:00.000Z")]) => @org.thingpedia.builtin.thingengine.builtin.say(message="my reminder") U: #[results=[ U: { message_output="my reminder" } U: ]]; UT: $dialogue @org.thingpedia.dialogue.transaction.notification("Say"); UT: ontimer(date=[new Date("2021-09-30T17:30:00.000Z")]) => @org.thingpedia.builtin.thingengine.builtin.say(message="my reminder") UT: #[results=[ UT: { message_output="my reminder" } UT: ]]; C: $dialogue @org.thingpedia.dialogue.transaction.notification("Say"); C: ontimer(date=[new Date("2021-09-30T17:30:00.000Z")]) => @org.thingpedia.builtin.thingengine.builtin.say(message="my reminder") C: #[results=[ C: { message_output="my reminder" } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Reminder: my reminder. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_action_success; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.notification("Say"); U: ontimer(date=[$now + 10min]) => @org.thingpedia.builtin.thingengine.builtin.say(message="my reminder") U: #[results=[ U: { message_output="my reminder" } U: ]]; UT: $dialogue @org.thingpedia.dialogue.transaction.notification("Say"); UT: ontimer(date=[$now + 10min]) => @org.thingpedia.builtin.thingengine.builtin.say(message="my reminder") UT: #[results=[ UT: { message_output="my reminder" } UT: ]]; C: $dialogue @org.thingpedia.dialogue.transaction.notification("Say"); C: ontimer(date=[$now + 10min]) => @org.thingpedia.builtin.thingengine.builtin.say(message="my reminder") C: #[results=[ C: { message_output="my reminder" } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Reminder: my reminder. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_action_success; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.execute; U: @org.thingpedia.builtin.thingengine.builtin.alert(); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @org.thingpedia.builtin.thingengine.builtin.alert(); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @org.thingpedia.builtin.thingengine.builtin.alert() C: #[results=[ C: { time=new Time(17, 50) } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: It is 5:50 PM. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_action_success; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $dialogue @org.thingpedia.dialogue.transaction.notification("Alert"); U: ontimer(date=[$now + 10min]) => @org.thingpedia.builtin.thingengine.builtin.alert() U: #[results=[ U: { time=new Time(17, 50) } U: ]]; UT: $dialogue @org.thingpedia.dialogue.transaction.notification("Alert"); UT: ontimer(date=[$now + 10min]) => @org.thingpedia.builtin.thingengine.builtin.alert() UT: #[results=[ UT: { time=new Time(17, 50) } UT: ]]; C: $dialogue @org.thingpedia.dialogue.transaction.notification("Alert"); C: ontimer(date=[$now + 10min]) => @org.thingpedia.builtin.thingengine.builtin.alert() C: #[results=[ C: { time=new Time(17, 50) } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Alert: it is 5:50 PM. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_action_success; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t @com.spotify.get_currently_playing(); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @com.spotify.get_currently_playing(); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).get_currently_playing() C: #[results=[ C: { id="spotify:track:4sPmO7WMQUAf45kwMOtONw"^^com.spotify:song("Hello"), artists=["spotify:artist:4dpARuHxo51G3z768sgnrY"^^com.spotify:artist("Adele")], album="spotify:album:0K4pIOOsfJ9lK8OjrZfXzd"^^com.spotify:album("25"), genres=["british soul", "pop", "uk pop"], release_date=new Date("2016-06-24T00:00:00.000Z"), popularity=72, energy=45, danceability=48 } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Currently playing Hello. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t [artists] of @com.spotify.get_currently_playing(); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: [artists] of @com.spotify.get_currently_playing(); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).get_currently_playing() C: #[results=[ C: { id="spotify:track:4sPmO7WMQUAf45kwMOtONw"^^com.spotify:song("Hello"), artists=["spotify:artist:4dpARuHxo51G3z768sgnrY"^^com.spotify:artist("Adele")], album="spotify:album:0K4pIOOsfJ9lK8OjrZfXzd"^^com.spotify:album("25"), genres=["british soul", "pop", "uk pop"], release_date=new Date("2016-06-24T00:00:00.000Z"), popularity=72, energy=45, danceability=48 } C: ]]; C: [artists] of @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).get_currently_playing() C: #[results=[ C: { id="spotify:track:4sPmO7WMQUAf45kwMOtONw"^^com.spotify:song("Hello"), artists=["spotify:artist:4dpARuHxo51G3z768sgnrY"^^com.spotify:artist("Adele")] } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: The artist is Adele. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t [artists] of @com.spotify.get_currently_playing(); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: [artists] of @com.spotify.get_currently_playing(); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: [artists] of @com.spotify(id="com.spotify-7"^^tt:device_id("Some Device 7")).get_currently_playing() C: #[results=[ C: { id="spotify:track:4sPmO7WMQUAf45kwMOtONw"^^com.spotify:song("Hello"), artists=["spotify:artist:4dpARuHxo51G3z768sgnrY"^^com.spotify:artist("Adele")] } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Currently playing Hello. The artist is Adele. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_display_result; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t [openingHours] of @com.yelp.restaurant() filter id =~ "Oren's Hummus"; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: [openingHours] of @com.yelp.restaurant() filter id =~ "Oren's Hummus"; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: [openingHours] of @com.yelp.restaurant() filter id =~ "Oren's Hummus" C: #[results=[ C: { id="KyU7XWDPclmZ3BpdIsd_0Q"^^com.yelp:restaurant("Oren's Hummus"), openingHours=new RecurrentTimeSpecification({ beginTime=new Time(11, 0), endTime=new Time(14, 30), interval=86400000ms }) } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Oren's Hummus opens from 11:00 AM to 2:30 PM every day. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_recommend_one; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t @org.thingpedia.builtin.thingengine.builtin.say(message="hello"); UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: @org.thingpedia.builtin.thingengine.builtin.say(message="hello"); C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: @org.thingpedia.builtin.thingengine.builtin.say(message="hello") C: #[results=[ C: { message="hello", message_output="str:QUOTED_STRING::42:" } C: ]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Str:QUOTED_STRING::42:. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_action_success; #! vote: down #! comment: test comment for dialogue turns #! additional #! lines #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t $stop; UT: $stop; ==== # test #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ U: \t monitor(@org.thingpedia.iot.switch(name="kitchen").state()) filter state == enum on; UT: $dialogue @org.thingpedia.dialogue.transaction.execute; UT: monitor(@org.thingpedia.iot.switch(name="kitchen").state()) filter state == enum on; C: $dialogue @org.thingpedia.dialogue.transaction.execute; C: monitor(@org.thingpedia.iot.switch(id="switch-kitchen"^^tt:device_id("Kitchen Switches")).state()) filter state == enum on C: #[results=[]]; #! timestamp: XXXX-XX-XXTXX:XX:XX.XXXZ A: Alright, I will notify you when the power state of your Kitchen Switches switch changes and it becomes true that the state is equal to on. AT: $dialogue @org.thingpedia.dialogue.transaction.sys_rule_enable_success; #! vote: up #! comment: test comment for dialogue turns #! additional #! lines