AllJoyn Thin 向所有加入的会话发送信号
AllJoyn Thin sending signals to all joined sessions
我正在尝试向我的 alljoyn 瘦应用程序连接到的所有会话发送值更改信号,使用:
AJ_MarshalSignal(&Bus, &sig_out, SIGNAL_ STATECHANGED, NULL, 0, AJ_FLAG_GLOBAL_BROADCAST, 0);
但是客户端(AJSCL 上的 运行)无法接收信号。
但是当我使用 :
将它发送到特定会话时
AJ_MarshalSignal(&Bus, &sig_out, SIGNAL_ STATECHANGED, NULL, session_ID, AJ_FLAG_GLOBAL_BROADCAST, 0);
指定session_ID
的客户端可以接收。
瘦客户端版本中是否有类似于
的标志
BusAttachment.SESSION_ID_ALL_HOSTED
我不想将其作为无会话信号发送。是否有任何其他方式可以让所有加入的会话都收到信号?
SESSION_ID_ALL_HOSTED 功能未在瘦客户端中实现。您应该自己实现session投射到每个连接的客户端的逻辑。
如果您使用的是 15.09 及更高版本,瘦客户端代码库会在一定程度上帮助您:AJ_BusAttachment.sessions 是一个 AJ_Session 结构的链表,其中每个 AJ_Session 描述一个正在进行 session。如果您遍历此列表并为每个 session 发出信号,其中 AJ_Session->host != 0,您具有与 SESSION_ID_ALL_HOSTED.
等效的行为
- 来自 Allseen 联盟核心邮件列表
我正在尝试向我的 alljoyn 瘦应用程序连接到的所有会话发送值更改信号,使用:
AJ_MarshalSignal(&Bus, &sig_out, SIGNAL_ STATECHANGED, NULL, 0, AJ_FLAG_GLOBAL_BROADCAST, 0);
但是客户端(AJSCL 上的 运行)无法接收信号。
但是当我使用 :
将它发送到特定会话时AJ_MarshalSignal(&Bus, &sig_out, SIGNAL_ STATECHANGED, NULL, session_ID, AJ_FLAG_GLOBAL_BROADCAST, 0);
指定session_ID
的客户端可以接收。
瘦客户端版本中是否有类似于
的标志BusAttachment.SESSION_ID_ALL_HOSTED
我不想将其作为无会话信号发送。是否有任何其他方式可以让所有加入的会话都收到信号?
SESSION_ID_ALL_HOSTED 功能未在瘦客户端中实现。您应该自己实现session投射到每个连接的客户端的逻辑。
如果您使用的是 15.09 及更高版本,瘦客户端代码库会在一定程度上帮助您:AJ_BusAttachment.sessions 是一个 AJ_Session 结构的链表,其中每个 AJ_Session 描述一个正在进行 session。如果您遍历此列表并为每个 session 发出信号,其中 AJ_Session->host != 0,您具有与 SESSION_ID_ALL_HOSTED.
等效的行为- 来自 Allseen 联盟核心邮件列表