首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何限制聊天机器人通信中接收的聊天次数

如何限制聊天机器人通信中接收的聊天次数
EN

Stack Overflow用户
提问于 2020-04-30 00:56:01
回答 1查看 59关注 0票数 2

我已经集成了Kommunicate聊天机器人到我的网站,然而,在我的网站上产生了大量的流量,由于它比我有更多的用户聊天比我有带宽支持(代理明智)。我似乎找不到一种方法来限制一个代理/人在任何给定时间可以处理的当前活动聊天的数量。我希望为同样的问题找到解决方案。

这可以通过提供的webhook集成来实现吗?如果是这样的话,是怎么做的?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-06-06 16:40:14

解决方案确实在于添加了webhook集成。

首先,我启动一个简单的flask服务器,服务于一个端点: /webhook。

代码语言:javascript
复制
app = Flask(__name__)
@app.route('/webhook', methods=['GET', 'POST'])
def webhook():
    logger.debug('Webhook Triggered') #-> we know it's being trigerred.
    resp_generated = make_response(jsonify(results()))
    logger.debug(resp_generated)#-> always shows 200 anyway.
    return resp_generated

if __name__ == '__main__':
  app.run(host ='0.0.0.0', port = 5000, debug = True)

然后,我使用ngrok创建到我的本地服务器的隧道(我计划在稍后的阶段将其托管在GKE上)

代码语言:javascript
复制
ngrok http 5000

这为我提供了一个指向Flask服务器的HTTPS URL,例如https:\534bbe.ngrok.io

然后,我进入DialogFlow -> Fulfillment ->,在那里输入我的Webhooks端点:

注意:点击页面底部的保存按钮

您必须为您要添加服务器逻辑的意图启用webhook调用,在我的情况下,当我想要转移到实时代理时,同时限制聊天的数量:

为了确保Kommunicate的默认行为不会在服务器宕机时被破坏,我添加了自定义负载(如上图所示):

代码语言:javascript
复制
{
  "metadata": {
    "KM_ASSIGN_TO": ""
  },
  "platform": "kommunicate",
  "message": "---- Redact that sweet sweet company Information. Yeah!!---"
}

注意:在对Intent进行更改后,请确保单击右上角的Save。

然后,我在Kommunicate ->设置-> Developer -> Webhooks中添加了Webhook URL (与DialogFlow中使用的相同

注意:点击页面底部的保存更改按钮

一旦一切就绪,您将开始在服务器中接收消息,并可以根据需要添加您的逻辑。请注意,这非常单调乏味,因为您必须阅读大量文档并添加一堆逻辑,才能使其按您希望的方式工作。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61507257

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档