你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

适用于 Teams 电话 Mobile 的 Azure 通信网关中的移动控制点

移动控制点(MCP)是集成到 Azure 通信网关中的 IMS 应用程序服务器。 它简化了与 Microsoft 电话 系统(MPS)的交互,方法是最大程度地减少移动网络中所需的网络适应,将呼叫路由到 Microsoft Teams。

MCP 查询 MPS 以确定呼叫者或被调用方是否有资格使用 Teams 电话 移动服务。

  • 如果呼叫方或被调用方符合条件,MCP 会将 MPS 添加到呼叫路径,以便 MPS 可以提供团队电话移动服务。
  • 如果用户不符合条件或呼叫未到达 MPS,MCP 可确保本机移动呼叫继续达到其目标,尽管没有 Microsoft Teams 服务或在 Microsoft Teams 客户端中发出警报。

有关 MCP 在 Teams 电话 移动部署(包括呼叫流)中提供的角色的详细信息,请参阅 Microsoft 代表提供的 Teams 电话 Mobile 文档。

SIP 信号

MCP 使用 ISC 接口与 IMS S-CSCF 集成。 此接口在 3GPP TS 23.218 和 TS 23.228 中定义,3GPP TS 24.229 中提供了更多详细信息。 可以选择在 IMS 网络的边缘部署 ISC 网关功能,以提供边界控制,类似于 IBCF 提供的边界控制。

MCP 充当 SIP 代理。 它查询 MPS 以确定呼叫是否涉及 Teams 电话移动版订阅者,并更新呼叫上的信号,以便根据需要将呼叫路由到 MPS。 它不处理媒体。

MCP 始终查询 MPS,除非调用满足以下条件之一:

  • 移动发起调用具有具有任何值的 X-MS-FMC 标头。
  • 来自 Teams 客户端的调用具有具有值的 APPX-MS-FMC 标头。
  • 移动终止调用具有具有值的 MTX-MS-FMC 标头。

这些 X-MS-FMC 标头由 MPS 添加,并允许 MCP 避免在循环中持续查询 MPS。

MCP 确定调用是移动发起的还是移动终止,方法是使用 P-Served-User 标头上的参数,或路由标头origterm的 URI 中的参数(按首选项sescase顺序)或路由标头的 URI 中的参数。orig term 如果不存在这些参数,MCP 会将调用视为移动终止。

MCP 确定从 P-Served-User 标头或 P-Asserted-Identity 标头中的 URI 发起的移动呼叫的已服务订阅者。 它从 P-Served-User 标头或 Request-URI 中的 URI 的移动终止调用确定服务订阅者。

如果 MPS 响应错误或无法提供用于路由呼叫的号码,MCP 无法更新信号,因此呼叫不会接收 Teams 电话移动服务。 MCP 会将任何 SIP 错误传回移动网络。

MCP 支持 E.164 号码和 sip: 和 tel: URI。

到 MCP 的所有流量都必须使用基于 TLS 的 SIP。

调用 MCP for Teams 电话移动版订阅者

Teams 电话移动订阅者需要在 HSS 中配置初始筛选条件(iFC)配置,以在调用中的相应点涉及 MCP:我们建议在发起的 iFC 链中调用它最后一个,并在终止 iFC 链中首先调用它。 针对涉及 Teams 电话 移动订阅者的所有调用调用调用 MCP,CDIV 调用除外。

iFC 应使用 MCP 的主机名。 MCP 提供两个主机名,每个主机名优先于一个区域,并允许回退到另一个区域。 查找主机名:

  1. 转到 Azure 通信网关资源的“概述 ”页。
  2. 在每个 “服务位置” 部分中,找到 MCP 主机名 字段。

例如,可以使用以下 iFC(替换为 <mcp-hostname> 其中一个主机名)。

<InitialFilterCriteria>
    <Priority>0</Priority>
    <TriggerPoint>
        <ConditionTypeCNF>0</ConditionTypeCNF>
        <SPT>
            <ConditionNegated>0</ConditionNegated>
            <Group>0</Group>
            <Method>INVITE</Method>
        </SPT>
        <SPT>
            <ConditionNegated>1</ConditionNegated>
            <Group>0</Group>
            <SessionCase>4</SessionCase>
        </SPT>
    </TriggerPoint>
    <ApplicationServer>
        <ServerName>sip:<mcp-hostname>;transport=tcp;service=mcp</ServerName>
        <DefaultHandling>0</DefaultHandling>
    </ApplicationServer>
</InitialFilterCriteria>

后续步骤