Skip to content

Commit

Permalink
Merge pull request #234 from RealEstateCore/dev/cbupp/controllers-and…
Browse files Browse the repository at this point in the history
…-gateways

Creating a BACnetAndModbusController and a IoTHubConnectionParameter
  • Loading branch information
cbupp authored Nov 9, 2023
2 parents 6b50537 + fdd9453 commit bd50063
Show file tree
Hide file tree
Showing 10 changed files with 168 additions and 124 deletions.
49 changes: 0 additions & 49 deletions Doc/Asset/Equipment/ICT-/Controller/BACnet-.md

This file was deleted.

49 changes: 0 additions & 49 deletions Doc/Asset/Equipment/ICT-/Controller/Modbus-.md

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
[Index](../../../index.md) > [Point](../../Point.md) > [Parameter](../Parameter.md) > [GatewayConnectionParameter](#)
# GatewayConnectionParameter

**Display name:** Gateway Connection Parameter<br />
**DTMI:** dtmi:org:w3id:rec:GatewayConnectionParameter;1

---

## Child interfaces
* [IoTHubConnectionParameter](IoTHubConnectionParameter.md)

---

## Relationships

### Inherited Relationships
* **[Point](../../Point.md):** isPointOf

---

## Properties

### Inherited Properties
* **[Parameter](../Parameter.md):** lastKnownValue
* **[Point](../../Point.md):** aggregate, customProperties, customTags, hasQuantity, hasSubstance, identifiers, name

---

## Target Of
### General
* [Portfolio](../../../Collection/Portfolio.md).includes
* [PointOfInterest](../../../Information/PointOfInterest.md).objectOfInterest
* [Agent](../../../Agent/Agent.md).owns
* [Space](../../../Space/Space.md).isLocationOf
* [Lease](../../../Event/Lease.md).leaseOf
* [Point](../../Point.md).isPointOf
* [Document](../../../Information/Document/Document.md).documentTopic
* [Document](../../../Information/Document/Document.md).url
* [ServiceObject](../../../Information/ServiceObject/ServiceObject.md).relatedTo
* [Architecture](../../../Space/Architecture/Architecture.md).isFedBy
* [Equipment](../../../Asset/Equipment/Equipment.md).feeds
* [Equipment](../../../Asset/Equipment/Equipment.md).isFedBy
* [Meter](../../../Asset/Equipment/Meter/Meter.md).meters
### Inherited
* [ActuationEvent](../../../Event/Point-/ActuationEvent.md).targetPoint
* [Architecture](../../../Space/Architecture/Architecture.md).hasPoint
* [Asset](../../../Asset/Asset.md).hasPoint
* [ExceptionEvent](../../../Event/Point-/ExceptionEvent.md).sourcePoint
* [ObservationEvent](../../../Event/Point-/ObservationEvent/ObservationEvent.md).sourcePoint
* [ServiceObject](../../../Information/ServiceObject/ServiceObject.md).producedBy
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
[Index](../../../index.md) > [Point](../../Point.md) > [Parameter](../Parameter.md) > [GatewayConnectionParameter](GatewayConnectionParameter.md) > [IoTHubConnectionParameter](#)
# IoTHubConnectionParameter

**Display name:** IoT Hub Connection Parameter<br />
**DTMI:** dtmi:org:w3id:rec:IoTHubConnectionParameter;1

---

## Relationships

### Inherited Relationships
* **[Point](../../Point.md):** isPointOf

---

## Properties

|Name|Display name|Description|Schema|Writable|
|-|-|-|-|-|
|deviceId|**en**: Device ID|**en**: The Device ID of the device connected to Azure IoT Hub|string|True|
|hostname|**en**: Hostname|**en**: The Hostname of the Azure IoT Hub the gateway is connected to|string|True|
### Inherited Properties
* **[Parameter](../Parameter.md):** lastKnownValue
* **[Point](../../Point.md):** aggregate, customProperties, customTags, hasQuantity, hasSubstance, identifiers, name

---

## Target Of
### General
* [Portfolio](../../../Collection/Portfolio.md).includes
* [PointOfInterest](../../../Information/PointOfInterest.md).objectOfInterest
* [Agent](../../../Agent/Agent.md).owns
* [Space](../../../Space/Space.md).isLocationOf
* [Lease](../../../Event/Lease.md).leaseOf
* [Point](../../Point.md).isPointOf
* [Document](../../../Information/Document/Document.md).documentTopic
* [Document](../../../Information/Document/Document.md).url
* [ServiceObject](../../../Information/ServiceObject/ServiceObject.md).relatedTo
* [Architecture](../../../Space/Architecture/Architecture.md).isFedBy
* [Equipment](../../../Asset/Equipment/Equipment.md).feeds
* [Equipment](../../../Asset/Equipment/Equipment.md).isFedBy
* [Meter](../../../Asset/Equipment/Meter/Meter.md).meters
### Inherited
* [ActuationEvent](../../../Event/Point-/ActuationEvent.md).targetPoint
* [Architecture](../../../Space/Architecture/Architecture.md).hasPoint
* [Asset](../../../Asset/Asset.md).hasPoint
* [ExceptionEvent](../../../Event/Point-/ExceptionEvent.md).sourcePoint
* [ObservationEvent](../../../Event/Point-/ObservationEvent/ObservationEvent.md).sourcePoint
* [ServiceObject](../../../Information/ServiceObject/ServiceObject.md).producedBy
8 changes: 6 additions & 2 deletions Doc/index.full.md
Original file line number Diff line number Diff line change
Expand Up @@ -176,8 +176,10 @@
* [ICTEquipment](Asset/Equipment/ICT-/ICTEquipment.md)
* [AudioVisualEquipment](Asset/Equipment/ICT-/AudioVisualEquipment.md)
* [Controller](Asset/Equipment/ICT-/Controller/Controller.md)
* [BACnetController](Asset/Equipment/ICT-/Controller/BACnet-.md)
* [ModbusController](Asset/Equipment/ICT-/Controller/Modbus-.md)
* [BACnetController](Asset/Equipment/ICT-/Controller/BACnet-/BACnetController.md)
* [BACnetAndModbusController](Asset/Equipment/ICT-/Controller/BACnet-/BACnetAndModbusController.md)
* [ModbusController](Asset/Equipment/ICT-/Controller/Modbus-/ModbusController.md)
* [BACnetAndModbusController](Asset/Equipment/ICT-/Controller/BACnet-/BACnetAndModbusController.md)
* [DataNetworkEquipment](Asset/Equipment/ICT-/DataNetworkEquipment/DataNetworkEquipment.md)
* [EthernetPort](Asset/Equipment/ICT-/DataNetworkEquipment/EthernetPort.md)
* [EthernetSwitch](Asset/Equipment/ICT-/DataNetworkEquipment/EthernetSwitch.md)
Expand Down Expand Up @@ -593,6 +595,8 @@
* [Temperature_Alarm_Sensitivity_Parameter](Point/Parameter/Alarm_Sensitivity-/Temperature-.md)
* [Delay_Parameter](Point/Parameter/Delay-/Delay_Parameter.md)
* [Alarm_Delay_Parameter](Point/Parameter/Delay-/Alarm-.md)
* [GatewayConnectionParameter](Point/Parameter/GatewayConnection-/GatewayConnectionParameter.md)
* [IoTHubConnectionParameter](Point/Parameter/GatewayConnection-/IoTHubConnectionParameter.md)
* [Humidity_Parameter](Point/Parameter/Humidity-/Humidity_Parameter.md)
* [High_Humidity_Alarm_Parameter](Point/Parameter/Humidity-/High_Humidity_Alarm_Parameter.md)
* [Humidity_Tolerance_Parameter](Point/Parameter/Tolerance-/Humidity-.md)
Expand Down
19 changes: 19 additions & 0 deletions OntologyDecisionRecords/ODR 002 GatewayConnectionParameter.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# ODR 002: GatewayConnectionParameter

## Context

An IoT [Gateway](../Doc/Asset/Equipment/ICT-/Gateway.md) is a device responsible for handling transfer data to different communication protocols. A modern IoT gateway enables bidirectional communication.

In the case that a cloud service needs to send a cloud-to-device message to the gateway, the connection information needed to accomplish this could be represented as a [Parameter](../Doc/Point/Parameter/Parameter.md).

## Decisions

1. We will create a [GatewayConnectionParameter](../Doc/Point/Parameter/GatewayConnection-/GatewayConnectionParameter.md) that uses the REC DTMI `dtmi:org:w3id:rec:GatewayConnectionParameter;1`.

1. We will NOT model security credentials in the connection parameters; it is recommended that a key vault, or similar technology, is used to store credentials.

## Consequences

Application services will need to implement application logic to support the different model extensions.

Application services will be responsible for securing the appropriate authorization to send messages. The GatewayConnectionParameters just provide configuration parameters.

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"@id": "dtmi:org:w3id:rec:GatewayConnectionParameter;1",
"@type": "Interface",
"displayName": "Gateway Connection Parameter",
"extends": "dtmi:org:brickschema:schema:Brick:Parameter;1",
"@context": [
"dtmi:dtdl:context;2"
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
{
"@id": "dtmi:org:w3id:rec:IoTHubConnectionParameter;1",
"@type": "Interface",
"displayName": "IoT Hub Connection Parameter",
"extends": "dtmi:org:w3id:rec:GatewayConnectionParameter;1",
"contents": [
{
"@type": "Property",
"schema": "string",
"description": {
"en": "The Device ID of the device connected to Azure IoT Hub"
},
"displayName": {
"en": "Device ID"
},
"name": "deviceId",
"writable": true
},
{
"@type": "Property",
"schema": "string",
"description": {
"en": "The Hostname of the Azure IoT Hub the gateway is connected to"
},
"displayName": {
"en": "Hostname"
},
"name": "hostname",
"writable": true
}
],
"@context": [
"dtmi:dtdl:context;2"
]
}

0 comments on commit bd50063

Please sign in to comment.