เครื่องมือ: lookup_weather
ดึงข้อมูลสภาพอากาศที่ครอบคลุม รวมถึงสภาพอากาศปัจจุบัน การพยากรณ์อากาศรายชั่วโมง และรายวัน ข้อมูลที่เฉพาะเจาะจงที่พร้อมใช้งาน: อุณหภูมิ (ปัจจุบัน, อุณหภูมิที่รู้สึก, สูงสุด/ต่ำสุด, ดัชนีความร้อน), ลม (ความเร็ว, ลมกระโชก, ทิศทาง), ปรากฏการณ์ทางดาราศาสตร์ (พระอาทิตย์ขึ้น/ตก, ข้างขึ้นข้างแรม), ปริมาณน้ำฝน (ประเภท, ความน่าจะเป็น, ปริมาณ/QPF), สภาพอากาศ (ดัชนีรังสียูวี, ความชื้น, ปริมาณเมฆ, ความน่าจะเป็นที่จะเกิดพายุฝนฟ้าคะนอง) และที่อยู่ของสถานที่ที่เข้ารหัสพิกัดภูมิศาสตร์ ตำแหน่งและกฎตำแหน่ง (สำคัญ): ระบุตำแหน่งที่ขอข้อมูลสภาพอากาศโดยใช้ช่อง "location" ฟิลด์นี้เป็นโครงสร้าง "oneof" ซึ่งหมายความว่าคุณต้องระบุค่าสำหรับฟิลด์ย่อยตำแหน่งเพียง 1 ใน 3 รายการด้านล่างเพื่อให้มั่นใจว่าการค้นหาข้อมูลสภาพอากาศจะถูกต้อง 1. พิกัดทางภูมิศาสตร์ (lat_lng) * ใช้เมื่อได้รับพิกัดละติจูด/ลองจิจูดที่แน่นอน * ตัวอย่าง: "lat_lng": { "latitude": 34.0522, "longitude": -118.2437 } // ลอสแอนเจลิส 2. รหัสสถานที่ (place_id) * ตัวระบุสตริงที่ไม่กำกวม (รหัสสถานที่ของ Google Maps) * ดึงข้อมูล place_id ได้จากเครื่องมือ search_places * ตัวอย่าง: "place_id": "ChIJLU7jZClu5kcR4PcOOO6p3I0" // หอไอเฟล 3. สตริงที่อยู่ (address) * สตริงรูปแบบอิสระที่ต้องมีความเฉพาะเจาะจงสำหรับการเข้ารหัสพิกัดภูมิศาสตร์ * เมืองและภูมิภาค: ระบุภูมิภาค/ประเทศเสมอ (เช่น "ลอนดอน สหราชอาณาจักร" ไม่ใช่ "ลอนดอน") * ที่อยู่: ระบุที่อยู่แบบเต็ม (เช่น "1600 Pennsylvania Ave NW, Washington, DC") * รหัสไปรษณีย์: ต้องระบุชื่อประเทศด้วย (เช่น "90210, USA" ไม่ใช่ "90210") โหมดการใช้งาน: 1. สภาพอากาศปัจจุบัน: ระบุaddressเท่านั้น อย่าระบุ date และ hour 2. พยากรณ์รายชั่วโมง: ระบุ address, date และ hour (0-23) ใช้สำหรับเวลาที่เฉพาะเจาะจง (เช่น "ตอน 5 โมงเย็น") หรือคำอย่าง "อีก 2-3 ชั่วโมง" หรือ "ช่วงเย็นวันนี้" หากผู้ใช้ระบุนาที ให้ปัดเศษลงเป็นชั่วโมงที่ใกล้ที่สุด ระบบไม่รองรับการพยากรณ์รายชั่วโมงที่เกิน 48 ชั่วโมงนับจากนี้ 3. พยากรณ์อากาศประจำวัน: ระบุ address และ date อย่าระบุ hour ใช้สำหรับคำขอทั่วไปในแต่ละวัน (เช่น "สภาพอากาศวันพรุ่งนี้" "สภาพอากาศวันศุกร์" "สภาพอากาศวันที่ 25/12") หากวันที่ปัจจุบันไม่อยู่ในบริบท คุณควรชี้แจงให้ผู้ใช้ทราบ ระบบไม่รองรับการพยากรณ์อากาศรายวันเกิน 7 วัน รวมถึงวันนี้ ไม่รองรับสภาพอากาศย้อนหลัง ข้อจำกัดของพารามิเตอร์: * เขตเวลา: อินพุต date และ hour ทั้งหมดต้องสัมพันธ์กับเขตเวลาท้องถิ่นของสถานที่ตั้ง ไม่ใช่เขตเวลาของผู้ใช้ * รูปแบบวันที่: ต้องแยกอินพุตเป็นจำนวนเต็ม {year, month, day} * หน่วย: ค่าเริ่มต้นคือ METRIC ตั้งค่า units_system เป็น IMPERIAL สำหรับฟาเรนไฮต์/ไมล์ หากผู้ใช้ระบุมาตรฐานของสหรัฐอเมริกาหรือขออย่างชัดเจน
ตัวอย่างต่อไปนี้แสดงวิธีใช้ curl เพื่อเรียกใช้เครื่องมือ lookup_weather MCP
| คำขอ Curl |
|---|
curl --location 'https://mapstools.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "lookup_weather", "arguments": { // provide these details according to the tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
สคีมาอินพุต
คำขอสำหรับเมธอด LookupWeather - แสดงถึงสภาพอากาศในตำแหน่งที่ขอ
LookupWeatherRequest
| การแสดง JSON |
|---|
{ "DEPRECATEDAddress": string, "unitsSystem": enum ( |
| ช่อง | |
|---|---|
DEPRECATEDAddress |
เลิกใช้งานแล้ว: ใช้ตำแหน่งแทน |
unitsSystem |
ไม่บังคับ ระบบหน่วยที่ใช้สำหรับสภาพอากาศที่แสดง หากไม่ได้ระบุ ระบบจะแสดงสภาพอากาศที่ส่งคืนในระบบเมตริก (ค่าเริ่มต้น = METRIC) |
location |
ต้องระบุ สถานที่ตั้งที่จะรับข้อมูลสภาพอากาศ |
ฟิลด์ Union
|
|
date |
ไม่บังคับ วันที่ของข้อมูลสภาพอากาศที่จำเป็น หมายเหตุ: วันที่นี้สัมพันธ์กับเขตเวลาท้องถิ่นของสถานที่ที่ระบุในช่องสถานที่ วันที่ต้องอยู่ภายใน 7 วันถัดไป |
ฟิลด์ Union
|
|
hour |
ไม่บังคับ ชั่วโมงของข้อมูลสภาพอากาศที่ขอในรูปแบบ 24 ชั่วโมง (0-23) ค่านี้สัมพันธ์กับเขตเวลาท้องถิ่นของสถานที่ตั้งที่ระบุในช่องสถานที่ตั้ง การพยากรณ์รายชั่วโมงรองรับเฉพาะ 48 ชั่วโมงถัดไปจากเวลาปัจจุบัน |
วันที่
| การแสดง JSON |
|---|
{ "year": integer, "month": integer, "day": integer } |
| ช่อง | |
|---|---|
year |
ปีของวันที่ ต้องอยู่ระหว่าง 1 ถึง 9999 หรือ 0 เพื่อระบุวันที่โดยไม่มีปี |
month |
เดือนของปี ต้องมีค่าระหว่าง 1 ถึง 12 หรือ 0 เพื่อระบุปีโดยไม่มีเดือนและวัน |
day |
วันของเดือน ต้องมีค่าตั้งแต่ 1 ถึง 31 และใช้ได้กับปีและเดือน หรือ 0 เพื่อระบุปีอย่างเดียว หรือปีและเดือนที่ไม่มีวัน |
ตำแหน่ง
| การแสดง JSON |
|---|
{ // Union field |
| ช่อง | |
|---|---|
ฟิลด์ Union location_type วิธีต่างๆ ในการแสดงสถานที่ location_type ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น |
|
latLng |
จุดที่ระบุโดยใช้พิกัดทางภูมิศาสตร์ |
placeId |
รหัสสถานที่ที่เชื่อมโยงกับสถานที่ตั้ง |
address |
ที่อยู่ที่มนุษย์อ่านได้หรือ Plus Code ดูรายละเอียดได้ที่ https://plus.codes |
LatLng
| การแสดง JSON |
|---|
{ "latitude": number, "longitude": number } |
| ช่อง | |
|---|---|
latitude |
ละติจูดเป็นองศา ต้องอยู่ในช่วง [-90.0, +90.0] |
longitude |
ลองจิจูดในหน่วยองศา ต้องอยู่ในช่วง [-180.0, +180.0] |
สคีมาเอาต์พุต
การตอบกลับสำหรับ RPC LookupWeather - แสดงถึงสภาพอากาศในตำแหน่งที่ขอ
คำตอบนี้แสดงข้อมูลทั้งรายชั่วโมงและรายวัน ดังนั้นคำตอบจึงแบ่งออกเป็น 3 ส่วน ได้แก่ รายชั่วโมง รายวัน และแชร์ ระบบจะทำเครื่องหมายช่อง Only-Hourly และ Only-Daily เป็นช่องที่ไม่บังคับ สำหรับช่องที่แชร์ระหว่างข้อมูลรายชั่วโมงและรายวัน บางช่องจะแสดงเสมอจึงไม่ได้ทำเครื่องหมายว่าไม่บังคับ ส่วนช่องอื่นๆ จะทำเครื่องหมายว่าไม่บังคับเนื่องจากไม่ได้พร้อมใช้งานเสมอไป
LookupWeatherResponse
| การแสดง JSON |
|---|
{ "weatherCondition": { object ( |
| ช่อง | |
|---|---|
weatherCondition |
สภาพอากาศ |
precipitation |
ความน่าจะเป็นที่จะเกิดฝน/ลูกเห็บ/หิมะและปริมาณฝน/ลูกเห็บ/หิมะที่สะสม |
wind |
สภาพลม |
DEPRECATEDGeocodedAddress |
เลิกใช้งานแล้ว: ใช้ returned_location แทน |
returnedLocation |
ต้องระบุ สถานที่ตั้งที่แสดงข้อมูลสภาพอากาศ สถานที่ตั้งนี้เหมือนกับสถานที่ตั้งในคำขอ แต่จะแตกต่างจากสถานที่ตั้งในคำขอได้หากสถานที่ตั้งที่ขอเป็นที่อยู่แบบข้อความอิสระที่ค้นหาตำแหน่งแบบหยาบ (เช่น "เมาน์เทนวิว แคลิฟอร์เนีย") |
ฟิลด์ Union
|
|
temperature |
อุณหภูมิรายชั่วโมง |
ฟิลด์ Union
|
|
feelsLikeTemperature |
การวัดความรู้สึกถึงอุณหภูมิเป็นรายชั่วโมง |
ฟิลด์ Union
|
|
heatIndex |
อุณหภูมิดัชนีความร้อนรายชั่วโมง |
ฟิลด์ Union
|
|
airPressure |
สภาพความกดอากาศรายชั่วโมง |
ฟิลด์ Union
|
|
maxTemperature |
อุณหภูมิสูงสุดตลอดทั้งวัน |
ฟิลด์ Union
|
|
minTemperature |
อุณหภูมิต่ำสุดตลอดทั้งวัน |
ฟิลด์ Union
|
|
feelsLikeMaxTemperature |
อุณหภูมิสูงสุด (สูง) ที่รู้สึกได้ตลอดทั้งวัน |
ฟิลด์ Union
|
|
feelsLikeMinTemperature |
อุณหภูมิที่รู้สึกต่ำสุด (ต่ำ) ตลอดทั้งวัน |
ฟิลด์ Union
|
|
maxHeatIndex |
อุณหภูมิสูงสุดของดัชนีความร้อนตลอดทั้งวัน |
ฟิลด์ Union
|
|
sunEvents |
เหตุการณ์ที่เกี่ยวข้องกับดวงอาทิตย์ (เช่น พระอาทิตย์ขึ้น พระอาทิตย์ตก) |
ฟิลด์ Union
|
|
moonEvents |
เหตุการณ์ที่เกี่ยวข้องกับดวงจันทร์ (เช่น ขึ้นและตก) |
ฟิลด์ Union
|
|
relativeHumidity |
เปอร์เซ็นต์ของความชื้นสัมพัทธ์ (ค่าตั้งแต่ 0 ถึง 100) ระบุเป็นไม่บังคับเนื่องจากไม่พร้อมใช้งานเสมอไป |
ฟิลด์ Union
|
|
uvIndex |
ดัชนีรังสีอัลตราไวโอเลต (UV) สูงสุด กำหนดเป็นตัวเลือกเนื่องจากอาจไม่พร้อมใช้งานเสมอไป |
ฟิลด์ Union
|
|
thunderstormProbability |
ความน่าจะเป็นที่จะเกิดพายุฝนฟ้าคะนอง (ค่าตั้งแต่ 0 ถึง 100) กำหนดเป็นไม่บังคับเนื่องจากอาจไม่พร้อมใช้งานเสมอไป |
ฟิลด์ Union
|
|
cloudCover |
เปอร์เซ็นต์ของท้องฟ้าที่ปกคลุมด้วยเมฆ (ค่าตั้งแต่ 0 ถึง 100) ระบุเป็นไม่บังคับเนื่องจากไม่พร้อมใช้งานเสมอไป |
อุณหภูมิ
| การแสดง JSON |
|---|
{ "unit": enum ( |
| ช่อง | |
|---|---|
unit |
รหัสของหน่วยที่ใช้ในการวัดค่าอุณหภูมิ |
ฟิลด์ Union
|
|
degrees |
ค่าอุณหภูมิ (เป็นองศา) ในหน่วยที่ระบุ |
AirPressure
| การแสดง JSON |
|---|
{ // Union field |
| ช่อง | |
|---|---|
ฟิลด์ Union
|
|
meanSeaLevelMillibars |
ความกดอากาศที่ระดับน้ำทะเลโดยเฉลี่ยในหน่วยมิลลิบาร์ |
SunEvents
| การแสดง JSON |
|---|
{ "sunriseTime": string, "sunsetTime": string } |
| ช่อง | |
|---|---|
sunriseTime |
เวลาที่พระอาทิตย์ขึ้น หมายเหตุ: ในบางกรณีที่พิเศษ (เช่น ทางเหนือของอาร์กติกเซอร์เคิล) อาจไม่มีเวลาพระอาทิตย์ขึ้นในวันนั้น ในกรณีเหล่านี้ ระบบจะไม่ตั้งค่าช่องนี้ ใช้ RFC 3339 โดยเอาต์พุตที่สร้างขึ้นจะได้รับการแปลงเป็นรูปแบบ Z เสมอ และใช้ตัวเลขเศษส่วน 0, 3, 6 หรือ 9 หลัก นอกจากนี้ ระบบยังยอมรับออฟเซ็ตอื่นๆ นอกเหนือจาก "Z" ด้วย เช่น |
sunsetTime |
เวลาที่พระอาทิตย์ตก หมายเหตุ: ในบางกรณีที่พิเศษ (เช่น ทางเหนือของอาร์กติกเซอร์เคิล) อาจไม่มีเวลาตกของดวงอาทิตย์ในวันนั้น ในกรณีเหล่านี้ ระบบจะไม่ตั้งค่าช่องนี้ ใช้ RFC 3339 โดยเอาต์พุตที่สร้างขึ้นจะได้รับการแปลงเป็นรูปแบบ Z เสมอ และใช้ตัวเลขเศษส่วน 0, 3, 6 หรือ 9 หลัก นอกจากนี้ ระบบยังยอมรับออฟเซ็ตอื่นๆ นอกเหนือจาก "Z" ด้วย เช่น |
การประทับเวลา
| การแสดง JSON |
|---|
{ "seconds": string, "nanos": integer } |
| ช่อง | |
|---|---|
seconds |
แสดงวินาทีของเวลา UTC ตั้งแต่ Epoch ของ Unix 1970-01-01T00:00:00Z ต้องอยู่ระหว่าง -62135596800 ถึง 253402300799 เท่านั้น (ซึ่งสอดคล้องกับ 0001-01-01T00:00:00Z ถึง 9999-12-31T23:59:59Z) |
nanos |
เศษส่วนของวินาทีที่ไม่เป็นลบที่ความละเอียดระดับนาโนวินาที ฟิลด์นี้คือส่วนของระยะเวลาที่เป็นนาโนวินาที ไม่ใช่ทางเลือกแทนวินาที ค่าวินาทีที่เป็นลบซึ่งมีเศษส่วนยังคงต้องมีค่านาโนที่เป็นบวกซึ่งนับไปข้างหน้าตามเวลา ต้องอยู่ระหว่าง 0 ถึง 999,999,999 เท่านั้น |
MoonEvents
| การแสดง JSON |
|---|
{
"moonriseTimes": [
string
],
"moonsetTimes": [
string
],
"moonPhase": enum ( |
| ช่อง | |
|---|---|
moonriseTimes[] |
เวลาที่แขนบนของดวงจันทร์ปรากฏเหนือขอบฟ้า (ดู https://en.wikipedia.org/wiki/Moonrise_and_moonset) หมายเหตุ: ในกรณีส่วนใหญ่ จะมีเวลาขึ้นของดวงจันทร์เพียงครั้งเดียวต่อวัน ในกรณีอื่นๆ รายการอาจว่างเปล่า (เช่น เมื่อดวงจันทร์ขึ้นหลังเที่ยงคืนของวันถัดไป) อย่างไรก็ตาม ในกรณีพิเศษ (เช่น ในเขตขั้วโลก) รายการอาจมีค่ามากกว่า 1 ค่า ในกรณีเหล่านี้ ระบบจะจัดเรียงค่าจากน้อยไปมาก ใช้ RFC 3339 โดยเอาต์พุตที่สร้างขึ้นจะได้รับการแปลงเป็นรูปแบบ Z เสมอ และใช้ตัวเลขเศษส่วน 0, 3, 6 หรือ 9 หลัก นอกจากนี้ ระบบยังยอมรับออฟเซ็ตอื่นๆ นอกเหนือจาก "Z" ด้วย เช่น |
moonsetTimes[] |
เวลาที่แขนบนของดวงจันทร์ลับหายไปใต้เส้นขอบฟ้า (ดู https://en.wikipedia.org/wiki/Moonrise_and_moonset) หมายเหตุ: ในกรณีส่วนใหญ่ จะมีเวลาดวงจันทร์ตกเพียงครั้งเดียวต่อวัน ในกรณีอื่นๆ รายการอาจว่างเปล่า (เช่น เมื่อดวงจันทร์ตกหลังเที่ยงคืนของวันถัดไป) อย่างไรก็ตาม ในกรณีพิเศษ (เช่น ในเขตขั้วโลก) รายการอาจมีค่ามากกว่า 1 ค่า ในกรณีเหล่านี้ ระบบจะจัดเรียงค่าจากน้อยไปมาก ใช้ RFC 3339 โดยเอาต์พุตที่สร้างขึ้นจะได้รับการแปลงเป็นรูปแบบ Z เสมอ และใช้ตัวเลขเศษส่วน 0, 3, 6 หรือ 9 หลัก นอกจากนี้ ระบบยังยอมรับออฟเซ็ตอื่นๆ นอกเหนือจาก "Z" ด้วย เช่น |
moonPhase |
ข้างขึ้นข้างแรม (หรือที่เรียกว่าข้างขึ้นข้างแรมของดวงจันทร์) |
WeatherCondition
| การแสดง JSON |
|---|
{ "iconBaseUri": string, "description": { object ( |
| ช่อง | |
|---|---|
iconBaseUri |
URI ฐานสำหรับไอคอนที่ไม่รวมนามสกุลประเภทไฟล์ หากต้องการแสดงไอคอน ให้ต่อท้ายธีม (หากต้องการ) และนามสกุลประเภทไฟล์ ( |
description |
คำอธิบายที่เป็นข้อความสำหรับสภาพอากาศนี้ (แปลแล้ว) |
type |
ประเภทสภาพอากาศ |
LocalizedText
| การแสดง JSON |
|---|
{ "text": string, "languageCode": string } |
| ช่อง | |
|---|---|
text |
สตริงที่แปลแล้วในภาษาที่สอดคล้องกับ |
languageCode |
รหัสภาษา BCP-47 ของข้อความ เช่น "en-US" หรือ "sr-Latn" ดูข้อมูลเพิ่มเติมได้ที่ http://www.unicode.org/reports/tr35/#Unicode_locale_identifier |
โอกาสเกิดฝน
| การแสดง JSON |
|---|
{ "probability": { object ( |
| ช่อง | |
|---|---|
probability |
ความน่าจะเป็นที่จะมีฝนตก (ค่าตั้งแต่ 0 ถึง 100) |
snowQpf |
ปริมาณหิมะที่สะสมในช่วงระยะเวลาหนึ่ง ซึ่งวัดเป็นปริมาณน้ำเทียบเท่า หมายเหตุ: QPF เป็นตัวย่อของ Quantitative Precipitation Forecast (โปรดดูรายละเอียดเพิ่มเติมที่คำจำกัดความของ QuantitativePrecipitationForecast) |
qpf |
ปริมาณน้ำฝนที่วัดเป็นปริมาณน้ำเทียบเท่าที่สะสมในช่วงระยะเวลาหนึ่ง หมายเหตุ: QPF เป็นตัวย่อของ Quantitative Precipitation Forecast (โปรดดูรายละเอียดเพิ่มเติมที่คำจำกัดความของ QuantitativePrecipitationForecast) |
PrecipitationProbability
| การแสดง JSON |
|---|
{ "type": enum ( |
| ช่อง | |
|---|---|
type |
รหัสที่ระบุประเภทการตกตะกอน |
ฟิลด์ Union
|
|
percent |
เปอร์เซ็นต์ตั้งแต่ 0 ถึง 100 ที่ระบุโอกาสเกิดฝน |
QuantitativePrecipitationForecast
| การแสดง JSON |
|---|
{ "unit": enum ( |
| ช่อง | |
|---|---|
unit |
รหัสของหน่วยที่ใช้ในการวัดปริมาณน้ำฝนสะสม |
ฟิลด์ Union
|
|
quantity |
ปริมาณน้ำฝนที่วัดเป็นปริมาณน้ำเทียบเท่าที่สะสมในช่วงระยะเวลาหนึ่ง |
ลม
| การแสดง JSON |
|---|
{ "direction": { object ( |
| ช่อง | |
|---|---|
direction |
ทิศทางลม มุมที่ลมพัดมา |
speed |
ความเร็วลม |
gust |
ลมกระโชกแรง (ความเร็วลมเพิ่มขึ้นอย่างรวดเร็ว) |
WindDirection
| การแสดง JSON |
|---|
{ "cardinal": enum ( |
| ช่อง | |
|---|---|
cardinal |
รหัสที่แสดงทิศทางหลักที่ลมพัด |
ฟิลด์ Union
|
|
degrees |
ทิศทางลมเป็นองศา (ค่าตั้งแต่ 0 ถึง 360) |
WindSpeed
| การแสดง JSON |
|---|
{ "unit": enum ( |
| ช่อง | |
|---|---|
unit |
รหัสที่แสดงหน่วยที่ใช้ในการวัดความเร็วลม |
ฟิลด์ Union
|
|
value |
ค่าของความเร็วลม |
ตำแหน่ง
| การแสดง JSON |
|---|
{ // Union field |
| ช่อง | |
|---|---|
ฟิลด์ Union location_type วิธีต่างๆ ในการแสดงสถานที่ location_type ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น |
|
latLng |
จุดที่ระบุโดยใช้พิกัดทางภูมิศาสตร์ |
placeId |
รหัสสถานที่ที่เชื่อมโยงกับสถานที่ตั้ง |
address |
ที่อยู่ที่มนุษย์อ่านได้หรือ Plus Code ดูรายละเอียดได้ที่ https://plus.codes |
LatLng
| การแสดง JSON |
|---|
{ "latitude": number, "longitude": number } |
| ช่อง | |
|---|---|
latitude |
ละติจูดเป็นองศา ต้องอยู่ในช่วง [-90.0, +90.0] |
longitude |
ลองจิจูดในหน่วยองศา ต้องอยู่ในช่วง [-180.0, +180.0] |
คำอธิบายประกอบเครื่องมือ
คำแนะนำที่ทำให้เกิดการเปลี่ยนแปลง: ❌ | คำแนะนำที่ทำให้เกิดการเปลี่ยนแปลงแบบไอดีมโปเทนต์: ❌ | คำแนะนำแบบอ่านอย่างเดียว: ✅ | คำแนะนำแบบโลกเปิด: ❌