code: public boolean initiateOutgoingMessage(String toUri, String viaNonProxyRoute) {
      return initiateOutgoingMessage(null, toUri, viaNonProxyRoute, null, null, null);
    }
docs: This basic method is used to initiate an outgoing MESSAGE.
  
  <p>
  This method returns when the request message has been sent out. Your calling program must
  subsequently call the waitOutgoingMessageResponse() method (one or more times) to get the
  result(s).
  
  <p>
  If a DIALOG exists the method will use it to send the MESSAGE
  
  @param toUri The URI (sip:bob@nist.gov) to which the message should be directed
  @param viaNonProxyRoute Indicates whether to route the MESSAGE via Proxy or some other route.
  If null, route the call to the Proxy that was specified when the SipPhone object was
  created (SipStack.createSipPhone()). Else route it to the given node, which is specified
  as "hostaddress:port;parms/transport" i.e. 129.1.22.333:5060;lr/UDP.
  @return true if the message was successfully sent, false otherwise.