java - 我无法通过 DeviceClient.connect() 连接到 IOT 平台上使用 GatewayClient 创建的设备

标签 java ibm-cloud device iot gateway

我有一个系统,其中设备使用 REST 与我的服务器通信,该服务器充当 IOT 网关来代表设备注册和发送事件。这很好用。现在我想向我正在为其创建 DeviceClient 的设备添加远程命令/控制(使用 Java API)。该设备使用与网关相同的 api key 和身份验证 token ,我可以在仪表板的设备 View 中看到该设备,但当我 connect() 时,我遇到连接失败。网关下创建的设备是否可以直接连接IOT平台?如果是的话,有什么建议吗?

Looks like one or more connection parameters are wrong !!!
Apr 27, 2017 9:19:40 AM com.ibm.iotf.client.AbstractClient connect
SEVERE: main: Connecting to Watson IoT Platform failed - one or more connection parameters are wrong !!!
Not authorized to connect (5)
    at org.eclipse.paho.client.mqttv3.internal.ExceptionHelper.createMqttException(ExceptionHelper.java:28)
    at org.eclipse.paho.client.mqttv3.internal.ClientState.notifyReceivedAck(ClientState.java:990)
    at org.eclipse.paho.client.mqttv3.internal.CommsReceiver.run(CommsReceiver.java:118)
    at java.lang.Thread.run(Thread.java:745)

连接属性如下:

{API-Key=a-sl0l32-..., iotp.enabled=true, type=AudioSensor, 
 Organization-ID=sl0l32, Authentication-Method=token, Authentication-Token=...., 
 id=cognitiveear-gmail.com-sensor-name}

我的设备在仪表板中列出,如下所示:

Device ID cognitiveear-gmail.com-sensor-name
Device Type AudioSensor
Date Added Thursday, April 27, 2017
Added By a-sl0l32-rsmowsjmuj
Connection State Registered Refresh

最佳答案

当您看到以下输出时:“看起来一个或多个连接参数错误!!!”您用于连接的值很可能是错误的。

对于网关,请查看此示例链接:https://github.com/ibm-messaging/iot-gateway-samples/tree/master/java/advanced-gateway-sample

您需要设置:

  • 组织 ID = [您的组织 ID]
  • 设备类型 = [您的网关设备类型]
  • 设备 ID = [您的网关设备 ID]
  • 身份验证方法 = token
  • 身份验证 token = [您的网关 token ]

对于设备,请参阅https://github.com/ibm-messaging/iot-device-samples/tree/master/java

您需要设置:

  • 组织 ID = [您的组织 ID]
  • 设备类型 = [您的设备类型]
  • 设备 ID = [您的设备 ID]
  • 身份验证方法 = token
  • 身份验证 token = [您的设备 token ]

关于java - 我无法通过 DeviceClient.connect() 连接到 IOT 平台上使用 GatewayClient 创建的设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43660084/

相关文章:

android - 统一设置显示分辨率限制

java - 在ImageView中设置位图图像

nginx - 如何在 IBM Bluemix 上的 Kubernetes 中向入口资源添加 websocket 支持?

iphone - 环境光检测 - iPhone

javascript - 将 Bluemix 数据库数据拉入 SquareSpace 网站

postgresql - 附加卷的 Bluemix postgres 容器,失败并显示 'permission error'

c# - 通过 TCP 共享 COM 端口

java - 如何从java程序连接到ceph集群

java - 停止 Spring MVC 注解处理

java - DecimalFormat 解析数字错误。为什么?