You could try just setting a variable at the Orchestration level and not the scope level. You might be doing that already though.
Long and short of it, you need to change your logic so you don’t send a message that might not be constructed.
I’d start by adding a Boolean = true when you want to send a message and set the response text to send to an Xml Document. Then, construct a message from the Xml Document inside the decision shape when the Boolean is true. Make sense?
Might be some other ways to do it too. This is just what I can think of off the top of my head.