InoftSkill (application)
InoftSkill(settings_yaml_filepath: Optional[str] = None, settings_json_filepath: Optional[str] = None):
Fonctionnement
L'InoftSkill est l'objet qui ramène ensemble toutes vos classes (RequestHandler, StateHandler, etc), qui vas utiliser le fichier de configuration de votre application (voir fichier de configuration), et recevoir les requêtes de vos utilisateurs et générez la réponse adéquate.
Si vous n'avez pas spécifié d'emplacement précis de votre fichier de configuration, l'InoftSkill vas chercher dans le dossier où se trouve votre code Python, un fichier nommé app_settings.yaml (voir fichier de configuration)
Arguments
settings_yaml_filepath
Optionnel | Attends une valeur de type str (texte)
Vous permet de spécifier directement le fichier de configuration (en format .yaml) de votre application. Il n'est pas recommandé de l'utiliser, mais vous en aurez besoin si vous voulez que votre fichier de configuration ne soit pas dans le même dossier que votre principale fichier de code (celui où l'objet InoftSkill est initialisé)
Exemple :
from inoft_vocal_framework import InoftSkill
import os
skill = InoftSkill(settings_yaml_filepath=os.path.join(
os.path.dirname(os.path.abspath(__file__)),
# Trouve le chemin d'accès du dossier dans lequel se trouve
# votre fichier de code qui est en train d'être éxécuter
"dossier_pratique",
# Ajoute au chemin d'accès, le dossier nommé dossier_pratique
"app_settings.yaml")
# Puis le nom de votre fichier de configuration
)settings_json_filepath
Optionnel | Attends une valeur de type str (texte)
Exactement pareil que l'argument settings_yaml_filepath, mais à utiliser si votre fichier de configuration est en format .json et non .yaml
N'utiliser pas de chemin d'accès direct (comme C:/Users/Rob/application/app_settings.yaml) Cela fonctionnera sur votre machine, cependant ne fonctionneras pas une fois déployé dans le cloud, étant donné que les chemins d'accès seront différents. Pour que cela fonctionne sur votre machine et dans le cloud, basé sur vous sur le chemin d'accès de votre fichier de code principale que vous pouvez avoir avec : os.path.dirname(os.path.abspath(__file__))
Vous ne pouvez pas définir à la fois l'argument settings_yaml_filepath et settings_json_filepath
Fonctions
add_request_handler
Vous permet d'ajouter vos classes étant de type InoftRequestHandler une par une à votre application. Si vous n'ajoutez pas vos classes via cette fonctions, leurs fonctions can_handle (qui peut permettre leurs déclenchement) ne seront pas vérifié, donc vos classes ne seront pas utilisé.
add_state_handler
Vous permet d'ajouter vos classes étant de type InoftStateHandler une par une à votre application. Quand vous utilisez la fonction self.memorize_session_then_state(NomDeClasse) (voir plus). Alors, lors de la prochaine interaction de l'utilisateur, le framework vas chercher la classe StateHandler correspondante parmis tous les StateHandler que vous avez ajouté. Si la classe n'est pas trouvé, le framework vas essayer de trouver une classe RequestHandler pouvant gérer la requête, et si elle n'en trouve pas, elle utilisera la classe de DefaultFallback.
set_default_fallback
Vous permet de définir la classe qui répondra à votre utilisateur si aucune de vos autres classes n'ont été activé (et donc n'ont pas créer de réponse).
Définir une classe de DefaultFallback et l'ajouter est obligatoire. Si vous ne le faites pas, une erreur se produira quand vous lancerez l'application sur le cloud ou sur votre machine, elle vous informeras que vous n'avez pas défini de classe de DefaultFallback.
Usage
Mis à jour
Ce contenu vous a-t-il été utile ?