Re: Query: [BLE][PROFILES]Need Suggestion on Implementing/Using Immediate_Alert Service(Single Instance Service) used by multiple Profiles

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Nitish,

On Wed, Mar 4, 2015 at 8:59 AM, Nitish Wokkadada <nitishw@xxxxxxxxxxx> wrote:
> Hi All,
> Can anyone please comment?
>
> Regards,
> Nitish Wokkadada
>
> -----Original Message-----
> From: Nitish Wokkadada
> Sent: 27 February 2015 18:16
> To: 'linux-bluetooth@xxxxxxxxxxxxxxx'
> Subject: Query: [BLE][PROFILES]Need Suggestion on Implementing/Using Immediate_Alert Service(Single Instance Service) used by multiple Profiles
>
> Hello,
>
> Currently in Bluez5.28, I see the immalert.c & immalert.h files under folder profiles/proximity, wherein just Proximity profile uses/adds the Immediate_Alert Service & hence the immalert.c contains the handling with respect to Proximity Profile.
> However Immediate_Alert Service is a common service, and also can be used by FindMe Profile.
>
> So, if we are implementing the FindMe Profile(FindMeTarget Role/GATT Server Role), then we cannot have another file in profiles/findme/ that adds the immediate_alert service(Considering Device supports both Proximity and FindMe profiles) due to immediate_alert service shall have a Single Instance per Device.

I suppose the alert should be a included service to FindME and
Proximity, in that case it should not be a problem since the you can
register the alert service in the database  and then include it in the
other services. Btw, the API for doing this is changing, the plugins
will probably have to interface with btd_database to do that, also you
might need to do lookup in the database to discover the alert service
since it might be implemented in another plugin, the third option is
to implement this externally with use of D-Bus GATT APIs, but in that
case it is not really possible to include services not bellowing to
the same process/bus id.

> Also in Client Role case, we need to have common code for Single Instance Services(similar to Immediate_alert service) that does the discovery, read, write operations by providing apis that can be used by Different Profiles(ex: Proximity and FindMe profiles that uses Immediate_alert service), similar to Device Information service.

Yep, a simple library in the form we have bt_hog, bt_bas, etc, with
proper unit test is probably a good idea if we want this to be a
internal plugin. We haven't yet define what service should be
implemented as plugin though, usually if we do have as a plugin it
might need an API for upper layers but we do have that already with
GattService1, GattCharacteristic and GattDescriptor, so I believe only
services that require a more tight integration into the system, e.g.
HoG, needs to be a plugin.

> Kindly correct me if my understanding is incorrect and suggest me on how to go about on implementing FindMe Profile(Whether to make a common ImmediateAlert file similar to DeviceInfo that can be used by required profiles)
>
> Regards,
> Nitish W
> --
> To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html



-- 
Luiz Augusto von Dentz
--
To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux