博舍

智能语音输入查询天气app al link智能语音app

智能语音输入查询天气app

今日科技快讯

昨日乐视官方称:贾跃亭已辞去乐视网董事长以及其它相关职务,并退出董事会。同时,出任乐视汽车生态全球董事长。另外,贾跃亭本人通过微信公众号发声称,会承担全部的责任,辞去众多职务是为了全力以赴实现FF91最快量产上市,他承诺会把金融机构、供应商以及任何的欠款全部还上。

作者简介

明天就是周末了,提前祝大家周末愉快!

本篇来自 farinaZhang的投稿,介绍了基于第三方SDK开发一款语音查询天气APP,希望对大家有所帮助。

farinaZhang的博客地址:

http://blog.csdn.net/zhangxy0605

正文

现在智能家居越来越普及,智能语音输入也成为一项很方便的工具,可以告别传统的文字输入,可以根据输入的内容,完成相应的对话及功能。OLAMI 人工智能开放平台让你只需通过几个简单的步骤和代码,就能让你的应用程序或设备更加智能更加人性化,并提供趋近完美的用户体验,OLAMI介绍:

https://cn.olami.ai/wiki/?mp=api_nlu&content=api_nlu2.html

本文章就是介绍怎么使用OLAMI人工智能开放平台(以下简称为OLAMI开放平台)及sdk开发出一个简单的智能语音输入天气app。

下载sdk

要使用OLAMI人工智能开发平台首先需要下载相应的sdk,如图将下载下来的voicesdk.jar放在jniLibs下,将libspeex.so放在jniLibs下的armeabi下。

Voicesdk.jar是用来语音录音,识别语音结果,然后发送给OLAMI平台进行解析,返回相应的json格式结果,供用户解析。

文件结构

imain文件夹为主要的语音实现功能和主界面,其他文件目录为获取天气相关数据的和显示相关card的文件夹。

代码详解

WeatherMainActivity.Java 主要初始化页面及各个变量,创建Handler以进行消息传递。创建Task查询天气并刷新界面显示。

VoiceSdkService.java初始化智能语音识别相关参数,详细可参考

https://cn.olami.ai/wiki/?mp=sdk&content=sdk/android/reference.html

onResult函数为OLAMI开放平台结合用户编写的grammar返回的json结果,可以根据实际需求进行解析和显示。

如:本app中用户语音输入“上海的天气”,对应的在OLAMI开发品台上的Grammar为:

返回的json结果为

1.modifier:chacitytianqi对应grammar中

 

表示这句语法被匹配上后要送出去的意图。同一应用中每个grammar的modifier应该都是唯一的不同的,已变用户区分输入的语句。

2. Type:sample对应OLAMI开发平台上对应的模块名。

3.slots:

表示现在输入的是上海,当查询“北京的天气”时,value值为“北京”,slots根据编写的grammar,可以有多个json成员。如:

4. status:ok表示正常返回Json数据。

如何创建grammar及grammar中用的slots和rule详细解析可参考:

https://cn.olami.ai/wiki/?mp=nli&content=nli2.html

该app目前支持的查询范围

查看各个城市的天气,如:上海的天气,北京的天气,显示所有天气数据

查看空气质量,如:空气质量,上海的空气质量,等。画面只显示空气质量数据card。

查看一周天气,如:明天的天气,一周的天气,一周北京的天气,等。画面只显示预报一周的card。

查看今天的天气,如:今天的天气,今天上海的天气。画面只显示一天天气的card

查看指数,如:穿衣指数,空气指数、天气指数。画面只显示指数card

天气功能及画面参考开源项目

https://github.com/farinaZhang/open_weather

更多

每天学习累了,看些搞笑的段子放松一下吧。关注最具娱乐精神的公众号,每天都有好心情。

如果你有好的技术文章想和大家分享,欢迎向我的公众号投稿,投稿具体细节请在公众号主页点击“投稿”菜单查看。

欢迎长按下图 -> 识别图中二维码或者扫一扫关注我的公众号:

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。

上一篇

下一篇