VivoKrei b9a2d08593 fix(nextcloud-talk): parse rich object file shares from webhook payload
When a user shares a file or image in Nextcloud Talk, the webhook
delivers object.content as a JSON-encoded rich object message like:
  {"message":"{file}","parameters":{"file":{"type":"file","name":"IMG.jpg","link":"https://..."}}}

Previously payloadToInboundMessage() passed this raw JSON string as
text, leaving mediaUrls unpopulated and the agent blind to attachments.

This change adds parseRichObjectContent() which:
- Detects JSON-encoded rich object payloads
- Extracts file links into mediaUrls
- Resolves {placeholder} names for human-readable displayText
- Falls back to raw content for non-rich-object text (no behaviour change)

Also updates NextcloudTalkInboundMessage type to include mediaUrls?,
passes mediaUrls through inbound.ts to the agent context payload, and
relaxes the empty-body guard to allow media-only messages through.

Fixes #29152
2026-03-18 11:11:27 -04:00
..