Конфігурація
integrationId
Обов'язковий
Публічний ідентифікатор інтеграції з каналу віджета DobroDesk.
stringlauncher
Значення за замовчуванням: default
Налаштування нативної навігації та показу web launcher або панелі.
"default" | "hidden" = "default"locale
Значення за замовчуванням: auto
Локаль віджета для контенту. Web за замовчуванням використовує auto; нативні bundle зараз підтримують en, uk, de та es.
string? = "auto"loaderUrl
Значення за замовчуванням: https://widget.dobrodesk.com/widget/loader/v1.min.js
URL версійованого браузерного loader script. Якщо не вказати, використовується loader DobroDesk.
string?appearance
Спільний об'єкт appearance-v2: кольори, типографіка, компонування й тіні в задокументованих межах.
DobroDeskWidgetAppearance?appearanceElement
Спільний об'єкт appearance-v2: кольори, типографіка, компонування й тіні в задокументованих межах.
HTMLElement?identityToken
Функція бекенду, що повертає короткоживучий підписаний JWT клієнта. Секрет підпису не можна зберігати в застосунку.
string?helpCenterHandoffToken
Оновлює короткоживучу підписану особу або токен передачі до Help Center.
string?openOnReady
Значення за замовчуванням: false
Налаштування нативної навігації та показу web launcher або панелі.
boolean?previewContext
Обмежений JSON-контекст для явно зареєстрованих дій хоста.
DobroDeskWidgetPreviewContext?hostActions
Дозволені callback-функції застосунку для керованих дій віджета. Вони не автентифікують мережеві запити.
Record<string, DobroDeskWidgetHostActionHandler>?Життєвий цикл і розмова
createDobroDeskWidget
Створює клієнт і перевіряє конфігурацію інтеграції.
createDobroDeskWidget(options: DobroDeskWidgetOptions) -> DobroDeskWidgetClientПараметри
options.integrationIdstringОбов'язковий- Публічний ідентифікатор інтеграції з каналу віджета DobroDesk.
options.loaderUrlstring?- У продакшені API origin має бути HTTPS. Нативні клієнти дозволяють HTTP localhost для розробки.
options.openOnReadyboolean?- Налаштування нативної навігації та показу web launcher або панелі.
- Помилки
- widget_context_invalid
- widget_mount_container_invalid
- widget_appearance_invalid
ready
Виконується після завершення завантаження web loader і handshake з frame.
ready: Promise<void>open / close / toggle
Відкриває панель віджета.
open(): void; close(): void; toggle(): voidПоказ віджета
setLauncherVisibility
Показує або ховає вбудований launcher, не закриваючи віджет.
setLauncherVisibility(visible: boolean): voidprefill
Встановлює дані клієнта до початку розмови.
prefill(value: DobroDeskWidgetPrefill): voidsetIdentityToken
Оновлює короткоживучу підписану особу або токен передачі до Help Center.
setIdentityToken(token: string): voidsetHelpCenterHandoffToken
Оновлює короткоживучу підписану особу або токен передачі до Help Center.
setHelpCenterHandoffToken(token: string): voidsetPreviewContext
Встановлює контекст попереднього перегляду оператора лише в пам'яті для web loader.
setPreviewContext(context: DobroDeskWidgetPreviewContext): voidopenHelp / openArticle
Відкриває розділ Help у віджеті.
openHelp(): void; openArticle(articleId: string): voidsetContext / getContext
Замінює обмежений контекст дій хоста.
setContext(value): void; getContext(): DobroDeskWidgetContextВигляд і доступність
updateAppearance
Застосовує перевірене runtime-перевизначення вигляду.
updateAppearance(appearance: DobroDeskWidgetAppearance): void- Помилки
- widget_appearance_invalid
resetAppearance
Скидає runtime-вигляд до значень адміністратора або переданих значень.
resetAppearance(appearance?: DobroDeskWidgetAppearance): voidrefreshAppearance
Повторно читає CSS-змінні host і застосовує значення в дозволених межах.
refreshAppearance(hostElement?: HTMLElement): voidgetAppearance
Повертає ефективний вигляд і джерела його полів.
getAppearance(): DobroDeskWidgetAppearanceSnapshot | nullСтани, завантаження та події
DobroDeskWidgetLoadingState
Спільний стан завантаження має одне зі значень idle, starting-session, loading-messages, sending-message, waiting-for-assistant, executing-action, reconnecting або flushing-outbox.
{ active: boolean; phase: idle | initializing | loading-content | loading-session | sending-message | waiting-for-response | executing-action | reconnecting | error; operationId?; kind?; scope?; requestId?; actionId?; startedAt?; errorCode? }DobroDeskWidgetEventType
Події native і wrapper використовують спільний envelope loading, session, snapshot, accepted-message, error і session-cleared.
opened | closed | conversationStarted | messageSent | messageReceived | formSubmitted | handoffRequested | handoffStateChanged | unreadCountChanged | actionProposed | actionConfirmed | actionCompleted | actionFailed | hostActionRequested | stateChanged | loadingChangedonStateChange
Повідомляє host про зміни стану віджета.
onStateChange(listener): () => voidonLoadingChange
Повідомляє host про фази завантаження та повторного підключення.
onLoadingChange(listener): () => voidon / off
Підписує на подію віджета з указаною назвою.
on(eventType, listener): () => void; off(eventType, listener): voidПомилки
DobroDeskWidgetErrorCode
Обробляйте стабільні машинні коди та не показуйте діагностику сервера в UI.
widget_ready_timeout | widget_context_invalid | widget_mount_container_invalid | widget_appearance_invalid | host_action_failed | host_action_invalid_result | host_action_timeout | widget_logged_out | widget_identity_changed | widget_destroyed