更新时间:2022-04-07 GMT+08:00
分享

使用热词管理

前提条件

  • 确保已经按照配置好IOS开发环境。

初始化Client

初始化HotWordClient,其参数包括SisAuthInfo和SisConfig,详见表 SisAuthInfo数据结构表 SisConfig数据结构

表1 SisAuthInfo数据结构

参数名称

是否必选

参数类型

描述

ak

NSString

用户的ak,可参考AK/SK认证。

sk

NSString

用户的sk,可参考AK/SK认证。

endpoint

NSString

终端节点如sis-ext.cn-north-4.myhuaweicloud.com。

projectId

NSString

项目ID,同region一一对应,参考获取项目。

表2 SisConfig 数据结构

参数名称

是否必选

参数类型

描述

connectionTimeout

NSInteger

连接超时,默认10s,单位s。

readTimeout

NSInteger

连接超时,默认10s,单位s。

请求参数

请求类为HotWordRequest,详见表 HotWordRequest数据结构

表3 HotWordRequest数据结构

参数名称

是否必选

参数类型

描述

name

NSString

热词表名,创建时不可重复。内容限制为字母,数字,下中划线和井号,长度不超过32字节。

language

NSString

热词表语言类型,目前支持汉语普通话“chinese_mandarin”。

contents

NSArray

热词库,单词库支持热词数上限1024。单个热词长度上限32字节。

desc

NSString

热词表描述,长度不超过255字节。

响应参数

创建热词响应参数为String,表示热词表ID。调用失败处理方法请参见错误码

示例代码

// 热词管理
- (void)hotWordDemo{
    //授权信息
    SisAuthInfo *authInfo = [[SisAuthInfo alloc] initWithAk:kAppKey sk:kAppSecret                   endpoint:kEndpoint projectId:kProjectId]; 
//时间设置
    SisConfig *config = [[SisConfig alloc] initDefault];
    //请求参数赋值
    HotWordRequest *request = [[HotWordRequest alloc] init];
    //设置热词表名
    request.name = @"hotTest";
    //热词表语言类型,目前支持汉语普通话“chinese_mandarin”
    request.language = @"chinese_mandarin";
    //热词表描述,长度不超过255字节
    request.desc = @"描述信息";
    //热词库
    request.contents = @[@"示例"];
    //实例化请求对象
    HotWordClient *client = [[HotWordClient alloc] initWithAuthInfo:authInfo config:config];
    //热词表id
    __block NSString *vocabularyId = @"43791ed7-b9f3-4ae3-8be5-d1d1a4931f7d";
    //1.发起请求
    [client create:request completion:^(NSDictionary *response) {
        //返回的结果
        NSLog(@"返回的结果 = %@",response);
        //{"vocabulary_id" : "43791ed7-b9f3-4ae3-8be5-d1d1a4931f7d"}
        vocabularyId = response[@"vocabulary_id"];
    }];
    
    //2.更新热词表
    [client update:request vocabularyId:vocabularyId completion:^(NSDictionary *response) {
        //返回的结果
        NSLog(@"%@",response);
    }];
    
    //3.查看热词表 name为nil则查询所有
    [client queryName:nil completion:^(NSDictionary *response) {
        //返回的结果
        NSLog(@"返回的结果 = %@",response);
    }];
    
    //4.根据热词表id去查询
    [client query:vocabularyId completion:^(NSDictionary *response) {
        //返回的结果
        NSLog(@"返回的结果 = %@",response);
    }];
    
    //5.删除热词表
    [client deleted:vocabularyId completion:^(NSDictionary *response) {
        //返回的结果 statusCode = 200;代表成功
        NSLog(@"返回的结果 = %@",response);
    }];
}
分享:

    相关文档

    相关产品

关闭导读