update changelog

fix package name in README
This commit is contained in:
afrokick 2020-03-19 23:35:59 +03:00
parent f3bb222609
commit 813f7aaec8
6 changed files with 41 additions and 26 deletions

View File

@ -37,11 +37,11 @@ $> peerjs --port 9000 --key peerjs --path /myapp
Or, create a custom server:
```bash
$> npm install peerjs-server
$> npm install peer
```
```javascript
import {PeerServer} from 'peerjs-server';
import {PeerServer} from 'peer';
const server = PeerServer({port: 9000, path: '/myapp'});
```
@ -60,7 +60,7 @@ const server = PeerServer({port: 9000, path: '/myapp'});
```javascript
import fs from 'fs';
import {PeerServer} from 'peerjs-server';
import {PeerServer} from 'peer';
const server = PeerServer({
port: 9000,
@ -79,41 +79,47 @@ The option is passed verbatim to the
if it is truthy.
```javascript
import {PeerServer} from 'peerjs-server';
import {PeerServer} from 'peer';
const server = PeerServer({port: 9000, path: '/myapp', proxied: true});
const server = PeerServer({
port: 9000,
path:
'/myapp',
proxied: true
});
```
### Custom client ID generation
By default, PeerServer uses `uuid/v4` package to generate random client IDs.
You can specify a custom function to use to generate client IDs.
You can set `generateClientId` option in config to specify a custom function to generate client IDs.
```javascript
const genRandomId = () => {
// Original generation algorithm
return (Math.random().toString(36) + '0000000000000000000').substr(2, 16);
}
const customGenerationFunction = () => (Math.random().toString(36) + '0000000000000000000').substr(2, 16);
const server = PeerServer({port: 9000, path: '/myapp', proxied: true, genRandomId: genRandomId });
const server = PeerServer({
port: 9000,
path: '/myapp',
generateClientId: customGenerationFunction
});
```
### Combining with existing express app
```javascript
import express from 'express';
import {ExpressPeerServer} from 'peerjs-server';
import {ExpressPeerServer} from 'peer';
const app = express();
app.get('/', (req, res, next) => { res.send('Hello world!'); });
app.get('/', (req, res, next) => res.send('Hello world!'));
// =======
const server = app.listen(9000);
const options = {
debug: true,
path: '/peerjs'
debug: true,
path: '/peerjs'
}
const peerserver = ExpressPeerServer(server, options);

View File

@ -1,5 +1,13 @@
# PeerServer Changelog
### 0.4.0
* New: Allow passing in custom client ID generation function - #157 Thanks @ajmar
### 0.3.2
* Fixed: fix main field in package.json
### 0.3.1
* Fixed: no expire message in some cases

8
package-lock.json generated
View File

@ -1,6 +1,6 @@
{
"name": "peer",
"version": "0.3.1",
"version": "0.3.2",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
@ -3754,9 +3754,9 @@
},
"dependencies": {
"minimist": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
"integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
"version": "1.2.5",
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
"integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==",
"dev": true
}
}

View File

@ -10,7 +10,7 @@ export default ({ config, realm }: {
// Retrieve guaranteed random ID.
app.get("/id", (_, res: express.Response) => {
res.contentType("html");
res.send(realm.generateClientId(config.genRandomId));
res.send(realm.generateClientId(config.generateClientId));
});
// Get a list of all peers for a key, enabled by the `allowDiscovery` flag.

View File

@ -12,6 +12,7 @@ export interface IConfig {
key: string;
cert: string;
};
readonly generateClientId?: () => string;
}
const defaultConfig: IConfig = {

View File

@ -20,7 +20,7 @@ export interface IRealm {
clearMessageQueue(id: string): void;
generateClientId(genRandomId?: () => string): string;
generateClientId(generateClientId?: () => string): string;
}
export class Realm implements IRealm {
@ -69,14 +69,14 @@ export class Realm implements IRealm {
this.messageQueues.delete(id);
}
public generateClientId(genRandomId?: () => string): string {
public generateClientId(generateClientId?: () => string): string {
const _genRandomId = genRandomId ? genRandomId : uuidv4;
const generateId = generateClientId ? generateClientId : uuidv4;
let clientId = _genRandomId();
let clientId = generateId();
while (this.getClientById(clientId)) {
clientId = _genRandomId();
clientId = generateId();
}
return clientId;