azure iothub device status

。_饼干妹妹 提交于 2021-02-10 06:29:32

问题


getConnectionState() as connected /disconnected depending on the device .if it is sending message i should see connected and if it not sending i should get disconnected .But each time i run the below java Program i am getting status as disconnected irrespective of device is sending messages or not

RegistryManager registryManager = RegistryManager.createFromConnectionString(connectionString);
    System.out.println(registryManager.getDevices(new Integer(1000)));
    while(true){
    ArrayList<Device> deviceslist=registryManager.getDevices(new Integer(1000));
    for(Device device:deviceslist)
    {
        /*System.out.println(device.getDeviceId());
        System.out.println(device.getPrimaryKey());
        System.out.println(device.getSecondaryKey());*/
        System.out.println(device.getDeviceId());
        System.out.println(device.getConnectionState());
        /*System.out.println(device.getConnectionStateUpdatedTime());
        System.out.println(device.getLastActivityTime());
        System.out.println(device.getStatusReason());
        System.out.println(device.getStatusUpdatedTime());
        System.out.println(device.getSymmetricKey());
        System.out.println(device.geteTag());
*/  }
    }

回答1:


I definitely am seeing otherwise.

I'm creating an simple C# console application using the code below,

    static async void QueryDevices()
    {
        RegistryManager manager = RegistryManager.CreateFromConnectionString(connectionString);
        while (true)
        {
            var devices = await manager.GetDevicesAsync(100);
            {
                foreach (var item in devices)
                {
                    Console.WriteLine(DateTime.Now + ": " + item.Id + ", " + item.ConnectionState);

                    System.Threading.Thread.Sleep(100);
                }
            }
        }
    }

The git here is to always query the whole device list, because the ConnectionState property somehow looks like "static" memebers of the single device client instance, which is not apt-to change even when the actual state changes.

And my output is like below, the "connected" state is when I'm using an java client sample to send message to the IoT Hub.



来源:https://stackoverflow.com/questions/40257697/azure-iothub-device-status

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!