如何向Microsoft Bot Framework WebChat注入文本?无需手动输入发送消息
如何自动向Microsoft聊天机器人发送消息(无需手动输入)
需求:无需手动在Bot窗口底部的textarea输入内容,直接从用户侧主动给Microsoft聊天机器人添加并发送消息。
试过的无效方法
直接用jQuery设置输入框的文本值或value属性,只能让内容显示在输入框里,但点击发送按钮后消息无法送达机器人后端:
// 方法1:设置val $('.webchat__send-box-text-box__input').val("test hi this ") // 方法2:设置value属性 $('.webchat__send-box-text-box__input').attr("value","test hi this ")
可行的ReactJS方案
在组件的componentDidMount生命周期钩子中,不仅要设置输入框的value,还要调用聊天组件的onChangeText方法触发React内部状态更新,这样消息才能正常发送到后端:
componentDidMount(){ document.getElementsByClassName('wc-shellinput')[0].value = "testMsg" console.log(this.chat); this.chat.shellRef.props.onChangeText('testMsg'); }
内容的提问来源于stack exchange,提问作者utkarshsinghal17
相关产品推荐
相关产品推荐

