Setting non-numeric CallerID with PJSIP

With chan_sip I was using this to control the From header:

Dial(SIP/whoever!!my.cool.user@example.com)

This worked very well for me. However it seems that PJSIP does not support this exclamation mark syntax. I can of course do:

Set(CALLERID(all)=whoever <my.cool.user>)

and set from_domain=example.com and this is almost as good. Except that it munges the punctuation and other things in the <> section and so I don’t actually end up with the From header I want. How can I set From header or CALLERID without this munging?

Did you try escaping it (\!)?

I wasn’t aware that !! existed in chan_sip (there is no mod_sip),

Please explain what the “munging” was. Also say why you are doing this, as there may be other ways.

specifically in chan_sip it was one ! to set to header and another to set from.

However I’ve just tried using CALLERID(num) instead of CALLERID(all) and it seems that it does not remove the punctuation and other things when set this way. So it may be good enough for my needs.