@matter/protocol 0.16.0-alpha.0-20250809-ee8375bcb → 0.16.0-alpha.0-20250812-285b75d83

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (408) hide show
  1. package/dist/cjs/advertisement/Advertisement.d.ts +119 -0
  2. package/dist/cjs/advertisement/Advertisement.d.ts.map +1 -0
  3. package/dist/cjs/advertisement/Advertisement.js +267 -0
  4. package/dist/cjs/advertisement/Advertisement.js.map +6 -0
  5. package/dist/cjs/advertisement/Advertiser.d.ts +50 -0
  6. package/dist/cjs/advertisement/Advertiser.d.ts.map +1 -0
  7. package/dist/cjs/advertisement/Advertiser.js +81 -0
  8. package/dist/cjs/advertisement/Advertiser.js.map +6 -0
  9. package/dist/cjs/advertisement/CommissioningMode.d.ts +11 -0
  10. package/dist/cjs/advertisement/CommissioningMode.d.ts.map +1 -0
  11. package/dist/cjs/advertisement/CommissioningMode.js +35 -0
  12. package/dist/cjs/advertisement/CommissioningMode.js.map +6 -0
  13. package/dist/cjs/{common/InstanceBroadcaster.d.ts → advertisement/PairingHintBitmap.d.ts} +3 -69
  14. package/dist/cjs/advertisement/PairingHintBitmap.d.ts.map +1 -0
  15. package/dist/cjs/{common/InstanceBroadcaster.js → advertisement/PairingHintBitmap.js} +5 -12
  16. package/dist/cjs/advertisement/PairingHintBitmap.js.map +6 -0
  17. package/dist/cjs/advertisement/ServiceDescription.d.ts +70 -0
  18. package/dist/cjs/advertisement/ServiceDescription.d.ts.map +1 -0
  19. package/dist/cjs/advertisement/ServiceDescription.js +61 -0
  20. package/dist/cjs/advertisement/ServiceDescription.js.map +6 -0
  21. package/dist/cjs/advertisement/ble/BleAdvertisement.d.ts +16 -0
  22. package/dist/cjs/advertisement/ble/BleAdvertisement.d.ts.map +1 -0
  23. package/dist/cjs/advertisement/ble/BleAdvertisement.js +85 -0
  24. package/dist/cjs/advertisement/ble/BleAdvertisement.js.map +6 -0
  25. package/dist/cjs/advertisement/ble/BleAdvertiser.d.ts +66 -0
  26. package/dist/cjs/advertisement/ble/BleAdvertiser.d.ts.map +1 -0
  27. package/dist/cjs/advertisement/ble/BleAdvertiser.js +83 -0
  28. package/dist/cjs/advertisement/ble/BleAdvertiser.js.map +6 -0
  29. package/dist/cjs/advertisement/ble/index.d.ts +8 -0
  30. package/dist/cjs/advertisement/ble/index.d.ts.map +1 -0
  31. package/dist/cjs/advertisement/ble/index.js +25 -0
  32. package/dist/cjs/advertisement/ble/index.js.map +6 -0
  33. package/dist/cjs/advertisement/index.d.ts +13 -0
  34. package/dist/cjs/advertisement/index.d.ts.map +1 -0
  35. package/dist/cjs/advertisement/index.js +30 -0
  36. package/dist/cjs/advertisement/index.js.map +6 -0
  37. package/dist/cjs/advertisement/mdns/CommissionableMdnsAdvertisement.d.ts +21 -0
  38. package/dist/cjs/advertisement/mdns/CommissionableMdnsAdvertisement.d.ts.map +1 -0
  39. package/dist/cjs/advertisement/mdns/CommissionableMdnsAdvertisement.js +104 -0
  40. package/dist/cjs/advertisement/mdns/CommissionableMdnsAdvertisement.js.map +6 -0
  41. package/dist/cjs/advertisement/mdns/CommissionerMdnsAdvertisement.d.ts +20 -0
  42. package/dist/cjs/advertisement/mdns/CommissionerMdnsAdvertisement.d.ts.map +1 -0
  43. package/dist/cjs/advertisement/mdns/CommissionerMdnsAdvertisement.js +70 -0
  44. package/dist/cjs/advertisement/mdns/CommissionerMdnsAdvertisement.js.map +6 -0
  45. package/dist/cjs/advertisement/mdns/MdnsAdvertisement.d.ts +40 -0
  46. package/dist/cjs/advertisement/mdns/MdnsAdvertisement.d.ts.map +1 -0
  47. package/dist/cjs/advertisement/mdns/MdnsAdvertisement.js +145 -0
  48. package/dist/cjs/advertisement/mdns/MdnsAdvertisement.js.map +6 -0
  49. package/dist/cjs/advertisement/mdns/MdnsAdvertiser.d.ts +99 -0
  50. package/dist/cjs/advertisement/mdns/MdnsAdvertiser.d.ts.map +1 -0
  51. package/dist/cjs/advertisement/mdns/MdnsAdvertiser.js +166 -0
  52. package/dist/cjs/advertisement/mdns/MdnsAdvertiser.js.map +6 -0
  53. package/dist/cjs/advertisement/mdns/OperationalMdnsAdvertisement.d.ts +18 -0
  54. package/dist/cjs/advertisement/mdns/OperationalMdnsAdvertisement.d.ts.map +1 -0
  55. package/dist/cjs/advertisement/mdns/OperationalMdnsAdvertisement.js +55 -0
  56. package/dist/cjs/advertisement/mdns/OperationalMdnsAdvertisement.js.map +6 -0
  57. package/dist/cjs/advertisement/mdns/index.d.ts +11 -0
  58. package/dist/cjs/advertisement/mdns/index.d.ts.map +1 -0
  59. package/dist/cjs/advertisement/mdns/index.js +28 -0
  60. package/dist/cjs/advertisement/mdns/index.js.map +6 -0
  61. package/dist/cjs/ble/Ble.d.ts +7 -5
  62. package/dist/cjs/ble/Ble.d.ts.map +1 -1
  63. package/dist/cjs/ble/Ble.js.map +1 -1
  64. package/dist/cjs/ble/BleConsts.d.ts +2 -1
  65. package/dist/cjs/ble/BleConsts.d.ts.map +1 -1
  66. package/dist/cjs/ble/BleConsts.js +3 -1
  67. package/dist/cjs/ble/BleConsts.js.map +1 -1
  68. package/dist/cjs/codec/BtpCodec.d.ts +1 -1
  69. package/dist/cjs/codec/BtpCodec.d.ts.map +1 -1
  70. package/dist/cjs/codec/BtpCodec.js +4 -4
  71. package/dist/cjs/codec/BtpCodec.js.map +1 -1
  72. package/dist/cjs/common/Scanner.d.ts +1 -25
  73. package/dist/cjs/common/Scanner.d.ts.map +1 -1
  74. package/dist/cjs/common/Scanner.js +1 -18
  75. package/dist/cjs/common/Scanner.js.map +1 -1
  76. package/dist/cjs/common/SupportedTransportsBitmap.d.ts +33 -0
  77. package/dist/cjs/common/SupportedTransportsBitmap.d.ts.map +1 -0
  78. package/dist/cjs/common/SupportedTransportsBitmap.js +45 -0
  79. package/dist/cjs/common/SupportedTransportsBitmap.js.map +6 -0
  80. package/dist/cjs/common/index.d.ts +1 -1
  81. package/dist/cjs/common/index.d.ts.map +1 -1
  82. package/dist/cjs/common/index.js +1 -1
  83. package/dist/cjs/common/index.js.map +1 -1
  84. package/dist/cjs/fabric/Fabric.d.ts +1 -0
  85. package/dist/cjs/fabric/Fabric.d.ts.map +1 -1
  86. package/dist/cjs/fabric/Fabric.js +7 -0
  87. package/dist/cjs/fabric/Fabric.js.map +1 -1
  88. package/dist/cjs/index.d.ts +1 -0
  89. package/dist/cjs/index.d.ts.map +1 -1
  90. package/dist/cjs/index.js +1 -0
  91. package/dist/cjs/index.js.map +1 -1
  92. package/dist/{esm/mdns/MdnsScanner.d.ts → cjs/mdns/MdnsClient.d.ts} +11 -14
  93. package/dist/cjs/mdns/MdnsClient.d.ts.map +1 -0
  94. package/dist/cjs/mdns/{MdnsScanner.js → MdnsClient.js} +35 -90
  95. package/dist/cjs/mdns/MdnsClient.js.map +6 -0
  96. package/dist/cjs/mdns/MdnsConsts.d.ts +11 -2
  97. package/dist/cjs/mdns/MdnsConsts.d.ts.map +1 -1
  98. package/dist/cjs/mdns/MdnsConsts.js +31 -4
  99. package/dist/cjs/mdns/MdnsConsts.js.map +1 -1
  100. package/dist/cjs/mdns/MdnsServer.d.ts +13 -22
  101. package/dist/cjs/mdns/MdnsServer.d.ts.map +1 -1
  102. package/dist/cjs/mdns/MdnsServer.js +53 -150
  103. package/dist/cjs/mdns/MdnsServer.js.map +2 -2
  104. package/dist/cjs/mdns/MdnsService.d.ts +4 -5
  105. package/dist/cjs/mdns/MdnsService.d.ts.map +1 -1
  106. package/dist/cjs/mdns/MdnsService.js +22 -23
  107. package/dist/cjs/mdns/MdnsService.js.map +1 -1
  108. package/dist/cjs/mdns/MdnsSocket.d.ts +32 -0
  109. package/dist/cjs/mdns/MdnsSocket.d.ts.map +1 -0
  110. package/dist/cjs/mdns/MdnsSocket.js +144 -0
  111. package/dist/cjs/mdns/MdnsSocket.js.map +6 -0
  112. package/dist/cjs/mdns/index.d.ts +2 -3
  113. package/dist/cjs/mdns/index.d.ts.map +1 -1
  114. package/dist/cjs/mdns/index.js +2 -3
  115. package/dist/cjs/mdns/index.js.map +1 -1
  116. package/dist/cjs/peer/ControllerCommissioner.js +2 -2
  117. package/dist/cjs/peer/ControllerCommissioner.js.map +1 -1
  118. package/dist/cjs/peer/ControllerDiscovery.d.ts +3 -3
  119. package/dist/cjs/peer/ControllerDiscovery.d.ts.map +1 -1
  120. package/dist/cjs/peer/ControllerDiscovery.js.map +1 -1
  121. package/dist/cjs/peer/PeerSet.d.ts.map +1 -1
  122. package/dist/cjs/peer/PeerSet.js +10 -5
  123. package/dist/cjs/peer/PeerSet.js.map +1 -1
  124. package/dist/cjs/protocol/DeviceAdvertiser.d.ts +23 -18
  125. package/dist/cjs/protocol/DeviceAdvertiser.d.ts.map +1 -1
  126. package/dist/cjs/protocol/DeviceAdvertiser.js +130 -129
  127. package/dist/cjs/protocol/DeviceAdvertiser.js.map +1 -1
  128. package/dist/cjs/protocol/DeviceCommissioner.d.ts +0 -1
  129. package/dist/cjs/protocol/DeviceCommissioner.d.ts.map +1 -1
  130. package/dist/cjs/protocol/DeviceCommissioner.js +44 -44
  131. package/dist/cjs/protocol/DeviceCommissioner.js.map +1 -1
  132. package/dist/cjs/protocol/ExchangeManager.js +1 -1
  133. package/dist/cjs/protocol/ExchangeManager.js.map +1 -1
  134. package/dist/cjs/protocol/MessageExchange.d.ts +1 -1
  135. package/dist/cjs/protocol/MessageExchange.d.ts.map +1 -1
  136. package/dist/cjs/protocol/MessageExchange.js +6 -8
  137. package/dist/cjs/protocol/MessageExchange.js.map +1 -1
  138. package/dist/cjs/protocol/ProtocolHandler.d.ts +4 -0
  139. package/dist/cjs/protocol/ProtocolHandler.d.ts.map +1 -1
  140. package/dist/cjs/protocol/ProtocolStatusMessage.d.ts +8 -4
  141. package/dist/cjs/protocol/ProtocolStatusMessage.d.ts.map +1 -1
  142. package/dist/cjs/protocol/ProtocolStatusMessage.js +23 -8
  143. package/dist/cjs/protocol/ProtocolStatusMessage.js.map +1 -1
  144. package/dist/cjs/securechannel/SecureChannelMessenger.js +2 -2
  145. package/dist/cjs/securechannel/SecureChannelMessenger.js.map +1 -1
  146. package/dist/cjs/securechannel/SecureChannelProtocol.js +1 -1
  147. package/dist/cjs/securechannel/SecureChannelProtocol.js.map +1 -1
  148. package/dist/cjs/securechannel/SecureChannelStatusMessageSchema.d.ts +3 -3
  149. package/dist/cjs/securechannel/SecureChannelStatusMessageSchema.d.ts.map +1 -1
  150. package/dist/cjs/securechannel/SecureChannelStatusMessageSchema.js +3 -3
  151. package/dist/cjs/securechannel/SecureChannelStatusMessageSchema.js.map +1 -1
  152. package/dist/cjs/session/NodeSession.d.ts +1 -0
  153. package/dist/cjs/session/NodeSession.d.ts.map +1 -1
  154. package/dist/cjs/session/NodeSession.js +3 -0
  155. package/dist/cjs/session/NodeSession.js.map +1 -1
  156. package/dist/cjs/session/Session.d.ts +3 -33
  157. package/dist/cjs/session/Session.d.ts.map +1 -1
  158. package/dist/cjs/session/Session.js +4 -9
  159. package/dist/cjs/session/Session.js.map +1 -1
  160. package/dist/cjs/session/SessionIntervals.d.ts +36 -0
  161. package/dist/cjs/session/SessionIntervals.d.ts.map +1 -0
  162. package/dist/cjs/session/SessionIntervals.js +51 -0
  163. package/dist/cjs/session/SessionIntervals.js.map +6 -0
  164. package/dist/cjs/session/SessionManager.d.ts +1 -1
  165. package/dist/cjs/session/SessionManager.d.ts.map +1 -1
  166. package/dist/cjs/session/SessionManager.js +11 -12
  167. package/dist/cjs/session/SessionManager.js.map +1 -1
  168. package/dist/cjs/session/pase/PaseMessages.js +2 -2
  169. package/dist/cjs/session/pase/PaseMessages.js.map +1 -1
  170. package/dist/esm/advertisement/Advertisement.d.ts +119 -0
  171. package/dist/esm/advertisement/Advertisement.d.ts.map +1 -0
  172. package/dist/esm/advertisement/Advertisement.js +247 -0
  173. package/dist/esm/advertisement/Advertisement.js.map +6 -0
  174. package/dist/esm/advertisement/Advertiser.d.ts +50 -0
  175. package/dist/esm/advertisement/Advertiser.d.ts.map +1 -0
  176. package/dist/esm/advertisement/Advertiser.js +61 -0
  177. package/dist/esm/advertisement/Advertiser.js.map +6 -0
  178. package/dist/esm/advertisement/CommissioningMode.d.ts +11 -0
  179. package/dist/esm/advertisement/CommissioningMode.d.ts.map +1 -0
  180. package/dist/esm/advertisement/CommissioningMode.js +15 -0
  181. package/dist/esm/advertisement/CommissioningMode.js.map +6 -0
  182. package/dist/esm/{common/InstanceBroadcaster.d.ts → advertisement/PairingHintBitmap.d.ts} +3 -69
  183. package/dist/esm/advertisement/PairingHintBitmap.d.ts.map +1 -0
  184. package/dist/esm/{common/InstanceBroadcaster.js → advertisement/PairingHintBitmap.js} +2 -9
  185. package/dist/esm/{common/InstanceBroadcaster.js.map → advertisement/PairingHintBitmap.js.map} +3 -3
  186. package/dist/esm/advertisement/ServiceDescription.d.ts +70 -0
  187. package/dist/esm/advertisement/ServiceDescription.d.ts.map +1 -0
  188. package/dist/esm/advertisement/ServiceDescription.js +41 -0
  189. package/dist/esm/advertisement/ServiceDescription.js.map +6 -0
  190. package/dist/esm/advertisement/ble/BleAdvertisement.d.ts +16 -0
  191. package/dist/esm/advertisement/ble/BleAdvertisement.d.ts.map +1 -0
  192. package/dist/esm/advertisement/ble/BleAdvertisement.js +65 -0
  193. package/dist/esm/advertisement/ble/BleAdvertisement.js.map +6 -0
  194. package/dist/esm/advertisement/ble/BleAdvertiser.d.ts +66 -0
  195. package/dist/esm/advertisement/ble/BleAdvertiser.d.ts.map +1 -0
  196. package/dist/esm/advertisement/ble/BleAdvertiser.js +63 -0
  197. package/dist/esm/advertisement/ble/BleAdvertiser.js.map +6 -0
  198. package/dist/esm/advertisement/ble/index.d.ts +8 -0
  199. package/dist/esm/advertisement/ble/index.d.ts.map +1 -0
  200. package/dist/esm/advertisement/ble/index.js +8 -0
  201. package/dist/esm/advertisement/ble/index.js.map +6 -0
  202. package/dist/esm/advertisement/index.d.ts +13 -0
  203. package/dist/esm/advertisement/index.d.ts.map +1 -0
  204. package/dist/esm/advertisement/index.js +13 -0
  205. package/dist/esm/advertisement/index.js.map +6 -0
  206. package/dist/esm/advertisement/mdns/CommissionableMdnsAdvertisement.d.ts +21 -0
  207. package/dist/esm/advertisement/mdns/CommissionableMdnsAdvertisement.d.ts.map +1 -0
  208. package/dist/esm/advertisement/mdns/CommissionableMdnsAdvertisement.js +95 -0
  209. package/dist/esm/advertisement/mdns/CommissionableMdnsAdvertisement.js.map +6 -0
  210. package/dist/esm/advertisement/mdns/CommissionerMdnsAdvertisement.d.ts +20 -0
  211. package/dist/esm/advertisement/mdns/CommissionerMdnsAdvertisement.d.ts.map +1 -0
  212. package/dist/esm/advertisement/mdns/CommissionerMdnsAdvertisement.js +54 -0
  213. package/dist/esm/advertisement/mdns/CommissionerMdnsAdvertisement.js.map +6 -0
  214. package/dist/esm/advertisement/mdns/MdnsAdvertisement.d.ts +40 -0
  215. package/dist/esm/advertisement/mdns/MdnsAdvertisement.d.ts.map +1 -0
  216. package/dist/esm/advertisement/mdns/MdnsAdvertisement.js +125 -0
  217. package/dist/esm/advertisement/mdns/MdnsAdvertisement.js.map +6 -0
  218. package/dist/esm/advertisement/mdns/MdnsAdvertiser.d.ts +99 -0
  219. package/dist/esm/advertisement/mdns/MdnsAdvertiser.d.ts.map +1 -0
  220. package/dist/esm/advertisement/mdns/MdnsAdvertiser.js +146 -0
  221. package/dist/esm/advertisement/mdns/MdnsAdvertiser.js.map +6 -0
  222. package/dist/esm/advertisement/mdns/OperationalMdnsAdvertisement.d.ts +18 -0
  223. package/dist/esm/advertisement/mdns/OperationalMdnsAdvertisement.d.ts.map +1 -0
  224. package/dist/esm/advertisement/mdns/OperationalMdnsAdvertisement.js +40 -0
  225. package/dist/esm/advertisement/mdns/OperationalMdnsAdvertisement.js.map +6 -0
  226. package/dist/esm/advertisement/mdns/index.d.ts +11 -0
  227. package/dist/esm/advertisement/mdns/index.d.ts.map +1 -0
  228. package/dist/esm/advertisement/mdns/index.js +11 -0
  229. package/dist/esm/advertisement/mdns/index.js.map +6 -0
  230. package/dist/esm/ble/Ble.d.ts +7 -5
  231. package/dist/esm/ble/Ble.d.ts.map +1 -1
  232. package/dist/esm/ble/Ble.js.map +1 -1
  233. package/dist/esm/ble/BleConsts.d.ts +2 -1
  234. package/dist/esm/ble/BleConsts.d.ts.map +1 -1
  235. package/dist/esm/ble/BleConsts.js +3 -1
  236. package/dist/esm/ble/BleConsts.js.map +1 -1
  237. package/dist/esm/codec/BtpCodec.d.ts +1 -1
  238. package/dist/esm/codec/BtpCodec.d.ts.map +1 -1
  239. package/dist/esm/codec/BtpCodec.js +4 -4
  240. package/dist/esm/codec/BtpCodec.js.map +1 -1
  241. package/dist/esm/common/Scanner.d.ts +1 -25
  242. package/dist/esm/common/Scanner.d.ts.map +1 -1
  243. package/dist/esm/common/Scanner.js +1 -18
  244. package/dist/esm/common/Scanner.js.map +1 -1
  245. package/dist/esm/common/SupportedTransportsBitmap.d.ts +33 -0
  246. package/dist/esm/common/SupportedTransportsBitmap.d.ts.map +1 -0
  247. package/dist/esm/common/SupportedTransportsBitmap.js +25 -0
  248. package/dist/esm/common/SupportedTransportsBitmap.js.map +6 -0
  249. package/dist/esm/common/index.d.ts +1 -1
  250. package/dist/esm/common/index.d.ts.map +1 -1
  251. package/dist/esm/common/index.js +1 -1
  252. package/dist/esm/fabric/Fabric.d.ts +1 -0
  253. package/dist/esm/fabric/Fabric.d.ts.map +1 -1
  254. package/dist/esm/fabric/Fabric.js +7 -0
  255. package/dist/esm/fabric/Fabric.js.map +1 -1
  256. package/dist/esm/index.d.ts +1 -0
  257. package/dist/esm/index.d.ts.map +1 -1
  258. package/dist/esm/index.js +1 -0
  259. package/dist/esm/index.js.map +1 -1
  260. package/dist/{cjs/mdns/MdnsScanner.d.ts → esm/mdns/MdnsClient.d.ts} +11 -14
  261. package/dist/esm/mdns/MdnsClient.d.ts.map +1 -0
  262. package/dist/esm/mdns/{MdnsScanner.js → MdnsClient.js} +34 -92
  263. package/dist/esm/mdns/MdnsClient.js.map +6 -0
  264. package/dist/esm/mdns/MdnsConsts.d.ts +11 -2
  265. package/dist/esm/mdns/MdnsConsts.d.ts.map +1 -1
  266. package/dist/esm/mdns/MdnsConsts.js +31 -4
  267. package/dist/esm/mdns/MdnsConsts.js.map +1 -1
  268. package/dist/esm/mdns/MdnsServer.d.ts +13 -22
  269. package/dist/esm/mdns/MdnsServer.d.ts.map +1 -1
  270. package/dist/esm/mdns/MdnsServer.js +55 -155
  271. package/dist/esm/mdns/MdnsServer.js.map +2 -2
  272. package/dist/esm/mdns/MdnsService.d.ts +4 -5
  273. package/dist/esm/mdns/MdnsService.d.ts.map +1 -1
  274. package/dist/esm/mdns/MdnsService.js +22 -24
  275. package/dist/esm/mdns/MdnsService.js.map +1 -1
  276. package/dist/esm/mdns/MdnsSocket.d.ts +32 -0
  277. package/dist/esm/mdns/MdnsSocket.d.ts.map +1 -0
  278. package/dist/esm/mdns/MdnsSocket.js +133 -0
  279. package/dist/esm/mdns/MdnsSocket.js.map +6 -0
  280. package/dist/esm/mdns/index.d.ts +2 -3
  281. package/dist/esm/mdns/index.d.ts.map +1 -1
  282. package/dist/esm/mdns/index.js +2 -3
  283. package/dist/esm/mdns/index.js.map +1 -1
  284. package/dist/esm/peer/ControllerCommissioner.js +2 -2
  285. package/dist/esm/peer/ControllerCommissioner.js.map +1 -1
  286. package/dist/esm/peer/ControllerDiscovery.d.ts +3 -3
  287. package/dist/esm/peer/ControllerDiscovery.d.ts.map +1 -1
  288. package/dist/esm/peer/ControllerDiscovery.js.map +1 -1
  289. package/dist/esm/peer/PeerSet.d.ts.map +1 -1
  290. package/dist/esm/peer/PeerSet.js +10 -5
  291. package/dist/esm/peer/PeerSet.js.map +1 -1
  292. package/dist/esm/protocol/DeviceAdvertiser.d.ts +23 -18
  293. package/dist/esm/protocol/DeviceAdvertiser.d.ts.map +1 -1
  294. package/dist/esm/protocol/DeviceAdvertiser.js +131 -139
  295. package/dist/esm/protocol/DeviceAdvertiser.js.map +1 -1
  296. package/dist/esm/protocol/DeviceCommissioner.d.ts +0 -1
  297. package/dist/esm/protocol/DeviceCommissioner.d.ts.map +1 -1
  298. package/dist/esm/protocol/DeviceCommissioner.js +47 -47
  299. package/dist/esm/protocol/DeviceCommissioner.js.map +1 -1
  300. package/dist/esm/protocol/ExchangeManager.js +1 -1
  301. package/dist/esm/protocol/ExchangeManager.js.map +1 -1
  302. package/dist/esm/protocol/MessageExchange.d.ts +1 -1
  303. package/dist/esm/protocol/MessageExchange.d.ts.map +1 -1
  304. package/dist/esm/protocol/MessageExchange.js +6 -12
  305. package/dist/esm/protocol/MessageExchange.js.map +1 -1
  306. package/dist/esm/protocol/ProtocolHandler.d.ts +4 -0
  307. package/dist/esm/protocol/ProtocolHandler.d.ts.map +1 -1
  308. package/dist/esm/protocol/ProtocolStatusMessage.d.ts +8 -4
  309. package/dist/esm/protocol/ProtocolStatusMessage.d.ts.map +1 -1
  310. package/dist/esm/protocol/ProtocolStatusMessage.js +24 -9
  311. package/dist/esm/protocol/ProtocolStatusMessage.js.map +1 -1
  312. package/dist/esm/securechannel/SecureChannelMessenger.js +3 -3
  313. package/dist/esm/securechannel/SecureChannelMessenger.js.map +1 -1
  314. package/dist/esm/securechannel/SecureChannelProtocol.js +2 -2
  315. package/dist/esm/securechannel/SecureChannelProtocol.js.map +1 -1
  316. package/dist/esm/securechannel/SecureChannelStatusMessageSchema.d.ts +3 -3
  317. package/dist/esm/securechannel/SecureChannelStatusMessageSchema.d.ts.map +1 -1
  318. package/dist/esm/securechannel/SecureChannelStatusMessageSchema.js +3 -3
  319. package/dist/esm/securechannel/SecureChannelStatusMessageSchema.js.map +1 -1
  320. package/dist/esm/session/NodeSession.d.ts +1 -0
  321. package/dist/esm/session/NodeSession.d.ts.map +1 -1
  322. package/dist/esm/session/NodeSession.js +3 -0
  323. package/dist/esm/session/NodeSession.js.map +1 -1
  324. package/dist/esm/session/Session.d.ts +3 -33
  325. package/dist/esm/session/Session.d.ts.map +1 -1
  326. package/dist/esm/session/Session.js +4 -9
  327. package/dist/esm/session/Session.js.map +1 -1
  328. package/dist/esm/session/SessionIntervals.d.ts +36 -0
  329. package/dist/esm/session/SessionIntervals.d.ts.map +1 -0
  330. package/dist/esm/session/SessionIntervals.js +31 -0
  331. package/dist/esm/session/SessionIntervals.js.map +6 -0
  332. package/dist/esm/session/SessionManager.d.ts +1 -1
  333. package/dist/esm/session/SessionManager.d.ts.map +1 -1
  334. package/dist/esm/session/SessionManager.js +10 -14
  335. package/dist/esm/session/SessionManager.js.map +1 -1
  336. package/dist/esm/session/pase/PaseMessages.js +1 -1
  337. package/package.json +6 -6
  338. package/src/advertisement/Advertisement.ts +348 -0
  339. package/src/advertisement/Advertiser.ts +83 -0
  340. package/src/advertisement/CommissioningMode.ts +11 -0
  341. package/src/{common/InstanceBroadcaster.ts → advertisement/PairingHintBitmap.ts} +1 -92
  342. package/src/advertisement/ServiceDescription.ts +110 -0
  343. package/src/advertisement/ble/BleAdvertisement.ts +90 -0
  344. package/src/advertisement/ble/BleAdvertiser.ts +116 -0
  345. package/src/advertisement/ble/index.ts +8 -0
  346. package/src/advertisement/index.ts +13 -0
  347. package/src/advertisement/mdns/CommissionableMdnsAdvertisement.ts +118 -0
  348. package/src/advertisement/mdns/CommissionerMdnsAdvertisement.ts +73 -0
  349. package/src/advertisement/mdns/MdnsAdvertisement.ts +167 -0
  350. package/src/advertisement/mdns/MdnsAdvertiser.ts +248 -0
  351. package/src/advertisement/mdns/OperationalMdnsAdvertisement.ts +50 -0
  352. package/src/advertisement/mdns/index.ts +11 -0
  353. package/src/ble/Ble.ts +8 -5
  354. package/src/ble/BleConsts.ts +2 -1
  355. package/src/codec/BtpCodec.ts +4 -3
  356. package/src/common/Scanner.ts +1 -17
  357. package/src/common/SupportedTransportsBitmap.ts +25 -0
  358. package/src/common/index.ts +1 -1
  359. package/src/fabric/Fabric.ts +8 -0
  360. package/src/index.ts +1 -0
  361. package/src/mdns/{MdnsScanner.ts → MdnsClient.ts} +34 -103
  362. package/src/mdns/MdnsConsts.ts +27 -2
  363. package/src/mdns/MdnsServer.ts +76 -198
  364. package/src/mdns/MdnsService.ts +24 -27
  365. package/src/mdns/MdnsSocket.ts +179 -0
  366. package/src/mdns/index.ts +2 -3
  367. package/src/peer/ControllerCommissioner.ts +2 -2
  368. package/src/peer/ControllerDiscovery.ts +3 -3
  369. package/src/peer/PeerSet.ts +15 -9
  370. package/src/protocol/DeviceAdvertiser.ts +161 -151
  371. package/src/protocol/DeviceCommissioner.ts +65 -75
  372. package/src/protocol/ExchangeManager.ts +1 -1
  373. package/src/protocol/MessageExchange.ts +8 -14
  374. package/src/protocol/ProtocolHandler.ts +7 -0
  375. package/src/protocol/ProtocolStatusMessage.ts +26 -10
  376. package/src/securechannel/SecureChannelMessenger.ts +3 -3
  377. package/src/securechannel/SecureChannelProtocol.ts +2 -2
  378. package/src/securechannel/SecureChannelStatusMessageSchema.ts +3 -3
  379. package/src/session/NodeSession.ts +4 -0
  380. package/src/session/Session.ts +6 -42
  381. package/src/session/SessionIntervals.ts +57 -0
  382. package/src/session/SessionManager.ts +9 -13
  383. package/src/session/pase/PaseMessages.ts +1 -1
  384. package/dist/cjs/common/InstanceBroadcaster.d.ts.map +0 -1
  385. package/dist/cjs/common/InstanceBroadcaster.js.map +0 -6
  386. package/dist/cjs/mdns/MdnsBroadcaster.d.ts +0 -34
  387. package/dist/cjs/mdns/MdnsBroadcaster.d.ts.map +0 -1
  388. package/dist/cjs/mdns/MdnsBroadcaster.js +0 -365
  389. package/dist/cjs/mdns/MdnsBroadcaster.js.map +0 -6
  390. package/dist/cjs/mdns/MdnsInstanceBroadcaster.d.ts +0 -28
  391. package/dist/cjs/mdns/MdnsInstanceBroadcaster.d.ts.map +0 -1
  392. package/dist/cjs/mdns/MdnsInstanceBroadcaster.js +0 -87
  393. package/dist/cjs/mdns/MdnsInstanceBroadcaster.js.map +0 -6
  394. package/dist/cjs/mdns/MdnsScanner.d.ts.map +0 -1
  395. package/dist/cjs/mdns/MdnsScanner.js.map +0 -6
  396. package/dist/esm/common/InstanceBroadcaster.d.ts.map +0 -1
  397. package/dist/esm/mdns/MdnsBroadcaster.d.ts +0 -34
  398. package/dist/esm/mdns/MdnsBroadcaster.d.ts.map +0 -1
  399. package/dist/esm/mdns/MdnsBroadcaster.js +0 -378
  400. package/dist/esm/mdns/MdnsBroadcaster.js.map +0 -6
  401. package/dist/esm/mdns/MdnsInstanceBroadcaster.d.ts +0 -28
  402. package/dist/esm/mdns/MdnsInstanceBroadcaster.d.ts.map +0 -1
  403. package/dist/esm/mdns/MdnsInstanceBroadcaster.js +0 -67
  404. package/dist/esm/mdns/MdnsInstanceBroadcaster.js.map +0 -6
  405. package/dist/esm/mdns/MdnsScanner.d.ts.map +0 -1
  406. package/dist/esm/mdns/MdnsScanner.js.map +0 -6
  407. package/src/mdns/MdnsBroadcaster.ts +0 -451
  408. package/src/mdns/MdnsInstanceBroadcaster.ts +0 -88
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var SessionIntervals_exports = {};
20
+ __export(SessionIntervals_exports, {
21
+ SessionIntervals: () => SessionIntervals
22
+ });
23
+ module.exports = __toCommonJS(SessionIntervals_exports);
24
+ var import_general = require("@matter/general");
25
+ /**
26
+ * @license
27
+ * Copyright 2022-2025 Matter.js Authors
28
+ * SPDX-License-Identifier: Apache-2.0
29
+ */
30
+ function SessionIntervals(intervals) {
31
+ const reified = { ...SessionIntervals.defaults, ...intervals };
32
+ const { idleIntervalMs, activeIntervalMs, activeThresholdMs } = reified;
33
+ if (idleIntervalMs !== void 0 && idleIntervalMs > 36e5) {
34
+ throw new import_general.ImplementationError("Session Idle Interval must be less than 1 hour");
35
+ }
36
+ if (activeIntervalMs !== void 0 && activeIntervalMs > 36e5) {
37
+ throw new import_general.ImplementationError("Session Active Interval must be less than 1 hour");
38
+ }
39
+ if (activeThresholdMs !== void 0 && activeThresholdMs > 65535) {
40
+ throw new import_general.ImplementationError("Session Active Threshold must be less than 65535 seconds");
41
+ }
42
+ return reified;
43
+ }
44
+ ((SessionIntervals2) => {
45
+ SessionIntervals2.defaults = {
46
+ idleIntervalMs: 500,
47
+ activeIntervalMs: 300,
48
+ activeThresholdMs: 4e3
49
+ };
50
+ })(SessionIntervals || (SessionIntervals = {}));
51
+ //# sourceMappingURL=SessionIntervals.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/session/SessionIntervals.ts"],
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAoC;AANpC;AAAA;AAAA;AAAA;AAAA;AAiCO,SAAS,iBAAiB,WAAyD;AACtF,QAAM,UAAU,EAAE,GAAG,iBAAiB,UAAU,GAAG,UAAU;AAC7D,QAAM,EAAE,gBAAgB,kBAAkB,kBAAkB,IAAI;AAEhE,MAAI,mBAAmB,UAAa,iBAAiB,MAAS;AAC1D,UAAM,IAAI,mCAAoB,gDAAgD;AAAA,EAClF;AACA,MAAI,qBAAqB,UAAa,mBAAmB,MAAS;AAC9D,UAAM,IAAI,mCAAoB,kDAAkD;AAAA,EACpF;AACA,MAAI,sBAAsB,UAAa,oBAAoB,OAAO;AAC9D,UAAM,IAAI,mCAAoB,0DAA0D;AAAA,EAC5F;AAEA,SAAO;AACX;AAAA,CAEO,CAAUA,sBAAV;AACI,EAAMA,kBAAA,WAAW;AAAA,IACpB,gBAAgB;AAAA,IAChB,kBAAkB;AAAA,IAClB,mBAAmB;AAAA,EACvB;AAAA,GALa;",
5
+ "names": ["SessionIntervals"]
6
+ }
@@ -76,7 +76,7 @@ export declare class SessionManager {
76
76
  /**
77
77
  * Emits when resubmission is necessary due to timeout or network error.
78
78
  */
79
- get resubmissionStarted(): Observable<[session: Session], void>;
79
+ get retry(): Observable<[session: Session, number: number], void>;
80
80
  /**
81
81
  * Convenience function for accessing a fabric by address.
82
82
  */
@@ -1 +1 @@
1
- {"version":3,"file":"SessionManager.d.ts","sourceRoot":"","sources":["../../../src/session/SessionManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SessionManager.d.ts","sourceRoot":"","sources":["../../../src/session/SessionManager.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,7 @@ __export(SessionManager_exports, {
21
21
  SessionManager: () => SessionManager
22
22
  });
23
23
  module.exports = __toCommonJS(SessionManager_exports);
24
+ var import_SupportedTransportsBitmap = require("#common/SupportedTransportsBitmap.js");
24
25
  var import_FabricManager = require("#fabric/FabricManager.js");
25
26
  var import_general = require("#general");
26
27
  var import_model = require("#model");
@@ -28,12 +29,12 @@ var import_PeerAddress = require("#peer/PeerAddress.js");
28
29
  var import_GroupSession = require("#session/GroupSession.js");
29
30
  var import_types = require("#types");
30
31
  var import_general2 = require("@matter/general");
31
- var import_Scanner = require("../common/Scanner.js");
32
32
  var import_MessageCounter = require("../protocol/MessageCounter.js");
33
33
  var import_InsecureSession = require("./InsecureSession.js");
34
34
  var import_NodeSession = require("./NodeSession.js");
35
35
  var import_SecureSession = require("./SecureSession.js");
36
36
  var import_Session = require("./Session.js");
37
+ var import_SessionIntervals = require("./SessionIntervals.js");
37
38
  /**
38
39
  * @license
39
40
  * Copyright 2022-2025 Matter.js Authors
@@ -41,9 +42,7 @@ var import_Session = require("./Session.js");
41
42
  */
42
43
  const logger = import_general.Logger.get("SessionManager");
43
44
  const DEFAULT_SESSION_PARAMETERS = {
44
- idleIntervalMs: import_Session.SESSION_IDLE_INTERVAL_MS,
45
- activeIntervalMs: import_Session.SESSION_ACTIVE_INTERVAL_MS,
46
- activeThresholdMs: import_Session.SESSION_ACTIVE_THRESHOLD_MS,
45
+ ...import_SessionIntervals.SessionIntervals.defaults,
47
46
  dataModelRevision: import_model.Specification.DATA_MODEL_REVISION,
48
47
  interactionModelRevision: import_model.Specification.INTERACTION_MODEL_REVISION,
49
48
  specificationVersion: import_model.Specification.SPECIFICATION_VERSION,
@@ -62,7 +61,7 @@ class SessionManager {
62
61
  #globalUnencryptedMessageCounter;
63
62
  #subscriptionsChanged = (0, import_general.Observable)();
64
63
  #sessionParameters;
65
- #resubmissionStarted = (0, import_general.Observable)();
64
+ #retry = (0, import_general.Observable)();
66
65
  #construction;
67
66
  #observers = new import_general.ObserverGroup();
68
67
  #subscriptionUpdateMutex = new import_general.Mutex(this);
@@ -137,8 +136,8 @@ class SessionManager {
137
136
  /**
138
137
  * Emits when resubmission is necessary due to timeout or network error.
139
138
  */
140
- get resubmissionStarted() {
141
- return this.#resubmissionStarted;
139
+ get retry() {
140
+ return this.#retry;
142
141
  }
143
142
  /**
144
143
  * Convenience function for accessing a fabric by address.
@@ -412,7 +411,7 @@ class SessionManager {
412
411
  peerNodeId,
413
412
  sessionParameters: {
414
413
  ...sessionParameters,
415
- supportedTransports: sessionParameters.supportedTransports ? import_Scanner.SupportedTransportsSchema.encode(sessionParameters.supportedTransports) : void 0
414
+ supportedTransports: sessionParameters.supportedTransports ? import_SupportedTransportsBitmap.SupportedTransportsSchema.encode(sessionParameters.supportedTransports) : void 0
416
415
  },
417
416
  caseAuthenticatedTags
418
417
  })
@@ -465,14 +464,14 @@ class SessionManager {
465
464
  peerNodeId,
466
465
  sessionParameters: {
467
466
  // Make sure to initialize default values when restoring an older resumption record
468
- idleIntervalMs: idleIntervalMs ?? import_Session.SESSION_IDLE_INTERVAL_MS,
469
- activeIntervalMs: activeIntervalMs ?? import_Session.SESSION_ACTIVE_INTERVAL_MS,
470
- activeThresholdMs: activeThresholdMs ?? import_Session.SESSION_ACTIVE_THRESHOLD_MS,
467
+ idleIntervalMs: idleIntervalMs ?? import_SessionIntervals.SessionIntervals.defaults.idleIntervalMs,
468
+ activeIntervalMs: activeIntervalMs ?? import_SessionIntervals.SessionIntervals.defaults.activeIntervalMs,
469
+ activeThresholdMs: activeThresholdMs ?? import_SessionIntervals.SessionIntervals.defaults.activeThresholdMs,
471
470
  dataModelRevision: dataModelRevision ?? import_Session.FALLBACK_DATAMODEL_REVISION,
472
471
  interactionModelRevision: interactionModelRevision ?? import_Session.FALLBACK_INTERACTIONMODEL_REVISION,
473
472
  specificationVersion: specificationVersion ?? import_Session.FALLBACK_SPECIFICATION_VERSION,
474
473
  maxPathsPerInvoke: maxPathsPerInvoke ?? import_Session.FALLBACK_MAX_PATHS_PER_INVOKE,
475
- supportedTransports: supportedTransports !== void 0 ? import_Scanner.SupportedTransportsSchema.decode(supportedTransports) : {},
474
+ supportedTransports: supportedTransports !== void 0 ? import_SupportedTransportsBitmap.SupportedTransportsSchema.decode(supportedTransports) : {},
476
475
  maxTcpMessageSize: maxTcpMessageSize ?? import_Session.FALLBACK_MAX_TCP_MESSAGE_SIZE
477
476
  },
478
477
  caseAuthenticatedTags
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/session/SessionManager.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["import_general", "fabric"]
6
6
  }
@@ -26,7 +26,7 @@ __export(PaseMessages_exports, {
26
26
  TlvSessionParameters: () => TlvSessionParameters
27
27
  });
28
28
  module.exports = __toCommonJS(PaseMessages_exports);
29
- var import_Scanner = require("#common/Scanner.js");
29
+ var import_SupportedTransportsBitmap = require("#common/SupportedTransportsBitmap.js");
30
30
  var import_general = require("#general");
31
31
  var import_types = require("#types");
32
32
  /**
@@ -50,7 +50,7 @@ const TlvSessionParameters = (0, import_types.TlvObject)({
50
50
  /** Maximum Paths pert Invoke */
51
51
  maxPathsPerInvoke: (0, import_types.TlvOptionalField)(7, import_types.TlvUInt16),
52
52
  /** Supported transport protocols in addition to MRP.*/
53
- supportedTransports: (0, import_types.TlvOptionalField)(8, (0, import_types.TlvBitmap)(import_types.TlvUInt16, import_Scanner.SupportedTransportsBitmap)),
53
+ supportedTransports: (0, import_types.TlvOptionalField)(8, (0, import_types.TlvBitmap)(import_types.TlvUInt16, import_SupportedTransportsBitmap.SupportedTransportsBitmap)),
54
54
  /** Maximum size of the message carried over TCP in bytes */
55
55
  maxTcpMessageSize: (0, import_types.TlvOptionalField)(9, import_types.TlvUInt32)
56
56
  });
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/session/pase/PaseMessages.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAA0C;AAC1C,qBAAoE;AACpE,mBASO;AAjBP;AAAA;AAAA;AAAA;AAAA;AAoBO,MAAM,2BAAuB,wBAAU;AAAA;AAAA,EAE1C,oBAAgB,+BAAiB,GAAG,sBAAS;AAAA;AAAA,EAG7C,sBAAkB,+BAAiB,GAAG,sBAAS;AAAA;AAAA,EAG/C,uBAAmB,+BAAiB,GAAG,sBAAS;AAAA;AAAA,EAGhD,uBAAmB,+BAAiB,GAAG,sBAAS;AAAA;AAAA,EAGhD,8BAA0B,+BAAiB,GAAG,sBAAS;AAAA;AAAA,EAGvD,0BAAsB,+BAAiB,GAAG,sBAAS;AAAA;AAAA,EAGnD,uBAAmB,+BAAiB,GAAG,sBAAS;AAAA;AAAA,EAGhD,yBAAqB,+BAAiB,OAAG,wBAAU,wBAAW,wCAAyB,CAAC;AAAA;AAAA,EAGxF,uBAAmB,+BAAiB,GAAG,sBAAS;AACpD,CAAC;AAGM,MAAM,2BAAuB,wBAAU;AAAA,EAC1C,qBAAiB,uBAAS,GAAG,2BAAc,MAAM,EAAE,QAAQ,GAAG,CAAC,CAAC;AAAA,EAChE,wBAAoB,uBAAS,GAAG,sBAAS;AAAA;AAAA,EACzC,gBAAY,uBAAS,GAAG,sBAAS;AAAA;AAAA,EACjC,wBAAoB,uBAAS,GAAG,uBAAU;AAAA,EAC1C,4BAAwB,+BAAiB,GAAG,oBAAoB;AACpE,CAAC;AAGM,MAAM,4BAAwB,wBAAU;AAAA,EAC3C,qBAAiB,uBAAS,GAAG,2BAAc,MAAM,EAAE,QAAQ,GAAG,CAAC,CAAC;AAAA,EAChE,qBAAiB,uBAAS,GAAG,2BAAc,MAAM,EAAE,QAAQ,GAAG,CAAC,CAAC;AAAA,EAChE,wBAAoB,uBAAS,GAAG,sBAAS;AAAA,EACzC,qBAAiB;AAAA,IACb;AAAA,QACA,wBAAU;AAAA,MACN,gBAAY,uBAAS,GAAG,sBAAS;AAAA,MACjC,UAAM,uBAAS,GAAG,2BAAc,MAAM,EAAE,WAAW,IAAI,WAAW,GAAG,CAAC,CAAC;AAAA,IAC3E,CAAC;AAAA,EACL;AAAA,EACA,4BAAwB,+BAAiB,GAAG,oBAAoB;AACpE,CAAC;AAGM,MAAM,mBAAe,wBAAU;AAAA,EAClC,OAAG,uBAAS,GAAG,2BAAc,MAAM,EAAE,QAAQ,4CAA6B,CAAC,CAAC;AAAA;AAChF,CAAC;AAGM,MAAM,mBAAe,wBAAU;AAAA,EAClC,OAAG,uBAAS,GAAG,2BAAc,MAAM,EAAE,QAAQ,4CAA6B,CAAC,CAAC;AAAA;AAAA,EAC5E,cAAU,uBAAS,GAAG,2BAAc,MAAM,EAAE,QAAQ,qCAAsB,CAAC,CAAC;AAAA;AAChF,CAAC;AAGM,MAAM,mBAAe,wBAAU;AAAA,EAClC,cAAU,uBAAS,GAAG,2BAAc,MAAM,EAAE,QAAQ,qCAAsB,CAAC,CAAC;AAAA;AAChF,CAAC;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,uCAA0C;AAC1C,qBAAoE;AACpE,mBASO;AAjBP;AAAA;AAAA;AAAA;AAAA;AAoBO,MAAM,2BAAuB,wBAAU;AAAA;AAAA,EAE1C,oBAAgB,+BAAiB,GAAG,sBAAS;AAAA;AAAA,EAG7C,sBAAkB,+BAAiB,GAAG,sBAAS;AAAA;AAAA,EAG/C,uBAAmB,+BAAiB,GAAG,sBAAS;AAAA;AAAA,EAGhD,uBAAmB,+BAAiB,GAAG,sBAAS;AAAA;AAAA,EAGhD,8BAA0B,+BAAiB,GAAG,sBAAS;AAAA;AAAA,EAGvD,0BAAsB,+BAAiB,GAAG,sBAAS;AAAA;AAAA,EAGnD,uBAAmB,+BAAiB,GAAG,sBAAS;AAAA;AAAA,EAGhD,yBAAqB,+BAAiB,OAAG,wBAAU,wBAAW,0DAAyB,CAAC;AAAA;AAAA,EAGxF,uBAAmB,+BAAiB,GAAG,sBAAS;AACpD,CAAC;AAGM,MAAM,2BAAuB,wBAAU;AAAA,EAC1C,qBAAiB,uBAAS,GAAG,2BAAc,MAAM,EAAE,QAAQ,GAAG,CAAC,CAAC;AAAA,EAChE,wBAAoB,uBAAS,GAAG,sBAAS;AAAA;AAAA,EACzC,gBAAY,uBAAS,GAAG,sBAAS;AAAA;AAAA,EACjC,wBAAoB,uBAAS,GAAG,uBAAU;AAAA,EAC1C,4BAAwB,+BAAiB,GAAG,oBAAoB;AACpE,CAAC;AAGM,MAAM,4BAAwB,wBAAU;AAAA,EAC3C,qBAAiB,uBAAS,GAAG,2BAAc,MAAM,EAAE,QAAQ,GAAG,CAAC,CAAC;AAAA,EAChE,qBAAiB,uBAAS,GAAG,2BAAc,MAAM,EAAE,QAAQ,GAAG,CAAC,CAAC;AAAA,EAChE,wBAAoB,uBAAS,GAAG,sBAAS;AAAA,EACzC,qBAAiB;AAAA,IACb;AAAA,QACA,wBAAU;AAAA,MACN,gBAAY,uBAAS,GAAG,sBAAS;AAAA,MACjC,UAAM,uBAAS,GAAG,2BAAc,MAAM,EAAE,WAAW,IAAI,WAAW,GAAG,CAAC,CAAC;AAAA,IAC3E,CAAC;AAAA,EACL;AAAA,EACA,4BAAwB,+BAAiB,GAAG,oBAAoB;AACpE,CAAC;AAGM,MAAM,mBAAe,wBAAU;AAAA,EAClC,OAAG,uBAAS,GAAG,2BAAc,MAAM,EAAE,QAAQ,4CAA6B,CAAC,CAAC;AAAA;AAChF,CAAC;AAGM,MAAM,mBAAe,wBAAU;AAAA,EAClC,OAAG,uBAAS,GAAG,2BAAc,MAAM,EAAE,QAAQ,4CAA6B,CAAC,CAAC;AAAA;AAAA,EAC5E,cAAU,uBAAS,GAAG,2BAAc,MAAM,EAAE,QAAQ,qCAAsB,CAAC,CAAC;AAAA;AAChF,CAAC;AAGM,MAAM,mBAAe,wBAAU;AAAA,EAClC,cAAU,uBAAS,GAAG,2BAAc,MAAM,EAAE,QAAQ,qCAAsB,CAAC,CAAC;AAAA;AAChF,CAAC;",
5
5
  "names": []
6
6
  }
@@ -0,0 +1,119 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022-2025 Matter.js Authors
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { Diagnostic } from "#general";
7
+ import type { Advertiser } from "./Advertiser.js";
8
+ import { ServiceDescription } from "./ServiceDescription.js";
9
+ /**
10
+ * An advertisement for a discrete service.
11
+ */
12
+ export declare abstract class Advertisement<T extends ServiceDescription = ServiceDescription> {
13
+ #private;
14
+ /**
15
+ * The service advertised.
16
+ *
17
+ * This is a unique ID associated with the advertisement.
18
+ */
19
+ readonly service: string;
20
+ /**
21
+ * The information advertised.
22
+ */
23
+ readonly description: T;
24
+ /**
25
+ * The {@link Advertiser} that owns this advertisement.
26
+ */
27
+ readonly advertiser: Advertiser;
28
+ /**
29
+ * Configuration options.
30
+ */
31
+ readonly options: Advertisement.Options;
32
+ constructor(advertiser: Advertiser, service: string, description: T, options?: Advertisement.Options);
33
+ /**
34
+ * Begin automatic broadcast.
35
+ */
36
+ start(event: Advertiser.BroadcastEvent): void;
37
+ /**
38
+ * End automatic broadcast.
39
+ */
40
+ stop(): void;
41
+ /**
42
+ * Notify the advertiser that a client connection to the advertised service is established.
43
+ */
44
+ serviceConnected(): void;
45
+ /**
46
+ * Notify the advertiser that there is no client connection to the advertised service.
47
+ */
48
+ serviceDisconnected(): void;
49
+ /**
50
+ * Close the advertisement but do not wait for the close to finish.
51
+ *
52
+ * The advertisement is still tracked by the advertiser until closed.
53
+ */
54
+ cancel(): void;
55
+ /**
56
+ * Close the advertisement.
57
+ */
58
+ close(): Promise<void>;
59
+ /**
60
+ * Async setup logic.
61
+ */
62
+ protected onCreate(): Promise<void>;
63
+ /**
64
+ * Async cleanup logic.
65
+ */
66
+ protected onClose(): Promise<void>;
67
+ /**
68
+ * Indicates that broadcasts should omit private details.
69
+ */
70
+ protected get isPrivacyMasked(): boolean;
71
+ /**
72
+ * Implement automatic advertising.
73
+ */
74
+ protected abstract run(context: Advertisement.ActivityContext, event: Advertiser.BroadcastEvent): Promise<void>;
75
+ isCommissioning(): this is Advertisement<ServiceDescription.Commissionable> | Advertisement<ServiceDescription.Commissioner>;
76
+ isOperational(): this is Advertisement<ServiceDescription.Operational>;
77
+ /**
78
+ * Cancel a set of advertisements.
79
+ */
80
+ static cancelAll(ads: Iterable<Advertisement>): void;
81
+ /**
82
+ * Cancel a set of advertisements and wait for them to complete.
83
+ */
84
+ static closeAll(ads: Iterable<Advertisement>): Promise<void>;
85
+ /**
86
+ * Identify other advertisers for the same service. The advertiser will close these automatically.
87
+ */
88
+ abstract isDuplicate(other: Advertisement): boolean;
89
+ /**
90
+ * Total duration so far.
91
+ */
92
+ get duration(): number;
93
+ /**
94
+ * True if the advertisement is actively broadcasting.
95
+ */
96
+ get isBroadcasting(): boolean;
97
+ protected dict(values?: Record<string, unknown>): Record<string, unknown> & Diagnostic;
98
+ }
99
+ export declare namespace Advertisement {
100
+ interface Options {
101
+ /**
102
+ * Set this to omit optional details from broadcasts that may affect privacy.
103
+ *
104
+ * Per core spec 5.4.2.3.1, the device always omits vendor ID, product ID and extended data during extended
105
+ * announcement. Set this value to omit this fields unconditionally.
106
+ */
107
+ omitPrivateDetails?: boolean;
108
+ }
109
+ interface ActivityContext {
110
+ /**
111
+ * Enter cancelable sleep.
112
+ *
113
+ * Throws {@link CanceledError} if interrupted. If thrown from {@link run} this will result in the promise
114
+ * resolving.
115
+ */
116
+ sleep(name: string, intervalMs: number): Promise<void>;
117
+ }
118
+ }
119
+ //# sourceMappingURL=Advertisement.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Advertisement.d.ts","sourceRoot":"","sources":["../../../src/advertisement/Advertisement.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAA6C,UAAU,EAAsC,MAAM,UAAU,CAAC;AAErH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAI7D;;GAEG;AACH,8BAAsB,aAAa,CAAC,CAAC,SAAS,kBAAkB,GAAG,kBAAkB;;IACjF;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;IAExB;;OAEG;IACH,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAEhC;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC;gBAW5B,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,aAAa,CAAC,OAAO;IAYpG;;OAEG;IACH,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC,cAAc;IAetC;;OAEG;IACH,IAAI;IAKJ;;OAEG;IACH,gBAAgB;IAIhB;;OAEG;IACH,mBAAmB;IAInB;;;;OAIG;IACH,MAAM;IAON;;OAEG;IACH,KAAK;IAuBL;;OAEG;cACa,QAAQ;IASxB;;OAEG;cACa,OAAO;IAEvB;;OAEG;IACH,SAAS,KAAK,eAAe,YAY5B;IAED;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,eAAe,EAAE,KAAK,EAAE,UAAU,CAAC,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAE/G,eAAe,IAAI,IAAI,IACjB,aAAa,CAAC,kBAAkB,CAAC,cAAc,CAAC,GAChD,aAAa,CAAC,kBAAkB,CAAC,YAAY,CAAC;IAIpD,aAAa,IAAI,IAAI,IAAI,aAAa,CAAC,kBAAkB,CAAC,WAAW,CAAC;IAItE;;OAEG;IACH,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,QAAQ,CAAC,aAAa,CAAC;IAM7C;;OAEG;WACU,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,aAAa,CAAC;IAIlD;;OAEG;IACH,QAAQ,CAAC,WAAW,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO;IAEnD;;OAEG;IACH,IAAI,QAAQ,WAEX;IAED;;OAEG;IACH,IAAI,cAAc,YAEjB;IAED,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAoDlD;AAED,yBAAiB,aAAa,CAAC;IAC3B,UAAiB,OAAO;QACpB;;;;;WAKG;QACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;KAChC;IAED,UAAiB,eAAe;QAC5B;;;;;WAKG;QACH,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KAC1D;CACJ"}
@@ -0,0 +1,247 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022-2025 Matter.js Authors
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { asError, CancelablePromise, CanceledError, Diagnostic, Logger, MatterAggregateError, Time } from "#general";
7
+ import { STANDARD_COMMISSIONING_TIMEOUT_S } from "#types";
8
+ import { ServiceDescription } from "./ServiceDescription.js";
9
+ const logger = Logger.get("Advertisement");
10
+ class Advertisement {
11
+ /**
12
+ * The service advertised.
13
+ *
14
+ * This is a unique ID associated with the advertisement.
15
+ */
16
+ service;
17
+ /**
18
+ * The information advertised.
19
+ */
20
+ description;
21
+ /**
22
+ * The {@link Advertiser} that owns this advertisement.
23
+ */
24
+ advertiser;
25
+ /**
26
+ * Configuration options.
27
+ */
28
+ options;
29
+ #isBroadcasting = false;
30
+ #closed;
31
+ #startedAt = Time.nowMs();
32
+ /**
33
+ * Current activity. This is a promise with helpers for base implementations.
34
+ */
35
+ #activity;
36
+ constructor(advertiser, service, description, options) {
37
+ this.options = options ?? {};
38
+ this.service = service;
39
+ this.advertiser = advertiser;
40
+ this.description = description;
41
+ advertiser.advertisements.add(this);
42
+ this.#start(this.onCreate.bind(this));
43
+ }
44
+ /**
45
+ * Begin automatic broadcast.
46
+ */
47
+ start(event) {
48
+ if (this.#closed) {
49
+ return;
50
+ }
51
+ if (this.isBroadcasting) {
52
+ return;
53
+ }
54
+ this.#start((context) => this.#run(context, event));
55
+ }
56
+ /**
57
+ * End automatic broadcast.
58
+ */
59
+ stop() {
60
+ this.#activity?.cancel();
61
+ this.#isBroadcasting = false;
62
+ }
63
+ /**
64
+ * Notify the advertiser that a client connection to the advertised service is established.
65
+ */
66
+ serviceConnected() {
67
+ }
68
+ /**
69
+ * Notify the advertiser that there is no client connection to the advertised service.
70
+ */
71
+ serviceDisconnected() {
72
+ }
73
+ /**
74
+ * Close the advertisement but do not wait for the close to finish.
75
+ *
76
+ * The advertisement is still tracked by the advertiser until closed.
77
+ */
78
+ cancel() {
79
+ this.close().catch((e) => {
80
+ logger.error("Unhandled error closing advertisement for", Diagnostic.strong(this.service), e);
81
+ });
82
+ }
83
+ /**
84
+ * Close the advertisement.
85
+ */
86
+ close() {
87
+ if (this.#closed) {
88
+ return this.#closed;
89
+ }
90
+ return this.#closed = this.#close();
91
+ }
92
+ async #close() {
93
+ try {
94
+ this.#activity?.cancel();
95
+ await this.#activity;
96
+ try {
97
+ await this.onClose();
98
+ } catch (e) {
99
+ logger.error("Unhandled error closing advertisement for", Diagnostic.strong(this.service), e);
100
+ }
101
+ } finally {
102
+ this.advertiser.advertisements.delete(this);
103
+ }
104
+ }
105
+ /**
106
+ * Async setup logic.
107
+ */
108
+ async onCreate() {
109
+ const duplicates = [...this.advertiser.advertisements].filter(this.isDuplicate.bind(this));
110
+ if (duplicates.length) {
111
+ await Advertisement.closeAll(duplicates);
112
+ }
113
+ }
114
+ /**
115
+ * Async cleanup logic.
116
+ */
117
+ async onClose() {
118
+ }
119
+ /**
120
+ * Indicates that broadcasts should omit private details.
121
+ */
122
+ get isPrivacyMasked() {
123
+ if (this.options.omitPrivateDetails) {
124
+ return true;
125
+ }
126
+ if (Time.nowMs() - this.#startedAt >= STANDARD_COMMISSIONING_TIMEOUT_S * 1e3) {
127
+ return true;
128
+ }
129
+ return false;
130
+ }
131
+ isCommissioning() {
132
+ return ServiceDescription.isCommissioning(this.description);
133
+ }
134
+ isOperational() {
135
+ return ServiceDescription.isOperational(this.description);
136
+ }
137
+ /**
138
+ * Cancel a set of advertisements.
139
+ */
140
+ static cancelAll(ads) {
141
+ for (const ad of ads) {
142
+ ad.cancel();
143
+ }
144
+ }
145
+ /**
146
+ * Cancel a set of advertisements and wait for them to complete.
147
+ */
148
+ static async closeAll(ads) {
149
+ await MatterAggregateError.allSettled([...ads].map((ad) => ad.close()));
150
+ }
151
+ /**
152
+ * Total duration so far.
153
+ */
154
+ get duration() {
155
+ return Time.nowMs() - this.#startedAt;
156
+ }
157
+ /**
158
+ * True if the advertisement is actively broadcasting.
159
+ */
160
+ get isBroadcasting() {
161
+ return this.#isBroadcasting;
162
+ }
163
+ dict(values) {
164
+ return Diagnostic.dict({ kind: this.description.kind, service: this.service, ...values });
165
+ }
166
+ #start(executor) {
167
+ const previous = this.#activity;
168
+ previous?.cancel();
169
+ this.#activity = new ActivityContext(async (context) => {
170
+ if (previous) {
171
+ await previous;
172
+ }
173
+ try {
174
+ await executor(context);
175
+ } finally {
176
+ if (this.#activity === context) {
177
+ this.#activity = void 0;
178
+ }
179
+ }
180
+ });
181
+ }
182
+ async #run(context, event, previous) {
183
+ if (previous) {
184
+ await previous;
185
+ }
186
+ logger.debug("Begin auto broadcast", this.dict());
187
+ try {
188
+ this.#isBroadcasting = true;
189
+ await this.run(context, event);
190
+ } catch (e) {
191
+ if (!(e instanceof CanceledError)) {
192
+ logger.error("Unhandled error during automatic advertisement for", Diagnostic.strong(this.service), e);
193
+ }
194
+ } finally {
195
+ if (this.#activity === context) {
196
+ this.#isBroadcasting = false;
197
+ }
198
+ }
199
+ logger.debug("End auto broadcast", this.dict());
200
+ }
201
+ }
202
+ class ActivityContext extends CancelablePromise {
203
+ #sleep;
204
+ #cancelReason;
205
+ constructor(executor) {
206
+ let resolve, reject;
207
+ super((res, rej) => {
208
+ resolve = res;
209
+ reject = rej;
210
+ });
211
+ executor(this).then(resolve, (cause) => {
212
+ if (cause instanceof CanceledError) {
213
+ resolve();
214
+ } else {
215
+ reject(cause);
216
+ }
217
+ });
218
+ }
219
+ sleep(name, intervalMs) {
220
+ this.abortIfCanceled();
221
+ const sleep = Time.sleep(name, intervalMs).finally(() => {
222
+ if (this.#sleep === sleep) {
223
+ this.#sleep = void 0;
224
+ }
225
+ });
226
+ this.#sleep = sleep;
227
+ return sleep;
228
+ }
229
+ abortIfCanceled() {
230
+ if (this.#cancelReason) {
231
+ throw this.#cancelReason;
232
+ }
233
+ }
234
+ onCancel(reason) {
235
+ if (this.#cancelReason) {
236
+ return;
237
+ }
238
+ this.#cancelReason = asError(reason);
239
+ if (this.#sleep) {
240
+ this.#sleep.cancel(reason);
241
+ }
242
+ }
243
+ }
244
+ export {
245
+ Advertisement
246
+ };
247
+ //# sourceMappingURL=Advertisement.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/advertisement/Advertisement.ts"],
4
+ "mappings": "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",
5
+ "names": []
6
+ }