#### Pre-Submission Checklist - [x] Commit message has the format required by CONTRIBUTING guide - [x] Commits are split per component (core, individual modules, libs, utils, ...) - [ ] Each component has a single commit (if not, squash them into one commit) - [ ] 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 - [ ] Tested changes locally - [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description I want to get the source (destination) IP address of the message during `event_route[siptrace:msg]` route. I added the ability to get socket info in this route block.
Now added ``` $siptrace(src_uri) $siptrace(dst_uri) ``` This pseudovars return string like ``` udp:8.8.8.8:5060 ```
I think `src_uri` and `dst_uri` is not correct here because this socket info, not SIP uri.
I expecting suggestion on how to get these params and from current implementation: ``` src_ip src_port src_proto dst_ip dst_port dst_proto ```
As reference, I take `sipdump` pseudovariable
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/2752
-- Commit Summary --
* siptrace: aadded siptrace pseudo var
-- File Changes --
M src/modules/siptrace/siptrace.c (72)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/2752.patch https://github.com/kamailio/kamailio/pull/2752.diff
I hope to get the time to check if this is the best way during the next days. I expected it works with the usual variables, but maybe I am wrong and this new variable class is needed.
Thanks! Merging it.
Merged #2752 into master.
@sergey-safarov - you have the list the new variables in the pv cookbook:
* https://www.kamailio.org/wiki/cookbooks/devel/pseudovariables
Done https://www.kamailio.org/wiki/cookbooks/devel/pseudovariables#siptrace_modul...
I think feature updates still required. I think src_uri and dst_uri are not correct here because of this socket info, not SIP uri.
I changed the code to be $siptrace(src_addr) and $siptrace(dst_addr), because the URI in the keyword would suggest is a SIP URI format. I also updated the wiki.
You can parse "proto:ip:port" with `parse_phostport()` and then get its attributes to have variables for ip, port, ...