ZDO_JoinIndicationCB中,要处理两种消息。一个是MAC Associate Ind,另一种是Rejoin ind。MAC Associate ind要回复MAC Associate Rsp,Rejoin Ind要回复Rejoin Rsp。
在回复Associate Rsp时,不一定非要在收到MAC Associate Req时立即回复,可以在一个小于入网节点的macPib.ResponseWaitTime时间内回复,因为入网节点在发送Associate Req后的ResponseWaitTime时间内,通过MAC Data Poll Req去读取父节点的Associate Rsp。而这段时间,父节点可以在协调器上面去查询白名单,甚至能够让协调器在上位机去查询。
另一种是Rejoin Ind的,如果是一个FFD设备加入网络,父节点也能有时间先去查询白名单,再在规定时间内回复Rejoin Rsp。对于RFD节点来说,RFD节点也是通过MAC Data Poll 的方式接受Rejoin Rsp,因此父节点在子节点的REJOIN_POLL_RATE=440ms内回复Rejoin Rsp也是可以的。