IBM Watson Assistant V1 - разговор в цикле - PullRequest
0 голосов
/ 19 октября 2018

Я создал проект web api в ядре asp.net, используя IBM SDK assistantV1 для связи с моим чат-ботом IBM.Но я не могу вести диалог со своим ботом - после трех вопросов разговор начинается заново.

Я отправляю контекст и сообщение в мой API.Код ниже - мой сервис:

 public MessageResponse CallAssistant(MessagemRequisicao MessagemRequisicao)
        {
            MessageRequest messageRequest = new MessageRequest()
            {
                Input = new MessageInput()
                {
                    Text = MessagemRequisicao.mensagem                    
                },
                Context = MessagemRequisicao.contexto
            };

            var result = _assistant.Message(_assistantId, messageRequest);


            if (result != null)
            {
                return result;
            }
            else
            {
                var t = _assistant.GetWorkspace(_assistantId);
                return null;
            }
        }

А это мой контроллер:

[HttpPost]

public MessageResponse Post([FromBody] MessagemRequisicao MessagemRequisicao)
{
    return assist.CallAssistant(MessagemRequisicao);
}

А этот код - мое угловое приложение:

sendMessage() {
        let mes = this.mensagem;
        this.mensagem = '';
        this.insertElement(this.voce(mes));

        this.service.Post('values', { mensagem: mes, contexto: this.contexto }).subscribe(result => {
            this.contexto = result.context;
            result ? this.insertElement(this.robo(result.output.text)) : null;
        });
    }

Моя сущность:

public class MessagemRequisicao
{
    public string mensagem { get; set; }
    public Context contexto { get; set; }
}
...