Saltar al contenido principal

Integration Script

You can integrate the embedded assistant into your html page with the following script

<script>
const loadAlghoViewer = function () {

const addAlgho = function(data, url) {
const addTag = function(data) {
const tag = document.createElement("algho-viewer");
tag.setAttribute("id", "algho-viewer");
Object.keys(data).map(function (key) { tag.setAttribute(key, data[key]); });
document.body.appendChild(tag);
};

const addScript = function(url) {
const script = document.createElement("script");
script.setAttribute("id", "algho-viewer-module");
script.setAttribute("type", "text/javascript");
script.setAttribute("defer", "defer");
script.setAttribute("charset", "UTF-8");
script.setAttribute("src", url);
document.body.appendChild(script)
};

addTag(data);
addScript(url);
};

const timeout = 0;
const data = {
"bot-id": "5baa603a486bff7ff7501820c9680393",
"widget": "true",
"open": "false",
"z-index": "9999",
};

setTimeout(function() {
addAlgho(data, "https://virtualassistant.alghoncloud.com/algho-viewer.min.js");
}, timeout);
};

document.addEventListener("DOMContentLoaded", loadAlghoViewer, {once : true});
</script>

or

<script>
document.addEventListener("DOMContentLoaded", function() {
const tag = document.createElement("algho-viewer");
tag.setAttribute("id", "algho");
tag.setAttribute("bot-id", "5baa603a486bff7ff7501820c9680393");
tag.setAttribute("widget", "true");
tag.setAttribute("open", "false");
tag.setAttribute("z-index", "9999");
document.body.appendChild(tag);

const script = document.createElement("script");
script.setAttribute("id", "algho-viewer-module");
script.setAttribute("type", "text/javascript");
script.setAttribute("defer", "defer");
script.setAttribute("src", "https://virtualassistant.alghoncloud.com/algho-viewer.min.js");
document.body.appendChild(script);
});
</script>

or

<script>
const tag = document.createElement("algho-viewer");
tag.setAttribute("id", "algho");
tag.setAttribute("bot-id", "5baa603a486bff7ff7501820c9680393");
tag.setAttribute("widget", "true");
tag.setAttribute("open", "false");
tag.setAttribute("z-index", "9999");
document.body.appendChild(tag);

const script = document.createElement("script");
script.setAttribute("id", "algho-viewer-module");
script.setAttribute("type", "text/javascript");
script.setAttribute("defer", "defer");
script.setAttribute("src", "https://virtualassistant.alghoncloud.com/algho-viewer.min.js");
document.body.appendChild(script);
</script>

or at bottom of body element

<algho-viewer
id="algho"
bot-id="5baa603a486bff7ff7501820c9680393"
open="false"
widget="true"
z-index="9999"
/>
<script defer src="https://virtualassistant.alghoncloud.com/algho-viewer.min.js"></script>

Tag Params

Main params

Tag ParamsTypeDefaultDescription
bot-idStringBot Id identifier
group-idNumericGroup Id identifier for multilanguage
question-idNumericOpens the assistant with preset QA
question-repeatBooleanfalseOpens the assistant with preset QA [for each access or not]
force-start-conversationBooleanfalseForce start conversation to recover conversationId
openBooleanfalseOpen widget at startup
restore-openBooleantrueRemember open status at startup (only desktop interface, not mobile)
open-delayNumeric0Automatic opening delay of widget at startup in seconds
audioBooleantrueEnable audio output
voiceBooleantrueEnable audio input
micBooleantrueEnable microphone input
soundBooleantrueEnable sound notifications
cookie-domainStringOverride domain for cookies
cookie-expireString1yOverride expire for cookies
iframeBooleanfalseEnable interface to be used inside iframe
force-desktopBooleanfalseForce desktop UI on mobile devices
force-show-closeBooleanfalseForce showing close UI button if widget is false
close-timeNumeric0Automatic closing after specified time in seconds (no interaction)
split-answerBooleantrueSplit response paragraphs into multiple balloon

If bot-id is omitted, it will be retrieved from bot query string params from url page.

Positioning and Sizing params

Tag ParamsTypeDefaultDescription
inlineBooleanfalseForce interface boxed inside parent html element
floatingBooleanfalseForce floating positioning inside page
floating-rightBooleantrueForce right floating positioning inside page
floating-leftBooleanfalseForce left floating positioning inside page
floating-widthUnitForce width in floating positioning
floating-heightUnitForce height in floating positioning
widthUnitWidth in pixel where floating enabled and inline disabled
heightUnitHeight in pixel where floating enabled and inline disabled
margin-rightUnitRight margin in pixel where floating enabled and inline disabled
margin-leftUnitLeft margin in pixel where floating enabled and inline disabled
margin-bottomUnitBottom margin in pixel where floating enabled and inline disabled
chat-margin-bottomUnit150pxTop margin in pixel to reduce chat space in DHI (Embed)

Microphone params

Tag ParamsTypeDefaultDescription
auto-microphoneBooleanfalseAuto open microphone after speech (disabled on forms and multimedia)
auto-microphone-delayNumeric100Delay in milliseconds to open microphone after speech (default 100 ms)
force-auto-microphoneBooleanfalseForce auto open microphone after speech
stt-timeoutNumber3.0Recognition timeout (no voice recognition on Chrome Google STT)
stt-manualBooleanfalseForce manual click to start and stop speech recognition

Vocal Activation Command params

Tag ParamsTypeDefaultDescription
commandBooleanfalseEnable speech command module (Google Crome STT)
command-languageOverride command module language (Google Crome STT)
command-aliasAdd other names for command module separated by ',' (Google Crome STT)
command-offlineBooleanfalseEnable offline speech command module (Vosk)

Webcam Activation Command params

Tag ParamsTypeDefaultDescription
webcamBooleanfalseEnable webcam module
command-webcamBooleanfalseEnable webcam "thumb up" hand command module

Digital Human Interface (DHI) params

Tag ParamsTypeDefaultDescription
dhiBooleanfalseEnable DHI interface
fullscreenBooleanfalseForce fullscreen
allow-fullscreenBooleanfalseAllow switch fullscreen
allow-switch-interfaceBooleantrueAllow switch interface from textual to dhi and vice versa
transparentBooleanfalseForce transparent background for embedded
dhi-configBooleantrueUse DHI configuration from Composer
bg-imageUrlOverride DHI background image (jpg, png)
bg-videoUrlOverride DHI background video (mp4)
bg-webcamStringUse DHI background webcam video (0, 1, user, environment)
model3dUrlOverride DHI 3d model
config3dJsonOverride DHI 3d config
hdrUrlOverride DHI hdr file
pixel-ratioDecimalOverride screen pixel ratio for decrease 3d quality
avatar-liteBooleanfalseForce loading light version of 3d avatar with 1024x1024 texture (Mobile version)
avatar-delayedBooleantrueForce loading 3d avatar only when widget was opened (not at startup)
avatar-waitBooleantrueWait to open chat panel after avatar is loaded
chatBooleantrueShow chat panel
group-last-messageBooleantrueShow grouped messages inside DHI or last message
hide-last-messageBooleanfalseHide standard text messages
hide-loading-messageBooleanfalseHide loader before show message
hide-suggestion-last-messageBooleanfalseHide suggestions inside DHI when close message
auto-hide-messageNumeric0Enable auto hide standard text messages in seconds (0: disabled)
show-full-chatBooleanfalseShow full chat interface on DHI
dhi-notchBooleanfalseShow Notch on DHI interface
command-appBooleanfalseEnable notch message for custom application (Ex. Robot)
dhi-modeStringForce dhi config mode: [desktop,mobile,embed,kiosk,app]
lisBooleanfalseEnable Lis input webcam interface
avatar-reloadBooleantrueReload 3d avatar on switch bot if has different 3d configs
force-dhi-leftBooleanfalseForce dhi avatar position on left with full chat (only on desktop device)

DHI Kiosk Interface params

Tag ParamsTypeDefaultDescription
kioskBooleanfalseEnable kiosk interface
sessionNumeric60Session timeout in seconds
standby-hoursRangesStandby hours ranges (Ex. 12:00-13:00,18:00-19:00)
reload-timeTimesReload the interface at specified times if there is no user interaction (Ex. 12:00,13:00,18:00,19:00)
gps-locationAddressGps address location (Ex. Via Roma, 12 53100 Siena)
avatarBooleantrueShow avatar panel
kiosk-notchBooleantrueShow top notch
kiosk-bannerBooleantrueShow bottom banner
kiosk-welcomeBooleantrueShow welcome video
disable-privacy-messageBooleanfalseShow privacy message after welcome message
kiosk-reset-switchBooleanfalseReset bot on standby to original value

Conversational params

Tag ParamsTypeDefaultDescription
tokenStringAlgho Token. The token was passed to any post call inside http header "Algho-Token: token" and can be a jwt token or an encrypted token with other methods.For Jwt Token see https://jwt.io/introduction/
ajwtStringAlgho Json Web Token. See Algho JWT payload
contextStringAlgho context
current-urlUrlCurrent url to override send to conversation API and WS Form
user-idStringUser identifiler for session
user-id-prefixStringUser identifiler prefix

Emotional params

Tag ParamsTypeDefaultDescription
webcam-timeNumeric30How much data send for emotional recognition (time in seconds)

UI params

Tag ParamsTypeDefaultDescription
bot-nameBooleanfalseShow assistant name inside header
bot-iconBooleanfalseShow assistant icon inside chat
bot-logoUrlSet image logo
auto-narrationBooleanfalseEnable auto narration without confirm dialog
dictate-preview-messageBooleantrueEnable new preview interface when dictate with microphone
disable-selectBooleanfalseDisable mouse click text selection
hide-settingsBooleanfalseHide settings panel and menu
hide-infosBooleanfalseHide info panel and menu
hide-operatorBooleanfalseHide operator request (disable)
hide-menuBooleanfalseHide main menu
livechat-menuBooleantrueHide livechat menu
allow-inputBooleantrueEnable input (keyboard and microphone) interaction
allow-form-inputBooleanfalseEnable input (keyboard) interaction on forms
invert-privacyBooleanfalseInvert privacy message on start screen
privacy-messageStringCustom privacy message es: "Click here for privacy"
privacy-urlStringCustom privacy url
start-messageStringCustom start message es: "Click here to start"
hide-historyBooleanfalseHide chat history
hide-past-historyBooleanfalseHide past chat history (show only last session if active)
auto-accept-policyBooleanfalseForce accept privacy
disable-welcomeBooleanfalseDisable welcome & welcome back messages
show-all-messageBooleanfalseShow all messages in DHI Embed
show-baloon-timeBooleanfalseShow time inside baloon message (New)
group-baloon-timeBooleanfalseGroup time in last baloon message (New)
split-answerBooleantrueSplit answer by paragraph
lang-openBooleanfalseForce show new language selector panel
language-panelBooleanfalseForce show new language selector panel
disable-language-tooltipBooleanfalseDisable language tooltip in selector
force-input-keyboardBooleanfalseForce show input keaboard as default
limit-historyNumber0Limit messages on history
baloon-menuBooleanfalseForce show botton to toggle messages baloon

Suggestions & Cards params

Tag ParamsTypeDefaultDescription
hide-mobile-suggestionBooleanfalseEnable correlated button to show suggestions on mobile devices
scroll-down-suggestionBooleanfalseForce scroll down suggestions when expanded
show-all-suggestionBooleanfalseShow all suggestions (not limited to 3 elements)
keep-suggestion-openBooleanfalseKeep all suggestions open
limit-suggestionNumber3Set number of suggestion to show
paginate-suggestionBooleanfalsePaginate suggestion to show
limit-cardNumber5Set number of card (admissible values) to show
welcome-back-suggestionBooleanfalseForce suggestions on the welcome back message

Input area

Tag ParamsTypeDefaultDescription
input-placeholderStringText for input placeholder
suggestion-placeholderBooleanfalseText for input placeholder if response has suggestions
input-styleStringCSS input style to override
Tag ParamsTypeDefaultDescription
link-previewBooleantrueEnable link preview
link-openerStringBase url to disable link preview (ex: authenticated area)
link-textStringAlternative text to show if link preview is disabled
link-targetString_selfLink target for url on same domain [_blank, _self, _parent, _top, {framename}]
link-auto-openBooleantrueEnable auto open link on same domain
link-tooltipBooleantrueEnable link tooltip on mouse over
disable-link-openerBooleanfalseDisable open link on opener window if match link-opener host domain

Widget params

ParamsTypeDefaultDescription
widgetBooleanfalseEnable widget
tooltipStringTooltip message
widget-iconStringUrl of widget icon or base64
widget-oldBooleanfalseUse old widget style
widget-border-radiusUnitOld widget radius in pixel
widget-bottomUnitPosition from bottom margin in pixel
widget-rightUnitPosition from right margin in pixel
widget-topUnitPosition from top margin in pixel
widget-leftUnitPosition from left margin in pixel
widget-sizeUnit70pxSize in pixel
widget-moveBooleanfalseAllow widget move with mouse
widget-colorStringcurrentColorWidget color
widget-border-colorString#ffffff3cWidget border color

Theme Color params

Tag ParamsTypeDefaultDescription
color-configBooleantrueUse color configuration from Composer
theme-styleEnumOverride theme style [Dark, Light, Icy]
theme-invertBooleanInvert theme colors
colorColorGenerate light theme by color
darkBooleanfalseGenerate dark theme by color
themeJsonTheme styles override
theme-cssUrlTheme styles css link to override
font-familyStringPoppinsTheme font-family
fontStringPoppinsCss font file [poppins, manrope, titillium] or google font url
font-largeBooleanfalseUse preset large font size
icon-setEnumUse old google icon set [Old]

Livechat

Tag ParamsTypeDefaultDescription
livechat-timeoutNumber180Timeout in seconds to wait operators
livechat-inputBooleanfalseShow livechat close button on input bar
livechat-confirmBooleantrueShow livechat connect confirm message

Accessibility params

Tag ParamsTypeDefaultDescription
screen-readerBooleanfalseEnable specific features for screen readers
show-tab-indexBooleanfalseShow current focused element

Smart Navigation params

Tag ParamsTypeDefaultDescription
browserBooleanfalseEnable smart navigation on iframe
homeUrlHome page to show inside iframe

Api path and WS forms params

ParamsTypeDefaultDescription
api-urlUrlapi base url
api-pathPath/apiapi base path
ws-urlUrlUrl base for Algho Forms

If ws-url is present, it will be used to compose the final url by combining it with the relative one saved on the forms/fields.

DHI Postprocessing Lut Cube params

Tag ParamsTypeDefaultDescription
lut-cubeUrlUse lut cube file
lut-intensityDecimal1.0Lut intensity

DHI Postprocessing effects params

Experimental: may change in future

Tag ParamsTypeDefaultDescription
postprocessingEnumUse postprocessing effects [bokeh, chromatic, bleach, motionblur, custom]

Debug params

Tag ParamsTypeDefaultDescription
logEnumnoneEnable console logging [none, warn, info, debug]

QueryString Params

Digital Human Interface (DHI)

QueryString Params ParamsDefaultDescription
theme-styleOverride theme style [Dark, Light, Icy]
themeTheme styles override. See Theme colors

DHI Kiosk Interface

QueryString Params ParamsDefaultDescription
webcam0Enable webcam module
commandWebcam0Enable webcam "thumb up" hand command module
webcamDebug0Enable webcam debug
command0Enable speech command module (Google Crome STT)
commandLanguageOverride command module language (Google Crome STT)
commandAliasAdd other names for command module separated by ',' (Google Crome STT)
commandOffline0Enable offline speech command module (Vosk)
session60Session timeout in seconds
sessionCountdown10Session countdown in seconds (0: disable countdown)
standbyHoursStandby hours ranges (Ex. 12:00-13:00,18:00-19:00)
reloadTimeReload the interface at specified times if there is no user interaction (Ex. 12:00,13:00,18:00,19:00)
gpsLocationGps address location (Ex. Via Roma, 12 53100 Siena)
microphone1Enable/disable microphone
autoMicrophone0Auto open microphone after speech (disabled on forms and multimedia)
autoMicrophoneDelay100Delay in milliseconds to open microphone after speech (default 100 ms)
forceAutoMicrophone0Force auto open microphone after speech
sttTimeout3.0Recognition timeout (no voice recognition on Chrome Google STT)
exit0Show exit session button
avatarLite0Force loading light version of 3d avatar with 1024x1024 texture (Mobile version)
pixelRatioOverride screen pixel ratio for decrease 3d quality
stats0Show 3D FPS statistics
pdf0Use our pdf viewer (as an alternative to the Chrome viewer which opens the internal links to the PDF on the same page by exiting the Kiosk interface)
media0Open multimedia content in fullscreen (image,video,iframe,slideshow,charts,pdf)
hideLastMessage0Hide standard text messages
avatar1Show avatar panel
backgroundWebcamUse webcam as DHI background (0, 1, user, environment)
accessibility0Force full screen close button at bottom
langOpen0Force language selector opened
languagePanel0Force show new language selector panel
webcamDistance0.0Minimal face rectangle ratio for webcam engagement [0..100]
disablePrivacyMessage0Show privacy message after welcome message
invertChat0Invert chat top to bottom
chatMarginTopChat margin from top (example: 200px)
kioskLandscape0Enable Kiosk Landscape interface
kioskSubtitles0Enable Kiosk subtitles interface (if hideLastMessage = 1)
kioskSubtitlesOnlyLis0Enable Kiosk subtitles interface only for lis (if hideLastMessage = 1)
webcamDelay900Initial delay in ms for elaborate face recognition
webcamDelayActive900Delay in ms for elaborate face recognition when interface is active
webcamDelayInactive900Delay in ms for elaborate face recognition when interface is inactive
webcamDelaySpeech900Delay in ms for elaborate face recognition when interface speech
webcamBackendwebglEngine for webcam analysis [webgl, cpu]
kioskResetSwitch0Reset bot on standby to original value
avatarReload1Reload 3d avatar on switch bot if has different 3d configs
kioskWebcamActivation1Enable Kiosk activation by webcam (if webcam was enabled)
kioskWebcamDeactivation1Enable Kiosk deactivation by webcam (if webcam was enabled)
kioskExit1Enable Kiosk exit button
kioskExitTextKiosk exit button text

DHI Kiosk STT VAD

The new STT Vad module (Speech to Text with Vocal Activity Detection) enables automatic speech recognition and transcription without the need to click the microphone to make requests. When combined with the kiosk interface with an enabled webcam, it will activate only when a person is detected in front of the totem.

It cannot be used in the mobile interface.

QueryString Params ParamsDefaultDescription
sttVad0Enable new STT Vad module for interactive vocal transcription and request
sttVadBreak0Enable vocal interrupt for new request
sttVadTimeout0Enable autosend after timeout (milliseconds) of incomplete vocal transcription
sttVadPause1152Change value for detect pause on speech (milliseconds)

Backward compatibility

QueryString ParamsDescription
botIdBot Id identifier
autostartQuestionIdOpens the assistant with pre-set QA [only on first access] (Optional)
autostartEveryTimeQuestionIdOpens the assistant with pre-set QA [for each access] (Optional)
autoOpenAutomatic opening of notch at startup-1 close0 open,1,2,... open with delays in seconds
alghoIdUser identifier and session id (Optional)
ajwtAlgho Json Web Token. See Algho JWT payload
tokenAlgho Token (Optional) The token was passed to any post call inside http header "Algho-Token: token" and can be a jwt token or an encrypted token with other methods.For Jwt Token see https://jwt.io/introduction/
currentUrlCurrent url to override send to conversation API and WS Form (Optional)

Note: These parameters are used only if botId is not set on the integration script.

QueryString ParamsDescription
qaIdOpens the assistant with pre-set QA [for each access] (Optional)
qaOpenAutomatic opening of notch at startup-1 close0 open,1,2,... open with delays in seconds

Functions

Algho Viewer functions cam be accessed on multiple modes:

  • using window.algho instance
  • using algho instance on HTMLElement

To use HTMLElement

const algho = document.getElementsByTagName("algho-viewer")[0].algho;

It is possible to call up some functions to automate the chat window.

DescriptionFunction
Open widgetalgho.open()
Close widgetalgho.close()
Open microphonealgho.openMic()
Close microphonealgho.closeMic()
Mute audioalgho.mute()
unMute audioalgho.unMute()
Enable voice componentsalgho.enableVoice()
Disable voice componentsalgho.disableVoice()
Send bot messagealgho.sendBotMessage(string: text)
Send user messagealgho.sendUserMessage(string: text, bool: hide [optional])
Send user start messagealgho.sendUserStartMessage(string: qaId, string: text [optional])
Send user stop formalgho.sendUserStopForm(bool: silent)
Send user stop conversationalgho.sendUserStopConversation()
Set user Idalgho.setUserId(string: userId)
Get user Idalgho.etUserId()
Set Bot Idalgho.setBotId(string: botId)
Set Bot Id, Answert Idalgho.setBotId(string: botId, string: answerId)
Get Bot Idalgho.getBotId()
Set Algho tokenalgho.setToken(string: token)
Set Algho JWTalgho.setAJWT(string: ajwt)
Set contextalgho.setContext(string: context)
Set current urlalgho.setCurrentUrl(string: url)
Set current urlalgho.setCurrentUrl(string: url)
Get conversation Idalgho.getConversationId()
Reset chat historyalgho.resetChatHistory()
Reset all cookies and settingsalgho.resetAll(bool: reload)
Dispose allalgho.dispose()
Resize 3d scenealgho.resize3d()
Set loggeralgho.setlogger(string: mode) ['info','debug','warn','none']
Set auto microphonealgho.setAutoMicrophone(bool: status)
Set force auto microphonealgho.setForceAutoMicrophone(bool: status)
Set Gps locationalgho.setGpsLocation(string: location)
Break voice speakingalgho.stopSpeak()
Set specific featuresalgho.setFeatures({})

Features allowed

['theme', 'lis', 'dhi', 'showAllMessage', 'screenReader', 'showTabIndex', 'stt', 'tts', 'audio', 'splitAnswer', 'chatMarginTop']

Kiosk specific function

DescriptionFunction
Resume from standbyalgho.startKiosk()
Go to standbyalgho.stopKiosk()

setlogger(info,debug, warn,none)

Events

Algho Viewer create new events on HTML Element algho-viewer

  • alghoLoaded
  • alghoLoadedAvatar
  • alghoReady
  • alghoMessage
  • alghoMicrophone
  • alghoShow
  • alghoHide
  • alghoPreSendMessage
  • alghoSendMessage
  • alghoRequestOperator
  • alghoTranscript
  • alghoTrack
  • alghoStartSpeak
  • alghoStopSpeak
  • alghoChangeLanguage
  • alghoKioskSessionStandby
  • alghoKioskSessionResume
const alghoElement = document.getElementById("algho");

alghoElement.addEventListener("alghoInitialized", function() {
alert("Algho initialized");
}, false);

alghoElement.addEventListener("alghoLoaded", function() {
alert("Algho loaded");
}, false);

alghoElement.addEventListener("alghoLoadedAvatar", function() {
alert("Algho loaded avatar");
}, false);

alghoElement.addEventListener("alghoReady", function() {
alert("Algho ready");
}, false);

alghoElement.addEventListener("alghoMessage", function(event) {
alert(JSON.stringify(event.detail));
}, false);

alghoElement.addEventListener("alghoMicrophone", function(status) {
alert("Algho microphone " + status);
}, false);

alghoElement.addEventListener("alghoShow", function() {
alert("Algho showed");
}, false);

alghoElement.addEventListener("alghoHide", function() {
alert("Algho hidden");
}, false);

alghoElement.addEventListener("alghoPreSendMessage", function(event) {
alert(JSON.stringify(event.detail));
}, false);

alghoElement.addEventListener("alghoSendMessage", function(event) {
alert(JSON.stringify(event.detail));
}, false);

alghoElement.addEventListener("alghoRequestOperator", function(event) {
alert(JSON.stringify(event.detail));
}, false);

alghoElement.addEventListener("alghoTranscript", function(event) {
console.log(event.detail);
}, false);

alghoElement.addEventListener("alghoStartSpeak", function() {
alert("Algho Start Speak");
}, false);

alghoElement.addEventListener("alghoStopSpeak", function() {
alert("Algho Stop Speak");
}, false);

alghoElement.addEventListener("alghoChangeLanguage", function(event) {
console.log(event.detail);
}, false);

alghoElement.addEventListener("alghoKioskSessionStandby", function() {
alert("Algho Kiosk Standby");
}, false);

alghoElement.addEventListener("alghoKioskSessionResume", function() {
alert("Algho Kiosk Resume");
}, false);

After event alghoReady algho instance was initialized.

Track Event

Events can be tracked for use in Google Analytics 4 or other services.

const alghoElement = document.getElementById("algho");

alghoElement.addEventListener("alghoReady", function() {
// Use empty array [] for all events, or specific event ["open", "close"]
alghoElement.algho.initTrack(["open", "close", "send", "link"]);
}, false);

alghoElement.addEventListener("alghoTrack", function(event) {
console.log(event.detail);
}, false);
Details

Theme colors

Theme color example "Icy"

primary-color: #31b3f4;
primary-color-text: #31b3f4;
suggested-color: #31b3f44d;

fg-color: #FFFFFF;

fg-color-widget: #FFFFFF;
bg-color-widget: #31b3f4;

fg-color-bot: #FFFFFF;
fg-color-user: #FFFFFF;

bg-color-user: #8181811D;
bg-color-bot: #8181811D;

bg-color: #40444d;
bg-color-gradient: #292b31;
bg-color-overlay: #00000000;

bg-color-card: #8181811D;

fg-other-color: #FFFFFF;
bg-other-color: #8181811D;

border-other-color: #FFFFFF50;

fg-color-input: #FFFFFF;
border-color-input: #FFFFFF50;

border-color: #6e7585;

caption-color: #74767c;
timestamp-color-user: #FFFFFF;
timestamp-color-bot: #FFFFFF;

fg-button-color: #FFFFFF;
fg-button-color-active: #31b3f4;
fg-button-color-deactive: #d93025;
fg-button-color-hover: #31b3f4;
fg-button-color-disabled: #70798f;

bg-button-color: #8181811D;
bg-button-color-hover: #8181811D;

bg-keyboard-color: #FFFFFF1D;
bg-keyboard-other-color: #FFFFFF30;

fg-button-color-transparent: #FFFFFF;
bg-button-color-transparent: #8181811D;

fg-tooltip-color: #FFFFFF;
bg-tooltip-color: #353840;

scroll-color: #FFFFFF;

border-radius-frame: 24px;
border-radius: 16px;
border-radius-small: 4px;

backdrop-filter: blur(16px);

fg-option-color-hover: #31b3f4;
bg-option-shadow-hover: #00000000 0px 0px 4px 1px;
bg-option-color-active: #3e4550;
bg-option-color-disabled: #3e4550;
fg-option-color-disabled: #70798f;
fg-option-color-other: #31b3f4;

link-color: #31b3f4;
stt-color: #31b3f4;