mirror of
https://github.com/dartdavros/chatballs.git
synced 2026-10-05 09:14:58 +03:00
feat(webchat): embeddable Web Chat widget as a channel connection
Web Chat is a WEB connection of a processing channel (SPEC-0003/ADR-0012), reusing the whole contour: a public widget loads from the hub domain via one async tag (<script src=hub.edevs.tech/chat-widget.js data-channel=...>), opens an isolated iframe panel. Backend webchat app: public config/session/messages endpoints (anonymous session, hash-at-rest token); inbound goes through the same ingest (AI release + retrieval + handoff + notifications); WEB transport send is a no-op (browser polls). Panel rebuilt 1:1 from the baseline (welcome+consent / ai / operator / unavailable, quick replies, typing). nginx serves /chat-widget.js and /chat/ from the hub domain; demo host page at /chat/demo.html. Verified end-to-end: config→session→message→AI reply→poll. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
1 parent
0881c838d7
commit
d79ebda2b7
18 files changed
+649
-26
No files matched your search
@@ -9,6 +9,20 @@ server {
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
}
|
||||
|
||||
# Web Chat widget loader (served from the hub domain).
|
||||
location = /chat-widget.js {
|
||||
proxy_pass http://backend:8000;
|
||||
proxy_set_header Host $host;
|
||||
}
|
||||
|
||||
# Web Chat panel (iframe content) — Vite base /chat/.
|
||||
location /chat/ {
|
||||
proxy_pass http://web-chat:5175;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
}
|
||||
|
||||
location / {
|
||||
proxy_pass http://internal-ui:5173;
|
||||
proxy_set_header Host $host;
|
||||
|
||||
Reference in new issue
Block a user