-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Mdns device controller update device #5956
Mdns device controller update device #5956
Conversation
c51a32e
to
803912d
Compare
|
||
CHIP_ERROR Run(PersistentStorage & storage, NodeId localId, NodeId remoteId) override | ||
/////////// DiscoverCommand Interface ///////// | ||
CHIP_ERROR RunCommand(NodeId remoteId, uint64_t fabricId) override |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Would a better name for this simply be Resolve
, or perhaps Discover
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pretty sure it's this way as it follows the current RunCommand/Run style of the class (Resolve).
|
||
CHIP_ERROR Run(PersistentStorage & storage, NodeId localId, NodeId remoteId) override | ||
/////////// DiscoverCommand Interface ///////// | ||
CHIP_ERROR RunCommand(NodeId remoteId, uint64_t fabricId) override |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pretty sure it's this way as it follows the current RunCommand/Run style of the class (Resolve).
After project-chip#5956 has been merged, the device controller works as a Resolver delegate, so no separate DeviceAddressUpdater is needed. In fact, they interfere which each other. Switch Python CHIP controller to using the mechanisms introduced by project-chip#5956, fix a couple of issues and remove no longer necessary code.
After #5956 has been merged, the device controller works as a Resolver delegate, so no separate DeviceAddressUpdater is needed. In fact, they interfere which each other. Switch Python CHIP controller to using the mechanisms introduced by #5956, fix a couple of issues and remove no longer necessary code.
Problem
When the device IP change, the pairing information needs to be updated. This PR adds
DeviceController::UpdateDevice
to theDeviceController
in order to look overMdns
for the latest device information.For the moment, the signature is
UpdateDevice(Device * device, uint64_t fabricId)
since the fabric is not stored anywhere but it is needed in order to properly do the Mdns mapping. At some point thefabricId
will likely be retrieved from the controller or something similar.This PR also add a
update
method tochip-tool
in order to update the pairing information if needed.Summary of Changes
DeviceController::UpdateDevice(Device * device, uint64_t fabricId);
update
method to theDiscover
module ofchip-tool