01-06-2014 01:23 PM - edited 03-16-2019 09:07 PM
Hello, All!
I'd like to selectively block outbound CallerID on a SIP trunk. I've come up with two methods to block the CLID, but I'd like to know if there are better methods.
From CUCM
Create a secondary SIP Trunk with Privacy enabled. Create a Route List pointing to the SIP Trunk. Create and assign CSS on devices you'd like to have blocked CLID.
From CUBE
Setup SIP Profile, such as the below example. Apply to PSTN-Outbound Dial Peers.
voice class sip-profiles 1
request INVITE sip-header Privacy add "Privacy: id"
Issue
If blocking the CLID using the CUCM method then either you must block all CLID on a particular device or use Line CSS for PERMIT purposes, which I'm not fond of.
If blocking the CLID using the CUBE method then all matches to the dial-peer would have blocked CLID. I could potentially create a dial-peer that uses a special prefix in order to avoid overlapping, but I thought I'd check with the experts.
Ideally, I'd like to be able to tweak the sip-profile rule so that it checks the From header for particular Calling Numbers and applies Privacy based on that. However, I don't know of a way to do an if statement in sip-profiles. Any thoughts on how to best handle selective outbound CLID blocking?
Thanks as always for your invaluable support!
Solved! Go to Solution.
01-07-2014 07:34 AM
Hi Raymond,
I think using the SIP Normalization feature in CUCM would be your best bet here:
http://www.cisco.com/en/US/docs/voice_ip_comm/cucm/admin/8_5_1/ccmcfg/b06scrpt.html
Mackers
01-06-2014 10:53 PM
From my experience "a dial-peer that uses a special prefix in order to avoid overlapping" this is the way to go then you can hide your CLID with any call you make by dialing a prefix, so today you can show your CLID to your mobile device and tomorrow you dial the prefix and it hides it.
Don't know if anyone out there has any other suggestions.
01-07-2014 02:00 AM
I'd like to be able to tweak the sip-profile rule so that it checks the From header for particular Calling Numbers and applies Privacy based on that. However, I don't know of a way to do an if statement in sip-profiles - I can help you on this.
Here is the sample test config. Calling number - 6060 , Called number- 2444 , CUBE ip -10.0.2.3
voice class sip-profiles 1
request INVITE sip-header Remote-Party-ID modify "<6060>" "
request REINVITE sip-header Remote-Party-ID modify "<6060>" "
request INVITE sip-header From modify "<6060>" "
request REINVITE sip-header From modify "<6060>" "
dial-peer voice 100 voip
destination-pattern 2...
voice-class sip profiles 1
session protocol sipv2
session target ipv4:10.0.0.2
Now see the INVITE message.
*Jan 7 15:21:55.895: //-1/xxxxxxxxxxxx/SIP/Msg/ccsipDisplayMsg:
Sent:
INVITE sip:2444@10.0.0.2:5060 SIP/2.0
Via: SIP/2.0/UDP 10.0.2.3:5060;branch=z9hG4bK6582
Remote-Party-ID: <>xxxx@10.0.2.3>;party=calling;screen=no;privacy=off>
From: <>xxxx@10.0.2.3>;tag=21DB24-2270>
To: <2444>2444>
Date: Tue, 07 Jan 2014 15:21:55 GMT
Call-ID: 471764AB-76E611E3-802BF6FE-E0662A1D@10.0.2.3
Supported: 100rel,timer,resource-priority,replaces,sdp-anat
Min-SE: 1800
Cisco-Guid: 1185875884-1994789347-2150037246-3764791837
Now the calling number is 6090
INVITE sip:2444@10.0.0.2:5060 SIP/2.0
Via: SIP/2.0/UDP 10.0.2.3:5060;branch=z9hG4bK745A
Remote-Party-ID: <>6090@10.0.2.3>;party=calling;screen=no;privacy=off>
From: <>6090@10.0.2.3>;tag=26ACB0-15F2>
To: <2444>2444>
Date: Tue, 07 Jan 2014 15:27:12 GMT
Call-ID: 350D107-76E711E3-8031F6FE-E0662A1D@10.0.2.3
Supported: 100rel,timer,resource-priority,replaces,sdp-anat
Min-SE: 1800
Cisco-Guid: 48467858-1994854883-2150430462-3764791837
Rate all the helpful post.
Thanks
Manish
01-07-2014 07:17 AM
Thank you, Hermanus and Manish.
I'll definitely use Hemanus's suggestion, but as always I like to create as little hassle for the end-user as possible.
To expand on Manish's great examples, I understand the ability to modify single header fields, but the scenario presented would be a bit more complicated. Rather, the idea would be to check the From field for a matching SIP URI, and if the SIP URI matches, modify the Privacy header. Example below...
INVITE sip:2444@10.0.0.2:5060 SIP/2.0
Via: SIP/2.0/UDP 10.0.2.3:5060;branch=z9hG4bK6582
Remote-Party-ID: <>1234@10.0.2.3>;party=calling;screen=no;privacy=off>
From: <>1234@10.0.2.3>;tag=21DB24-2270>
Based on the above output, I'd like to create a rule that adds "Privacy: id" when calls originate from x1234. So, if a rule of that sort was possible, then you would have the following output.
INVITE sip:2444@10.0.0.2:5060 SIP/2.0
Via: SIP/2.0/UDP 10.0.2.3:5060;branch=z9hG4bK6582
Remote-Party-ID: <>1234@10.0.2.3>;party=calling;screen=no;privacy=off>
From: <>1234@10.0.2.3>;tag=21DB24-2270>
Privacy: id
The above INVITE would be passed to the PSTN and we've now achieved selective caller ID blocking. The problem with this scenario is I'd like to evaluate one header field and modify another based on the result. I've never had a neccessity for this before, but I'd be very interested to see it in action. Thanks again for all your help!
01-07-2014 07:34 AM
Hi Raymond,
I think using the SIP Normalization feature in CUCM would be your best bet here:
http://www.cisco.com/en/US/docs/voice_ip_comm/cucm/admin/8_5_1/ccmcfg/b06scrpt.html
Mackers
01-07-2014 08:35 AM
Mackers,
I think you're right. That's the level of scripting I am looking for. Time to strap down and read the Developer Guide. Thanks for pointing me in the right direction!
08-07-2015 07:17 AM
Hi,
I'm looking to do something very similar. Did you every find a way to add in the Privacy:id field based on CallerID.
I'm looking to do it when I receive or send invites with CallerID = "anonymous"
Thanks
Russell
06-07-2018 12:50 AM
Privacy flag is set by the "Calling Party Presentation" Parameter on the Route Pattern, so create one route pattern with a restricted settings and one with default settings and put a prefix like * to the pattern with the restricted settings so the user can select between dialing with calling party presentation or without. If you have remote-party-id enabled you will see the name and number in the invite but with privacy flag, so it should be hidden (unknown caller id) on the called device display.
Regards
Steffen
Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: