### 3.4.6 天氣預報
#### (1) 功能說明
支持國內國外5萬個城市、十項天氣數據、七天內的天氣預報查詢。自然語言理解、300+天氣實體識別、多輪對話實現天氣預報智能化查詢。返回給用戶各項天氣數據。
#### (2) 接口說明
**請求方法**
* POST
**請求地址**
* http://api.ruyi.ai/v1/message
**請求參數說明**
|參數名| 參數類型| 是否必須| 參數說明
|:---|:---|:---|:---
|q |String|Yes|自然語言表達,例如“今天上海的天氣如何"
|app_key|String|Yes| 應用開發者秘鑰,注冊開發者后臺賬號,建立虛擬助理后獲得
|user_id |String |Yes |用戶唯一標識,便于支持個性化語義解析。建議開發者使用 UUID 字符,且不同用戶必須用不同的 user_id,防止意圖串。
|reset_session|Boolean|No|如果為true,重置當前對話session,忘記短期對話記憶。
|context|String|No|用戶上下文信息,json字符串格式
**Context參數說明**
| Field | Type | Required | Description |
| --- | --- | --- | --- |
| location | JSON Object | No | 用戶當前位置,`Location`實體的一個實例:`location:{"latitude": "31", "longitude": "121"}`,分別傳入經度和緯度數值。 |
| reference\_time | Long | No | 用戶當前參照時間,unix時間毫秒 |
| timezone | String | No | 用戶當前時區的標準ID字符串, 例如`"Asia/Shanghai"` |
|ip|String|No|用戶IP|
**Context范例**
> 在開發者后臺意圖處理中,通過將實體 **_值_** 設置為“#ruyi_default_context.user.location.latitude”,即可獲得用戶當前位置維度。
JSON示例。
```json
{
"reference_time": 1447499684824,
"timezone": "Asia/Shanghai",
"location": {
"latitude": "31.215",
"longitude": "121.609"
}
}
```
#### (3) 返回說明
**返回參數說明**
|名稱 |類型| 說明
|:---|:---|:---
|code |Integer | 返回代碼
|msg | String |返回代碼描述
|parameters|JSON Object |解析到的實體以及服務說明
|action|String|觸發器名稱
|name| String|匹配的意圖名稱
|result | JSON Object| 接口返回內容
|outputs| Array| 服務輸出結果,微信端使用 type 類型為 wechat. 開頭的內容;硬件端收到所有內容,依據需求解析使用
**返回代碼說明**
|返回代碼 |錯誤類型|說明
|:---|:---|:---
|0/200 |成功 |請求成功
|400 |無效請求 |某些必需參數缺失或參數值錯誤,詳見msg字段
|401 |未授權 |授權失敗,app_key 缺失或錯誤
|403 |請求被禁止|有效請求,但服務拒絕響應,請聯系contact@ruyi.ai
|408 |請求超時 |請求響應超時,一般響應時間設置為2000ms以內
|429 |短時間內大量訪問 |短時間內請求數過多
|500 |內部錯誤 |服務處理異常
|503 |服務不可用|服務異常或正在維護
#### (4)請求示例
**請求范例**
_今天上海的天氣如何;那明天呢;那北京呢_
_今天上海的濕度怎么樣_
_今天北京紫外線強嗎_
_今天北京有沒有霧霾呀_
_今天上海會下雨嗎_
**請求示例**
* http://api.ruyi.ai/ruyi-api/v1/message?app_key=APP_KEY&user_id=user0&q=今天上海天氣如何
返回結果
```json
{
"code": 0,
"msg": "ok",
"result": {
"_text": "今天上海天氣如何",
"msg_id": "9867c8a0-c404-4051-a802-52f0c56bb52d",
"intents": [{
"parameters": {
"location": "上海",
"date": "2016-12-15",
"service": "weather",
"location_raw": "上海"
},
"action": "sys.action.weather2",
"name": "以日期和城市查詢天氣",
"result": {
"month_day": "12月15日",
"week_day": "星期四",
"suggestion": {
"air": {
"brf": "較差",
"txt": "氣象條件較不利于空氣污染物稀釋、擴散和清除,請適當減少室外活動時間。"
},
"comf": {
"brf": "較舒適",
"txt": "白天雖然天氣晴好,但早晚會感覺偏涼,午后舒適、宜人。"
},
"cw": {
"brf": "較適宜",
"txt": "較適宜洗車,未來一天無雨,風力較小,擦洗一新的汽車至少能保持一天。"
},
"drsg": {
"brf": "較冷",
"txt": "建議著厚外套加毛衣等服裝。年老體弱者宜著大衣、呢外套加羊毛衫。"
},
"flu": {
"brf": "易發",
"txt": "晝夜溫差很大,易發生感冒,請注意適當增減衣服,加強自我防護避免感冒。"
},
"sport": {
"brf": "較適宜",
"txt": "天氣較好,但考慮氣溫較低,推薦您進行室內運動,若戶外適當增減衣物并注意防曬。"
},
"trav": {
"brf": "適宜",
"txt": "天氣較好,氣溫稍低,會感覺稍微有點涼,不過也是個好天氣哦。適宜旅游,可不要錯過機會呦!"
},
"uv": {
"brf": "中等",
"txt": "屬中等強度紫外線輻射天氣,外出時建議涂擦SPF高于15、PA+的防曬護膚品,戴帽子、太陽鏡。"
}
},
"aqi": {
"city": {
"aqi": "93",
"co": "1",
"no2": "77",
"o3": "32",
"pm10": "85",
"pm25": "69",
"qlty": "良",
"so2": "25"
}
},
"day_weather": {
"astro": {
"sr": "06:45",
"ss": "16:53"
},
"cond": {
"code_d": "100",
"code_n": "100",
"txt_d": "晴",
"txt_n": "晴"
},
"date": "2016-12-15",
"hum": "57",
"pcpn": "0.0",
"pop": "0",
"pres": "1031",
"tmp": {
"max": "7",
"min": "2"
},
"uv": "4",
"vis": "10",
"wind": {
"deg": "327",
"dir": "西北風",
"sc": "微風",
"spd": "6"
},
"condition": "晴"
},
"weatherEntity": "",
"is_weather": "no",
"basic": {
"city": "上海",
"cnty": "中國",
"id": "CN101020100",
"lat": "31.213000",
"lon": "121.445000",
"update": {
"loc": "2016-12-15 19:51",
"utc": "2016-12-15 11:51"
}
},
"text": "上海 12月15日 星期四\\n晴\\n2℃~7℃ \\nPM2.5: 69 (良)\\n白天雖然天氣晴好,但早晚會感覺偏涼,午后舒適、宜人。 ",
"type": "dialog"
},
"outputs": [{
"type": "wechat.text",
"property": {
"text": "上海 12月15日 星期四\\n晴\\n2℃~7℃ \\nPM2.5: 69 (良)\\n白天雖然天氣晴好,但早晚會感覺偏涼,午后舒適、宜人。 "
}
}, {
"type": "dialog",
"property": {
"text": "上海 12月15日 星期四,晴,2℃至7℃ ,P M2.5是 69 (良) ",
"emotion": "calm"
}
}],
"score": "1.0",
"scoreColor": "c4",
"is_match": 1,
"id": "86499987-5807-4f3b-833a-d01f4dfe4ef1"
}],
"meta_process_milliseconds": 847
}
}
```
**詳細參數說明**
|名稱 |類型| 說明
|:---|:---|:---
|service| String |服務名稱
|month_day|String|日期
|week_day|String |星期
|suggestion|dictionary|生活指數,僅限國內城市|
|air|String|空氣質量指數
|brf|String |簡介
|txt|String |詳細描述
|comf|String|舒適度指數
|cw|String |洗車指數
|drsg|String |穿衣指數
|flu|String |感冒指數
|sport|String |運動指數
|trav|Stirng|旅游指數
|uv|String |紫外線指數
|daily_forecast|String |天氣預報
|vis|String |能見度
|wind|String |風力情況
|deg|String |風向(360度)
|sc|String |風力等級
|spd|String | 風速
|dir|String |風向
|pres|String |氣壓
|astro|String |天文指數
|mr|String |月升時間
|sr|String |日出時間
|ss|String |日落時間
|ms|String |月落時間
|cond|String |天氣狀況
|code_n |String |夜間天氣狀況代碼
|code_d|String |白天天氣狀況代碼
|txt_n|String | 夜間天氣狀況描述
|txt_d|String | 白天天氣狀況描述
|tmp|String |溫度
|max|String |最高溫度
|min|String |最低溫度
|pop|String |降水概率
|date|String |日期
|pcpn|String |降水量
|hum|String |相對濕度
|aqi|String |AQI
|city|String |城市名
|no2|String |NO2
|pm10|String |PM1010
|o3|String |O3
|qlty|String |空氣質量,共六個級別,分別:優,良,輕度污染,中度污染,重度污染,嚴重污染
|pm25|String |PM2.5
|so2|String |SO2
|co|String |CO
|basic|String |基本信息
|prov|String |城市所屬省份(僅限國內城市)
|lat|String |緯度
|cnty|String |國家
|update|String |更新時間
|utc|String |UTC時間
|loc|String |當地時間
|id|String |城市ID
|lon|String |經度
|now|String |實況天氣
|fl|String |體感溫度
- 1. 海知智能第三方技能插件開放平臺概述
- 2. 快速接入API
- 2.1 硬件接口調用
- 2.2 快速接入微信
- 2.3 API接入常見問題
- 3. 技能插件
- 3.1 基礎能力類
- 頂級過濾器
- 用戶知識圖譜
- 機器人檔案
- 通用閑聊
- 兒童閑聊
- Smart Reply
- 輕量閑聊
- 3.2 語音游戲類
- 成語接龍
- 詞匯樂園
- 詞語接龍
- 鸚鵡學舌
- 動腦猜猜
- 挑戰單詞
- 冒險世界
- 猜猜我是誰
- 阿拉丁學詩詞
- 貓貓托管所
- 漂流瓶
- 詩詞大會
- 國學大會
- 我愛猜歌名
- 我在看著你
- 燈謎猜猜
- 3.3 休閑娛樂類
- 星座運勢
- 悅耳聲音
- 幸運簽
- 調教機器人
- 娛樂推送
- 3.4 生活服務類
- 黃歷
- 計算器
- 古詩詞
- 時間詢問
- 翻譯類技能
- 天氣資訊
- 日程創建
- 日程創建指令
- 鬧鐘
- 食材知識
- 冥想音樂
- 格言
- 每日英語
- 漢語詞典
- 豆果菜譜
- 古文翻譯
- 3.5 音頻點播類
- 喜馬拉雅FM
- 新聞廣播
- 音樂點播
- Smart Music
- 兒童聽聽
- Smart Audio
- 兒童笑話
- 點播控制指令
- 3.6 視頻點播類
- 影視點播
- 3.7 百科知識類
- 人物百科
- 百科問答
- 實時百科
- 3.8 體育健康類
- 五分鐘健身
- 4. 開發者初級教程
- 4.1 開通服務
- 4.2 創建機器人
- 4.3 設置機器人
- 4.4 獲取技能插件
- 4.5 讓機器人學會聊天
- 4.6 導入知識庫
- 4.7 多種問答形式
- 4.8 數據統計
- 4.9 粉絲管理
- 5. 開發者中級教程
- 5.1 詞典運用
- 5.2 意圖處理
- 5.3 暗號使用
- 5.4 事件觸發
- 5.5 優先級
- 5.6 觸發器
- 5.7 快捷鍵
- 5.8 意圖報錯
- 6. 開發者高級教程
- 6.1 handlebars模版語言
- 6.2 JavaScript簡單介紹
- 6.3 JavaScript使用說明
- 6.4 JavaScript使用案例
- 6.5 JavaScript常見問題
- 7. 快速發布技能
- 8. 幫助中心
- 8.1 常見概念
- 8.2 幫助視頻
- 8.3 聯系我們