예제 #1
0
 private void say(String text) throws JMSException {
   Document bml = XMLTool.newDocument(BML.ROOT_TAGNAME, BML.namespaceURI);
   Element speech = XMLTool.appendChildElement(bml.getDocumentElement(), BML.E_SPEECH);
   speech.setAttribute("language", "en-US");
   speech.setTextContent(text);
   Element mark = XMLTool.appendChildElement(speech, SSML.E_MARK, SSML.namespaceURI);
   mark.setAttribute(SSML.A_NAME, "m1");
   bmlSender.sendXML(bml, meta.getTime());
 }
예제 #2
0
 @Override
 public void react(SEMAINEMessage m) throws JMSException {
   if (!(m instanceof SEMAINEXMLMessage)) {
     throw new MessageFormatException("expected XML message, got " + m.getClass().getSimpleName());
   }
   SEMAINEXMLMessage xm = (SEMAINEXMLMessage) m;
   boolean isFML = "FML".equals(xm.getDatatype());
   if (isFML) {
     // extract the BML and send that along
     Element bml =
         XMLTool.needChildElementByLocalNameNS(
             xm.getDocument().getDocumentElement(), BML.E_BML, BML.namespaceURI);
     Document doc = XMLTool.newDocument(BML.E_BML, BML.namespaceURI);
     doc.adoptNode(bml);
     doc.replaceChild(bml, doc.getDocumentElement());
     bmlSender.sendXML(doc, xm.getUsertime(), xm.getEventType());
   } else { // BML -- send as is
     bmlSender.sendXML(xm.getDocument(), xm.getUsertime(), xm.getEventType());
   }
 }