BLE-ANCS协议介绍

BLE-ANCS是Apple Notification Center Service的缩写,是iOS系统用于蓝牙低功耗设备接收通知的服务。设备连接iPhone后,需启用通知功能并订阅ANCS的Notification Source和Data Source,以接收和获取通知详细信息。ANCS包含3个关键特性:Notification Source用于推送通知,Control Point用于发送控制指令,Data Source返回详细信息。通过EventID、EventFlags、CategoryID等字段,设备可以解析和处理接收到的通知。
摘要由CSDN通过智能技术生成

1 ANCS综述

ANCS Apple Notification Center Service。是IOS系统中的一个通知服务。设备连接手机后,设备首先需要先使能IOS系统的通知功能,具体即设备上的GATT 客户端发现IOS上的ANCS,并且使能其 通知源Characteristics notify功能。 之后IOS系统就会通过ble 推送消息给设备了。

通常推送的消息仅仅是一个简短通知,比如通知有一个社交消息。如果需要获取详细消息,还需要 设备通过 控制点 Characteristics 主动发送控制指令给 ANCS服务,让其返回详细信息。返回的详细信息通过一个数据源Characteristics来返回。所以连接上服务后除了使能通知源Characteristicsnotify功能,还需要使能 数据源Characteristicsnotify功能,因为可能需要通过数据源来获取通知的详细信息。

如下图所示:NC(通知消费者)连接NP(通知提供者)上后发现服务,然后 订阅(使能通知功能) 通知源和数据源,之后如果NP有消息就会 通过 通知源 通知NC了。



综上,ANCS是一个服务,

其服务UUID是特定的为7905F431-B5CE-4E99-A40F-4B1E122D00D0

该服务会主动推送一些 通知消息给 设备,所以有一个具有notify功能的Characteristics。

该特性称为Notification Source.

(注意这里 notify指的是Characteristics的发送消息方式, 而notification source仅仅是一个称谓,就是字面意思,表示这个Characteristics的目的是为了推送一些通知,所以称为通知源

通过notification source发送过来的通知仅仅是简短的消息。如果希望获取更消息的消息则需要 设备主动发送控制指令给手机上的ANCS,所以该服务还有一个具有写功能的Characteristics,这样就可以通过这个Characteristics来发送控制指令给ANCS服务。这个特性称为Control Point

发送控制消息后 ANCS服务会返回更详细的消息。这个消息不会再通过notification source这个Characteristics,而是用过另一个具有 notify功能的Characteristics来返回,该特性称为Data Source

综上ANCS服务至少有3个特性。其UUID如下:

·        Notification Source: UUID 9FBF120D-6301-42D9-8C58-25E699A21DBD (notifiable)

·        Control Point: UUID 69D1D8F3-45E1-49A8-9821-9BBDFDAAD9D9 (writeable with response)

·        Data Source: UUID 22EAC6E9-24D6-4BB5-BE44-B36ACE7C7BFB (notifiable)

 

 

即 :notify source 这个Characteristics 是NP用来发送通知给NC的,

    Control point这个Characteristics 是NC用来发送控制命令给NP的,如获取通知详细信息。

    Data source这个Characteristics 是NP收到NC获取详细信息命令后返回通知的详细信息

   

下面分别介绍三个Characteristics 中(也可以认为是三个数据通道)传输的数据的 内容和格式


2 notify source :通知源

NP发送通知给NC的通道。其上发送的数据格式如下:

2.1 EventID: 

表示这个通知是  added, modified, removed 三种中的哪种。

如果手机收到一个qq消息,则手机(NP)发给一个 a

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值