KamoCRM

File a website's chats under the topic its integration chose

FeatureMediaService
Shipped
6 செப்டம்பர், 2026 அன்று 12:21 AM UTC
Author
Kamo
Commit
637a335

createSupportSession took the topic from whatever title the visitor's browser sent — the widget hardcodes "General Inquiry" — and when no topic matched that name it silently used the org's first active topic by sort order. So which team a website's chats reached was decided by a string in public JavaScript and a sort order, and no setting anywhere could change it. resolveTopic() now reads the integration's configured topic first. The old two tiers stay underneath it, because every integration predating the setting has none configured and a chat filed under a guessed queue still beats a visitor who can't reach anyone. A configured topic that no longer resolves — deleted, or moved to another org — logs and falls through rather than refusing the chat: the visitor isn't the right person to absorb a misconfiguration they can't see. The integration lookup moves above the topic resolution, since it's now an input to it rather than just attribution captured afterwards. Writes go through resolveOwnedSupportTopicId, mirroring the sales-agent resolver beside it — the org check belongs at the write, not at some later read that happens to be scoped. Not added to the bootstrap cache-bust list on purpose: this is resolved server-side and never reaches the widget's bootstrap payload.

All changes

Like what you see shipping?

All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.

Start Free ForeverView Pricing