MCPcopy Create free account
hub / github.com/nlweb-ai/NLWeb / send_message

Method send_message

AskAgent/python/core/whoHandler.py:36–60  ·  view source on GitHub ↗

Override send_message to ensure URLs point to gateway endpoint with site parameter.

(self, message)

Source from the content-addressed store, hash-verified

34
35
36 async def send_message(self, message):
37 """Override send_message to ensure URLs point to gateway endpoint with site parameter."""
38 # Check if message contains results with URLs
39 if isinstance(message, dict):
40 # Handle messages with 'content' field (results)
41 if 'content' in message and isinstance(message['content'], list):
42 for result in message['content']:
43 if 'url' in result:
44 url = result['url']
45 # If URL doesn't start with http:// or https://, convert to gateway URL
46 if not url.startswith(('http://', 'https://')):
47 site_type = result.get('@type', '')
48 result['url'] = build_nlweb_gateway_url(url, self.query, site_type)
49 logger.debug(f"Modified URL from '{url}' to '{result['url']}'")
50
51 # Handle single result messages
52 elif 'url' in message:
53 url = message['url']
54 if not url.startswith(('http://', 'https://')):
55 site_type = message.get('@type', '')
56 message['url'] = build_nlweb_gateway_url(url, self.query, site_type)
57 logger.debug(f"Modified URL from '{url}' to '{message['url']}'")
58
59 # Call parent class's send_message with modified message
60 await super().send_message(message)
61
62
63 async def whoQueryRewrite(self):

Callers 15

create_user_messageFunction · 0.45
create_assistant_resultFunction · 0.45
create_assistant_answerFunction · 0.45
create_status_messageFunction · 0.45
create_error_messageFunction · 0.45
create_complete_messageFunction · 0.45
doMethod · 0.45
doMethod · 0.45
_send_messageMethod · 0.45

Calls 3

build_nlweb_gateway_urlFunction · 0.90
getMethod · 0.80
debugMethod · 0.45

Tested by

no test coverage detected