在多租户 JSON 配置中配置租户
虽然在概念上类似,但是使用 JSON 配置属性来配置 Voice Gateway 环境与单租户配置在实施上不同,因为租户配置与服务器配置会分隔开来。
- 单租户环境:除非使用 API 进一步更改,否则通过 Docker 环境变量来配置 Voice Gateway。
- 多租户 JSON 配置:在单独的 JSON 文件中指定和存储租户配置,然后在 Voice Gateway 配置中引用该文件。与租户无关的配置(例如服务器配置)通过 Docker 环境变量来指定。通过将租户配置指定为 JSON 对象,可以将不同配置设置映射到每个单独租户。
使用 JSON 配置属性来配置 Voice Gateway 时,只能连接面向指定租户的呼叫,从而有效地将已配置的租户列入白名单。要使呼叫能够连接,SIP INVITE 请求中启动呼叫的 SIP To 头字段或 Request-URI 值必须包含整个电话 号码,或定义 JSON 文件中的 tenantURI 的其他值。如果某人尝试呼叫未定义的租户,那么 Voice Gateway 会拒绝呼叫。
在 V1.0.0.2 和更高版本中支持使用 JSON 属性来配置多租户。
配置租户
-
创建包含一个或多个租户的配置的 JSON 文件。
提示:要快速入门,将 tenantConfig.json 样本文件的内容复制并粘贴到空的 JSON 文件中。然后,编辑文件并添加每个租户的配置。
在主
tenants对象中,指定 tenant 对象的列表。每个租户可以包含以下键:tenantURI:唯一租户标识,例如电话号码。必须与用于启动呼叫的 SIP INVITE 请求中的 SIPToURI 匹配。必需。description:租户的描述,例如其使用方式。可选,但建议使用。- 用于定义特定租户的设置的其他可选租户配置属性。
conversation:Watson Assistant 的配置属性的 JSON 对象。可选。stt:Speech to Text Adapter 启用的 IBM Speech to Text 服务或第三方语音识别服务的配置属性的 JSON 对象。可选。tts:IBM Text to Speech 服务的配置属性的 JSON 对象。可选。reporting:用于发布报告事件的配置属性的 JSON 对象。可选。SMSpipe:用于集成对 Voice Gateway 的 SMS Gateway 支持的配置属性的 JSON 对象。可选。
在
conversation、wva、stt、tts和reporting对象中,您可以进一步配置相关服务或报告事件。有关属性和样本 JSON 配置文件的完整列表,请参阅高级 JSON 配置属性。例如,以下 JSON 将号码为 234-555-6789 的租户配置为自助服务代理程序,并且配置
myhost.com主机上未显示其详细信息的号码为 234-555-7890 的另一个租户。{ "tenants": [ { "tenantURI": "2345556789", "description": "Voice Gateway Demo US", "whitelistFromUri" : "8765554321", "putCallerOnHoldOnTransfer" : "false", "conversation": { "url": "https://gateway.watsonplatform.net/conversation/api", "workspaceID": "a23de67h-e527-40d5-a867-5c0ce9e72d0d", "password": "InWtiUpYhF1Z", "username": "9h7f54cb-d9ed-46b3-8492-e9a9bf555021" }, }, { "tenantURI":"2345557890@myhost.com" ... } ] } -
将租户配置添加到 Voice Gateway 配置,然后部署环境。有关更多信息,请参阅部署多租户 JSON 配置。
租户配置属性
您可以在高级 JSON 配置属性中查找有关租户配置属性的信息。