Я создал проект 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; }
}