great thanks, I will have a look then and keep you posted

    Le lundi 4 mai 2020 à 15:56:20 UTC+2, Maloor, Kishen 
<[email protected]> a écrit :
 

Hello,
 
  
 
Please take a look inside the "ocfbridging" branch.
 
  
 
There's some in-progress work over there that should directly address your 
need. Specifically, it adds infrastructure that allows an application to
 
dynamically attach and detach virtual OCF Devices based on the presence of 
related entities in any 3rd party technology. The states of those virtual 
Devices
 
are persisted over the duration of their use. Further, this framework 
incorporates the specified semantics with respect to discoverability (on the 
OCF side) of
 
virtual Devices to fulfill some security requirements outlined in the OCF 
bridging specification.
 
  
 
You should be able to build an application that interacts with Bluetooth 
devices (your code), and map those to virtual OCF Devices using the said 
infrastructure.
 
  
 
Thanks,
 
-Kishen.
 
  
 
-- 
 
Kishen Maloor
 
Intel Corporation
 
  
 
From: <[email protected]> on behalf of "fariouche via groups.io" 
<[email protected]>
Reply-To: "[email protected]" <[email protected]>
Date: Saturday, May 2, 2020 at 11:50 AM
To: "[email protected]" <[email protected]>
Subject: [dev] iotivity lite bridge - oc_remove_device
 
  
 
Hello,

I've finished to read the OCF specification, and as far as I understand for the 
bridge, each discovered device is associated to a virtual OCF device.
I would like to bridge some bluetooth devices.
So I discover them, pair them (here I think I missed something. How do we pair 
a bluetooth device that requires a pin?), and then I create a device using 
oc_add_device() with its associated resources.
So far so good.
But I need to know the "index" of this new virtual device. (currently I have a 
counter incremented each time I add a device)
However, if the bluetooth device is removed, there is no oc_remove_device() 
function.... and this will also need the oc_add_device function  to return the 
index too.

Looking at the code, I see that the oc_add_device() just add a device struct to 
an array (static or dynamically allocated).
The index is then used everywhere to reference this device.

Maybe a simple solution is to:
1- change the implementation to have to look into the array for a free slot, 
and associate the index.
2- return this index
3- add oc_remove_device(int index), taking care of de-registering properly the 
associated resources (or return an error and let the user remove the resources 
first before calling this function)

I have the feeling that it will not be that easy, so here I am asking you what 
you think?

Thank you for you help!
 



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

View/Reply Online (#10383): 
https://iotivity.groups.io/g/iotivity-dev/message/10383
Mute This Topic: https://groups.io/mt/73937427/21656
Group Owner: [email protected]
Unsubscribe: https://iotivity.groups.io/g/iotivity-dev/unsub  
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to