我正在使用 Azure 聊天机器人(v4 MS 机器人框架)并应用于 Direcline channel ,当用户单击建议的问题时,我想将问题发送到聊天机器人。
在下图中,您可以在这里看到建议的问题,当用户单击这些建议的问题时,该问题将被添加到输入框中,但相同的内容会发送到机器人,而不是少数字母仅发送到机器人。
$('i.probing').click(function() {
document.querySelectorAll('[aria-label="Sendbox"]')[0].value =(this.innerText);
$('.css-115fwte').trigger('click');
});
使用此代码,值会被输入到输入框中,但是机器人没有收到任何问题,因此无法回答。
这是通过脚本添加问题后在控制台中的显示方式。
UI 中的值似乎没有反射(reflect)在后端中。 谁能告诉我我的方法有什么问题。
最佳答案
根据我的评论,我建议对此类事情使用建议操作。否则,您可以执行类似 this Web Chat Sample 的操作:
document.querySelector('#helpButton').addEventListener('click', () => {
store.dispatch({
type: 'WEB_CHAT/SEND_MESSAGE',
payload: { text: 'help' }
});
});
只需将 #helpButton
更改为您的 querySelector 即可。我相信您正在使用 i.probing
关于javascript - 如何使用客户端脚本实用地将问题发送到 MS Azure 聊天机器人(在直接 channel 中),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59877798/