灵云人工智能论坛

 找回密码
 立即注册
搜索
查看: 3046|回复: 0

关于灵云授权失败的问题 [复制链接]

Rank: 10Rank: 10Rank: 10

超级版主 活跃会员 突出贡献 优秀版主 荣誉管理 论坛元老 智多星 小助手 大助手

发表于 2017-5-1 17:46:27 |显示全部楼层
本帖最后由 aicloud_sup 于 2017-5-1 18:02 编辑

以下简要介绍灵云SDK的授权常见问题

一、灵云SDK授权失败,返回错误码8,hci.log里显示http connect failed.
以上问题,通常有两种原因造成。需要区分预置授权文件授权和云端授权两种方式。
总的原理都是本地没有授权文件,尝试从云端获取授权,且失败,系统返回服务器未联网。
如果用的是云端授权,需要检查服务器的网络连接状态是否正常。可以尝试在浏览器中输入:http://test.api.hcicloud.com:8888,观察是否可以正常显示对应页面。
如果用的是本地授权,此种情况说明授权文件没有正常被读取到。可能的几种原因:
1.授权文件放置的位置错误。授权文件应该放置在代码datapath指定的路径下,且对应目录需要具有可读写的权限。
2.本地预授权、本地永久授权与accountinfo.txt里填写的帐号信息对应不上,导致授权无效。
3.如果是批量终端授权,需要检查机器是否存在多网卡的情况,需要检查日志里打印的udid和制作授权时使用的终端信息采集工具获取的udid的一致性。如果是多网卡的情况,建议将所有网卡的mac地址都加入udidlist中制作授权。
4.授权文件制作时通常有一个起始时间和截止时间,有这样的一种情况:系统时间不在起始时间和截止时间对应的范围内,此种情况可能是授权文件到期,也有可能是系统时间错误。建议做授权时起始时间可以提前一些,比如从2015年开始。授权不可用时也要考虑到可能是系统时间的问题,需要调整系统时间为正确的时间。

二、灵云SDK授权失败,返回错误码12,hci.log里显示capkey not found
此种情况很好解决,要么是在accountinfo里填入了错误的capkey,如拼写错误等。要么是授权文件制作时,没有对应的capkey的授权。如果是直接从云端获取授权,则有可能对应的应用没有勾选指定的capkey能力项。如果还没有正式商用,处于调试阶段,可以重新加上。

三、默认情况下,windows和linux都是绑定无线网卡的mac地址做授权,如果系统中存在多网卡,通常也会绑定用来上网的那个网卡的mac地址。如果此时对应的网卡突然不用了,需要授权继续使用,有如下两种方法:
1.把现在用来上网的网卡的mac地址改为原来的无线网卡的mac地址(本地识别,不联网的情况下推荐,改动的工作量很小,即可继续使用)
2.使用现在的网卡地址重新到云端用checkauth抓取一次授权(可能会被云端认为是两台不同的设备,且只适用于可联网的情况)

四、启动多线程识别时,返回17号错误,session too much
此种情况可能是由于开启的线程没有进行及时的关闭。需要检查每一步sesison start后面是否都有对应的session stop操作。此外,还有很大的一种可能性是请求的线程数超过了授权线程数。灵云通过线程授权文件hci_lisense(如果是批量线程授权,文件名为hci_license_batch)来进行线程数控制。在hci_license不存在的情况下,各平台对应的线程授权数如下:
windows,linux 1线
android,ios 256线
所以如果在windows和linux平台上调用超过2线的识别线程就会返回错误。此时需要单独为其制作一个线程授权文件。
日志里会有load hci_license相关信息,检查max session count的数量,即可知道线程授权是否已经读取成功。

五、关于userinfo文件的用途
首先需要明确一点,userinfo不属于授权文件中的一种。userinfo是在sdk运行时自动生成的,该文件里会用来保存系统时间、系统终端udid等信息。所以有时授权失败需要将userinfo删除。例如,系统时间异常导致的授权失败,重新进行授权时,就需要将旧的userinfo删除,否则系统时间依然会对不上。      

六、关于私有云授权线程数与SDK授权线程数的关系
SDK通常用于访问连接公有云,对于SDK连接私有云的情况,和连接公有云有什么不同吗?
没有不同。私有云和公有云都是云端。对于SDK来说,SDK是客户端,调用公有云和私有云仅仅是url等的区别,本质上都是一样的。私有云的授权线数规定了云端最多可以运行跑多少线,对于SDK来说,获取到私有云的授权后,相当于指定的capkey可以使用。但是和SDK本身的授权线程数没有关系,以windows平台为例,即便私有云的云端授权是100线,如果SDK不存在hci_license这个授权文件,依然只能进行1线的调用。



踩过的脚印

举报

您需要登录后才可以回帖 登录 | 立即注册

Archiver|任务|灵云 ( 京ICP证030095号 )

GMT+8, 2020-12-4 22:23 , Processed in 0.074643 second(s), 21 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部