2017-06-27 1 views
-1

Dans IBM Watson Conversation, context variables peut être utilisé pour transporter des informations. Une valeur peut être dérivé du evaluation of expressions comme indiqué:IBM Watson Conversation: Comment créer dynamiquement des variables de contexte?

"context": { 
    "mycity": "<? entities['city'].value ?>" 
    } 

Ce que j'ai essayé est de composer dynamiquement le nom de la variable:

"context": { 
    "my<? @animals ?>": "my new value" 
    } 

Cependant, l'expression au nom de la variable n'est pas évaluée. Comment puis-je définir un nom de variable en fonction des données disponibles telles que les intentions, les entités ou d'autres variables de contexte?

+0

Non possible sans le code de l'application – Dudi

Répondre

0

Une solution semble être de le faire dans l'application:

  • objet de réception de réponse, y compris toutes les métadonnées.
  • Extraire les données nécessaires
  • Composer l'objet de contexte à renvoyer dans Watson Conversation pour le traitement du message suivant. Créer de nouvelles variables dans le cadre de cette préparation.
  • Appelez message API avec l'objet de contexte qui inclut une nouvelle variable.
  • Une nouvelle variable est disponible pendant le traitement interne de Watson Conversation.
+0

Oui ... Comme en ce moment, les noms des variables de contexte ne peuvent pas contenir une expression SpEL. –