簡體   English   中英

使用Python通過Cloudfunctions將Dialogflow與Google BigQuery連接

[英]Connect Dialogflow with Google BigQuery via Cloudfunctions with Python

我是Python和雲函數的新手,但我看到可以通過Cloudfunctions連接Dialogflow和GoogleBigQuery,但我不知道該如何做,有人可以向我解釋一下該如何做,或者我是否嘗試這樣做至少接近?

import flask
from flask import Flask
from flask import request
from flask import make_response

app = Flask(__name__)
@app.route('/prueba_1', methods=['POST'])
def prueba_1():
    import json
    import pandas as pd
    ss = pd.read_gbq("SELECT something FROM bigquery_table LIMIT 1","arbor-209819")
    ll = {
        "speech" : ss.to_json(),
        "displayText": ss.to_json(),
        "source": "apiai-weather-webhook-sample"
    }
    res = json.dumps(ll, indent=4)
    r = make_response(res)
    r.headers['Content-Type'] = 'application/json'
    return r

if __name__ == '__main__':
    app.run(debug=True)

非常感謝。

您很親密,您的職能需要接受請求。 同樣,用於雲功能的python消除了代碼的很多開銷(盡管您仍然需要它來進行本地測試)。 您可以按照快速入門入門。

這是一個如何寫的例子:

from flask import jsonify
import pandas as pd

def prueba_1(request):

    # Your code

    ss = pd.read_gbq('SELECT * FROM my_dataset.my_table')

    # More code

    return jsonify(my_dictionary)

jsonify接受一個dict對象並返回一個application / json響應。 請記住在您的需求中添加pandas和pandas-gbq。

最后,如果您使用雲功能為Dialogflow設置自定義 Webhook,請記住檢查請求響應格式。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM