I ran into this issue again. So if you got this fixed, let me know.
If not, here's what I found...
The predefined sms gateway uses the following service url:
https://www.smsglobal.com.au/http-api.php?action=sendsms&user=@USERNAME@&password=@PASSWORD@&from=@FROM@&to=@TO@&text=@MESSAGE@
To troubleshoot further I created a custom SMS gateway and configured the following service url:
https://www.smsglobal.com.au/http-api.php?action=sendsms&user=@USERNAME@&password=@PASSWORD@&from=@FROM@&to=@TO@&text=+3245678
So basically all I changed was the message from the variable to a fixed value. When sending this the +-sign still gets removed.
I’m guessing this is exactly how the predefined SMSGLOBAL gateway stuff is sent.
Some research gave this on the smsglobal website: http://support.smsglobal.com/customer/portal/articles/1120743-troubleshooting-the-http-api---character-encoding.
So my best guess is Clearpass does not do the proper (for SMSglobal) character encoding of the special symbols.
So apparently triple encoding a "+" gives %25252B.
https://www.smsglobal.com.au/http-api.php?action=sendsms&user=@USERNAME@&password=@PASSWORD@&from=@FROM@&to=@TO@&text=+3245678
When I sent the above url with this I actualy do get the +-sign in my sms body. So this
I have now opened a ticket for this with Aruba and will update with the results.