Hello,

Firstly, the RETRIEVE+UPDATE permissions mask in the ACE does not determine 
whether or not a resource is observable. Rather a resource needs to be defined
as such. /oic/p is not defined as observable (look in 
oc_core_res.c:oc_core_init_platform()). That CTT error is likely about a 
different resource. Please recheck your logs.

Regarding /oc/con, it is optional and you can simply disable it using 
oc_set_con_res_announced(false) in your application before calling
oc_main_init(). It looks like you don't have it listed in your IDD anyway 
(hence the error).

Thanks,
-Kishen.

--
Kishen Maloor
Intel Corporation

From: <iotivity-dev@lists.iotivity.org> on behalf of 
"kimjeong...@vinetech.co.kr" <kimjeong...@vinetech.co.kr>
Date: Thursday, November 14, 2019 at 3:06 AM
To: "iotivity-dev@lists.iotivity.org" <iotivity-dev@lists.iotivity.org>
Subject: [dev] What should I implement for client to pass CT1.2.6 and CT1.3.2.2

Hi.
I'm implementing client program ; RasberryPi 2B+, Ubuntu 18.04, iotivity-lite 
2.0.5.

I have 2 questions on CT1.2.6 and CT1.3.2.2

1. CT1.2.6 RETRIEVE Message with observe indication based on CoAP - NOTIFY
Step 1: CTT sends a unicast CON RETRIEVE request message (i.e. CoAP GET) with 
Observe Option set to 0 (register) to the first Resource supported by the IUT.
Step 2: IUT receives the request message and sends a CON RETRIEVE response 
message to the CTT with an indication of whether or not the observe request 
will be fulfilled.
Step 3: CTT receives the response message and caches it for later evaluation.
Step 4: If the IUT indicates that the observe request will be fulfilled, a 
stimulus is applied to the IUT to force one or more of the Properties of the 
Resource to change. If the test operator indicates that the observe request 
will not be fulfilled, skip to Step 6a.

My client's first Resource is "/ioc/p", and it is registered by iotivity not me.
So I reviewed iotivity-lite source code, but I didn't get a clue.
In my thought, oc_storage_config and oc_main_init are related function.
And I can't find any other functions to intercept operations or callback.

In acl :
...
{ "subject": ...,
"resources":[ ... {"href":"/oic/p"} ]... ],
permissions:6, // Read, Observe, discover and Write, update
aceid: 199488735....
}
...

Error Messages :
0.718s 15:06:51 ERROR: CT1.2.6_Check_3: IUT sent a RETRIEVE response without 
Observe Option.
0.718s 15:06:51 DEBUG: Verification with ID:"CT1.2.6_Check_3" ended with 
result: FAILED


2. CT1.3.2.2 Introspection Resource compliance on resource
It may related with previous problem.
I could not get an idea.

Retrieve on my client program result:
/oc/con : { "n":"My Client name"}
/oc/wk/introspection : Nothing


Error Messages :
1.060s 15:06:59 INFO:    ======= Testing resource /oc/con using schema from 
coap://[fe80::ba27:ebff:fe0a:6549]:60752/oc/introspection =======
1.060s 15:06:59 INFO: 
1.060s 15:06:59 DEBUG: Schemas not found for interface oic.if.baseline
1.060s 15:06:59 INFO: Sending unicast CON RETRIEVE request with 
/oc/con?if=oic.if.baseline
1.060s 15:06:59 VERBOSE: CTT Client -> 
[fe80::3c5f:2adb:8baf:a357%20]:49480->[fe80::ba27:ebff:fe0a:6549]:47440 CON-GET 
ID=13192, Token=6FC48D77, Options=[URI-Port=47440, URI-Path=oc, con, 
AcceptVersion=1.0.0, URI-Query=if=oic.if.baseline, 
Accept=application/vnd.ocf+cbor], Secured=true
1.060s 15:06:59 INFO: Prompting "Waiting for CoAP response... "
1.060s 15:06:59 VERBOSE: CTT Client <- 
[fe80::ba27:ebff:fe0a:6549%20]:47440->[fe80::3c5f:2adb:8baf:a357%20]:49480 
ACK-2.05 Content ID=13192, Token=6FC48D77, Options=[ContentFormatVersion=1.0.0, 
Content-Type=application/vnd.ocf+cbor], Secured=true
1.060s 15:06:59 VERBOSE: CTT Client <- msgId=13192: 
{"rt":["oic.wk.con"],"if":["oic.if.rw","oic.if.baseline"],"n":"IWWS0VHG3M59TTQML"}
1.075s 15:06:59 DEBUG: AgentBase multiple action complete
1.075s 15:06:59 DEBUG: Starting verification with ID:"CT_Assert_elements"...
1.075s 15:06:59 INFO: CT_Assert_elements: Device respond to 
/oc/con?if=oic.if.baseline (CON-GET ID:13192)
1.075s 15:06:59 DEBUG: Verification with ID:"CT_Assert_elements" ended with 
result: PASSED
1.075s 15:06:59 DEBUG: Starting verification with ID:"CT_Assert_success"...
1.075s 15:06:59 INFO: CT_Assert_success: 1 message(s) has code 2.xx
1.075s 15:06:59 DEBUG: Verification with ID:"CT_Assert_success" ended with 
result: PASSED
1.075s 15:06:59 DEBUG: Starting verification with ID:"CT1.3.2.2_Check_1"...
1.075s 15:06:59 ERROR: CT1.3.2.2_Check_1: Introspection Device Data does not 
contain schema for path /oc/con
1.075s 15:06:59 DEBUG: Verification with ID:"CT1.3.2.2_Check_1" ended with 
result: FAILED


Thanks.


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#10291): 
https://lists.iotivity.org/g/iotivity-dev/message/10291
Mute This Topic: https://lists.iotivity.org/mt/57444364/21656
Group Owner: iotivity-dev+ow...@lists.iotivity.org
Unsubscribe: https://lists.iotivity.org/g/iotivity-dev/unsub  
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to