【问题标题】:llcp-dep p2p discovery and connectionsllcp-dep p2p 发现和连接
【发布时间】:2014-01-16 22:55:43
【问题描述】:

我正在做一个将 pn532 与 nfc 手机连接的学校项目。我正在使用 seeedstudio nfc 控制器和他们拥有的库,并添加了一些代码。我的问题与协议的连接和发现阶段有关。

问题1:当发起者向DSAP = 1“发现服务”发送CONNECT命令时如何响应。下面我解释一下协议的结果。

用于测试的手机是(gs4,注 2):

情况1:

  • 手机发给我05 20 06 这是一个CONNECT命令到接收设备中的SAP =1,然后我用CC命令响应81 84 2 2 0 78.
  • 然后他们在前台向我发送了一个带有应用程序 URI 的 IPDU,我继续按照 nfc 论坛中的 llcp-snep 协议发送命令,一切都结束了。 *问题是我不希望前台应用程序的 URI,而是需要该应用程序的 NDEF 消息 数据。*

情况2:

  • 手机发送到 pn532 11 20 ,这是对接收设备中 SAP =4 的 CONNECT 命令,然后我用命令 CC 81 84 2 2 0 78。
  • 在此之后,手机按原样向我发送 NDEF 数据。

    现在我的问题是:

为什么电话有时会向我发送 CONNECT 命令到 SAP =1,有时会向 SAP=4 发送?

05 20 06 我必须响应什么命令?

【问题讨论】:

  • 关于情况 1:难道您没有向我们展示作为连接 PDU 的一部分接收到的所有字节吗? 06不是有效的参数 TLV。难道你真的收到了05 20 06 0F 75 72 6E 3A 6E 66 63 3A 73 6E 3A 73 6E 65 70
  • 这两种情况是分别发生在一个特定设备上还是随机发生在两个设备上?
  • 另外,在不起作用的情况下如何设置应该交换的 NDEF 消息?
  • 我希望收到与 SNEP 服务的连接,但我收到的是:20 5 20 6 1C 75 72 6E 3A 6E 66 63 3A 78 73 6E 3A 73 61 6D 73 75 6E 67 2E 63 6F 6D 3A 62 61 6E 64 正如我在下面写的,这是要求连接到 uri urn:nfc:xsn:samsung.com:band。我真的不知道它是什么,但是我在浏览器上输入了 uri,它把我带到了 samsung.com/band。这是用于国家/地区选择的三星网址。我现在想知道如何拒绝这项服务并告诉手机我想要的是通过默认 SNEP 服务器进行通信。继续在 GS4 上,在注释 2 上随机,从不在 GS3 上。
  • 好的,所以您肯定不想连接该服务。有关如何拒绝该请求,请参阅 NFC 论坛的 LLCP 规范。之后设备可能会连接SNEP服务。

标签: nfc-p2p


【解决方案1】:

当一个 CONNECT 命令被发送到 SAP 1 时,这意味着发送者想要在一个步骤中执行服务发现和连接设置。在这种情况下,CONNECT 命令中的必需信息是服务名称。如果该服务存在并且可连接,则响应将是一个 CC(连接完成)PDU 到从其接收到 CONNECT 的 SAP 和来自 命名服务绑定到的 SAP。如果具有所请求名称的服务不存在,则答案必须是具有适当原因代码的断开连接模式 (DM) PDU。

很遗憾,您没有提供有关在 SAP 1 上收到的 CONNECT 命令的完整信息,至少缺少服务名称长度字节和名称本身。正如所写,CONNECT PDU 只是无效的,不应被确认。

【讨论】:

  • 感谢您的回答,Galaxy S4 发送给我会发生什么5 20 6 1C 75 72 6E 3A 6E 66 63 3A 78 73 6E 3A 73 61 6D 73 75 6E 67 2E 63 6F 6D 3A 62 61 6E 64 这是对 SAP 01 的连接请求,请求 uri 服务:urn:nfc:xsn:samsung.com/band,其实我不知道这是什么服务做。我正在回复 SNEP 的默认端口,即 SSAP 4。但是在斯蒂芬响应之后,我意识到这个 CC 命令是错误的,因为 SAP = 4,不提供 GS4 要求的服务。我可能应该发送一个 DM 命令,原因是没有可用的服务,然后查看下一个 comming 命令。
【解决方案2】:

正如预期的那样,整个问题都解决了。在请求连接不需要的服务后,我用原因 02 命令发送了 DM,一切正常。我花了一些时间让图书馆与所有手机一起工作,但最后我修好了。感谢大家的反馈

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-05
    相关资源
    最近更新 更多