如何在 Angular 2 中使用 Twilio 客户端?

Posted

技术标签:

【中文标题】如何在 Angular 2 中使用 Twilio 客户端?【英文标题】:How to use Twilio Client in Angular 2? 【发布时间】:2016-11-08 06:16:42 【问题描述】:

我正在创建一个应用程序,我需要在其中实现点击呼叫功能。因此,我使用 Twilio Client 进行交流。我试过this example。

现在我只需要它,我需要在我的 Angular 2 应用程序中实现它。如何在我的 Typescript 中导入 Twilio Client 以及如何使用它?

我正在尝试在我的组件中导入 Twilio,例如

import * as Twilio from 'twilio'

但这不是正确的导入方法。

【问题讨论】:

【参考方案1】:

此处是 Twilio 开发人员宣传员。现在我们没有任何 TypeScript 绑定,因此这样的捆绑是行不通的。我正在处理一些绑定,但同时我建议您包含该库,就像它在演示应用程序中使用脚本标记所做的那样。您可以使用我们的 Twilio CDN:

  <script type="text/javascript" src="//media.twiliocdn.com/sdk/js/client/v1.3/twilio.min.js"></script>

之后你必须让 TypeScript 知道它。为此,您目前必须使用declare const。不幸的是,在绑定完成之前,这不会给你任何 TypeScript 类型检查的简洁性,但它至少让你使用它。只需在您计划使用 Twilio 代码的文件中添加以下行:

declare const Twilio: any;

希望对您有所帮助。

干杯, 多米尼克

【讨论】:

我正在寻找的一件事是应用程序到应用程序的调用功能。我没有得到任何解决方案。 嘿罗纳克!查看 Twilio 客户端快速入门。这既适用于从客户拨打真实电话号码,也适用于其他客户。 您可以在这里找到代码:github.com/TwilioDevEd/client-quickstart-node。导入部分是服务器端的这些行:github.com/TwilioDevEd/client-quickstart-node/blob/master/… 感谢您的回复。 有关于打字稿版本的消息吗?谢谢!【参考方案2】:

现在,当您从 npm (https://www.npmjs.com/package/twilio-chat) 安装 Twilio 客户端库时,它具有相应的类型定义,因此您只需编写 import Client, User from "twilio-chat";,然后在组件 Client 中声明一个 Client 变量并创建它:

Client.create(token).then(client => 
        this.twilioClient = client
);

不幸的是,twilio-common 没有 d.ts,所以如果你想使用其中的一些东西,比如 AccessManager,你需要这样做,所有变量都有 any 类型:

let AccessManager = require('twilio-common').AccessManager;
let accessManager = new AccessManager(token);

编辑:不幸的是,由于某种原因,开始从依赖文件中的“twilio-chat”中获取缺少 d.ts 模块的响应,所以看起来这个库还没有准备好与 TS 一起使用:(。

【讨论】:

这方面有进展了吗?

以上是关于如何在 Angular 2 中使用 Twilio 客户端?的主要内容,如果未能解决你的问题,请参考以下文章

如何检查 Twilio.Device 处理程序是不是已存在

我在 Angular 中离开房间时出错 twilio-programmable-video

Twilio - 如何将现有呼叫移至会议

如何在解析服务器上配置 Twilio?

如何使用Twilio留下语音邮件?

Twilio - 如何通过在 NodeJs 中提供呼叫 SID 来检索语音呼叫记录媒体文件