diff --git a/TS-0041-oneM2M-SensorThings_interworking.md b/TS-0041-oneM2M-SensorThings_interworking.md index 0eaae97b899a65d3c5b7ead350da5d64cb8d11d5..5002f06d0db362e8807adab09cb741e35826269e 100644 --- a/TS-0041-oneM2M-SensorThings_interworking.md +++ b/TS-0041-oneM2M-SensorThings_interworking.md @@ -244,6 +244,73 @@ Once the destination-"Datastream" is created, the IPE can send an "Observation" **Figure 6.3.1.2-1: Message flow from IPE to OGC/STA Server to OGC/STA Client** +### 6.3.2 Configuration of the oneM2M CSE + +#### 6.3.2.0 General Configuration Aspects + +The IPE needs to perform configuration steps on the hosting CSE. + +The IPE shall register itself as an Application Entity (AE) that is represented as an *`<AE>`* resource in a oneM2M resource tree. + +The CSE uses notifications to communicate new events to the IPE (AE). Therefore, the *`<AE>`* resource shall have the *requestReachability* (rr) attribute set to 'true'. + +The *`<AE>`* resource shall have a *pointOfAccess* (poa) attribute giving the protocol and address that the IPE is going to use to receive notifications from the CSE. + +The message flow for the creation of an *`<AE>`* resource is shown in Figure 6.3.2.0-1: +1) The IPE requests to register an *`<AE>`* resource on the hosting CSE. +2) The hosting CSE evaluates the request, performs the appropriate checks, and registers the *`<AE>`* resource. +3) The hosting CSE responds with a successful result response upon successful creation of the *`<AE>`* resource; otherwise, it responds with an error. + + + +**Figure 6.3.2.0-1: Message flow of an *`<AE>`* resource creation in oneM2M** + +#### 6.3.2.1 Communication direction oneM2M CSE towards IPE + +It needs two *`<container>`* resources in the CSE for the operation of the IPE, one for outgoing data and one for incoming data. +The *`<container>`* resource that is appointed to hold the data to be forwarded to the OGC/STA side (outgoing data) has to be created, if not already existing. + +The message flow for the creation of a *`<container>`* resource is shown in Figure 6.3.2.1-1: +1) The IPE sends a request to create a *`<container>`* resource. +2) The hosting CSE evaluates the request, performs the appropriate checks, and creates the *`<container>`* resource. +3) The hosting CSE responds with a successful result response upon successful creation of the *`<container>`* resource; otherwise, it responds with an error. + + + +**Figure 6.3.2.1-1: Message flow of an *`<container>`* resource creation in oneM2M** + +A *`<subscription>`* resource shall be created under this *`<container>`* resource. + +The *`<subscription>`* resource shall have the *notificationURI* attribute set to the *resourceID* of the *`<AE>`* resource. + +The message flow for the creation of an *`<subscription>`* resource is shown in Figure 6.3.2.1-2: +1) The IPE sends a creation request for a *`<subscription>`* resource to the *`<container>`* resource that is appointed to hold the data to be forwarded to the OGC/STA side. +2) The hosting CSE evaluates the request and performs the appropriate checks and creates the *`<subscription>`* resource. +3) The hosting CSE responds with a successful result response of the *`<subscription>`* resource creation; otherwise, it responds with an error. + + + +**Figure 6.3.2.1-2: Message flow of an *`<subscription>`* resource creation in oneM2M** + +The CSE is now prepared to send data from oneM2M to OGC / STA via the IPE. As shown in Figure 6.3.2.1-3, a oneM2M Application Entity (AE), triggered by a sensor, sends data to the CSE by creating a *`<contentInstance>`* resource under the *`<container>`* resource that was appointed for outgoing data. +Since the IPE has subscribed to this *`<container>`* resource it receives a notification message along with all attributes of the *`<contentInstance>`* resource when new data arrives. The IPE maps the data from oneM2M to OGC / STA as described in 6.1 . + + + +**Figure 6.3.2.1-3: Message flow from AE to CSE to IPE** + +#### 6.3.2.2 Communication direction IPE towards oneM2M CSE + +The *`<container>`* resource that is appointed to hold the data from the OGC/STA side (incoming data) has to be created, if not already existing. +The message flow for the creation of a *`<container>`* resource is shown in Figure 6.3.2.1-1. + +The CSE is now prepared to receive data from OGC / STA via the IPE. The IPE sends data as *`<contentInstance>`* resources to the dedicated *`<container>`* resource. If other oneM2M Application Entities are interested in this data, they may subscribe to the dedicated *`<container>`* resource. Alternatively, they can retrieve *`<contentInstance>`* resources from it in polling mode. + + In Figure 6.3.2.2-1, the IPE (AE) sends data as *`<contentInstance>`* resources to the dedicated *`<container>`* resource. Subsequently, the AE receives a notification along with data contained in a *`<contentInstance>`* resource every time when the IPE creates new data. + + + +**Figure 6.3.2.2-1: Data message flow from IPE to CSE to AE** # Proforma copyright release text block <mark>This text box shall immediately follow after the heading of an element (i.e. clause or annex) containing a proforma or template which is intended to be copied by the user. Such an element shall always start on a new page.</mark> diff --git a/media/STA_flow.pptx b/media/STA_flow.pptx new file mode 100644 index 0000000000000000000000000000000000000000..f8e2c5f8115fa705e2ea68c3aa714e477aa64ee4 Binary files /dev/null and b/media/STA_flow.pptx differ diff --git a/media/com_flow_1.pptx b/media/com_flow_1.pptx new file mode 100644 index 0000000000000000000000000000000000000000..62d940f6ef6901c41fbdc0028cbfaa57fe6be1c1 Binary files /dev/null and b/media/com_flow_1.pptx differ diff --git a/media/com_flow_2.pptx b/media/com_flow_2.pptx new file mode 100644 index 0000000000000000000000000000000000000000..163122fa09d025765e6bd498f38e8937a7184378 Binary files /dev/null and b/media/com_flow_2.pptx differ diff --git a/media/config.pptx b/media/config.pptx new file mode 100644 index 0000000000000000000000000000000000000000..76b0b824d2535604e5a1e856cc67c67f83d37f8c Binary files /dev/null and b/media/config.pptx differ diff --git a/media/config_cse1.png b/media/config_cse1.png new file mode 100644 index 0000000000000000000000000000000000000000..f4f768efae1829413ac010c1f25ae0b0de402ee2 Binary files /dev/null and b/media/config_cse1.png differ diff --git a/media/config_cse1.pptx b/media/config_cse1.pptx new file mode 100644 index 0000000000000000000000000000000000000000..60b00731f7fe102571282d4cbc1de3cfe98c9ce0 Binary files /dev/null and b/media/config_cse1.pptx differ diff --git a/media/config_cse23.png b/media/config_cse23.png new file mode 100644 index 0000000000000000000000000000000000000000..d286f82611070b845e1f3df63b0f2981fa92cacb Binary files /dev/null and b/media/config_cse23.png differ diff --git a/media/config_cse23.pptx b/media/config_cse23.pptx new file mode 100644 index 0000000000000000000000000000000000000000..1580ff970fee5292821ec4cbeb62a19a6922195b Binary files /dev/null and b/media/config_cse23.pptx differ diff --git a/media/config_ogc.pptx b/media/config_ogc.pptx new file mode 100644 index 0000000000000000000000000000000000000000..79bd5e4f5482a326ab3e4d4d0b003c463c85498c Binary files /dev/null and b/media/config_ogc.pptx differ diff --git a/media/config_ogc2.pptx b/media/config_ogc2.pptx new file mode 100644 index 0000000000000000000000000000000000000000..0838dec2e7df58426d87c0329d64e953df54b616 Binary files /dev/null and b/media/config_ogc2.pptx differ diff --git a/media/create_ae_flow.png b/media/create_ae_flow.png new file mode 100644 index 0000000000000000000000000000000000000000..a09d8e1b658ea412cfead012fdf4295e4b09ab10 Binary files /dev/null and b/media/create_ae_flow.png differ diff --git a/media/create_ae_flow.vsdx b/media/create_ae_flow.vsdx new file mode 100644 index 0000000000000000000000000000000000000000..0ecadf35c19665326e241c4aa205e14fefeb5c8c Binary files /dev/null and b/media/create_ae_flow.vsdx differ diff --git a/media/create_container_flow.png b/media/create_container_flow.png new file mode 100644 index 0000000000000000000000000000000000000000..ade9cd5b5ba6b0f37abe7ed3df6e69d680a4e578 Binary files /dev/null and b/media/create_container_flow.png differ diff --git a/media/create_container_flow.vsdx b/media/create_container_flow.vsdx new file mode 100644 index 0000000000000000000000000000000000000000..034d5d8720b4bfbc1b7ff01bc241b18fd6737ba5 Binary files /dev/null and b/media/create_container_flow.vsdx differ diff --git a/media/create_subscription_flow1.png b/media/create_subscription_flow1.png new file mode 100644 index 0000000000000000000000000000000000000000..87aa1b47f8d9957b8242124d10b9a1810ba56a01 Binary files /dev/null and b/media/create_subscription_flow1.png differ diff --git a/media/create_subscription_flow1.vsdx b/media/create_subscription_flow1.vsdx new file mode 100644 index 0000000000000000000000000000000000000000..9b9ba852ffbc86e95912081c87315403569ed9e0 Binary files /dev/null and b/media/create_subscription_flow1.vsdx differ