config
Config options
Le paramètre config permet de définir les principales options de configuration de l'application
| Nom | Requis | Type | Description |
|---|---|---|---|
fullSize | Non | boolean | true : le conteneur principal prendra l'intégralité de la fenêtre (width = 100vw / height = 100vh)false/undefined : le conteneur principal aura la taille du conteneur parent (width = 100% / height = 100%) |
isUsedOnborne | Non | boolean | true pour désigner une utilisation sur borne uniquement, ce qui générera des QRcodes au lieu de liens de téléchargement dans les cartes |
locales | Non | voir détails | Options de langues. Ecrase les options définies dans Retorik Studio |
position | Non | voir détails | Options de localisation de l'utilisateur |
subtitles | Non | boolean | true : affichage des sous-titres par défaut |
logo | Non | voir détails | Url du logo à afficher en haut à gauche |
answerpanel | Non | boolean | Visibilité des réponses du chatbot. Défaut: true |
skipWelcome | Non | boolean | Par défaut, le chatbot dit un message de bienvenue à l'ouverture de l'application. Mettre à true pour ne pas dire ce message |
preventExpectedInputHint | Non | boolean | true : désactive la tentative d'ouverture automatique du microphone pour les activités entrantes contenant le paramètre inputHint: expectingInput |
pagination | Non | voir détails | Taille de la pagination dans les différents modes pour l'affichage en mode liste |
remote | Non | voir détails | Position de la télécommande par rapport au haut de l'écran (n'affecte pas les modes mobile / widget) |
companyName | Non | string | Texte affiché en première ligne dans le bandeau supérieur en mode texte sur mobile / widget |
companyNameLocalized | Non | Record<string, string> | (depuis v1.0.16) Texte localisé affiché en première ligne dans le bandeau supérieur en mode texte sur mobile / widget. Forme { "fr-FR": "Texte en Français", "en-US": "Text in English" }. |
subCompanyMessage | Non | string | Texte affiché en seconde ligne dans le bandeau supérieur en mode texte sur mobile / widget |
subCompanyMessageLocalized | Non | Record<string, string> | (depuis v1.0.16) Texte localisé affiché en seconde ligne dans le bandeau supérieur en mode texte sur mobile / widget. Forme { "fr-FR": "Texte en Français", "en-US": "Text in English" }. |
loaderInformationTexts | Non | voir détails | Textes affichés sur la première page (choix du mode de fonctionnement) |
hideRetorikLogo | Non | boolean | true : cache le logo Retorik en bas du loader et en bas à droite de la page principale |
hideMenu | Non | boolean | true : aucun affichage du menu primaire (différentes pages de l'application) |
hideControls | Non | boolean | true : aucun affichage de la barre de menu en mode mobile / widget et de la télécommande en mode desktop / borne |
baseMenu | Non | voir détails | (déprécié depuis v2.0.4. Voir menuConfig) Pages intégrées au Framework Retorik à afficher dans le menu (première ligne) |
customMenu | Non | voir détails | (déprécié depuis v2.0.4. Voir menuConfig) Pages intégrées au Framework Retorik à afficher dans le menu (lignes suivantes) |
subMenu | Non | voir détails | (déprécié depuis v2.0.4. Voir menuConfig) Pages intégrées au Framework Retorik à afficher dans le sous-menu (dernière ligne, items plus petits) |
doNotDetectDeviceFromUserAgent | Non | boolean | Détermine le mode de détection de l'appareil utilisé. Par défaut, utilisation du userAgent pour avoir des données détaillées. Si mis à false, calcul simple en fonction de la taille du conteneur (moins précis) |
enableConversationCookie | Non | boolean | Gère la présence / absence d'un cookie permettant de récupérer la conversation précédente lors d'une reconnexion. Activé par défaut, false pour désactiver le cookie |
conversationCookieMaxAge | Non | number | Si on utilise le cookie de récupération de conversation, permet de spécifier son max-age (durée de vie). Ne pas dépasser 10 jours (durée de conservation des conversations sur studio-retorik) |
enableTelemetry | Non | boolean | true | undefined : envoie des données de télémétrie au serveur dédié DAVI lors d'un crash de l'application. false pour désactiver |
forceMobileView | Non | boolean | true : force l'affichage du mode mobile sur tout type de support |
enableSpeechCaching | Non | boolean | true | undefined : met en cache des données audio. false pour désactiver |
speechRecognitionOptions | Non | voir détails | (depuis v1.0.11) Options de reconnaissance vocale |
allowSwitchLayout | Non | boolean | (depuis v1.0.11) true autorise la bascule d'une taille de conteneur principal à une autre en mode widget. Les tailles sont renseignées dans les données de configuration du mode widget |
enableDocumentPrinting | Non | boolean | (depuis v1.0.14) Activer l'affichage du bouton 'imprimer' sur la page de prévisualisation d'un pdf + déclenchement du callback 'printingCallback' à l'appui sur le bouton |
disableSpeechMode | Non | boolean | (depuis v1.0.14) true pour désactiver le mode vocal |
disableSound | Non | boolean | (depuis v1.0.14) true pour désactiver le son lié au mode vocal |
timerForFilterSelectionListMode | Non | number | (depuis v1.0.15) temps d'attente avant l'envoi de la requête lors de la sélection / désélection d'un filtre en mode liste (permet de choisir plusieurs filtres à la suite dans le temps imparti avant de lancer la requête, cela évite plusieurs requêtes successives) |
locales
| Nom | Requis | Type | Valeur par défaut | Description |
|---|---|---|---|---|
default | Non | string | Définie dans Retorik Studio | Langue par défaut |
getDefaultFromBrowser | Non | boolean | false | La langue par défaut sera la langue du navigateur de l'utilisateur, si elle est supportée |
Le comportement des langues est le suivant :
- si les cultures sont définies dans Retorik Studio, elles sont récupérées et utilisées (langue par défaut + langues autorisées)
- sinon, si un paramètres est défini pour
defaultdans la configuration, cette langue est utilisée (défaut + seule langue autorisée) - sinon, si le paramètre
getDefaultFromBrowserest true, la langue par défaut du navigateur client est utilisée (défaut + seule langue autorisée) - sinon, la locale
fr-FRest utilisée (défaut + seule langue autorisée)
Pour les textes contenus dans le framework, si aucune traduction n'existe pour la langue en cours d'utilisation, l'affichage s'effectue en fr-FR
position
| Nom | Requis | Type | Valeur par défaut | Description |
|---|---|---|---|---|
searchForLocation | Non | boolean | false | Indique s'il faut essayer de récupérer la position géographique de l'utilisateur |
latitude | Non | number | - | Latitude par défaut (utile sur les borne) |
longitude | Non | number | - | Longitude par défaut (utile sur les borne) |
city | Non | number | - | Ville par défaut (utile sur les borne) |
country | Non | number | - | Pays par défaut (utile sur les borne) |
Une position est nécessaire pour l'utilisation de la fonctionnalité météo.
logo
| Nom | Requis | Type | Valeur par défaut | Description |
|---|---|---|---|---|
src | Non | string | - | Url du logo à afficher en haut à gauche de l'application |
pagination
| Nom | Requis | Type | Valeur par défaut | Description |
|---|---|---|---|---|
borne | Non | number | - | Nombre de cartes par page en mode liste sur borne verticale |
landscape | Non | number | - | Nombre de cartes par page en mode liste sur desktop horizontal |
mobile | Non | number | - | Nombre de cartes par page en mode liste sur mobile / widget |
remote
| Nom | Requis | Type | Valeur par défaut | Description |
|---|---|---|---|---|
desktop | Non | number | - | Distance en pixels, mode desktop horizontal non tactile |
desktopTactile | Non | number | - | Distance en pixels, mode desktop horizontal tactile |
verticalTactile | Non | number | - | Distance en pixels, mode borne verticale |
loaderinformationtexts
| Nom | Requis | Type |
|---|---|---|
vocal | Oui | loaderInformationTextsType |
text | Oui | loaderInformationTextsType |
LoaderInformationTextsType
| Nom | Requis | Type | Valeur par défaut | Description |
|---|---|---|---|---|
top | Oui | string | - | Texte de la première ligne du loader |
bottom | Oui | string | - | texte de la seconde ligne du loader |
menus
- baseMenu : tableau d'objets de type
BaseMenu|CustomMenu - customMenu : deux possibilités :
- si nous ne voulons qu'une seule ligne de boutons de menu, nous utiliserons un tableau d'objets de type
CustomMenu - s'il faut plusieurs lignes de boutons, nous utiliserons un tableau de tableaux d'objets de type
CustomMenu, chaque sous-tableau correspondant à une ligne dans le menu
- si nous ne voulons qu'une seule ligne de boutons de menu, nous utiliserons un tableau d'objets de type
- subMenu : tableau d'objets de type
BaseSubMenu|CustomMenu
basemenu
Le type BaseMenu est le suivant :
| Nom | Requis | Type | Valeur par défaut | Description |
|---|---|---|---|---|
view | Oui | number | - | Indice de la vue désirée. La liste des vues de base se trouve ici |
indice | Oui | number | - | Position à laquelle la vue apparaîtra dans le menu |
vues de base
Les vues de base sont les pages intégrées au Framework Retorik, disponibles pour toutes les implémentations.
Les indices de ces vues sont disponibles via typescript en important le type AvailableViews.
Si le projet n'utilise pas typescript, voici la liste des indices :
- 1 : home => affichage des données reçues lors de la première activité provenant du bot (welcome message)
- 2 : news => chaîne d'informations
- 3 : weather => page météo du jour et de la semaine
- 4 : emergency => numéros d'urgence
custommenu
Le type CustomMenu est le suivant :
| Nom | Requis | Type | Valeur par défaut | Description |
|---|---|---|---|---|
icon | Oui | JSX.Element | - | Icône affiché dans le menu pour cette vue |
indice | Oui | number | - | Position à laquelle la vue apparaîtra dans le menu |
label | Oui | string | LocalizedStrings | - | Texte affiché dans le menu pour cette vue |
customDisplay | Non | string | - | Nom qui permet d'identifier le composant lié à cette vue dans la propriété externalComponents |
clickHandler | Non | () => void | - | Callback lors d'une interaction pour ouvrir cette vue |
closeParametersOnClickInMobileMode | Non | boolean | - | Le panneau des paramètres doit-il se fermer à l'apparition de cette vue en mode mobile ? |
LocalizedStrings
Un tableau d'objets de type [key: string]: string où les clés sont les locales pouvant être utilisées. Exemple :
{
'fr-FR': 'Menu personnalisé',
'en-US': 'Custom menu'
}
basesubmenu
Le type BaseSubMenu est le suivant :
| Nom | Requis | Type | Valeur par défaut | Description |
|---|---|---|---|---|
view | Oui | number | - | Indice de la vue désirée. La liste des vues de base se trouve ici |
indice | Oui | number | - | Position à laquelle la vue apparaîtra dans le menu |
sous-vues de base
Les sous-vues de base sont les pages intégrées au Framework Retorik, disponibles pour toutes les implémentations.
Les indices de ces vues sont disponibles via typescript en important le type AvailableSubViews.
Si le projet n'utilise pas typescript, voici la liste des indices :
- 1000 : history => affichage de l'historique de la conversation
- 1001 : tutorial => tutoriel (NYI)
speechrecognition
Les options disponibles pour la reconnaissance vocale sont les suivantes :
| Nom | Requis | Type | Valeur par défaut | Description |
|---|---|---|---|---|
timerBeforeSpeechEnd | Non | number | - | Temps d'attente avant la fermeture du microphone après une reconnaissance vocale |
enableActivationSound | Non | boolean | - | true pour activer le bip sonore indiquant l'activation du microphone |
enableContinuousRecognitionOnAllDevices | Non | boolean | - | truepour que la reconnaissance vocale continue soit activée sur tous les types d'appareil (mobile / widget / desktop / borne) |
enableContinuousRecognitionOn | Non | voir ici | - | Gérer l'activation de la reconnaissance vocale continue par type d'appareil (mobile / widget / desktop / borne) |
wakeWords | Non | voir ici | - | Mots à ajouter qui déclencheront l'ouverture automatique du micro si la reconnaissance vocale continue est activée |
grammars | Non | voir ici | - | Mots à ajouter pour une meilleure reconnaissance vocale de ces termes |
inputHintBehaviour | Non | 'auto' | 'always' | 'never' | 'ignore' | (depuis v2.1.0) Forcer le comportement du micro à la réception d'un message du bot : 'auto' = comportement habituel, 'always' = toujours ouvrir le micro à la réception, 'never' ou 'ignore' = ne jamais ouvrir le micro à la réception |
enabledevice
| Nom | Requis | Type | Valeur par défaut | Description |
|---|---|---|---|---|
mobile | Non | boolean | - | Appareil de type smartphone |
widget | Non | boolean | - | Mode widget |
desktop | Non | boolean | - | Grand écran mode paysage |
borne | Non | boolean | - | Grand écran mode portrait |
commontype
| Nom | Requis | Type | Valeur par défaut | Description |
|---|---|---|---|---|
common | Non | Array<string> | - | Valeurs pour toutes les langues |
localized | Non | { [key: string]: Array<string> } | - | Valeurs pour chaque langue voulue. Ex: { "fr-FR": ["bonjour", "hello"], "en-US": ["contoso"] } |