/** Get a dialog id given the remote tag. */
 public String getDialogId(boolean isServer, String toTag) {
   From from = (From) this.getFrom();
   CallID cid = (CallID) this.getCallId();
   StringBuffer retval = new StringBuffer(cid.getCallId());
   if (!isServer) {
     // retval.append(COLON).append(from.getUserAtHostPort());
     if (from.getTag() != null) {
       retval.append(COLON);
       retval.append(from.getTag());
     }
     // retval.append(COLON).append(to.getUserAtHostPort());
     if (toTag != null) {
       retval.append(COLON);
       retval.append(toTag);
     }
   } else {
     // retval.append(COLON).append(to.getUserAtHostPort());
     if (toTag != null) {
       retval.append(COLON);
       retval.append(toTag);
     }
     // retval.append(COLON).append(from.getUserAtHostPort());
     if (from.getTag() != null) {
       retval.append(COLON);
       retval.append(from.getTag());
     }
   }
   return retval.toString().toLowerCase();
 }