@tobiipro/skylinkjs
v0.6.11-tobii.2
Published
SkylinkJS is an open-source client-side library for your web-browser that enables any website to easily leverage the capabilities of WebRTC and its direct data streaming powers between peers for audio/video conferencing or file transfer. This version has
Downloads
5
Readme
SkylinkJS is an open-source client-side library for your web-browser that enables any website to easily leverage the capabilities of WebRTC and its direct data streaming powers between peers for audio/video conferencing or file transfer.
We've gone to great length to make this library work in as many browsers as possible. SkylinkJS is build on top of AdapterJS and works with our Temasys WebRTC Plugin even in Internet Explorer and Safari on Mac and PC.
You'll need a Temasys Developer Account and an App key to use this. Register here to get your App key.
Supported Browsers
| Features | Chrome45
-51
+ | Firefox40
-48
+ | Opera32
-36
+ | IE9
-11
+ | Safari7
-9
|
| -------------- | ---------- | ----------- | --------- | ---------- | ---------- |
| Screensharing | Yes with Chrome Extension** | Yes with Firefox Extension** | - | Yes with Commercial Temasys Plugin* | Yes with Commercial Temasys Plugin* |
| Video Call | Yes | Yes | Yes | Yes with Temasys Plugin | Yes Temasys Plugin |
| Audio Call | Yes | Yes | Yes | Yes with Temasys Plugin | Yes with Temasys Plugin |
| File Transfers | Yes | Yes | Yes | Yes with Temasys Plugin | Yes with Temasys Plugin |
| Chat Messaging | Yes | Yes | Yes | Yes with Temasys Plugin | Yes with Temasys Plugin |
- (+) Latest browser versions indicates the last tested browser version. It should work with the updated next versions, but if it doesn't, open a bug ticket.
- (*) Commerical Temasys Plugin incorporates additional features from Temasys Free Plugin.
- (**) Our extensions works with Temasys demos and localhost demos. You will have to modify the extension to work on your hosted Web Applications. For Chrome extensions source code, contact us. For Firefox extensions source code, you may download from your Application Key in developer.temasys.com.sg.
Installation
Install SkylinkJS with npm:
npm install skylinkjs
Install SkylinkJS with bower:
bower install skylinkjs
Read more
Need help or want something changed?
You can raise tickets on our support portal or on our Github Page.
Current versions and stability
Always use the latest versions of the SkylinkJS library as WebRTC is still evolving and we adapt to changes very frequently.
Noted Issues and Solutions
Installing 0.6.3
- 0.6.10
versions in NPM
Due to corrupted files being uploaded for 0.6.3
- 0.6.10
versions, we have removed these versions from the NPM repository.
You may still install these versions using this command:
npm install git://github.com/Temasys/SkylinkJS#<version_tag>
Upgrading from 0.5.7
and below:
It's now recommended to use the init()
callback instead of using readyStateChange
event state to go completed as this may result in an infinite loop.
Ready state change triggers whenever the current room information is retrieved, and joining another room instead of the default room will result in a re-retrieval to the API server, causing readyStateChange to trigger again and making SkylinkJS to re-join the room over and over again.
// Use this
sw.init(data, function () {
sw.joinRoom('name');
});
// Instead of
sw.on('readyStateChange', function (state) {
if (state === sw.READY_STATE_CHANGE.COMPLETED) {
sw.joinRoom('name');
}
});
How to build your own SkylinkJS
In your Git terminal, execute the following commands:
# 1. Clone or download this repository via git terminal.
git clone https://github.com/Temasys/SkylinkJS.git
# 2. Install all required SkylinkJS dependencies. Use (sudo npm install) if required.
npm install
# 3. Install Grunt to run tasks.
npm install grunt -g
npm install grunt-cli -g
# 4. Install Browserify and Testling to run test scripts :
npm install browserify -g
npm install testling -g
# 5. Run the start script to start a local webserver to be able access the demo and doc folders. This will popup Chrome (Mac). You can configure a different browsers in the start.sh file. Alternatively, you can run (sh start.sh)
npm start # note that this runs in Chrome currently..
After making edits, here are some commands to run and build Skylink:
grunt jshint
: To check for code formatting and syntax errors.grunt yuidoc
: To generate document from code.grunt dev
: To run and compile all the codes.grunt publish
: To run when code is ready for next release.
What's included in the repository?
demo
: Contains the sample demos.doc
: Contains the generated YUI documentation for the SkylinkJS.doc-style
: Contains the template for our YUI documentation.publish
: Contains the production version of the library and a minified copy of itsource
: Contains the skylink.js library development filestests
: Contains the list of test scripts.