【问题标题】:Error when Requiring Twilio Voice SDK Javascript需要 Twilio Voice SDK Javascript 时出错
【发布时间】:2022-11-09 23:09:22
【问题描述】:

我已经(通过 npm)将 twilio/voice-sdk 包(v.2.1.0)包含在一个项目中。当我包含以下代码时(如许多示例所示):

const Device = require('@twilio/voice-sdk').Device;

我收到一个控制台错误,说明:

“在 '@twilio/audioplayer/es5' 中找不到模块 'events'”。我正在尝试将其导入客户端,而不是服务器。

无论我使用require还是import,我都会得到这个。

作为对此的尝试,我还包含了节点包@twilio/audioplayer,但无济于事。有点卡住这里发生了什么。

我正在尝试在 Wix(或更具体地说是 Velo)项目中使用它。希望创建一个拨号器,可以在该平台上已经存在的站点上接听和发起电话呼叫。

我已将上述两个 npm 包都安装到我的项目中,但让他超出了枚举错误。

来自互联网的任何想法?

附加信息: 如果我在服务器端添加“要求”,我不会得到同样的错误。我打算试试这个,然后对服务器进行异步调用以获取我的设备对象。但是,Twilio 设备 SDK 包使用了 Window 对象,该对象在服务器端当然不存在。

【问题讨论】:

    标签: javascript twilio twilio-api velo


    【解决方案1】:

    @twilio/audioplayer 包使用“事件”模块。该模块在 Node.js 中可用,并且当应用程序与 Webpack 之类的东西捆绑在一起时,它是 polyfill。

    我没有使用过 Velo,但我认为它们的捆绑方式不同,不会为此添加 polyfill。我建议您也将events npm 模块安装到您的项目中。这应该提供库用于浏览器环境的EventEmitter 并停止此错误。

    【讨论】:

    • 非常感谢您这么快就得到答复。唉,它并没有解决问题。我担心 Velo 捆绑东西的方式会成为问题。可悲的是,Velo 似乎并没有提供太多的支持,就提出问题来看看他们如何解决这个问题或看看是否有解决方法。
    • 抱歉,我无法提供更多帮助。这个Velo forum 也可以作为提出此类问题的地方吗?他们似乎也有一个Discord server
    • 我喜欢互联网上乐于助人的人。感谢您提供到 Velo 论坛和 Discord 服务器的链接。我会将问题发布到这些平台上。如果我得到一些东西,我会在这里回答,以防万一其他人决定这样做。
    • 那太好了,祝你好运找到答案,我期待看到你在这里分享它!谢谢!
    【解决方案2】:

    我有一个类似的问题,我可以导入设备,但不能构造它。我遇到的问题是捆绑器(在我的情况下为 Vite)没有 polyfill 来运行 @twilio/voice-sdk 中的某些功能。

    我的解决方案是在 Vite 上安装 polyfill。

    方法如下:

    首先,安装这些软件包:

    npm i @esbuild-plugins/node-globals-polyfill @esbuild-plugins/node-modules-polyfill --save-dev
    

    然后将 polyfill 配置添加到您的 vite.config.js 中。这是代码的链接:https://medium.com/@ftaioli/using-node-js-builtin-modules-with-vite-6194737c2cd2

    因为我使用 React,所以我仍然需要在 polyfill 配置中添加插件:[react()]。所以它变成了这样的东西:

    export default defineConfig({
    plugins: [react()],
    // rest of the polyfill config
    })
    

    现在你可以这样做:

    import { Device } from "@twilio/voice-sdk";
    new Device(token);
    

    【讨论】:

      猜你喜欢
      • 2016-09-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多