Analyzing both cases I found the difference that causes the error on TTS engine.
1) Text (encoded to UTF-8) that works passed using /alerting-app/send-alert-test.html form page:
data:ts%28Alert+on+resource+rsoares%5Bjonserver%5D.+Cause+is++++-+Condition+1%3A+Used+Memory+%3E+2.8GB+++-+Date%2FTime%3A+2011%2F10%2F06+22%3A08%3A41+BRT+++-+Details%3A+5.4GB%29
2) Text (encoded to UTF-8) that
doesn't works passed using RHQ Alert:
data:ts%28Alert+on+resource+rsoares%5Bjonserver%5D.+Cause+is+%0A++-+Condition+1%3A+Used+Memory+%3E+2.8GB%0A++-+Date%2FTime%3A+2011%2F10%2F06+22%3A08%3A41+BRT%0A++-+Details%3A+5.4GB%0A%29
I think the problem is on '\n' char sent by RHQ. Because in the case 1) you copy/past in a HTML input text field and the text lost '\n' chars. This is the only difference I found comparing both text snippets.
So I changed PhoneAlertServlet code to remove
'\n' and
',' chars from alertText request param before encode to UTF-8 and convert to URI. Now it can receive the real RHQ Alert text message. :-)
// remove '\n' and ',' chars to avoid problems with TTS
alertText = alertText.replace('\n', ' ').replace(',', ' ');Thanks!
_____________
Rafael Soares