Inoft Vocal Engine Docs
Francais (V1)
Francais (V1)
  • Introduction
  • Installation
  • FAQ
  • Concepts des assistants vocaux
    • Activation par invocation
  • Fonctions partagés
    • Recevoir une requête
    • Etat à choix multiples
    • Synthèse vocal basique
    • Réponses avancées & SSML
      • SpeechsList
      • Speech
    • Montage audio dynamique
    • Réponses
  • Plateformes
    • Alexa
      • Elements visuels
        • Conditions d'hébergements d'images
        • Carte Basique
      • Fonctions
        • Untitled
    • Google Assistant
    • Samsung Bixby
    • SIRI
  • Classes et application
    • Démarrage rapide
    • Résumé de toutes les classes
    • InoftSkill (application)
    • InoftRequestHandler
    • InoftStateHandler
    • InoftDefaultFallback
    • InoftCondition
    • InoftHandler
    • InoftHandlersGroup
  • Fonctionnalitées partagées
  • Réponses
  • Classes
  • Conventions techniques
    • Noms de classes
    • Réutilisation des mêmes choix
Propulsé par GitBook
Sur cette page
  • Fonctionnement
  • Arguments
  • title
  • text
  • small_image_url
  • large_image_url
  • Example
  • Usage

Cet article vous a-t-il été utile ?

  1. Plateformes
  2. Alexa
  3. Elements visuels

Carte Basique

self.show_basic_card(self, title: str, text: str, small_image_url: Optional[str] = None, large_image_url: Optional[str] = None) -> None:

Fonctionnement

Vous permet d'afficher une carte avec titre, texte et optionnellement une image. Si vous essayez d'afficher une carte sur un appareil ne pouvant pas l'afficher (comme une enceinte Alexa qui n'a pas d'écrans), aucune erreur ne vas se produire, la carte ne seras simplement pas afficher. Si vous souhaitez afficher une image sur un appareil avec une petite taille d'écran (comme un Echo Spot), le titre et le texte de la carte seront affichés, cependant l'image sera caché.

Il est possible que votre utilisateur ne voit pas votre carte sur son appareil (ou même, sur un appareil affichant la carte, il n'est pas garanti que l'utilisateur regarde son écran). Pour cette raison, sur Alexa (les autres plateformes sont différentes), votre expérience devrait utiliser les cartes de manière optionnelle, et ne pas en dépendre.

Vous pouvez re-envoyer une carte comme réponse seule à votre utilisateur. Vous n'êtes pas obligé d'inclure une réponse vocal via la commande self.say() ou quoi que ce soit d'autre. Cependant, vous devriez prévoir que vos utilisateurs n'ont pas d'écrans ou ne les regarde pas.

Arguments

Le total de caractères quand le titre, le texte et les deux urls optionnel sont combinés, ne doit pas excéder 8000 caractères (voir https://developer.amazon.com/fr-FR/docs/alexa/custom-skills/include-a-card-in-your-skills-response.html#create-a-card-to-display-text-and-an-image)

title

Obligatoire | Attends une valeur de type str (texte)

Cette argument vous permet de définir le texte qui sera affiché comme le titre de votre carte. En fonction des appareils, il pourras être mis en gros et dans une police de caractères plus grosse.

text

Obligatoire | Attends une valeur de type str (texte)

Cette argument vous permet de définir le texte qui sera affiché comme le contenue de votre carte. Il ne sera pas mis en gras, et la taille de sa police peut s'ajuster en fonction de l'appareil et du nombre de caractères du texte.

small_image_url

Optionnel | Attends une valeur de type str (texte)

large_image_url

Optionnel | Attends une valeur de type str (texte)

Pour en savoir plus sur les dimensions d'images et pourquoi définir une image basse résolution et une grande résolution, voir https://developer.amazon.com/fr-FR/docs/alexa/custom-skills/include-a-card-in-your-skills-response.html#image_size

Example

self.say("Bonjour !") # Cette ligne est une réponse vocal non-requise pour la carte
self.alexa.show_basic_card(title="Voila Robinson !", text="En toute splendeur",
    large_image_url="https://s3.eu-west-3.amazonaws.com/www.inoft.com/img/team_robinson_128x128.jpg")

Si en essayant le code ci-dessus, une erreur se produit ou que l'image n'apparaît pas, c'est tout simplement car le lien de l'image est mort. Essayer avec un lien vers une autre image (n'importe lequel que vous trouverez sur internet, à condition qu'elle respecte les conditions d'hébergements d'images pour Alexa)

Usage

app.py
from inoft_vocal_framework import InoftSkill, \
    InoftRequestHandler, InoftDefaultFallback

class LaunchRequestHandler(InoftRequestHandler):
    def can_handle(self) -> bool:
        return self.is_launch_request()

    def handle(self):
        self.say("Bonjour !")
        self.alexa.show_basic_card(title="Voila Robinson !",
            text="En toute splendeur",
            large_image_url="https://s3.eu-west-3.amazonaws.com/www.inoft.com/img/team_robinson_128x128.jpg"
        )
        # Si une erreur se produis ou que l'image n'apparait pas,
        # cela veut dire que le lien de l'image ne fonctionne plus.
        # Utiliser le lien de n'importe quel autre image (tant qu'elle
        # respecte les conditions d'hébergement d'images d'Alexa)
        return self.to_platform_dict()

# Une classe de DefaultFallback est obligatoire dans toutes applications
class DefaultFallback(InoftDefaultFallback):
    def handle(self):
        self.say("J'ai pas compris mon ami !")
        return self.to_platform_dict()

def lambda_handler(event, context):
    skill = InoftSkill()
    skill.add_request_handler(LaunchRequestHandler)
    skill.set_default_fallback_handler(DefaultFallback)
    return skill.handle_any_platform(event=event, context=context)
    
# Uniquement si le fichier est lancer depuis une machine local (et non sur
# le cloud). L'application sera lancé en simulant le lancement d'un skill Alexa.
if __name__ == "__main__":
    from inoft_vocal_framework import Simulator
    event_, context_ = Simulator(event_type="alexa/start").get_event_and_context()
    print(f"\n\nFinal Output : {lambda_handler(event=event_, context=context_)}")
PrécédentConditions d'hébergements d'imagesSuivantFonctions

Dernière mise à jour il y a 5 ans

Cet article vous a-t-il été utile ?

Carte avec titre, texte et image sur un téléphone avec l'application mobile Alexa
Même carte mais sur simulateur d'appareil avec une taille d'écran moyenne (Echo Show)
Même carte, mais sur simulateur d'un appareil avec une petite taille d'écran (Echo Spot)