@botfabrik/engine-webclient 4.111.1 → 4.113.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +72 -0
- package/dist/client/assets/index-BVrhQtN9.js +77 -0
- package/dist/client/assets/index-BVrhQtN9.js.map +1 -0
- package/dist/client/assets/index-Dd0b6P-p.css +1 -0
- package/dist/client/index.html +2 -2
- package/dist/embed/bundle.js +9 -6
- package/package.json +5 -5
- package/dist/client/assets/index-2NlIygAz.js +0 -77
- package/dist/client/assets/index-2NlIygAz.js.map +0 -1
- package/dist/client/assets/index-BOx6CegN.css +0 -1
package/README.md
CHANGED
|
@@ -298,6 +298,28 @@ Diese Konfiguration stellt sicher, dass sich Benutzer vor der Nutzung des Chats
|
|
|
298
298
|
Falls dieses Property auf `false` ist, erscheint z.B. der FAB (Floating Action Button) auf der Webseite nicht. Der Chatbot kann via FAB nur mittels Bookmarklet verwendet werden.
|
|
299
299
|
Diese Einstellung ist nützlich, wenn der Chatbot noch in Entwicklung ist und die Webagentur ihn bereits in der Webseite integrieren will. Wir können damit steuern, ob er auf der Webseite sichtbar ist oder nicht.
|
|
300
300
|
|
|
301
|
+
### allowedEmbedOrigins
|
|
302
|
+
|
|
303
|
+
Eine Liste von Domain-URLs, von denen aus der Chatbot in einem iframe eingebettet werden darf. Dies ist eine wichtige Sicherheitsfunktion, um zu kontrollieren, welche Webseiten den Chatbot integrieren können.
|
|
304
|
+
|
|
305
|
+
- **[]** (leeres Array) - Nur die Server-eigene Domain ist erlaubt
|
|
306
|
+
- **['https://example.com', 'https://www.example.com']** - Nur die aufgelisteten Domains sind erlaubt
|
|
307
|
+
|
|
308
|
+
**Wichtig:** Diese Einstellung muss korrekt konfiguriert sein, damit die Script-Tag Integration funktioniert.
|
|
309
|
+
|
|
310
|
+
### allowedResourceOrigins
|
|
311
|
+
|
|
312
|
+
Eine Liste von Domain-URLs, von denen externe Ressourcen wie Stylesheets, Bilder und Fonts geladen werden dürfen. Dies ist eine Content Security Policy (CSP) Einstellung zur Kontrolle externer Ressourcen.
|
|
313
|
+
|
|
314
|
+
- **[]** (leeres Array) - Nur die Server-eigene Domain ist als Ressourcen-Quelle erlaubt
|
|
315
|
+
- **['https://fonts.googleapis.com', 'https://cdn.example.com']** - Nur die aufgelisteten Domains sind erlaubt
|
|
316
|
+
|
|
317
|
+
Diese Einstellung betrifft:
|
|
318
|
+
|
|
319
|
+
- **Stylesheets** (style-src): Externe CSS-Dateien
|
|
320
|
+
- **Bilder** (img-src): Externe Bilder und Icons
|
|
321
|
+
- **Fonts** (font-src): Externe Schriftarten (z.B. Google Fonts)
|
|
322
|
+
|
|
301
323
|
## Texte / Übersetzungen anpassen
|
|
302
324
|
|
|
303
325
|
Sämtliche Texte des Webclients können angepasst werden. Dazu müssen im Bot-Projekt die Locale-Dateien modifiziert werden. Die anzupassenden Texte sind unter `website-messenger` aufzuführen.
|
|
@@ -481,6 +503,56 @@ Möchte man also z.B. beim grossen Client ein anderes Logo verwenden, kann man d
|
|
|
481
503
|
|
|
482
504
|
Unter der Chatbot-Route unter "/embed/ des Servers (z.B. `http://localhost:3000/chatbot/embed`) läuft einen Beispielseite wie der Chatbot eingebetet werden kann. Dort gibt es ebenfalls einen Button, mit welchem das benötigte Snippet angezeigt werden kann. Das Aussehen kann im File `/public/webclient/embed/custom.css` jegliches CSS überschreiben (siehe [Beispiel](src/embed/custom.css)).
|
|
483
505
|
|
|
506
|
+
### Script-Tag Integration
|
|
507
|
+
|
|
508
|
+
Das Einbetten erfolgt über ein Script-Tag mit folgenden Attributen:
|
|
509
|
+
|
|
510
|
+
**Wichtig:** Damit die Integration funktioniert, muss die Domain der Webseite in der server-seitigen Property `allowedEmbedOrigins` konfiguriert sein. Siehe [allowedEmbedOrigins](#allowedembedorigins).
|
|
511
|
+
|
|
512
|
+
```html
|
|
513
|
+
<script
|
|
514
|
+
id="chatbot"
|
|
515
|
+
data-server="https://my-chatbot.bubble-chat.ch"
|
|
516
|
+
data-expand-at-start="all"
|
|
517
|
+
data-link-handling="default"
|
|
518
|
+
defer
|
|
519
|
+
src="https://my-chatbot.bubble-chat.ch/webclient/embed/bundle.js"
|
|
520
|
+
></script>
|
|
521
|
+
```
|
|
522
|
+
|
|
523
|
+
#### data-server (erforderlich)
|
|
524
|
+
|
|
525
|
+
Die vollständige URL zum Chatbot-Server.
|
|
526
|
+
|
|
527
|
+
Beim `data-server` können Query-Parameter angegeben werden, um dem Chatbot bei der Integration zusätzliche Informationen mitzuteilen.
|
|
528
|
+
|
|
529
|
+
Beispiel: `data-server="https://my-chatbot.bubble-chat.ch?systemId=123&userRole=editor"`
|
|
530
|
+
|
|
531
|
+
**Hinweis:** Die Query-Parameter `userId` und `sessionId` sind nicht erlaubt.
|
|
532
|
+
|
|
533
|
+
#### data-expand-at-start (optional)
|
|
534
|
+
|
|
535
|
+
Mit `data-expand-at-start` kann gesteuert werden, ob das Chatfenster beim Laden der Seite automatisch geöffnet werden soll. Die Option berücksichtigt dabei das verwendete Endgerät.
|
|
536
|
+
|
|
537
|
+
- **"all"** - Das Chatfenster wird auf allen Geräten automatisch geöffnet.
|
|
538
|
+
- **"desktop"** - Das Chatfenster wird nur auf Desktop-Geräten (≥768px Bildschirmbreite) automatisch geöffnet.
|
|
539
|
+
- **"mobile"** - Das Chatfenster wird nur auf mobilen Geräten (<768px Bildschirmbreite) automatisch geöffnet.
|
|
540
|
+
- **nicht gesetzt** (Standard) - Das Chatfenster bleibt geschlossen und muss vom Benutzer manuell geöffnet werden.
|
|
541
|
+
|
|
542
|
+
**Wichtig:** Das Chatfenster wird nur automatisch geöffnet, wenn der Benutzer es nicht zuvor explizit geschlossen hat. Der Fensterstatus wird in einem Cookie (`bubble-chat-window-state`) für 8 Stunden gespeichert.
|
|
543
|
+
|
|
544
|
+
**Hinweis:** Dieses Attribut übersteuert die Server-seitige Property `expandChatWindowAtStart`.
|
|
545
|
+
|
|
546
|
+
#### data-link-handling (optional)
|
|
547
|
+
|
|
548
|
+
Mit `data-link-handling` kann gesteuert werden, wie Links im Chatbot geöffnet werden.
|
|
549
|
+
|
|
550
|
+
- **"default"** (Standard) - Links der gleichen Domain werden im selben Tab und Links einer anderen Domain werden in einem neuen Tab geöffnet.
|
|
551
|
+
- **"existing-tab"** - Links werden immer im selben Tab geöffnet.
|
|
552
|
+
- **"new-tab"** - Links werden immer in einem neuen Tab geöffnet.
|
|
553
|
+
|
|
554
|
+
Weitere Details zur Integration finden sich im [Script-Tag README](./script-tag/README.md).
|
|
555
|
+
|
|
484
556
|
## Strategie zur Speicherung des Chatverlaufs
|
|
485
557
|
|
|
486
558
|
Sämtliche Actions, die die Botengine ausführt, werden in der Datenbank gespeichert. Damit kann jeder beliebige Chatverlauf zu einem späteren Zeitpunkt wiederhergestellt werden.
|