全部产品
云市场

物联卡设备信息提交(DoIotPostImei)

更新时间:2019-07-24 09:49:17

物联网卡设备信息提交

步骤 1 创建阿里云账号

为了访问服务,您需要有一个阿里云账号。如果没有,可首先按照如下步骤创建阿里云账号:

  1. 访问阿里云 官方网站,单击页面上的 免费注册 按钮。
  2. 按照屏幕提示完成注册流程并进行实名认证,该服务只支持实名认证用户使用。为了更好地使用阿里云服务,建议尽快完成实名认证,否则部分阿里云服务将无法使用。具体实名认证流程,请参考 这里

步骤 2 获取阿里云访问密钥

为了使用物联卡 SDK,您必须申请阿里云的访问密钥。

阿里云访问秘钥是阿里云为用户使用 API(非控制台)来访问其云资源设计的“安全口令”。您可以用它来签名 API 请求内容以通过服务端的安全验证。

该访问秘钥成对(AccessKeyId 与 AccessKeySecret)生成和使用。每个阿里云用户可以创建多对访问秘钥,且可随时启用(Active)、禁用(Inactive)或者删除已经生成的访问秘钥对。

您可以通过阿里云控制台的 秘钥管理页面 创建、管理所有的访问秘钥对,且保证它处于“启用”状态。由于访问秘钥是阿里云对 API 请求进行安全验证的关键因子,请妥善保管你的访问秘钥。如果某些秘钥对出现泄漏风险,建议及时删除该秘钥对并生成新的替代秘钥对。

步骤 3 在控制台完成购卡行为后,且卡被用户正常激活后,获得调用接口必备的参数

IMEI

请从设备上摘录设备IMEI编码

参数
请求参数
名称 类型 是否必须 描述
Imei String 必须 需要上传设备的IMEI
DeviceType String 可选 设备类型
Comments String 可选 备注

其他请求参数请参见 公共请求参数

出参列表
出参名称 出参类型 样例取值 参数说明
RequestId String 8906582E-6722 请求ID
Code String OK 状态码-返回OK代表请求成功,其他错误码详见错误码列表
Message String 请求成功 状态码的描述
IotPostImei Object - 该对象为一个Object,Object元素请参考下面的IotPostImei样例
IsPostSuccess样例
出参名称 出参类型 样例取值 参数说明
IsPostSuccess Boolean true 提交是否成功 true 成功,false 失败

公共返回参数,详见 公共请求参数

技术对接步骤

1:下载SDK工具包

SDK工具包中一共包含了2个类库,一个aliyun-java-sdk-core包,另外一个是alicom-dyiotapi-api包,将这两个包执行mvn package命令或者mvn deploy命令打包出相应的jar包,添加到工程类库中依赖使用。

SDK&DEMO[下载地址]

2: 编写样例程序

注:有备注无需修改的位置请勿改动。

  1. //设置超时时间-可自行调整
  2. System.setProperty("sun.net.client.defaultConnectTimeout", "10000");
  3. System.setProperty("sun.net.client.defaultReadTimeout", "10000");
  4. //初始化ascClient需要的几个参数
  5. final String product = "Dyiotapi";//物联卡API产品名称(短信产品名固定,无需修改)
  6. final String domain = "dyiotapi.aliyuncs.com";//物联卡API产品域名(接口地址固定,无需修改)
  7. //替换成你的AK
  8. final String accessKeyId = "yourAccessKeyId";//你的accessKeyId,参考本文档步骤2
  9. final String accessKeySecret = "yourAccessKeySecret";//你的accessKeySecret,参考本文档步骤2
  10. //初始化ascClient,暂时不支持多region(请勿修改)
  11. IClientProfile profile = DefaultProfile.getProfile("cn-hangzhou", accessKeyId,
  12. accessKeySecret);
  13. DefaultProfile.addEndpoint("cn-hangzhou", "cn-hangzhou", product, domain);
  14. IAcsClient acsClient = new DefaultAcsClient(profile);
  15. DoIotPostImeiRequest request = new DoIotPostImeiRequest();
  16. //填入需要提交设备的IMEI
  17. request.setImei("needPostImei");
  18. //请求失败这里会抛ClientException异常
  19. DoIotPostImeiResponse acsResponse = acsClient.getAcsResponse(request);
  20. if(acsResponse.getCode() != null && acsResponse.getCode().equals("OK")) {
  21. //请求成功
  22. }

返回示例

JSON示例

  1. {
  2. /* 请求标签,用于追踪错误 */
  3. "RequestId": "1C63F16F-D376-4065-816E-3E56CDD13FEB",
  4. /* 请求codeOK代表正常 */
  5. "Code": "OK",
  6. /* 异常描述 */
  7. "Message": "ServiceUnavailable"
  8. "IotPostImei": {
  9. "IsPostSuccess": true
  10. }
  11. }

错误码

错误代码 描述 Http状态码 语义
isv.INVALID_PARAMETERS the parameters is invalid. 400 参数无效
isv.PRODUCT_UN_SUBSCRIPT The Product need to order,before invoke the API. 400 未开通物联卡产品
isv.ACCOUNT_NOT_EXISTS Can’t found the invoker’s account information. 400 B商家对应的账户异常
isv.RAM_PERMISSION_DENY The invoker is permission invoke the API for the card. 400 当前调用者无权对该卡发起请求
isv.POST_IMEI_ERROR The post IMEI information is error 404 提交IMEI信息失败,请具体看Message表述
isv.SYSTEM_ERROR System error. 404 系统异常