如何在 dialogflow-intégrations 中进行多重集成(twitter + skype)

How make Multiple Integrations (twitter + skype) in dialogflow-intégrations

我用https://github.com/GoogleCloudPlatform/dialogflow-integrations

我设法让 twitter 然后 skype 工作,但是当我更改 ENV INTEGRATION 时,它突然变成了一个或另一个我们如何让两者都工作,我不明白。

我尝试在不同目录中为每个服务(twitter、skype)部署一个与您尝试过的相同link的存储库副本https://github.com/GoogleCloudPlatform/dialogflow-integrations

我将存储库复制到每个服务的不同目录中,因此我有一个用于 twitter 的目录和另一个用于 skype 部署的目录。

因此,我在每个目录中都有一个 Dockerfile,所以我在每个目录中都有一个 ENV INTEGRATION,我将此环境变量设置为要部署的服务,一个用于 twitter,另一个用于 skype。

Directory1/Dockerfile

ENV INTEGRATION=twitter

Directory2/Dockerfile

ENV INTEGRATION=skype

您必须在服务目录下的server.js文件中设置每个服务的凭据和GCP项目ID,并复制服务目录下的json密钥文件

Directory1/twitter/*.json
Directory1/twitter/server.js

Directory2/twitter/*.json
Directory2/twitter/server.js

配置完成后,您应该部署每个服务,因此,您应该进入每个目录和 运行 README.md 文件中的命令以在云中部署集成 运行

gcloud builds submit --tag gcr.io/PROJECT-ID/dialogflow-PLATFORM

gcloud beta run deploy --image gcr.io/PROJECT-ID/dialogflow-PLATFORM --update-env-vars GOOGLE_APPLICATION_CREDENTIALS=YOUR_KEY_FILE --memory 1Gi

有了这个,我可以同时部署这两种服务并使它们可用。这是我在 Cloud 运行 中部署的结果。