public void sendReply(ActionRequest request, ActionResponse response) {

    DynMessage ctx = request.getContext().asType(DynMessage.class);

    DynMessage reply = new DynMessage();
    reply.setSubject(ctx.getSubject());
    reply.setBody((String) request.getContext().get("reply"));

    reply = service.sendMessage(ctx, reply);

    // send a view specific signal
    response.setSignal("trail:record", reply);

    response.setValue("reply", null); // clear reply field
    response.setValue("canReply", false); // close reply field

    response.setStatus(ActionResponse.STATUS_SUCCESS);
  }