import json from spade.agent import Agent from spade.behaviour import OneShotBehaviour from spade.message import Message from control_backend.core.config import settings class BeliefTextAgent(Agent): class SendOnceBehaviourBlfText(OneShotBehaviour): async def run(self): to_jid = f"{settings.agent_settings.belief_collector_agent_name}@{settings.agent_settings.host}" # Send multiple beliefs in one JSON payload payload = { "type": "belief_extraction_text", "beliefs": {"user_said": [["hello test"],["Can you help me?"],["stop talking to me"],["No"],["Pepper do a dance"]]} } msg = Message(to=to_jid) msg.body = json.dumps(payload) await self.send(msg) print(f"Beliefs sent to {to_jid}!") self.exit_code = "Job Finished!" await self.agent.stop() async def setup(self): print("BeliefTextAgent started") self.b = self.SendOnceBehaviourBlfText() self.add_behaviour(self.b)