中英文评测

功能说明:iFLYHOME OS 提供对用户发音进行评测的功能,支持中文和英文评测,支持对单词、句子和段落等形式,并将评测结果提供给合作伙伴。同时也提供了评测过程中的录音状态。 参考:产品白皮书
使用说明:集成方在申请开放该能力后,在需要使用时激活或者申请语音评测的能力,并配置评测的参数和评测的内容,当触发语音识别后,会将评测状态以及评测结果回调给集成方。

在使用时也支持一些自定义的配置,具体见接口或者协议说明。

安卓原生

通过如下方法获取能力接口

XiriOPManager.getInstance().getEvaMgr();

主要此处返回值可能为Null, 原因: SDK未初始化

api 如下:

public interface IEvaluation {
    /**
     * 激活评测能力
     * @param keyWords 测评文字
     * @param params 测评参数
     * @param callback 回调
     */
    int active(String keyWords, String params, IEvaCallback callback);
    /**
     * 激活评测能力
     * @param keyWords 测评文字
     * @param params 测评参数
     * @param xmlResult 是否透传原始 xml结果
     * @param callback 回调
     */
    @ApiLevel(1)
    int active(String keyWords, String params,boolean xmlResult, IEvaCallback callback);

    /**
     * 更新测评文本
     * @param keyWords 测评文本
     */
    int update(String keyWords);

    /**
     * 关闭评测能力
     */
    int invalid();

    /**
     * 创建评测引擎(仅在需要定制serverUrl时需要)
     * @param serverUrl
     * @param proxy
     * @return
     */
    @ApiLevel(1)
    int create(String serverUrl,String proxy);

    /**
     * 销毁评测引擎(和 创建配套使用)
     * @return
     */
    @ApiLevel(1)
    int destroy();
}

说明:

IEvaluation.active() 方法中,参数params参考本章节 评测说明 重载方法参数 xmlResult 建议传false, 传true则透传原始xml结果,数据量比较大

测试结果通过接口 IEvaCallback 方法onEvaluationResult 回调,回调结果为json格式字符串。

示例:

// 激活测评
IEvaluation eva = XiriOPManager.getInstance().getEvaMgr();
if (eva == null) {
    return;
}
// 英语词语测评
eva.active("Hello Word", EvaParamsHelper.createParams(LanguageType.ENGLISH_US, CategoryType.READ_WORD, ResultLevel.PLAIN), new IEvaCallback() {
    @Override
    public void onStart() {
        showResult("测评onStart:");
    }

    @Override
    public void onWrite(int volume) {
        showResult("测评onWrite:" + volume);
    }

    @Override
    public void onStop() {
        showResult("测评onStop:");
    }
    @Override
    public void onEvaluationResult(final String json, String xml) {
        showResult("测评结果:" + json);
    }
});

// (可选) 定制评测服务地址 必须在激活前使用,否则无效
IEvaluation eva4 = XiriOPManager.getInstance().getEvaMgr();
if (eva4 != null) {
    eva4.create("http://xxx.xf-yun.com/msp.do", "");
}

 // (可选) 销毁评测引擎
IEvaluation eva5 = XiriOPManager.getInstance().getEvaMgr();
if (eva5 != null) {
    eva5.destroy();
}

应用内嵌Web

功能说明:开放评测能力给第三方
使用流程:

1. 注册评测结果监听

native_call_H5('h5_send_ise_result',function(data,responseCallback){
    var iseStatus = data.iseStatus;
    var volume = data.volume;
    var iseResult = data.iseResult;
    var errorCode = data.errorCode;
    var errorMsg = data.errorMsg;
})

评测结果参考:评测说明

2. 申请评测能力,携带评测参数

var params = "language=en_us,category=read_word,result_level=complete";
H5_call_native('native_open_ise',{"appid":"xxx","token":"xxxxx","params":params},function(res){})

评测参数参考:评测说明

3. 设置当前需要评测的文本

H5_call_native('native_set_ise_text',{"iseText":iseText,"appid":"xxx","token":"xxxxx"},function(res){})

4. 关闭当前开放评测能力(在页面关闭的时候,或者不使用的时候关闭)

H5_call_native('native_close_ise',{"appid":"xxx","token":"xxxxx"},function(res){})

应用外Web

1. 注册回调数据监听,创建listener对象

function callback(data) {
    //对应数据格式
    var data = JSON.stringify(data);
}
var listener = new Xiri.Listener(callback);

2. 开启轮询数据获取

listener.getCmd("open_xiri");

3. 申请能力

listener.openFeatureFunc("{\"name\":\"native_open_ise\",\"params\":\"{\\\"appid\\\": \\\"xxx\\\",\\\"token\\\":\\\"11111\\\",\\\"params\\\":\\\"language=zh_cn,category=read_word,result_level=plain\\\"}\"}");

评测参数(params)参考:评测说明

4. 设置当前需要评测的文本

listener.openFeatureFunc("{\"name\":\"native_set_ise_text\",\"params\":\"{\\\"appid\\\": \\\"xxx\\\",\\\"token\\\": \\\"11111\\\",\\\"iesText\\\": \\\"需要评测的文本\\\"}\"}");

5. 收到回调数据结果

回调数据data为Json格式:

var jsData = data.data;
var name = jsData.name;
var params = JSON.parse(jsData.params);
//评测结果
var iseResult= params.iseResult;
//其他字段参照协议

评测结果参考:评测说明

  1. 关闭能力
listener.openFeatureFunc("{\"name\":\"native_close_ise\",\"params\":\"{\\\"appid\\\": \\\"xxx\\\",\\\"token\\\": \\\"11111\\\"}");

评测说明

参数说明:

评测中参数说明

  • language : 评测语言(en_us/zh_cn)
取值 说明
en_us 英文评测
zh_cn 中文评测
  • category : 评测类型
取值 说明
read_chapter 章节
read_sentence 句子
read_word 词语
read_syllable 中文字(仅支持中文详细结果)
  • result_level : 评测结果等级
取值 说明
plain 精简结果
complete 完整结果
  • 当ApiLevel >=1 时可透传其他定制参数

    对于教育儿童评测领域新增两个key,分别为ent,group。定义如下:

    | KEY | VALUE | 说明 | | ----- | ------ | ---------- | | ent | see_ch | 中文 | | - | see | 英语 | | group | pupil | 分组:学生 |

如: language=en_us,category=read_word,result_level=plain

Andoird SDK可以通过 EvaParamsHelper.createParams(@LanguageType String language, @CategoryType String category, @ResultLevel String result_level) 生成测评参数

结果说明:

评测结果字段说明,评测结果为String,需要业务自行解析。

Json字段定义如下:

字段 类型 说明
key_total_score float 满分制,也就是总分
key_result_code int 结果码;0:成功,非0为失败
key_result_score float 本次得分
sid String 测评回话id(用于调试)
key_is_rejected boolean 是否乱读
key_content String 评测内容
key_except_info String 异常信息
key_syll_list String 音节详情(还待完善,目前只取了第一个句子第一个词)

注意:精简结果仅支持前4项

当 ApiLevel>=1 时,透传原始XML结果。

XML结果解析参考:评测结果格式)

results matching ""

    No results matching ""