通过Dialogflow和C#Azure函数存储Google Assistant的用户设置

问题描述 投票:0回答:1

我想获得一些入门提示:

我有一个Google Assistant动作,可以与现有的Rest-API通信(通过Http触发的Azure函数)。

此API使用6位代码来调用身份验证服务,该服务会返回长期令牌(永不过期),对Rest API的所有实际调用都将需要该令牌。

此6位数字代码来自门户。可以通过登录访问该门户。因此,这是一个仅用于用户的代码,因此生成的令牌将是用户特定的。

现在,如何在我的Google Assistant / Dialogflow中提供此身份验证服务?

我不知道如何使用Google Assistant / DialogFlow / C#Azure函数甚至从哪里开始。

((我有一个有效的Action,但仅适用于我自己的令牌硬编码)

我知道在存储代码或令牌时可能存在一些法律/隐私问题。该门户网站还提到了有关OAuth2身份验证的内容,但对此不做进一步介绍。

这对我来说更是概念证明的事情。

c# azure dialogflow actions-on-google
1个回答
0
投票

您的首要要求是唯一标识用户。这并不简单,因为DialogFlow仅存储唯一的会话,而不存储用户。对于Google动作,您可以使用this answer中所述的方法。

一旦您知道用户,就可以使用user storage在本地保存身份验证代码。请注意,这可以由用户清除或禁用。如果您需要更可靠/持久/可控制的内容,则可以将信息存储在Azure Table Storage中,该信息可以通过bindingsclient library与Azure函数很好地集成。自然,这只是一个建议-您可以将相同的关联存储在任何其他数据库中。

© www.soinside.com 2019 - 2024. All rights reserved.