The next step is to define a set of metadata tags that will constitute the conceptual identity of the device. You can choose any tags you like. Tags are simply key-value pairs. Keys are always strings, and values can be either strings or numeric (floating-point) values. Each key tag (or name) is case insensitive. Some keys are defined in the IANA iotdisco URI scheme definition, as well as XEP-0347. You should adhere to these for interoperability. They include tags for physical identity, identity of the manufacturer, make, model, and version of the device, as well as location information, and so on. We begin with some static information:
string s; List<MetaDataTag> MetaInfo = new List<MetaDataTag>() { new MetaDataStringTag("CLASS", "Sensor"), new MetaDataStringTag("TYPE", "MIoT Sensor"), new MetaDataStringTag("MAN", "waher.se"), new MetaDataStringTag("MODEL", "MIoT SensorXmpp"), new MetaDataStringTag("PURL", "https://github.com/PeterWaher/MIoT"), new MetaDataStringTag("SN", this.deviceId), new MetaDataNumericTag("V", 1.0) };
For a list of pre-defined tags, see https://xmpp.org/extensions/xep-0347.html#tags.