ChoiceFactory class
Set di funzioni di utilità per facilitare la formattazione di un'attività 'message' contenente un elenco di scelte.
Commenti
Questo esempio mostra la creazione di un messaggio contenente un elenco di scelte formattate in modo condizionale in base alle funzionalità del canale sottostante:
const { ChoiceFactory } = require('botbuilder-choices');
const message = ChoiceFactory.forChannel(context, ['red', 'green', 'blue'], `Pick a color.`);
await context.sendActivity(message);
Metodi
for |
Restituisce un'attività 'message' contenente un elenco di scelte che sono state formattate automaticamente in base alle funzionalità di un determinato canale. |
hero |
Crea un'attività di messaggio che include un elenco di scelte aggiunto come |
inline(string | Choice[], string, string, Choice |
Restituisce un'attività 'message' contenente un elenco di scelte formattate come elenco inline. |
list(string | Choice[], string, string, Choice |
Restituisce un'attività 'message' contenente un elenco di scelte formattate come elenco numerato o puntato. |
suggested |
Restituisce un'attività 'message' contenente un elenco di scelte aggiunte come azioni suggerite. |
to |
Accetta un elenco misto di |
Dettagli metodo
forChannel(string | TurnContext, string | Choice[], string, string, ChoiceFactoryOptions)
Restituisce un'attività 'message' contenente un elenco di scelte che sono state formattate automaticamente in base alle funzionalità di un determinato canale.
static function forChannel(channelOrContext: string | TurnContext, choices: string | Choice[], text?: string, speak?: string, options?: ChoiceFactoryOptions): Partial<Activity>
Parametri
- channelOrContext
-
string | TurnContext
ID canale o oggetto contesto per il turno corrente della conversazione.
- choices
-
string | Choice[]
Elenco delle scelte da eseguire per il rendering.
- text
-
string
(Facoltativo) testo del messaggio.
- speak
-
string
(Facoltativo) SSML per parlare per il messaggio.
- options
- ChoiceFactoryOptions
(Facoltativo) Opzioni di formattazione da usare per il rendering come elenco.
Restituisce
Partial<Activity>
Attività del messaggio creata.
Commenti
L'algoritmo preferisce formattare l'elenco fornito di scelte come azioni suggerite, ma può decidere di usare un elenco basato su testo se le azioni suggerite non sono supportate in modo nativo dal canale, ci sono troppe scelte per la visualizzazione del canale o il titolo di qualsiasi scelta è troppo lungo.
Se l'algoritmo decide di usare un elenco, userà un elenco inline se sono presenti 3 o meno scelte e tutti hanno titoli brevi. In caso contrario, viene usato un elenco numerato.
const message = ChoiceFactory.forChannel(context, [
{ value: 'red', action: { type: 'imBack', title: 'The Red Pill', value: 'red pill' } },
{ value: 'blue', action: { type: 'imBack', title: 'The Blue Pill', value: 'blue pill' } },
], `Which do you choose?`);
await context.sendActivity(message);
heroCard(string | Choice[], string, string)
Crea un'attività di messaggio che include un elenco di scelte aggiunto come HeroCard
's.
static function heroCard(choices?: string | Choice[], text?: string, speak?: string): Activity
Parametri
- text
-
string
Facoltativa. Testo del messaggio.
- speak
-
string
Facoltativa. Testo SSML da pronunciare dal bot in un canale abilitato per la voce.
Restituisce
Activity
Un'attività con scelte come HeroCard
con i pulsanti.
inline(string | Choice[], string, string, ChoiceFactoryOptions)
Restituisce un'attività 'message' contenente un elenco di scelte formattate come elenco inline.
static function inline(choices: string | Choice[], text?: string, speak?: string, options?: ChoiceFactoryOptions): Partial<Activity>
Parametri
- choices
-
string | Choice[]
Elenco delle scelte da eseguire per il rendering.
- text
-
string
(Facoltativo) testo del messaggio.
- speak
-
string
(Facoltativo) SSML per parlare per il messaggio.
- options
- ChoiceFactoryOptions
(Facoltativo) opzioni di formattazione per modificare il rendering dell'elenco.
Restituisce
Partial<Activity>
Attività del messaggio creata.
Commenti
In questo esempio viene generato un messaggio di testo "Selezione un colore: (1. rosso, 2. verde o 3. blu)":
const message = ChoiceFactory.inline(['red', 'green', 'blue'], `Pick a color:`);
await context.sendActivity(message);
list(string | Choice[], string, string, ChoiceFactoryOptions)
Restituisce un'attività 'message' contenente un elenco di scelte formattate come elenco numerato o puntato.
static function list(choices: string | Choice[], text?: string, speak?: string, options?: ChoiceFactoryOptions): Partial<Activity>
Parametri
- choices
-
string | Choice[]
Elenco delle scelte da eseguire per il rendering.
- text
-
string
(Facoltativo) testo del messaggio.
- speak
-
string
(Facoltativo) SSML per parlare per il messaggio.
- options
- ChoiceFactoryOptions
(Facoltativo) opzioni di formattazione per modificare il rendering dell'elenco.
Restituisce
Partial<Activity>
Attività del messaggio creata.
Commenti
In questo esempio viene generato un messaggio con le scelte presentate come elenco numerato:
const message = ChoiceFactory.list(['red', 'green', 'blue'], `Pick a color:`);
await context.sendActivity(message);
suggestedAction(string | Choice[], string, string)
Restituisce un'attività 'message' contenente un elenco di scelte aggiunte come azioni suggerite.
static function suggestedAction(choices: string | Choice[], text?: string, speak?: string): Partial<Activity>
Parametri
- choices
-
string | Choice[]
Elenco di scelte da aggiungere.
- text
-
string
(Facoltativo) testo del messaggio.
- speak
-
string
(Facoltativo) SSML per parlare per il messaggio.
Restituisce
Partial<Activity>
Un'attività con scelte come azioni suggerite.
Commenti
In questo esempio viene generato un messaggio con le scelte presentate come pulsanti di azione suggeriti:
const message = ChoiceFactory.suggestedAction(['red', 'green', 'blue'], `Pick a color:`);
await context.sendActivity(message);
toChoices(string | Choice[] | undefined)
Accetta un elenco misto di string
scelte basate e Choice
le restituisce come Choice[]
.
static function toChoices(choices: string | Choice[] | undefined): Choice[]
Parametri
- choices
-
string | Choice[] | undefined
Elenco di scelte da aggiungere.
Restituisce
Choice[]
Elenco di scelte.
Commenti
In questo esempio viene eseguita la conversione di una semplice matrice di scelte basate su stringhe Choice[]
in un formato corretto.
Se ha un oggetto per Choice.action
, .toChoices()
tenterà di riempire l'oggetto Choice
Choice.action
.Partial<CardAction>
const choices = ChoiceFactory.toChoices(['red', 'green', 'blue']);