-
Notifications
You must be signed in to change notification settings - Fork 80
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
Acknowledgment handling in the NMOS-CPP library #389
Comments
Are you talking about the handling of IS-05 Connection API If so, the important point is that these requests can take four forms:
According to the spec, only (3), an immediate activation, requires that the application's underlying state change is complete before the HTTP response is sent. This is intentional design, and means a scheduled activation is asynchronous. Hopefully this explains why and when each of the application callbacks is made.
The update of the IS-04 resources in the Node API, and notification of those changes to the Registration API, also happens after activation, but the latter is asynchronous with respect to the PATCH response. |
Thankyou for your quick response and clarifications @gareth Sylvester-Bradley. For instance, when we try to change the Destination Port number, via the Riedel Controller, it sends a PATCH command to the NMOS library with immediate activation. Below is a Wireshark capture of the HTTP PATCH command with file data: In the application code's case #3(an immediate activation), we wait for a response from the underlying process (product-specific) to respond with "Patch Success" before returning. However, what happens if the underlying patch returns an error? How will the application indicate this failure? validate_merged() (doesn't return any value) |
nmos-cpp/Development/nmos/connection_api.h Lines 31 to 34 in 0a29731
|
Let me reemphasise, the application must not apply the patch to the underlying process in the nmos-cpp/Development/nmos/connection_activation.h Lines 32 to 34 in 0a29731
|
If the actual underlying activation fails, an exception from the |
Hello,
I have a question regarding acknowledgment handling in the NMOS-CPP library.
I'm curious if the PATCH action is supposed to wait for acknowledgment from the application to confirm whether the changes have been successfully updated?
In the connection_api.cpp file, it seems that the validate_merged() callback function does not wait for acknowledgment. Should it be waiting, or is there a different method to handle acknowledgments in the library?
I would greatly appreciate it if someone could provide insights into the acknowledgment handling mechanism in the NMOS library.
The text was updated successfully, but these errors were encountered: