Week 3


Disco Requests


Disco Query is sent to a JID to check for features related to the JID. This Week we will use it to identify Devices and the IoT Features that they support.


  • Send Disco Query to all contacts as soon as a JID logs in.
  • Based on the features received from the contacts set ‘support_0323’ and ‘support_0325’ vars in the Contact Data Structure.
  • Set some Viewable Difference so as to Differentiate between Contacts and Devices Visually.

##Problems Faced and Work Arounds

####Inputs for Disco Query

  • Initially we faced problem with Disco Query that was, We were not able to retrieve features for Devices, while it was working good with normal JIDs.
  • Disco not working for Devices.

Disco not working for Devices

  • Disco working for JIDs.

Disco working for JIDs

  • We figured out that the problem faced was because we were sending the Disco Query to Bare_JID instead of sending it to JID/resource.
  • Disco working for Devices after using Resources.

Disco working for Devices

####Visual Difference between Contacts and Devices

  • We started with the Idea of having a different Tabs and Views for IoT Devices, which we were unable to do because of Contact Rendering Issues.
  • Then we had 2 ideas to replace the above which were to have a different Group for IoT Devices or have a Different Icon for Devices.
  • We settled down on having a Different Icon for Devices and that is a ‘Wrench’ Icon.
  • Successful Disco Request and View.

Successful Disco Request and View

##Road Ahead

  • For next week we will implement Read and Write for Devices.