Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

jcblw/redux-peer-connection

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

17 Commits

Repository files navigation

Redux peer connection

Build Status

Redux peer connection is a set of redux tools that enable peer to peer connections between two browsers. It uses simple peer under the hood.

Includes

  • reducer
  • middleware
  • action creators

Usage

Attaching it to the redux store.

import {createStore, applyMiddleware, combineReducers} from 'redux'
import {createReducer, middleware} from 'redux-peer-connection'
export const configStore = preload => {
 return createStore(
 combineReducers({
 peer: createReducer('peer') // create reducer with the key of peer
 }),
 preload,
 applyMiddleware(
 middleware // add middleware to redux
 )
 )
}

This should setup a key in your reducer, with some info about the peer connection in it.

Whats info is available

{
 channel: null, // the channel name eg. 'foo'
 isConnected: false, // the state of the connection
 isInitialized: false, // if a peer was created or not
 offer: null, // RTCPeerConnection.createOffer
 answer: null, // RTCPeerConnection.createAnswer
 data: [], // if data is being passed this will be an array of buffers
 stream: null // if video/audio is being passed this will be the incoming stream
}

Available action creators

To import action creators.

import {actions} from 'redux-peer-connection'
createPeer

Creates a peer connection, object passed to this function is then passed to a new instance of SimplePeer

actions.createPeer({
 initiator: true,
 channelName: 'my-p2p-app'
})
acceptSignal

Once somehow getting a signal from other peer. This can be an answer, offer, or ice canidate

actions.acceptSignal({
 type: 'offer',
 sdp: 'v=0\r\n...'
})
sendData

Once a connection is established, you can send data to the other peer via this method.

actions.sendData('hello, this is peer')

Contribute

We use standard and make sure to run npm test before making a PR.

About

Some redux tooling around creating peer to peer connections

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

AltStyle によって変換されたページ (->オリジナル) /