语音-小度自定义技能

前言

主要是为了记录下学习小度自定义技能的过程

一、学习简介

参考官网解释 自定义技能简介

二、代码快速开发

快速开发java

我的代码架构
在这里插入图片描述

Bot.java这个类是需要去继承,然后重写的,但是官网没有给出,需要自己去探索
下面给出我测试的代码

public class Bot extends BaseBot {

    public Bot(String request) throws IOException {
        super(request);
    }


    protected Response onLaunch(LaunchRequest launchRequest) {
        System.out.println("onLaunch收到消息啦啦啦~~~~~~launchRequest" + JSON.toJSONString(launchRequest));
        // 新建文本卡片
        TextCard textCard = new TextCard("山盟海誓卡片~");
        // 设置链接地址
        textCard.setUrl("www.ooxx.com");
        // 设置链接内容
        textCard.setAnchorText("爱我就点我……^_^¥¥¥");
        // 添加引导话术
        textCard.addCueWord("我想找个女朋友");
        // 新建返回的语音内容
        OutputSpeech outputSpeech = new OutputSpeech(OutputSpeech.SpeechType.PlainText, "欢迎吃爱情面包。。。。。。");
        // 构造返回的Response
        Response response = new Response(outputSpeech, textCard);
        System.out.println("onLaunch 返回数据response:" + JSON.toJSONString(response));
        return response;
    }

    @Override
    protected Response onInent(IntentRequest intentRequest) {
        System.out.println("onInent 收到消息intentRequest:" + JSON.toJSONString(intentRequest));
        // 判断NLU解析的意图名称是否匹配 inquiry_tax
        if ("inquiry_tax".equals(intentRequest.getIntentName())) {
            // 判断NLU解析解析后是否存在这个槽位
            if (getSlot("ssys.date") == null) {
                // 询问月薪槽位
                System.out.println("日期是多少");
            } else if (getSlot("sys.city") == null) {
                // 询问城市槽位
                System.out.println("城市是哪个");
            } else {
                // 计算个税缴纳情况
                System.out.println("未知的槽位");
            }
        }
        TextCard textCard = new TextCard("意图卡片");
        OutputSpeech outputSpeech = new OutputSpeech(OutputSpeech.SpeechType.PlainText, "爱情意图666");
        Response response = new Response(outputSpeech, textCard);
        System.out.println("onInent 返回数据response:" + JSON.toJSONString(response));
        return response;
    }

    @Override
    protected Response onSessionEnded(SessionEndedRequest sessionEndedRequest) {
        System.out.println("onSessionEnded 收到消息:" + JSON.toJSONString(sessionEndedRequest));

        // 构造TextCard
        TextCard textCard = new TextCard("爱您么么哒");
        textCard.setAnchorText("setAnchorText");
        textCard.addCueWord("");
        // 构造OutputSpeech
        OutputSpeech outputSpeech = new OutputSpeech(OutputSpeech.SpeechType.PlainText, "爱您么么哒88");
        // 构造Response
        Response response = new Response(outputSpeech, textCard);

        System.out.println("onSessionEnded 返回数据response:" + JSON.toJSONString(response));
        return response;

    }
}

三、官网配置

3.1 百度云CFC配置

官网地址

推荐使用华北-北京
在这里插入图片描述

在这里插入图片描述
将自己的包打成zip包,参考代码快速开发官网地址
找到如下命令,在自己的工程中执行如下:

mvn package
cd target
zip java-bot.zip demo-1.0-jar-with-dependencies.jar

在这里插入图片描述
触发器一定要选择这个
在这里插入图片描述

3.2 小度官网配置

小度控制台配置

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

四、测试

4.1连接技能

在这里插入图片描述

激活技能成功
在这里插入图片描述
查看日志成功
在这里插入图片描述

4.2 意图测试

在上面技能打开的前提下,测试意图
在这里插入图片描述

在这里插入图片描述
查看日志
在这里插入图片描述
意图测试ok

4.3 断开技能

输入退出,小度会说代码指定爱你么么哒语音
在这里插入图片描述

在这里插入图片描述

测试ok

随着人工智能技术的不断发展,智能家居系统已经成为了人们日常生活中不可或缺的一部分。其中,语音控制技术作为智能家居系统的一种常见交互方式,得到了广泛的应用和研究。 国外研究现状: 在国外,语音控制的智能家居系统已经成为了智能家居领域的热门研究方向。目前,主要的研究方向包括语音识别技术、语音合成技术、自然语言处理技术等等。同时,也涌现出了许多语音控制的智能家居系统,如Amazon Echo、Google Home等等。 其中,Amazon Echo作为最早推出的语音控制智能家居系统之一,受到了广泛的关注和应用。该系统采用了Alexa语音助手,可以进行智能家居设备的控制、音乐播放、天气查询等多种功能。同时,也可以通过Alexa Skills Kit开发者平台,进行自定义技能的开发。 国内研究现状: 在国内,语音控制的智能家居系统也逐渐得到了关注和研究。目前,主要的研究方向包括语音识别技术、自然语言处理技术、人机交互技术等等。同时,也有一些企业推出了语音控制的智能家居产品,如小度智能音箱、天猫精灵等等。 其中,小度智能音箱作为最早推出的语音控制智能家居系统之一,也受到了广泛的关注和应用。该系统采用了小度语音助手,可以进行智能家居设备的控制、音乐播放、电台收听等多种功能。同时,也可以通过小度开放平台,进行自定义技能的开发。 总体来说,语音控制的智能家居系统在国内外都得到了广泛的研究和应用。未来随着人工智能技术的不断发展,语音控制技术也将更加普及和成熟。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值