多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
### 3.5.1 喜马拉雅FM #### (1) 功能说明 千万级有声资源、十大流行声音类型,满足儿童、成人、白领、老人各类人群听的需求。涵盖小说,电台、儿童故事、儿歌、相声、健康养生、国学、脱口秀等海量音频实现智能点播,智能硬件的必选技能。返回播放列表。 #### (2) 接口说明 **请求方法** * POST **请求地址** * [http://api.ruyi.ai/v1/message](http://api.ruyi.ai/v1/message) **请求参数说明** | 参数名 | 参数类型 | 是否必须 | 参数说明 | | :--- | :--- | :--- | :--- | | q | String | 是 | 自然语言表达,例如“我要听罗辑思维最新一集" | | app\_key | String | 是 | 应用开发者秘钥,注册开发者后台账号,建立虚拟助理后获得 | | user\_id | String | 是 | 用户唯一标识,便于支持个性化语义解析。建议开发者使用 UUID 字符,且不同用户必须用不同的 user\_id,防止意图串。 | #### (3) 返回说明 **返回参数说明** | 名称 | 类型 | 说明 | | :--- | :--- | :--- | | code | Integer | 返回代码 | | msg | String | 返回代码描述 | | parameters | JSON Object | 解析到的实体以及服务说明 | | action | String | 服务的接口名称 | | name | String | 匹配的意图名称 | | result | JSON Object | 接口返回内容 | | outputs | Array | 服务输出结果,微信端使用 type 类型为 wechat. 开头的内容;硬件端收到所有内容,依据需求解析使用 | | duration | Long | 音频时长 | **返回代码说明** | 返回代码 | 错误类型 | 说明 | | :--- | :--- | :--- | | 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=我要听罗辑思维最新一集](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": "c6938e11-b41c-4bba-b407-ff42a7678bfb", "intents": [{ "parameters": { "chapter1": "-1", "album": "罗辑思维", "service": "audio" }, "action": "sys.action.xmly/search", "name": "2-点播专辑+章节", "result": { "id": "xmly:sound:26637186", "html_link": "http://www.ximalaya.com/sound/26637186", "source": "喜马拉雅", "source_link": "http://www.ximalaya.com/", "sound_id": "26637186", "title": "有效行动的逻辑[罗辑思维]No·199", "media_url": "http://audio.xmcdn.com/group22/M0B/A9/B7/wKgJLlhLVivCY70oAXUyHQjGCO8189.m4a", "cover_url": "http://fdfs.xmcdn.com/group22/M02/A9/78/wKgJM1hLVpKh3dpiAAHjHCQ8i2g515_web_meduim.jpg", "mp3_audio_url": "http://fdfs.xmcdn.com/group22/M0B/A9/75/wKgJM1hLVifDL0n3ALhmxsOlab4206.mp3", "album": "罗辑思维 全集", "album_id": "239463", "type": "sound", "tracks": { "id": 26637186, "kind": "track", "category_id": 8, "track_title": "有效行动的逻辑[罗辑思维]No·199", "track_tags": "罗振宇,脱口秀,罗胖,罗辑思维,自媒体", "track_intro": "罗振宇的个人视频脱口秀。罗胖读书,讲给您听。我们在知识中寻找独立的见识,您在把玩知识中寻找思维的乐趣。我们的口号是,死磕自己,愉悦大家。 为了大家收听方便,我们把所有节目合并到一起,以后的节目,每周六我们都会在这里持续更新,请继续关注收听罗辑思维。", "cover_url_small": "http://fdfs.xmcdn.com/group22/M02/A9/78/wKgJM1hLVpKh3dpiAAHjHCQ8i2g515_web_meduim.jpg", "cover_url_middle": "http://fdfs.xmcdn.com/group22/M02/A9/78/wKgJM1hLVpKh3dpiAAHjHCQ8i2g515_web_large.jpg", "cover_url_large": "http://fdfs.xmcdn.com/group22/M02/A9/78/wKgJM1hLVpKh3dpiAAHjHCQ8i2g515_mobile_large.jpg", "announcer": { "id": 1412917, "kind": "user", "nickname": "罗辑思维脱口秀", "avatar_url": "http://fdfs.xmcdn.com/group5/M07/4A/35/wKgDtlS4cmeAM8R4AAC2jG7vGBo443_web_large.jpg", "is_verified": true }, "duration": 3021, "play_count": 810716, "favorite_count": 2779, "comment_count": 735, "download_count": 0, "play_url_32": "http://fdfs.xmcdn.com/group22/M0B/A9/75/wKgJM1hLVifDL0n3ALhmxsOlab4206.mp3", "play_size_32": 12084934, "play_url_64": "http://fdfs.xmcdn.com/group21/M05/A9/08/wKgJLVhLVkfAGsZzAXDNTbmuuMs622.mp3", "play_size_64": 24169805, "play_url_64_m4a": "http://audio.xmcdn.com/group22/M0B/A9/B7/wKgJLlhLVivCY70oAXUyHQjGCO8189.m4a", "play_size_64_m4a": 24457757, "play_url_24_m4a": "http://audio.xmcdn.com/group22/M0B/A9/B7/wKgJLlhLVivDmYL6AI6wh4g9wcc394.m4a", "play_size_24_m4a": 9351303, "can_download": true, "download_url": "http://download.xmcdn.com/group22/M0B/A9/B7/wKgJLlhLVjKDwEQ-ALhsDjjf_WM197.aac", "download_size": 12086286, "subordinated_album": { "id": 239463, "album_title": "罗辑思维 全集", "cover_url_small": "http://fdfs.xmcdn.com/group5/M09/4A/32/wKgDtlS4cZeCzmE2AAHjHCQ8i2g083_mobile_small.jpg", "cover_url_middle": "http://fdfs.xmcdn.com/group5/M09/4A/32/wKgDtlS4cZeCzmE2AAHjHCQ8i2g083_mobile_meduim.jpg", "cover_url_large": "http://fdfs.xmcdn.com/group5/M09/4A/32/wKgDtlS4cZeCzmE2AAHjHCQ8i2g083_mobile_large.jpg" }, "source": 1, "updated_at": 1481332403000, "created_at": 1481332372000, "order_num": 0 }, "current_order_num": 0, "match_rule": "match", "track_list": [{ "track_title": "有效行动的逻辑[罗辑思维]No·199", "album_title": "罗辑思维 全集", "cover_url": "http://fdfs.xmcdn.com/group22/M02/A9/78/wKgJM1hLVpKh3dpiAAHjHCQ8i2g515_web_meduim.jpg", "media_url": "http://audio.xmcdn.com/group22/M0B/A9/B7/wKgJLlhLVivCY70oAXUyHQjGCO8189.m4a", "announcer": "罗辑思维脱口秀", "track_id": 26637186, "order_num": 0, "album_id": "239463", "break_in_seconds": 0 }, { "track_title": "你是巨婴吗?[罗辑思维]No·198", "album_title": "罗辑思维 全集", "cover_url": "http://fdfs.xmcdn.com/group24/M09/8C/68/wKgJNVhCNUzRuQmFAAHjHCQ8i2g341_web_meduim.jpg", "media_url": "http://audio.xmcdn.com/group22/M01/8C/99/wKgJLlhCNIrjc02JAbSaoU4Dlvo394.m4a", "announcer": "罗辑思维脱口秀", "track_id": 26219966, "order_num": 1, "album_id": "239463" }, { "track_title": "严伯钧:打开古典音乐的正确姿势[罗辑思维]No·197", "album_title": "罗辑思维 全集", "cover_url": "http://fdfs.xmcdn.com/group25/M01/6A/4F/wKgJMVg5YHbThiIeAAHjHCQ8i2g130_web_meduim.jpg", "media_url": "http://audio.xmcdn.com/group24/M01/6A/9A/wKgJNVg5YE6y2QudAaNPAPXZZng233.m4a", "announcer": "罗辑思维脱口秀", "track_id": 25838707, "order_num": 2, "album_id": "239463" }, { "track_title": "政治的残酷逻辑[罗辑思维]No·196", "album_title": "罗辑思维 全集", "cover_url": "http://fdfs.xmcdn.com/group21/M07/4B/39/wKgJLVgtogyjBfO6AAHjHCQ8i2g343_web_meduim.jpg", "media_url": "http://audio.xmcdn.com/group25/M01/4B/22/wKgJNlgtoWLxsv5gAbhmTbwLTUA887.m4a", "announcer": "罗辑思维脱口秀", "track_id": 25289999, "order_num": 3, "album_id": "239463" }, { "track_title": "大国难题[罗辑思维]No·195", "album_title": "罗辑思维 全集", "cover_url": "http://fdfs.xmcdn.com/group22/M04/39/5A/wKgJM1gm6-_DwmXZAAHjHCQ8i2g029_web_meduim.jpg", "media_url": "http://audio.xmcdn.com/group24/M05/39/61/wKgJNVgm6vrgmbPDAWQ9bvfpuWM090.m4a", "announcer": "罗辑思维脱口秀", "track_id": 24968013, "order_num": 4, "album_id": "239463" }, { "track_title": "成败蒋介石[罗辑思维]No·194", "album_title": "罗辑思维 全集", "cover_url": "http://fdfs.xmcdn.com/group22/M04/1C/4A/wKgJM1gbGRrBokWyAAHjHCQ8i2g449_web_meduim.jpg", "media_url": "http://audio.xmcdn.com/group25/M02/1E/9C/wKgJMVgcFaKROdgYAal1BeiMZ3M254.m4a", "announcer": "罗辑思维脱口秀", "track_id": 24444330, "order_num": 5, "album_id": "239463" }, { "track_title": "共同体的意义[罗辑思维]No·193", "album_title": "罗辑思维 全集", "cover_url": "http://fdfs.xmcdn.com/group23/M0B/04/E7/wKgJNFgR1dWiFt7rAAHjHCQ8i2g865_web_meduim.jpg", "media_url": "http://audio.xmcdn.com/group24/M03/04/EA/wKgJNVgR1TvwnuJ1AVuXWcPxXCE307.m4a", "announcer": "罗辑思维脱口秀", "track_id": 24030407, "order_num": 6, "album_id": "239463" }, { "track_title": "弱者的逻辑[罗辑思维]No·192", "album_title": "罗辑思维 全集", "cover_url": "http://fdfs.xmcdn.com/group18/M04/93/95/wKgJJVgIp_eT4rEvAAHjHCQ8i2g535_web_meduim.jpg", "media_url": "http://audio.xmcdn.com/group19/M03/94/3E/wKgJK1gIp7jzcxLGAbZf-2wZg-8617.m4a", "announcer": "罗辑思维脱口秀", "track_id": 23592670, "order_num": 7, "album_id": "239463" }, { "track_title": "老办法抓不住新机会[罗辑思维]No·191", "album_title": "罗辑思维 全集", "cover_url": "http://fdfs.xmcdn.com/group19/M08/77/0B/wKgJJlf_ZuHhOftSAAHjHCQ8i2g522_web_meduim.jpg", "media_url": "http://audio.xmcdn.com/group20/M00/84/BF/wKgJJ1gENAWyDjwvAXjKTTNH5EI920.m4a", "announcer": "罗辑思维脱口秀", "track_id": 23168511, "order_num": 8, "album_id": "239463" }, { "track_title": "乱世中的奇怪失败[罗辑思维]No·190", "album_title": "罗辑思维 全集", "cover_url": "http://fdfs.xmcdn.com/group17/M08/5A/70/wKgJJFf2NBmAclfEAAHjHCQ8i2g213_web_meduim.jpg", "media_url": "http://audio2.xmcdn.com/group17/M05/77/21/wKgJJFf_ZSbB7iW8AXngXfCPKs8545.m4a", "announcer": "罗辑思维脱口秀", "track_id": 22738431, "order_num": 9, "album_id": "239463" }], "text": "OK。" }, "outputs": [{ "type": "wechat.music", "property": { "title": "有效行动的逻辑[罗辑思维]No·199", "description": "罗辑思维 全集", "music_url": "http://audio.xmcdn.com/group22/M0B/A9/B7/wKgJLlhLVivCY70oAXUyHQjGCO8189.m4a" } }, { "type": "dialog", "property": { "text": "好的。", "emotion": "positive" } }], "score": "1.0", "scoreColor": "c4", "is_match": 1, "id": "fcfdbeec-f4a4-44d1-8d90-23504f1e0050" }], "meta_process_milliseconds": 302 } } ``` **请求示例** (失败情况,没有找到匹配资源,返回code:404) * [http://api.ruyi.ai/ruyi-api/v1/message?app\_key=APP\_KEY&user\_id=user0&q=我要听小星星的故事](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": "9d4474c3-b28d-434e-8b09-efe1a154062d", "intents": [{ "parameters": { "album": "小星星", "category": "故事", "service": "audio" }, "action": "sys.action.xmly/search", "name": "0-点播专辑(+分类)", "result": { "type": "dialog", "code": 404, "text": "没有找到你要的声音,换一个吧!" }, "outputs": [{ "type": "dialog", "property": { "text": "没有找到你要的声音,换一个吧!", "emotion": "calm" } }], "score": "1.0", "scoreColor": "c4", "is_match": 1, "id": "cbc72dd8-ec80-4d87-9129-0619d2263285" }], "meta_process_milliseconds": 165 } } ``` **详细参数说明** | 名称 | 类型 | 说明 | | :--- | :--- | :--- | | service | String | 服务名称 | | html\_link | String | 网页链接 | | source | String | 来源 | | source\_link | String | 来源链接 | | sound\_id | String | 音频ID | | title | String | 题目标题 | | media\_url | String | 音频链接 | | cover\_url | String | 封面链接 | | mp3\_audio\_url | String | mp3链接 | | album | String | 专辑名称 | | album\_id | String | 专辑ID | | tracks | Array | 声音列表 | | category\_id | String | 类别ID | | track\_title | String | 声音标题 | | track\_tags | String | 声音标签 | | track\_intro | String | 声音简介 | | track\_id | String | 声音ID | | cover\_url\_small | String | 分类封面小图 | | cover\_url\_middle | String | 分类封面中图 | | cover\_url\_large | String | 分类封面大图 | | announcer | String | 主播信息 | | play\_count | Integer | 专辑播放次数 | | favorite\_count | Integer | 专辑收藏次数 | | comment\_count | Integer | 专辑评论次数 | | download\_count | Integer | 专辑下载次数 | | can\_download | Boolean | 可否下载,true 则为可下载 | | download\_url | String | 下载链接 | | download\_size | Integer | 声音下载大小 | | updated\_at | String | 专辑更新时间 | | created\_at | String | 专辑创建时间 | | order\_num | String | 排序值,值越小排序越在前 | | current\_order\_num | String | 当前排序值 | | track\_list | Array | 声音列表 | ### (5) 主要资源类别 **优质资源** | 序号 | 类别 | | :--- | :--- | | 1 | 儿歌 | | 2 | 儿童故事 | | 3 | 国学 | | 4 | 相声 | | 5 | 戏曲 | | 6 | 诗歌 | | 7 | 笑话 | | 8 | 散文 | **普通资源** | 序号 | 类别 | | :--- | :--- | | 1 | 有声小说/图书 | | 2 | 娱乐电台 | | 3 | 脱口秀 | | 4 | 情感类电台 | | 5 | 人文类电台 | | 6 | 英语类电台 | | 7 | 其他语种电台 | | 8 | 教育培训 | | 9 | 历史讲坛 | | 10 | 广播剧 | | 11 | 主播电台 | | 12 | 商业财经 | | 13 | IT科技 | | 14 | 健康养生 | | 15 | 旅游节目 | | 16 | 汽车话题 | | 17 | 动漫游戏 | | 18 | 电影类 | | 19 | 名校公开课 | | 20 | 时尚生活类节目 | | 21 | 佛学宗教 | **注意事项:** * 由于资源版权问题,部分音频会出现点播不到情况。