IOT Directory and Devices

       Snap4City IOT Directory and Devices

click the image to access the tool (for registered users), see the video

The IoTDirectory is a web application developed for monitoring and managing the devices (sensors/actuators) that are available in the city by means of their Context Brokers.  The IOT Directory allows you to see IOT devices at level of devices and single sensors/actutora with their ValueType (temperature, pression, velocity, humidity, etc.): and ValueUnit (float, integer, etc.). So that the value type is concept that goes in the semantic of the data, while the value unit is something more technical that describe how the value is coded and represented. Depending on the Context Broker a device (sensor/actuator) is identified by means of specific id field (as in Orion Context Broker) or through the name of the channel/topic according to which their values are published (as in MQTT, NGSI e AMQP, and other protocols as well).

The IoTDirectory allows the developers to:

  1. see and manage the list of sensors and actuators according to their valuetype, valuename, healthiness criteria, etc. providing also the evidence about its status, and position on the map, if any. It also provide some descriptors about the device and sensors kind. 
    1. it is also possible to add a new sensor to a device/actuator, to add your private values. 
  2. see and manage the list of devices automatically associated to a Context Broker and update of their properties (producer, model, geo-localization, etc.) by means of a web form. Moreover, the system identifies the presence of possible attributes that constitute the device schema of the sensors. For each attribute the system automatically infers its basic type (string, integer, decimal, date, etc. )  when the produced values are organized according to a list of basic templates (available for comma-separated values, JSON and XML).
    1. is is also possible to add a new device, to add your own device
  3. Semantic labelling on the attributes in the device schema. There is a huge variability on the names adopted in different devices for tagging the observations. For this reasons we have included in the Km4city Ontology a set of basic concepts (like “latitude”, “longitude”, “timestamp”, “status”, “temperature”) that can be exploited for describing the concept that an attribute wishes to express. In this way, we can facilitate the retrieval of sensors relying on them. For example a mobile phone can produce its position by means of a pair (“lat: 45.4642,long: 9.1900”). The two tags can be semantically labelled with “latitude” and “longitude”. The system offers facilities for the automatic inference of the semantic labelling and further facilities will be developed in the next version of the system for limiting the user intervention in this activity.
  4. see the available context brokers independently from the communication protocol (either MQTT, NGSI, AMQP, etc.).
  5. Activate the monitoring of a Context Broker and updating of the current available devices; this is an important feature for automatically loading in the IoTDirectory the devices (sensors/actuators) exposed by the Context Broker and keep them updated each time a new device appears. 

The IOT Directory can be accessed at the following links:

We suggest you to follow these examples and readings in the order:


I tried following the video guide (link) to add a device from the IoT Directory to the IoT App and create a simple Dashboard.

In the video, when using the IoT Directory Node and select the devices you want to add an extra flow is automatically generated. However, in my case this extra node is not generated and therefore I cannot add any device to my IoT App.

roottooladmin1's picture

that mechanism for generating the automatically the Flow is partially obsolete since the it has been rplaced by new NGSI V2 blocks that are not managed. 
i suggest you to follow the training course from the slide and not the older versions that you find on the web pages.... they may include some mistakes..


Thank you very much for your reply.

By checking in the slides, I've found a lot of valuable information on how to ingest data.

However, I wasn't able to find information on how to consume data with the IoT App. (Import in real0-time, historic data of a sensor in the IoT App and use it in the flow).

Would you be kind to direct me to the respective resources (articles, videos, etc.)

Thank you.

PS. On some flows trying to use fiware orion blocks with orionUNIFI (, I get an ERRCONNREFUSED error.

Is it maybe that the broker is not online?

roottooladmin1's picture

You can consume data from IOT App in several different manners:

-- exploiting the connection with the IoT Device connecting with the Broker, using the IOT Nodes, even driven

see slide 370: orion broker of V2 NGSI syntax .....

-- accessing the historical data from serviceinfo dev node, which is not even driven but in a single call can provide you last real time and historical data, referring to t he serviceURI, the serviceURI of IOT devices can be recovered from the IOT Directory (IOT Device list of you devices,) from data  inspector, from servicemap, etc.

slides 257 around there 

-- exploiting the MyKPI data with Load MyKPI, historical and event driven






roottooladmin1's picture

If you have specific problem on some IOT App we can enter on it and solve it with you when needed,