代码之家  ›  专栏  ›  技术社区  ›  Enrique Vargas

如何将Dialogflow与Django(Python)集成?

  •  2
  • Enrique Vargas  · 技术社区  · 7 年前

    我正在用Dialogflow开发一个助手(bot),我有一个Django项目,在这个项目中,我必须提取数据,然后通过bot公开数据,这个数据将存储在本地平台上。

    到目前为止,我有以下几点:

    • 我知道我可以用这个包裹: https://github.com/dialogflow/dialogflow-python-client-v2
    • 我为webhook添加了一个url,现在它只在本地工作,如下所示:

      from django.http import HttpResponse
      from django.views.decorators.csrf import csrf_exempt
      import dialogflow
      
      
      @csrf_exempt
      def webhook(request):
          return HttpResponse('Works like a charm!')
      

      而且在网址.py我有:

      url(r'^webhook$', views.webhook, name='webhook')
      

    这就是我所不知道的,我被阻止了,我不知道如何进行整合,还有什么遗漏,有什么建议吗?

    1 回复  |  直到 7 年前
        1
  •  3
  •   Onk_r    7 年前

    步骤

    • 通过用一个html文件呈现chatbot UI,为它创建一个html文件 url-endpoint view bot.html .
    • dialogflow agent 根据您的要求。
    • 由贵方提供 djangoserver 路由方式为 localtunnel's public IP (为了开发目的,使用局部隧道式 ngrok django's server )
    • 然后将此链接添加到 fulfillment .

    嘿,你可以参考这个 LINK

    • url终结点 /chatbot 它将接受你的文本由机器人发送 AJAX text 然后传递给参数 texts 在这上面的功能链接。但是在功能上做一些改变,比如不打印 fulfillment text
    • 然后在上面 /聊天机器人 fulfillmentText 通过链接中的那个函数返回。
    • django-models 作为普通数据库中的表,为此请检查 models - docs 然后您可以使用 models.objects.all() 等。