set parámetros en EventInput en Dialogflow V2 API
ntento desesperadamente establecer parámetros en un
dialogflow.types.EventInput
en python.
EstaDo dice que los parámetros deben ser del tipoStruct
.
Yo leoaqu que los parámetros deben ser google.protobuf.Struct. Pero no funciona para mí.
¿Hay otroStruct
tipo equivalente en python?
Si envío elEventInput
sin parámetros, la intención se detecta correctamente.
He intentado esto hasta ahora:
import dialogflow_v2 as dialogflow
session_client = dialogflow.SessionsClient()
session = session_client.session_path(project_id, session_id)
parameters = struct_pb2.Struct()
parameters['given-name'] = 'Jeff'
parameters['last-name'] = 'Bridges'
event_input = dialogflow.types.EventInput(
name='greetPerson',
language_code='de',
parameters=parameters)
query_input = dialogflow.types.QueryInput(event=event_input)
response = session_client.detect_intent(
session=session, query_input=query_input)
¿Alguien que tenga experiencia con este caso de uso?
Cosas que también probé:
Pass aclass
rendimientos p nombrados:
Parameter to MergeFrom () debe ser una instancia de la misma clase: Struct esperado obtuvo p. para el campo EventInput.parameters
Pasar un dict:
parameters = {
'given-name': 'Jeff',
'last-name': 'Bridges'}
rendimiento:
Protocol message Struct no tiene un campo "nombre de pila".
Generate Struct con el constructor:
from google.protobuf.struct_pb2 import Struct, Value
parameters = Struct(fields={
'given-name':Value(string_value='Jeff'),
'last-name':Value(string_value='Bidges')
})
rendimientos a veces:
Exception en el hilo ptvsd.stopping (muy probablemente generado durante el cierre del intérprete):
/ EventInput