μ FR纳米在线日志和访问控制模式#
如何开启日志模式?#
- 启用日志模式(仅在启用主模式后可见)
如何启用访问控制模式?#
- 登录µFR在线日志和访问控制模块在线WEB配置界面。
- 开启日志模式。
- 启用访问控制模式(仅在之前启用日志模式时可用)。
- 从电源上关闭µFR Online
- 连接门禁板。
- 从电源打开µFR Online
***接入控制板之前必须启用访问控制模式。
访问控制模式附加选项#
- 继电器脉冲时间:继电器输出方波脉冲的毫秒数
- 继电器脉冲频率:方波输出频率,单位为Hz
- 继电器脉冲功率:方波输出功率(占空比)
- 继电器活动时间:方波脉冲后保持高输出的毫秒数
用例#
本节将描述两个主要用例场景。
无访问控制的日志模式#
启用日志模式,并确保禁用访问控制模式。
- 导航到日志模式部分并单击Edit按钮。
- 输入日志服务器的主机URL。
- 单击Save按钮。
- 单击保存并重新启动按钮。
- 现在可以使用日志模式了。
下表将描述基于黑名单或白名单允许或拒绝哪些卡。
场景 |
允许/拒绝 |
空白,白名单和黑名单 |
所有卡都可以使用 |
白名单空白,黑名单不空白 |
除黑名单外,所有卡都可以使用 |
白名单不空白,黑名单不空白 |
只允许使用白名单牌 |
白名单和黑名单都不是空的 |
只有没有被列入黑名单的白名单卡是允许的 |
启用独占白名单 |
只允许没有被列入黑名单的白名单卡(在pro模式下,除了被列入黑名单外,只允许被列入白名单的公司卡) |
如果允许使用卡片,读卡器会发出一声嘟嘟声,绿灯就会亮起。 如果卡被拒绝,读卡器将不会发出哔哔声,红灯将会亮起。 |
带访问控制的日志模式#
启用日志模式,并确保启用了访问控制模式。
- 导航到日志模式部分并单击Edit按钮。
- 输入日志服务器的主机URL。
- 单击Save按钮。
- 单击保存并重新启动按钮。
- 现在可以使用带访问控制的日志模式了。
场景 |
允许/拒绝 |
白名单和黑名单均为空白 |
拒绝所有卡(在pro模式下,允许所有公司卡) |
白名单空白,黑名单不空白 |
所有卡都被拒绝(在pro模式下,除黑名单外,所有公司卡都被允许) |
白名单不空白,黑名单不空白 |
只允许使用白名单卡(在pro模式下,除黑名单外,所有公司卡都可以使用) |
白名单和黑名单都不是空的 |
只允许未被列入黑名单的白名单卡(在pro模式下,除列入黑名单外,所有公司卡都被允许使用) |
启用独占白名单 |
只允许没有被列入黑名单的白名单卡(在pro模式下,除了被列入黑名单外,只允许被列入白名单的公司卡) |
如果允许使用卡片,读卡器会发出一声嘟嘟声,绿灯就会亮起。此外,门禁板将触发一个继电器,哔哔一声,并打开外部LED环。 如果卡被拒绝,读卡器将不会发出哔哔声,红灯将会亮起。此外,门禁板将打开外部LED环。 |
下表将描述基于黑名单或白名单允许或拒绝哪些卡。
门禁板怎么接线?#
还有一个预制电缆连接µFR在线和访问控制板。
注意:在连接控制板之前必须启用访问控制模式,否则将一直启用传呼机。
阅读器日志格式#
所有日志事件都以人类可读的JSON格式存储。
日志存储在µFR在线阅读器的例子:
{“日志”:( {" id ": 1、“uid”:“11223344”,“时间”:“2022-08-15 06:56:02”、“δ”:16日,“类型”:0,“读者”:1、“状态”:0}, {" id ": 2,“uid”:“AABBCCDD”,“时间”:“2022-08-15 06:56:04”、“δ”:18岁的“类型”:0,“读者”:1、“状态”:2} ]} |
|
JSON键/节点名称 |
描述 |
日志 |
包含日志事件的主父节点 |
id |
唯一的自动递增日志事件id |
UID |
卡唯一ID |
PID |
个人ID。仅支持Pro模式 |
时间 |
以UTC格式记录事件日期/时间 |
δ |
两次日志事件的时间差 |
类型 |
始终为0,保留以供将来使用 |
读者 |
1如果内部读卡器读过卡,2如果外部读卡器 |
状态 |
|
阅读器内白名单/黑名单格式#
白名单和黑名单以人可读的JSON格式存储。
白名单存储在µFR在线阅读器的例子:
{ “白名单”:“11223344”、“AABBCCDD”, “时间戳”:1660492955 } |
|
JSON键/节点名称 |
描述 |
白名单 |
包含以逗号分隔的白名单uid的节点 |
时间戳 |
当前存储的白名单时间戳 |
黑名单存储在µFR在线阅读器的例子:
{ “黑名单”:“11223344”、“AABBCCDD”, “时间戳”:1660492955 } |
|
JSON键/节点名称 |
描述 |
黑名单 |
包含以逗号分隔的黑名单uid的节点 |
时间戳 |
当前存储的黑名单时间戳 |
日志和访问控制模式流程图#
在日志和访问控制模式中有两个主要事件。
读卡事件#
读取器/服务器同步(每60秒一次)#
HTTP(S)服务器请求和响应协议#
实时事件协议#
实时事件以人类可读的JSON格式发送到服务器。从阅读器到服务器的实时事件请求示例:
读取器向服务器发送的HTTP请求 |
|
{ “rte”:[{ “id”:83年,pid”:10,uid”:“AABBCCDD”,“时间”:“2022-08-16 07:45:01”、“δ”:89349年,“类型”:0,“读者”:1,“状态”:1 }), “whitelist_timestamp”:1660492955,“blacklist_timestamp”:1660492955 } |
|
JSON键/节点名称 |
描述 |
RTE |
包含实时事件的父节点 |
有关RTE子节点的详细信息,请阅读阅读器内日志格式 |
|
whitelist_timestamp |
当前阅读器存储的白名单时间戳 |
blacklist_timestamp |
当前读卡器存储的黑名单时间戳 |
阅读器的序列号、IP地址和固件版本在HTTP POST报头中以“OSN”、“SN1”、“SN2”、“IP”、“FW”、“FW1”、“FW2”的形式发送。 |
服务器HTTP(S)对阅读器的响应 |
|
{ “last_id”:79年,“时间”:1660636893, " blacklist ":[" AABBCCDD "], " blacklist_timestamp ":1660636882, " whitelist ":[" 11223344 "], " whitelist_timestamp ":1660636882, " update_fw ":[" 2.8.2 ", " 5.0.71 ", " 5.0.70 "] } |
|
JSON键/节点名称 |
描述 |
last_id |
服务器上存储的最后一个日志事件id。读取器将发送ID大于last_id的所有日志事件 |
时间 |
可选的。如果发送了服务器时间戳,阅读器将同步内部RTC时间与服务器时间 |
黑名单 |
可选的。如果发送了服务器黑名单,阅读器将用新收到的黑名单替换当前存储的黑名单。 |
blacklist_timestamp |
当发送黑名单时,此参数必选。读取器将用新接收到的blacklist_timestamp替换当前存储的blacklist_timestamp。 |
白名单 |
可选的。如果发送了服务器白名单,阅读器将用新收到的白名单替换当前存储的白名单。 |
blacklist_timestamp |
发送白名单时必选。读取器将用新接收到的时间戳替换当前存储的whitelist_timestamp。 |
update_fw |
可选参数。它包含读取器固件中的更新请求。如果发送此参数,阅读器将触发固件更新过程。 第一个元素包含µFR在线固件,第二个包含UART1读取器,第三个包含UART2读取器。如果数组元素为空字符串,则不会触发更新。 |
日志事件协议#
日志事件以人类可读的JSON格式发送到服务器。
从阅读器到服务器的实时事件请求示例:
读取器向服务器发送的HTTP请求 |
|
{ “日志”:[{ “id”:83年,pid”:10,uid”:“AABBCCDD”,“时间”:“2022-08-16 07:45:01”、“δ”:89349年,“类型”:0,“读者”:1、“状态”:1, “id”:84年,pid”:10,uid”:“AABBCCDD”,“时间”:“2022-08-16 07:45:01”、“δ”:89349年,“类型”:0,“读者”:1,“状态”:1 }]} |
|
JSON键/节点名称 |
描述 |
日志 |
包含日志事件数组的父节点 |
有关日志的详细信息,请查看子节点读取阅读器内日志格式 |
当从服务器接收到“last_id”参数时,日志事件将被发送(实时事件响应或阅读器/服务器同步响应)。
阅读器/服务器同步协议#
日志事件以人类可读的JSON格式发送到服务器。
从阅读器到服务器的实时事件请求示例:
读取器向服务器发送的HTTP请求 |
|
{ “whitelist_timestamp”:1660636882,“blacklist_timestamp”:1660636882 } |
|
JSON键/节点名称 |
描述 |
blacklist_timestamp |
当前阅读器黑名单时间戳 |
whitelist_timestamp |
当前阅读器白名单时间戳 |
PHP和MySQL服务器脚本#
可以在服务器上托管预构建的PHP和MySQL脚本。它便于实现日志和访问模式的服务器端部分。它可以处理实时事件、日志事件和阅读器-服务器同步请求。
MySql数据库结构#
“事件”表 |
|
列名 |
列描述 |
id |
唯一的日志事件id |
UID |
卡UID |
PID |
个人id。可以用多个卡uid识别同一用户吗 |
时间 |
事件的时间戳 |
δ |
两个事件之间的时间差 |
类型 |
始终为0,保留以供将来使用 |
状态 |
事件状态 |
OSN |
µFR在线序列号 |
sn1 |
内部连接的µFR NFC读取器序列号 |
sn2 |
外部连接μ FR NFC读取器,序列号 |
读者, |
|
RTE |
|
“读者”表 |
|
列名 |
列描述 |
OSN |
µFR在线序列号 |
描述符 |
µFR在线阅读器描述符。默认为空 |
sn2 |
外部连接的µFR NFC读取器序列号 |
whitelist_on_server |
服务器上最后一次修改白名单的时间戳。由user_after_update触发器自动更新 |
whitelist_in_reader |
读写器中存储白名单的时间戳。 由发送的HTTP POST自动更新 读者 |
blacklist_on_server |
服务器上最后一次修改黑名单的时间戳。由user_after_update触发器自动更新 |
blacklist_in_reader |
黑名单存储在读卡器中的时间戳。 由发送的HTTP POST自动更新 读者 |
知识产权 |
黑名单存储在读卡器中的时间戳。 由发送的HTTP POST自动更新 读者 |
online_firmware |
当前µFR在线固件版本。 由发送的HTTP POST自动更新 读者 |
reader1_firmware |
当前UART1固件版本上的µFR。 由发送的HTTP POST自动更新 读者 |
reader2_firmware |
当前UART2固件版本上的µFR。 由发送的HTTP POST自动更新 读者 |
requested_online_firmware |
如果填充了该字段并且与online_firmware不同,则将向阅读器发送更新请求 |
requested_reader1_firmware |
如果填充了该字段并且与reader1_firmware不同,则将向阅读器发送更新请求 |
requested_reader2_firmware |
如果填充了该字段并且与reader2_firmware不同,则将向阅读器发送更新请求 |
新的阅读器会自动添加到每个阅读器事件中。例如,如果一个新的阅读器连接到网络,并且设置了日志模式主机URL,那么新的阅读器将在第一次发送事件时动态添加。**请勿手动添加读卡器 |
“用户”表 |
|
列名 |
列描述 |
UID |
卡唯一ID |
PID |
个人ID。可以用多个卡uid识别同一用户吗 |
描述 |
用户描述。可以用;设置姓和名。 |
图像 |
二进制格式的用户映像 |
* ON123456 |
µFR在线阅读器的示例,序列号为ON123456。该字段用于将该阅读器上的当前用户列入白名单或黑名单 |
* ON654321 |
µFR在线阅读器的示例,序列号为ON654321。该字段用于将该阅读器上的当前用户列入白名单或黑名单 |
新的阅读器会自动添加到每个阅读器事件中。例如,如果一个新的读取器连接到网络,并且设置了Log模式主机URL,那么当一个事件作为一个新列发送时,新的读取器将被动态添加。如果添加了新的读取器。 *读者的例子。**请勿手动添加读卡器。 |
“debug_log”表 |
|
列名 |
列描述 |
id |
唯一的调试id |
OSN |
µFR在线序列号 |
日志 |
从阅读器到服务器或从服务器到阅读器发送的原始POST数据 |
时间 |
当前服务器时间戳 |
方向 |
FROM_SERVER - HTTP服务器响应FROM_READER - HTTP阅读器请求 |
只有在PHP脚本中启用“Debug”标志时,才会填充调试日志表 |
PHP脚本流程图#