{"_id":"@dytesdk/twilio-shim","_rev":"4-5b36a928a6c92dcd5901b64f5e578f13","name":"@dytesdk/twilio-shim","dist-tags":{"latest":"0.0.3"},"versions":{"0.0.1":{"name":"@dytesdk/twilio-shim","version":"0.0.1","author":"","license":"ISC","_id":"@dytesdk/twilio-shim@0.0.1","maintainers":[{"name":"dyteindia","email":"dev@dyte.io"}],"homepage":"https://dyte.io","bugs":{"url":"https://community.dyte.io"},"dist":{"shasum":"712322332b2698a03105d04b8e87d187e5ade7aa","tarball":"https://registry.npmjs.org/@dytesdk/twilio-shim/-/twilio-shim-0.0.1.tgz","fileCount":14,"integrity":"sha512-tdPuR/OPsopTY8PrXz0xsqOKte0e7/GjzzZT9yqnruLjQm+JYAxY+Tv/oW0sw8oSvgDaXRjILg4z9ya4mleY+g==","signatures":[{"sig":"MEQCIEZKHyYnSc85xcQYT6qXnMouQFzIThY1YnPJmPFc1xFJAiBAmmu6JrOKJIXZvvJH/7GTR5xbmitfy/vld4WF37KRTg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36618,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkTiPaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqr/Q/8D/vD77//kcA0ikfMDAoprF2i7IypJsyDqrQejFvR1xvdS9Wr\r\nB9r2YAqlORy0JhKBnKwflgM3jy/ieVU2lxRKoHrQjiefgZN+B/BIrxUaQKeB\r\nuiKYCIkWzbZZcQ0BInzts7PCxl/lOH5T9vUQv40BwJbhs3B2fziE9dSZfF/h\r\nv/SCmj1clJ92V5otGlZsteTVQ30HXbvO67UX9LFTCxMO+I3QFMSmpENk3US0\r\nH6NIFVQOW7G3thTrpo9wUZMtrJ+MY2yl5CQ/Dlp74T3M4oJbDFygxKp95QJq\r\nZDgW5A3mXbP9XPD8pQodXUGANEKrJSXU5KIzpWjFlWpEV4cg/w1AEYlBepjv\r\ncWG8G3azANAY6GlhB3JGP1hl2ex6pRuGZ70r21aeKfbg39ZfTLAD0nPkKfE1\r\nAhkes6Ctcl1ktg9WEhWiCBk9RHJZgRz/TkCyulHvZ4ts/CtsU5VFptuMj/UE\r\nyyMfXeq72t2P/uk/MZLBLLQNmPEXpJ7V8rQekFt8e8nQEM7bWjq1xoe/80HY\r\nPHRY3+d3imDSfSZorU6TSmfCAKf4jXWGdGn9gZTRxxRQLP68O/cOWVzHgSRm\r\n43Q7hpzAfd7N1N7hlfcIQzl5/c1TMR4I5MklEdxdo1tcFb+z0UMoVuaP/UgX\r\nyuNokKAhLV9d5mp4sde57cFZFbqHRRfSATY=\r\n=MXgp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.cjs.js","types":"types/index.d.ts","module":"dist/index.es.js","gitHead":"3dc9fed1c04470c0448d331efdeff03e3da80461","scripts":{"dev":"vite","test":"echo \"Error: no test specified\" && exit 1","build":"tsc && vite build"},"_npmUser":{"name":"dyteindia","email":"dev@dyte.io"},"_npmVersion":"8.11.0","description":"Twilio Shim","directories":{},"_nodeVersion":"16.16.0","dependencies":{"events":"^3.3.0","@dytesdk/web-core":"^1.11.1"},"publishConfig":{"tag":"latest","access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^4.3.1","typescript":"^5.0.4","@types/events":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/twilio-shim_0.0.1_1682842586496_0.1749512819643415","host":"s3://npm-registry-packages"}},"0.0.2":{"name":"@dytesdk/twilio-shim","version":"0.0.2","author":"","license":"UNLICENSED","_id":"@dytesdk/twilio-shim@0.0.2","maintainers":[{"name":"dyteindia","email":"dev@dyte.io"}],"homepage":"https://dyte.io","bugs":{"url":"https://community.dyte.io"},"dist":{"shasum":"0ce78e120ad24ee30fb9480f0460c33298747e5c","tarball":"https://registry.npmjs.org/@dytesdk/twilio-shim/-/twilio-shim-0.0.2.tgz","fileCount":14,"integrity":"sha512-HI94HOIDmaVGqcYkIWTEQHj1pss4bhwMV7G4FXyG0NfaehBpoAwLaOCyvP9JoHjqEmnTaJH3RApmkEKGDxB4Vg==","signatures":[{"sig":"MEYCIQC36gr09PDddOpnIoDkk1YFseZnO8J3+1TGsMvBuZASpwIhAPTa3LWxVt1vKdJ61p1XjIjnYJ32Q14vzbZ0/4DIowwh","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36625,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkTiTXACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoXVg//VXr5GyXB5zP5lm2riw0ZYVFt95lhG6NPgonwTFNtCDb8qhu7\r\nYvVsBPNUOSWQg5oFt4R7+hkN0GXPruXD0aMVOTQHghHdkWKhBfSNe6fs1lpS\r\nsini1BNdy+uiPckZLp7DoSDmQ9biqBUIutY1g7+0NHQNkAMwuEbLE/66k7kW\r\nZM4m4WqUxc8n66Wrmdlt0Pce2rzXhFC+0TgURFpJsS56YcmAvBj1JEXaLKKD\r\nLJWAXuxD1FmQOMVIO68kFm/qGo+sKZnbuUvVcdBvCFfm7wHJ+/zZNWq3U2w9\r\njlDysT3FKaIaBoA9iCe4PL1WLnEpBKMNtoXQ8LkdXBjJHRtNMaU0v4Er2ulZ\r\nzNUGbS9ApXHBhYwtA2DhZORh0O3UjRt5ilj4gauYjpcirj0mxqcfFy9e10xD\r\nblM8rk9OMOL0SlgW53tvUAviPSkpo+XnHFHujCj7NUxQ9x7W8BU5Yqy2ggAn\r\n+/pMsicVV18A1ViwOp66L9UcM0z7YnosPbPxTtIPjNfCY8lnyVMfvRFPt5ZZ\r\nOtylnhlH8SJjnaYaJCRwkK37Agx4ODLq6opfaRk6xkQPQrjYDEfRjSN9s8cm\r\nKTnYsjFJ7a0soNPNtHgUqK8DvnLnFKgHrPSg0GnVCT7h/QBXpniyd7+V4nBw\r\nIOc/ZW7bQHrFoCuV5gSTkPQiuvCb/fcMgjU=\r\n=VLRG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.cjs.js","types":"types/index.d.ts","module":"dist/index.es.js","gitHead":"0088e1cefd07bc054606c22b79f564bbd64b80cf","scripts":{"dev":"vite","test":"echo \"Error: no test specified\" && exit 1","build":"tsc && vite build"},"_npmUser":{"name":"dyteindia","email":"dev@dyte.io"},"_npmVersion":"8.11.0","description":"Twilio Shim","directories":{},"_nodeVersion":"16.16.0","dependencies":{"events":"^3.3.0","@dytesdk/web-core":"^1.11.1"},"publishConfig":{"tag":"latest","access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^4.3.1","typescript":"^5.0.4","@types/events":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/twilio-shim_0.0.2_1682842839052_0.8630411278658277","host":"s3://npm-registry-packages"}},"0.0.3":{"name":"@dytesdk/twilio-shim","version":"0.0.3","author":"","license":"UNLICENSED","_id":"@dytesdk/twilio-shim@0.0.3","maintainers":[{"name":"dyteindia","email":"dev@dyte.io"}],"homepage":"https://dyte.io","bugs":{"url":"https://community.dyte.io"},"dist":{"shasum":"bc1ed6ff5ea2b9561eb8ecd1385d042093e7e99c","tarball":"https://registry.npmjs.org/@dytesdk/twilio-shim/-/twilio-shim-0.0.3.tgz","fileCount":13,"integrity":"sha512-q16q7Ky42rml86e0TpKZBV+hYRSSnHp6VT5uYD+viRmW1dOjXeizfgw/FmRNJz7bok64GbEiBqExYPRsGzuyTA==","signatures":[{"sig":"MEUCIANWVinb4m5NDGrUXSmUuGV97DUl4l6QnmNZ/5lH/B0OAiEAy8ljWm8RSJtrm9hZ0CJ+VpBbK9vrANOnaEmxTqChU8s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36058},"main":"dist/index.cjs.js","types":"types/index.d.ts","module":"dist/index.es.js","gitHead":"b7c179abf25a0b6b48b057b2fea120a519acae6f","scripts":{"dev":"vite","test":"echo \"Error: no test specified\" && exit 1","build":"tsc && vite build"},"_npmUser":{"name":"dyteindia","email":"dev@dyte.io"},"_npmVersion":"9.5.1","description":"Twilio Shim","directories":{},"_nodeVersion":"19.8.1","dependencies":{"events":"^3.3.0","@dytesdk/web-core":"^1.20.0"},"publishConfig":{"tag":"latest","access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^4.3.1","typescript":"^5.0.4","@types/events":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/twilio-shim_0.0.3_1701777564464_0.10419318331259397","host":"s3://npm-registry-packages"}}},"time":{"created":"2023-04-30T08:16:26.419Z","modified":"2025-09-22T09:13:04.195Z","0.0.1":"2023-04-30T08:16:26.693Z","0.0.2":"2023-04-30T08:20:39.202Z","0.0.3":"2023-12-05T11:59:24.655Z"},"bugs":{"url":"https://community.dyte.io"},"license":"UNLICENSED","homepage":"https://dyte.io","description":"Twilio Shim","maintainers":[{"email":"dev@dyte.io","name":"dyteindia"},{"email":"roerohan@gmail.com","name":"roerohan"}],"readme":"<!-- PROJECT LOGO -->\n<p align=\"center\">\n  <a href=\"https://dyte.io\">\n    <img src=\"https://assets.dyte.io/logo-outlined.png\" alt=\"Logo\" width=\"120\" />\n  </a>\n\n  <h2 align=\"center\">Twilio shim by dyte</h3>\n\n  <p align=\"center\">\n    <br />\n    <a href=\"https://docs.dyte.io\"><strong>Explore the docs »</strong></a>\n    <br />\n    <br />\n    <a href=\"https://app.dyte.io\">View Demo</a>\n    ·\n    <a href=\"https://community.dyte.io\">Report Bug</a>\n    ·\n    <a href=\"https://community.dyte.io\">Request Feature</a>\n  </p>\n</p>\n\n<!-- TABLE OF CONTENTS -->\n\n## Table of Contents\n\n- [About the Project](#about-the-project)\n  - [Built With](#built-with)\n- [Getting Started](#getting-started)\n- [Usage](#usage)\n- [Version History](#version-history)\n- [Roadmap](#roadmap)\n- [About](#about)\n\n<!-- ABOUT THE PROJECT -->\n\n## About The Project\n\nThis package `@dytesdk/twilio-shim` is a wrapper over the [Dyte SDK](https://dyte.io) with a Twilio Video compatible external API. It is a drop-in replacement for Twilio Video.js, and supports most of the methods and events that are\npresent in the Twilio Video SDK.\n\n### Built With\n- [@dytesdk/web-core](https://www.npmjs.com/package/@dytesdk/web-core)\n- [Typescript](https://typescriptlang.org)\n\n<!-- GETTING STARTED -->\n\n## Getting Started\n\nYou can install the `@dytesdk/twilio-shim` from the [NPM Registry](https://npmjs.com/) using the `npm install` command.\n\n```bash\nnpm install @dytesdk/twilio-shim\n```\n\n## Usage\n\nThe `@dytesdk/twilio-shim` shares the same API as the Twilio Video SDK. You can use most of the methods that are supported by it. Here's a [compatibility specification](https://dyte.notion.site/Twilio-Shim-Compatibility-Spec-38090f970c4845529cb709f2222b438b)\nthat describes the methods from `twilio-video` that are supported by this `@dytesdk/twilio-shim` package.\n\nHere are a few examples:\n\n```js\nconst { connect } = require('@dytesdk/twilio-shim');\n\nconst authToken = '<AUTH_TOKEN_FROM_DYTE_API>';\nconst room = await connect(authToken, {audio: false, video: true});\nconsole.log(`Successfully joined a Room: ${room.name}`);\nconsole.log(room);\nroom.on('participantConnected', participant => {\n    console.log(`A remote Participant connected: ${participant}`);\n});\n```\n\n```js\nconst { connect } = require('@dytesdk/twilio-shim');\n\nconst authToken = '<AUTH_TOKEN_FROM_DYTE_API>';\nconst room = await connect(authToken, {audio: false, video: false});\nroom.on('participantConnected', participant => {\n    console.log(`Participant \"${participant.identity}\" connected`);\n\n    participant.tracks.forEach(publication => {\n        if (publication.isSubscribed) {\n            const track = publication.track;\n            document.getElementById('remote-media-div').appendChild(track.attach());\n        }\n    });\n\n    participant.on('trackSubscribed', track => {\n        console.log('Subscribed to track', track);\n        const element = track.attach();\n        console.log(element);\n        document.getElementById('remote-media-div').appendChild(element);\n    });\n});\n```\n\n```js\nconst { connect } = require('@dytesdk/twilio-shim');\n\nconst authToken = '<AUTH_TOKEN_FROM_DYTE_API>';\nconst room = await connect(authToken, {audio: true, video: true});\n\nroom.localParticipant.audioTracks.forEach(publication => {\n    publication.track.disable();\n});\n\nroom.localParticipant.videoTracks.forEach(publication => {\n    publication.track.disable();\n});\n\n\n// Enable audio and video tracks after 5 seconds\nsetTimeout(() => {\n    room.localParticipant.audioTracks.forEach(publication => {\n        publication.track.enable();\n    });\n\n    room.localParticipant.videoTracks.forEach(publication => {\n        publication.track.enable();\n    });\n}, 5000);\n```\n\n<!-- CHANGELOG -->\n\n## About\n\n`twilio-shim` is created & maintained by Dyte, Inc. You can find us on Twitter - [@dyte_io](https://twitter.com/dyte_io) or write to us at `dev [at] dyte.io`.\n\nThe names and logos for Dyte are trademarks of Dyte, Inc.\n\nWe love open source software! See [our other projects](https://github.com/dyte-in) and [our products](https://dyte.io).\n","readmeFilename":"README.md"}