<!-- Kamailio Pull Request Template -->
<!-- IMPORTANT: - for detailed contributing guidelines, read: https://github.com/kamailio/kamailio/blob/master/.github/CONTRIBUTING.md - pull requests must be done to master branch, unless they are backports of fixes from master branch to a stable branch - backports to stable branches must be done with 'git cherry-pick -x ...' - code is contributed under BSD for core and main components (tm, sl, auth, tls) - code is contributed GPLv2 or a compatible license for the other components - GPL code is contributed with OpenSSL licensing exception -->
#### Pre-Submission Checklist <!-- Go over all points below, and after creating the PR, tick all the checkboxes that apply --> <!-- All points should be verified, otherwise, read the CONTRIBUTING guidelines from above--> <!-- If you're unsure about any of these, don't hesitate to ask on sr-dev mailing list --> - [x] Commit message has the format required by CONTRIBUTING guide - [x] Commits are split per component (core, individual modules, libs, utils, ...) - [x] Each component has a single commit (if not, squash them into one commit) - [x] No commits to README files for modules (changes must be done to docbook files in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change - [ ] Small bug fix (non-breaking change which fixes an issue) - [x] New feature (non-breaking change which adds new functionality) - [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist: <!-- Go over all points below, and after creating the PR, tick the checkboxes that apply --> - [ ] PR should be backported to stable branches - [x] Tested changes locally - [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description <!-- Describe your changes in detail -->
I added `nats_publish_request` which calls the `natsConnection_PublishRequestString` to send a request to the NATS server with a `reply` string so the response can be easily replied back.
I tested in Lua and the native route, not sure if it's the right way to implement. I can update docs if it sounds good.
Thanks.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/3397
-- Commit Summary --
* nats: add a reply param to nats_publish and expose as nats_publish_request in KEMI
-- File Changes --
M src/modules/nats/nats_mod.c (18) M src/modules/nats/nats_mod.h (2) M src/modules/nats/nats_pub.c (52) M src/modules/nats/nats_pub.h (7)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/3397.patch https://github.com/kamailio/kamailio/pull/3397.diff
@eschmidbauer can you take a look if this one makes sense? Thanks.
@eschmidbauer commented on this pull request.
@@ -60,6 +60,8 @@ static param_export_t params[] = {
static cmd_export_t cmds[] = { {"nats_publish", (cmd_function)w_nats_publish_f, 2, fixup_publish_get_value, fixup_publish_get_value_free, ANY_ROUTE},
are these two lines still needed?
@seven1240 pushed 1 commit.
0ca307be15ea26a45252e68c0f27f44f7c0279b4 nats: add a reply param to nats_publish and expose as nats_publish_request in KEMI
@seven1240 commented on this pull request.
@@ -60,6 +60,8 @@ static param_export_t params[] = {
static cmd_export_t cmds[] = { {"nats_publish", (cmd_function)w_nats_publish_f, 2, fixup_publish_get_value, fixup_publish_get_value_free, ANY_ROUTE},
I removed and rebased to the latest master, seems fine for me. Thanks.
does this change require a 3rd parameter to `nats_publish()` ?
does this change require a 3rd parameter to `nats_publish()` ?
No, the 3rd one is optional.
``` route[nats] { nats_publish("cn.xswitch.ctrl.route", 'hello'); nats_publish("cn.xswitch.ctrl.route", 'hello', 'blah'); } ```
looks good to me. can you update the documentation to reflect the new parameter?
@seven1240 pushed 1 commit.
76e5317cca8337d5de78b4506a91cd5cca789f7c nats: add a reply param to nats_publish and expose as nats_publish_request in KEMI
@eschmidbauer approved this pull request.
Thanks for the PR. Lets wait a few more days for more feedback, and then merge it.
Merged #3397 into master.