def ready(self): perf = KQMLPerformative('tell') content = KQMLList() content.add('module-status') content.add('ready') perf.set_parameter(':content', content) self.send(perf)
def make_request_and_exit(self): self.send( KQMLPerformative.from_string( "(request :receiver SKELETONSCORE :content (score-method {}))". format(self.pred_type))) self.send( KQMLPerformative.from_string( "(request :receiver SKELETONSCORE :content (selection-method {}))" .format(self.lib_type))) if self.datafile: self.send( KQMLPerformative.from_string( "(request :receiver SKELETONSCORE :content (use-skeleton-data {}))" .format(self.datafile))) if self.adjustment: self.send( KQMLPerformative.from_string( "(request :receiver SKELETONSCORE :content (adjustment-factor {}))" .format(self.adjustment))) if self.node_cutoff: self.send( KQMLPerformative.from_string( "(request :receiver SKELETONSCORE :content (node-cutoff {}))" .format(self.node_cutoff))) from time import sleep sleep(10) self.exit(0)
def init(self): self.name = "GetParse-{}".format(self.id) TripsModule.init(self) self.send( KQMLPerformative.from_string( "(subscribe :content (tell &key :content (skelscore . *)))")) self.send( KQMLPerformative.from_string( "(subscribe :content (tell &key :content (lf-graph . *)))")) self.send( KQMLPerformative.from_string( "(subscribe :content (tell &key :content (new-speech-act-hyps . *)))" )) self.ready() self.request_sentence_parse(self.sentence)
def init(self): self.name = "EParameters-{}-{}-{}".format(self.pred_type, self.lib_type, self.port) TripsModule.init(self) self.send( KQMLPerformative.from_string( "(subscribe :content (tell &key :content(use-skeleton-data . *)))" )) self.send( KQMLPerformative.from_string( "(subscribe :content (tell &key :content(score-method . *)))")) self.send( KQMLPerformative.from_string( "(subscribe :content (tell &key :content(selection-method . *)))" )) self.ready() self.make_request_and_exit()
def request_sentence_parse(self, sentence): self.send( KQMLPerformative.from_string( """(request :receiver webparser :content (http post "step" :query (:input "{}" :semantic-skeleton-scoring "t") ) ) """.format(sentence)))
def read_performative(self): self.inbuf = '' self.skip_whitespace() self.inbuf = '' expr = self.read_expr() if isinstance(expr, kqml_list.KQMLList): return KQMLPerformative(expr) else: raise KQMLExpectedListException(self.inbuf)
def register(self): if self.name is not None: perf = KQMLPerformative('register') perf.set_parameter(':name', self.name) if self.group_name is not None: try: if self.group_name.startswith('('): group = KQMLList.fromString(self.group_name) else: group = KQMLToken(self.group_name) perf.set_parameter(':group', group) except IOError: self.logger.error('bad group name: ' + self.group_name) self.send(perf)
def error_reply(self, msg, comment): reply_msg = KQMLPerformative('error') reply_msg.set_parameter(':comment', comment) self.reply(msg, reply_msg)