Is your question about accessing a remote delegate service that is not UIMA-AS based?
The aggregate needs broker URL and endpoint (queue) name to communicate with a remote service. The aggregate manages reply queues for remotes and there is no way to override it. -jerry On Thu, Feb 23, 2017 at 9:03 AM, Dibyojyoti Sanyal <dibyojyotic...@gmail.com > wrote: > Hello, > > We are working in a project where we want to provide cross platform NLP > text processing with UIMA-AS processing. So our goal is to generate a > Delegate and add it to the delegates generated by UIMA-AS. UIMA-AS > generates services and the services endpoint names (or destinations) can be > provided to a UIMA-AS aggregate pipeline to generate a combination of > services. The services are the delegates which are used by the aggregate. > > Now our approach is to provide a new destinations name( which is not > generated by any of the UIMA-AS services but by some other JAVA or non JAVA > cross platform program) along with other UIMA-AS generated endpoits which > are generated by few UIMA-AS services ,and build an aggregate combining > them. In the aggregate the UIMA-AS generated services will work as > delegates and the non UIMA-AS generated endpoint should also work for > another delegate which is not a UIMA-AS generated service. > > As the documentation[1 > <https://uima.apache.org/d/uima-as-2.8.1/uima_async_ > scaleout.html#ugr.async.ov.concepts.jms_descriptor>] > says the endpoints are the input queues generated when the UIMA-AS > services are generated. The input queue name user can specify. But, for > each input queue there is a reply queue created by the aggregate ,this > reply queue is a temporary queue and it is mentioned in the header of a CAS > message sent from aggregate to delegate, the delegate replies to the reply > queue. > > So We are interested to know, > 1. How we can generate a temporary reply queue and tell the UIMA-AS > aggregate to use it corresponding the input queue that is not generated by > the UIMA-AS service but by other means? > 2. How the UIMA-AS generated delegate replies to a reply queue > (specifically the code)? > 3. Is UIMA-AS is flexible enough so that we can provide a delegate which is > not generated by UIMA-AS but still can be combined with other UIMA-AS > delegates so that it can work seemlessly with others and can be used in a > UIMA-AS aggregate? > > We have subscribe to an input queue and receive a CAS message, they we > tried to send reply to the reply queue which is mentioned in the 'reply-to' > field of the header but it did not work. The program we are using for this > is a python client which is connected to the UIMA-AS broker using stomp > protocol.Code is given below. > > def main(): > conn = stomp.Connection() > conn.set_listener('MyListener', MyListener()) > conn.start() > conn.connect() > conn.subscribe('OpenNlpSegmenter_Service',1,'auto') > > while True: > time.sleep(10); > > class MyListener(stomp.ConnectionListener): > def on_connected(self,headers, message): > print('connected "%s"' % message) > def on_connecting(self,host_and_port): > print("connecting to: ",host_and_port) > def on_error(self, headers, message): > print('received an error "%s"' % message) > def on_message(self, headers, message): > print('received headers "%s"' % headers) > print('received a message "%s"' % message) > print("trying to connect to reply queue") > conn = stomp.Connection() > conn.start() > conn.connect() > conn.send(headers['reply-to'],message,headers=headers) > conn.disconnect() > > > The header of a message is is looks like below: > > {'*destination*': '/queue/LanguageToolLemmatizer_Service', > > 'priority': '4', > > 'ServerURI': 'tcp://localhost:61616', > > 'subscription': '1', > > 'timestamp': '1487698370963', > > '*reply-to*': '/remote-temp-queue/ID:Dibyo-PC-54740-1487698146395-1:3:1', > > 'AcceptsDeltaCas': 'true', > > '*MessageFrom*': > 'rmtRtrnQ_DemoAnnotatorQueue_1_LanguageToolLemmatizer_ > Service_192.168.16.13f7a252:15a61b82f1a:-8000', > > > 'message-id': 'ID:Dibyo-PC-54740-1487698146395-3:1:3:1:3', > > 'Payload': '1000', > > 'MessageType': '3000', > > 'expires': '0', > > 'Command': '2000', > 'CasReference': '543544b:15a61bb7001:-7ff8' > } > > 1. > https://uima.apache.org/d/uima-as-2.8.1/uima_async_ > scaleout.html#ugr.async.ov.concepts.jms_descriptor > > Your help is highly appreciated. > > Thanks & Regards, > Dibyojyoti Sanyal > Student TU Darmstadt MDSS > *Linked in <https://de.linkedin.com/in/dibyojyotisanyal>* >