I do not know about latest M$ RTC, but old ones did not support lr parameter for loose routing in its short form (e.g., lr). You need to set enable_full_lr parameter of rr module so there will be used lr=on which proved to work with M$.
Ok this worked, thanks. However I will read a little more into loose routing, I would have liked all messages to go through the server.
Extracted from README: 1.4.2. exec_msg(command) Executes an external command. The whole message is passed to it in input, no command-line parameters are added, output of the command is not processed. You should be able to read the whole message from input in your script. If you can achieve what you want with exec module, you may consider writing your own module.
When I sent it to a PHP script and had a look at the environment variables, the information Message content wasn't there. I also tried reading the stdin to see if I read the message content this way, however the header comes through but not the content