feat(voice): add Confluence read/write tools for voice sessions
Enable realtime Confluence page editing during Element Call voice sessions. - Add read_confluence_page and update_confluence_page function tools - Detect Confluence URLs shared in Matrix rooms, store page ID for voice context - Section-level updates via heading match + version-incremented PUT Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
14
bot.py
14
bot.py
@@ -804,6 +804,20 @@ class Bot:
|
||||
await self._send_text(room.room_id, menu)
|
||||
return
|
||||
|
||||
# Detect Confluence page links → store page ID for voice session context
|
||||
confluence_match = re.search(
|
||||
r'agiliton\.atlassian\.net/wiki/.*?pages/(\d+)', body)
|
||||
if confluence_match:
|
||||
page_id = confluence_match.group(1)
|
||||
docs = self._room_document_context.setdefault(room.room_id, [])
|
||||
docs.append({
|
||||
"type": "confluence",
|
||||
"filename": f"Confluence page {page_id}",
|
||||
"text": f"confluence_page_id:{page_id}",
|
||||
"timestamp": time.time(),
|
||||
})
|
||||
logger.info("Confluence page %s detected in room %s", page_id, room.room_id)
|
||||
|
||||
await self.client.room_typing(room.room_id, typing_state=True)
|
||||
try:
|
||||
await self._respond_with_ai(room, body, sender=sender, image_data=image_data)
|
||||
|
||||
Reference in New Issue
Block a user