turn-js
Version:
TURN (Traversal Using Relay NAT) library written entirely in JavaScript
58 lines (32 loc) • 1.49 kB
Markdown
[](https://circleci.com/gh/MicroMinion/turn-js)
[](https://npmjs.org/package/turn-js)
Turn-JS
### TURN (Traversal Using Relay NAT) library written entirely in JavaScript.
# Features
- implements (most of) the features specified in [RFC 5766](https://tools.ietf.org/html/rfc5766)
- supports TCP and UDP communication
- offers callback and promise based API
- can be browserified (to be used in chrome apps)
# Install
```
npm install turn-js
```
# Usage
## Callbacks
## Promises
# API
## `myClient = turn(serverAddr, serverPort, user, pwd, transport)`
## `myClient.allocate(function(address) {}, function(error) {})`
## `myClient.allocateP()`
## `myClient.createPermission(address, function() {}, function(error) {})`
## `myClient.createPermission(address)`
## `myClient.bindChannel(address, port, channel, lifetime, function() {}, function(error) {})`
## `myClient.bindChannelP(address, port, channel)`
## `myClient.refresh(lifetime, function() {}, function(error) {})`
## `myClient.refreshP(lifetime)`
## `myClient.close(function() {}, function(error) {})`
## `myClient.sendToRelay(bytes, address, port, function() {}, function(error))`
## `myClient.sendToRelayP(bytes, address, port)`
## `myClient.sendToChannel(bytes, channel, function() {}, function(error) {})`
## `myClient.sendToChannelP(bytes, channel)`
# Events