Ver 1
This commit is contained in:
parent
cbabeee30b
commit
73c164b65e
|
@ -0,0 +1,61 @@
|
|||
interface IConnection{
|
||||
endpoint: string;
|
||||
autoPair?: boolean;
|
||||
}
|
||||
export default class Connection
|
||||
{
|
||||
public ws! : WebSocket;
|
||||
public endpoint : URL;
|
||||
public autoPair : boolean = false;
|
||||
public connected : boolean = false;
|
||||
constructor(options: IConnection){
|
||||
this.endpoint = new URL(options.endpoint);
|
||||
this.autoPair = options.autoPair || false;
|
||||
this.connect();
|
||||
}
|
||||
public connect()
|
||||
{
|
||||
this.ws = new WebSocket(this.endpoint.href);
|
||||
this.addWSEvents();
|
||||
}
|
||||
public addWSEvents()
|
||||
{
|
||||
this.ws.addEventListener("open", () => this.eventOpen());
|
||||
this.ws.addEventListener("close", () => this.eventClose());
|
||||
this.ws.addEventListener("error", () => this.eventError());
|
||||
this.ws.addEventListener("message", ({data}) => this.eventMessage(data as string | ArrayBuffer));
|
||||
}
|
||||
private eventOpen()
|
||||
{
|
||||
this.connected = true;
|
||||
}
|
||||
private eventClose()
|
||||
{
|
||||
this.connected = false;
|
||||
}
|
||||
private eventError()
|
||||
{
|
||||
this.connected = false;
|
||||
}
|
||||
private recaivePackEvent : ((data:any) => any)[] = [];
|
||||
public onRecaivePack(func:(data:any) => any)
|
||||
{
|
||||
this.recaivePackEvent.push(func);
|
||||
}
|
||||
private eventMessage(data: string | ArrayBuffer)
|
||||
{
|
||||
if(typeof data == "string")
|
||||
{
|
||||
for (const callback of this.recaivePackEvent) {
|
||||
callback(JSON.parse(data));
|
||||
}
|
||||
}
|
||||
}
|
||||
public tranferToServer(data:any)
|
||||
{
|
||||
if(this.connected)
|
||||
{
|
||||
this.ws.send(JSON.stringify(data));
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,3 +1,3 @@
|
|||
namespace WSTS {
|
||||
|
||||
};
|
||||
export default class WSTS {
|
||||
public connection? : Connection;
|
||||
}
|
|
@ -0,0 +1,194 @@
|
|||
function WSJS()
|
||||
{
|
||||
this.isActive = false;
|
||||
this.ws = WSJS.activeWS || null;
|
||||
this.endpoint = null;
|
||||
};
|
||||
WSJS.activeWS = null;
|
||||
WSJS.prototype.connect = function(url){
|
||||
this.ws = new WebSocket(url);
|
||||
this.addListeners();
|
||||
}
|
||||
WSJS.prototype.addListeners = function(){
|
||||
this.ws.addEventListener("close", this.closedEvent.bind(this));
|
||||
this.ws.addEventListener("message", this.messageEvent.bind(this));
|
||||
this.ws.addEventListener("open", this.openMessage.bind(this));
|
||||
}
|
||||
WSJS.prototype.closedEvent = function(){
|
||||
WSJS.activeWS = null;
|
||||
this.isActive = false;
|
||||
this.ws = null;
|
||||
this.events.dispatchEvent(new Event("close"));
|
||||
}
|
||||
WSJS.prototype.openMessage = function(){
|
||||
WSJS.activeWS = this.ws;
|
||||
this.isActive = true;
|
||||
this.events.dispatchEvent(new Event("open"));
|
||||
}
|
||||
WSJS.prototype.messageEvent = function({data}){
|
||||
let [payload, id, action] = JSON.parse(data);
|
||||
if(typeof id === 'number')
|
||||
{
|
||||
if(this.requests.has(id))
|
||||
{
|
||||
this.requests.get(id)(payload, action);
|
||||
switch(action)
|
||||
{
|
||||
case 'E':{ // [E]ND flag
|
||||
this.requests.delete(id);
|
||||
break;
|
||||
}
|
||||
case 'S': // [S]TREAM flag
|
||||
default:{
|
||||
break;
|
||||
}
|
||||
}
|
||||
}else console.warn("Missing event sended from server");
|
||||
}else{
|
||||
if(this.signals.has(id))
|
||||
{
|
||||
for (const callback of this.signals.get(id)) {
|
||||
callback(payload);
|
||||
}
|
||||
}else console.warn("Missing event sended from server");
|
||||
}
|
||||
}
|
||||
WSJS.prototype.events = new EventTarget();
|
||||
WSJS.prototype.scope = function(func){
|
||||
if(this.isActive)
|
||||
{
|
||||
func();
|
||||
}else this.events.addEventListener("open", func);
|
||||
}
|
||||
|
||||
WSJS.prototype.sendOnly = function(obj){
|
||||
if(this.isActive)
|
||||
{
|
||||
this.sendRaw([obj,'R']);
|
||||
}else throw new Error(`socket could be a active`);
|
||||
}
|
||||
WSJS.prototype.requests = new Map();
|
||||
WSJS.prototype.requestCount = 0;
|
||||
WSJS.prototype.request = async function(obj){
|
||||
if(this.isActive)
|
||||
{
|
||||
return await new Promise(ok => {
|
||||
let id = ++this.requestCount;
|
||||
this.sendRaw([obj,id,'R']);
|
||||
this.requests.set(id,data => {
|
||||
ok(data);
|
||||
});
|
||||
})
|
||||
}else throw new Error(`socket could be a active`);
|
||||
}
|
||||
WSJS.prototype.stream = async function(obj,callback){
|
||||
if(this.isActive)
|
||||
{
|
||||
let id = ++this.requestCount;
|
||||
this.sendRaw([obj, id, 'S']);
|
||||
this.requests.set(id,data => {
|
||||
callback(data);
|
||||
});
|
||||
}else throw new Error(`socket could be a active`);
|
||||
}
|
||||
WSJS.prototype.signals = new Map();
|
||||
WSJS.prototype.signal = async function(name, callback){
|
||||
if(!this.signals.has(name))
|
||||
{
|
||||
this.signals.set(name, [callback]);
|
||||
}else{
|
||||
this.signals.get(name).push(callback);
|
||||
}
|
||||
}
|
||||
WSJS.prototype.slot = async function(name, obj){
|
||||
if(this.isActive)
|
||||
{
|
||||
if(typeof name == "string")
|
||||
{
|
||||
this.sendOnly([obj,name]);
|
||||
}else{
|
||||
throw new Error(`name could be a string, gived ${typeof name}`);
|
||||
}
|
||||
}else throw new Error(`socket could be a active`);
|
||||
}
|
||||
WSJS.prototype.sendRaw = function(obj){
|
||||
if(this.isActive)
|
||||
{
|
||||
this.ws.send(JSON.stringify(obj))
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
WSJS.prototype.authWith = async function(username, password){
|
||||
await this.request({
|
||||
type: 'auth/login',
|
||||
username,
|
||||
password
|
||||
});
|
||||
};
|
||||
WSJS.prototype.fetchMyRoomInfo = async function(){
|
||||
return await this.request({
|
||||
type: 'myroom-info'
|
||||
});
|
||||
};
|
||||
WSJS.prototype.createRoom = async function(options){
|
||||
let result = await this.request({
|
||||
type: 'create-room',
|
||||
accessType: options.accessType || "private",
|
||||
notifyActionInvite: options.notifyActionInvite === undefined ? true : options.notifyActionInvite,
|
||||
notifyActionJoined: options.notifyActionJoined === undefined ? true : options.notifyActionJoined,
|
||||
notifyActionEjected: options.notifyActionEjected === undefined ? true : options.notifyActionEjected,
|
||||
joinType: options.joinType || "free",
|
||||
description: options.description || "No Description",
|
||||
name: options.name || "No",
|
||||
credential: options.credential || undefined
|
||||
});
|
||||
return result;
|
||||
};
|
||||
WSJS.prototype.roomInfo = async function(name){
|
||||
let result = await this.request({
|
||||
type: 'room-info',
|
||||
name
|
||||
});
|
||||
return result;
|
||||
};
|
||||
WSJS.prototype.joinRoom = async function(options){
|
||||
let result = await this.request({
|
||||
...options,
|
||||
type: 'joinroom'
|
||||
});
|
||||
return result;
|
||||
};
|
||||
WSJS.prototype.joinedRooms = new Map();
|
||||
WSJS.prototype.getJoinedRooms = async function(){
|
||||
return await this.request({
|
||||
type: 'joinedrooms'
|
||||
});
|
||||
};
|
||||
WSJS.prototype.getRoomPeers = async function(id){
|
||||
return await this.request({
|
||||
type: 'room-peers',
|
||||
roomId: id
|
||||
});
|
||||
};
|
||||
WSJS.prototype.sendPackToPeer = async function(roomId, pack){
|
||||
return await this.sendOnly({
|
||||
type: 'pack/to',
|
||||
to: roomId,
|
||||
pack,
|
||||
handshake: false
|
||||
});
|
||||
};
|
||||
WSJS.prototype.sendPackToRoom = async function(roomId, pack){
|
||||
return await this.sendOnly({
|
||||
type: 'pack/room',
|
||||
to: roomId,
|
||||
pack,
|
||||
handshake: false
|
||||
});
|
||||
};
|
|
@ -14,6 +14,7 @@
|
|||
"joi": "^17.7.0",
|
||||
"knex": "^2.3.0",
|
||||
"sqlite3": "^5.1.2",
|
||||
"systemjs": "^6.13.0",
|
||||
"terminal-kit": "^3.0.0",
|
||||
"typescript": "^4.9.3",
|
||||
"websocket": "^1.0.34"
|
||||
|
@ -2082,6 +2083,11 @@
|
|||
"url": "https://github.com/sponsors/ljharb"
|
||||
}
|
||||
},
|
||||
"node_modules/systemjs": {
|
||||
"version": "6.13.0",
|
||||
"resolved": "https://registry.npmjs.org/systemjs/-/systemjs-6.13.0.tgz",
|
||||
"integrity": "sha512-P3cgh2bpaPvAO2NE3uRp/n6hmk4xPX4DQf+UzTlCAycssKdqhp6hjw+ENWe+aUS7TogKRFtptMosTSFeC6R55g=="
|
||||
},
|
||||
"node_modules/tar": {
|
||||
"version": "6.1.12",
|
||||
"resolved": "https://registry.npmjs.org/tar/-/tar-6.1.12.tgz",
|
||||
|
@ -3933,6 +3939,11 @@
|
|||
"resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
|
||||
"integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w=="
|
||||
},
|
||||
"systemjs": {
|
||||
"version": "6.13.0",
|
||||
"resolved": "https://registry.npmjs.org/systemjs/-/systemjs-6.13.0.tgz",
|
||||
"integrity": "sha512-P3cgh2bpaPvAO2NE3uRp/n6hmk4xPX4DQf+UzTlCAycssKdqhp6hjw+ENWe+aUS7TogKRFtptMosTSFeC6R55g=="
|
||||
},
|
||||
"tar": {
|
||||
"version": "6.1.12",
|
||||
"resolved": "https://registry.npmjs.org/tar/-/tar-6.1.12.tgz",
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
"description": "Mikro WebSocket Engine",
|
||||
"main": "Source/index.js",
|
||||
"scripts": {
|
||||
"compile":"tsc -p tsconfig.json -w"
|
||||
"compile": "tsc -p tsconfig.json -w"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
|
@ -24,6 +24,7 @@
|
|||
"joi": "^17.7.0",
|
||||
"knex": "^2.3.0",
|
||||
"sqlite3": "^5.1.2",
|
||||
"systemjs": "^6.13.0",
|
||||
"terminal-kit": "^3.0.0",
|
||||
"typescript": "^4.9.3",
|
||||
"websocket": "^1.0.34"
|
||||
|
|
|
@ -0,0 +1,22 @@
|
|||
interface IConnection {
|
||||
endpoint: string;
|
||||
autoPair?: boolean;
|
||||
}
|
||||
export default class Connection {
|
||||
ws: WebSocket;
|
||||
endpoint: URL;
|
||||
autoPair: boolean;
|
||||
connected: boolean;
|
||||
constructor(options: IConnection);
|
||||
connect(): void;
|
||||
addWSEvents(): void;
|
||||
private eventOpen;
|
||||
private eventClose;
|
||||
private eventError;
|
||||
private recaivePackEvent;
|
||||
onRecaivePack(func: (data: any) => any): void;
|
||||
private eventMessage;
|
||||
tranferToServer(data: any): void;
|
||||
}
|
||||
export {};
|
||||
//# sourceMappingURL=Connection.d.ts.map
|
|
@ -0,0 +1 @@
|
|||
{"version":3,"file":"Connection.d.ts","sourceRoot":"","sources":["../frontend/Connection.ts"],"names":[],"mappings":"AAAA,UAAU,WAAW;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACtB;AACD,MAAM,CAAC,OAAO,OAAO,UAAU;IAEpB,EAAE,EAAI,SAAS,CAAC;IAChB,QAAQ,EAAG,GAAG,CAAC;IACf,QAAQ,EAAG,OAAO,CAAS;IAC3B,SAAS,EAAG,OAAO,CAAS;gBACvB,OAAO,EAAE,WAAW;IAKzB,OAAO;IAKP,WAAW;IAOlB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,gBAAgB,CAA8B;IAC/C,aAAa,CAAC,IAAI,EAAC,CAAC,IAAI,EAAC,GAAG,KAAK,GAAG;IAI3C,OAAO,CAAC,YAAY;IASb,eAAe,CAAC,IAAI,EAAC,GAAG;CAOlC"}
|
|
@ -0,0 +1,52 @@
|
|||
var Connection = (function () {
|
||||
function Connection(options) {
|
||||
this.autoPair = false;
|
||||
this.connected = false;
|
||||
this.recaivePackEvent = [];
|
||||
this.endpoint = new URL(options.endpoint);
|
||||
this.autoPair = options.autoPair || false;
|
||||
this.connect();
|
||||
}
|
||||
Connection.prototype.connect = function () {
|
||||
this.ws = new WebSocket(this.endpoint.href);
|
||||
this.addWSEvents();
|
||||
};
|
||||
Connection.prototype.addWSEvents = function () {
|
||||
var _this = this;
|
||||
this.ws.addEventListener("open", function () { return _this.eventOpen(); });
|
||||
this.ws.addEventListener("close", function () { return _this.eventClose(); });
|
||||
this.ws.addEventListener("error", function () { return _this.eventError(); });
|
||||
this.ws.addEventListener("message", function (_a) {
|
||||
var data = _a.data;
|
||||
return _this.eventMessage(data);
|
||||
});
|
||||
};
|
||||
Connection.prototype.eventOpen = function () {
|
||||
this.connected = true;
|
||||
};
|
||||
Connection.prototype.eventClose = function () {
|
||||
this.connected = false;
|
||||
};
|
||||
Connection.prototype.eventError = function () {
|
||||
this.connected = false;
|
||||
};
|
||||
Connection.prototype.onRecaivePack = function (func) {
|
||||
this.recaivePackEvent.push(func);
|
||||
};
|
||||
Connection.prototype.eventMessage = function (data) {
|
||||
if (typeof data == "string") {
|
||||
for (var _i = 0, _a = this.recaivePackEvent; _i < _a.length; _i++) {
|
||||
var callback = _a[_i];
|
||||
callback(JSON.parse(data));
|
||||
}
|
||||
}
|
||||
};
|
||||
Connection.prototype.tranferToServer = function (data) {
|
||||
if (this.connected) {
|
||||
this.ws.send(JSON.stringify(data));
|
||||
}
|
||||
};
|
||||
return Connection;
|
||||
}());
|
||||
export default Connection;
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29ubmVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL2Zyb250ZW5kL0Nvbm5lY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUE7SUFNSSxvQkFBWSxPQUFvQjtRQUZ6QixhQUFRLEdBQWEsS0FBSyxDQUFDO1FBQzNCLGNBQVMsR0FBYSxLQUFLLENBQUM7UUE4QjNCLHFCQUFnQixHQUEyQixFQUFFLENBQUM7UUE1QmxELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzFDLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDLFFBQVEsSUFBSSxLQUFLLENBQUM7UUFDMUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFDTSw0QkFBTyxHQUFkO1FBRUksSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzVDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBQ00sZ0NBQVcsR0FBbEI7UUFBQSxpQkFNQztRQUpHLElBQUksQ0FBQyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLGNBQU0sT0FBQSxLQUFJLENBQUMsU0FBUyxFQUFFLEVBQWhCLENBQWdCLENBQUMsQ0FBQztRQUN6RCxJQUFJLENBQUMsRUFBRSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxjQUFNLE9BQUEsS0FBSSxDQUFDLFVBQVUsRUFBRSxFQUFqQixDQUFpQixDQUFDLENBQUM7UUFDM0QsSUFBSSxDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsY0FBTSxPQUFBLEtBQUksQ0FBQyxVQUFVLEVBQUUsRUFBakIsQ0FBaUIsQ0FBQyxDQUFDO1FBQzNELElBQUksQ0FBQyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLFVBQUMsRUFBTTtnQkFBTCxJQUFJLFVBQUE7WUFBTSxPQUFBLEtBQUksQ0FBQyxZQUFZLENBQUMsSUFBNEIsQ0FBQztRQUEvQyxDQUErQyxDQUFDLENBQUM7SUFDckcsQ0FBQztJQUNPLDhCQUFTLEdBQWpCO1FBRUksSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7SUFDMUIsQ0FBQztJQUNPLCtCQUFVLEdBQWxCO1FBRUksSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7SUFDM0IsQ0FBQztJQUNPLCtCQUFVLEdBQWxCO1FBRUksSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7SUFDM0IsQ0FBQztJQUVNLGtDQUFhLEdBQXBCLFVBQXFCLElBQXNCO1FBRXZDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUNPLGlDQUFZLEdBQXBCLFVBQXFCLElBQTBCO1FBRTNDLElBQUcsT0FBTyxJQUFJLElBQUksUUFBUSxFQUMxQjtZQUNJLEtBQXVCLFVBQXFCLEVBQXJCLEtBQUEsSUFBSSxDQUFDLGdCQUFnQixFQUFyQixjQUFxQixFQUFyQixJQUFxQixFQUFFO2dCQUF6QyxJQUFNLFFBQVEsU0FBQTtnQkFDZixRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2FBQzlCO1NBQ0o7SUFDTCxDQUFDO0lBQ00sb0NBQWUsR0FBdEIsVUFBdUIsSUFBUTtRQUUzQixJQUFHLElBQUksQ0FBQyxTQUFTLEVBQ2pCO1lBQ0ksSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1NBQ3RDO0lBQ0wsQ0FBQztJQUNMLGlCQUFDO0FBQUQsQ0FBQyxBQXhERCxJQXdEQyIsInNvdXJjZXNDb250ZW50IjpbImludGVyZmFjZSBJQ29ubmVjdGlvbntcclxuICAgIGVuZHBvaW50OiBzdHJpbmc7XHJcbiAgICBhdXRvUGFpcj86IGJvb2xlYW47XHJcbn1cclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQ29ubmVjdGlvblxyXG57XHJcbiAgICBwdWJsaWMgd3MhIDogV2ViU29ja2V0O1xyXG4gICAgcHVibGljIGVuZHBvaW50IDogVVJMO1xyXG4gICAgcHVibGljIGF1dG9QYWlyIDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgcHVibGljIGNvbm5lY3RlZCA6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIGNvbnN0cnVjdG9yKG9wdGlvbnM6IElDb25uZWN0aW9uKXtcclxuICAgICAgICB0aGlzLmVuZHBvaW50ID0gbmV3IFVSTChvcHRpb25zLmVuZHBvaW50KTtcclxuICAgICAgICB0aGlzLmF1dG9QYWlyID0gb3B0aW9ucy5hdXRvUGFpciB8fCBmYWxzZTtcclxuICAgICAgICB0aGlzLmNvbm5lY3QoKTtcclxuICAgIH1cclxuICAgIHB1YmxpYyBjb25uZWN0KClcclxuICAgIHtcclxuICAgICAgICB0aGlzLndzID0gbmV3IFdlYlNvY2tldCh0aGlzLmVuZHBvaW50LmhyZWYpO1xyXG4gICAgICAgIHRoaXMuYWRkV1NFdmVudHMoKTtcclxuICAgIH1cclxuICAgIHB1YmxpYyBhZGRXU0V2ZW50cygpXHJcbiAgICB7XHJcbiAgICAgICAgdGhpcy53cy5hZGRFdmVudExpc3RlbmVyKFwib3BlblwiLCAoKSA9PiB0aGlzLmV2ZW50T3BlbigpKTtcclxuICAgICAgICB0aGlzLndzLmFkZEV2ZW50TGlzdGVuZXIoXCJjbG9zZVwiLCAoKSA9PiB0aGlzLmV2ZW50Q2xvc2UoKSk7XHJcbiAgICAgICAgdGhpcy53cy5hZGRFdmVudExpc3RlbmVyKFwiZXJyb3JcIiwgKCkgPT4gdGhpcy5ldmVudEVycm9yKCkpO1xyXG4gICAgICAgIHRoaXMud3MuYWRkRXZlbnRMaXN0ZW5lcihcIm1lc3NhZ2VcIiwgKHtkYXRhfSkgPT4gdGhpcy5ldmVudE1lc3NhZ2UoZGF0YSBhcyBzdHJpbmcgfCBBcnJheUJ1ZmZlcikpO1xyXG4gICAgfVxyXG4gICAgcHJpdmF0ZSBldmVudE9wZW4oKVxyXG4gICAge1xyXG4gICAgICAgIHRoaXMuY29ubmVjdGVkID0gdHJ1ZTtcclxuICAgIH1cclxuICAgIHByaXZhdGUgZXZlbnRDbG9zZSgpXHJcbiAgICB7XHJcbiAgICAgICAgdGhpcy5jb25uZWN0ZWQgPSBmYWxzZTtcclxuICAgIH1cclxuICAgIHByaXZhdGUgZXZlbnRFcnJvcigpXHJcbiAgICB7XHJcbiAgICAgICAgdGhpcy5jb25uZWN0ZWQgPSBmYWxzZTtcclxuICAgIH1cclxuICAgIHByaXZhdGUgcmVjYWl2ZVBhY2tFdmVudCA6ICgoZGF0YTphbnkpID0+IGFueSlbXSA9IFtdO1xyXG4gICAgcHVibGljIG9uUmVjYWl2ZVBhY2soZnVuYzooZGF0YTphbnkpID0+IGFueSlcclxuICAgIHtcclxuICAgICAgICB0aGlzLnJlY2FpdmVQYWNrRXZlbnQucHVzaChmdW5jKTtcclxuICAgIH1cclxuICAgIHByaXZhdGUgZXZlbnRNZXNzYWdlKGRhdGE6IHN0cmluZyB8IEFycmF5QnVmZmVyKVxyXG4gICAge1xyXG4gICAgICAgIGlmKHR5cGVvZiBkYXRhID09IFwic3RyaW5nXCIpXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICBmb3IgKGNvbnN0IGNhbGxiYWNrIG9mIHRoaXMucmVjYWl2ZVBhY2tFdmVudCkge1xyXG4gICAgICAgICAgICAgICAgY2FsbGJhY2soSlNPTi5wYXJzZShkYXRhKSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBwdWJsaWMgdHJhbmZlclRvU2VydmVyKGRhdGE6YW55KVxyXG4gICAge1xyXG4gICAgICAgIGlmKHRoaXMuY29ubmVjdGVkKVxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgdGhpcy53cy5zZW5kKEpTT04uc3RyaW5naWZ5KGRhdGEpKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iXX0=
|
|
@ -1,3 +1,4 @@
|
|||
declare namespace WSTS {
|
||||
export default class WSTS {
|
||||
connection?: Connection;
|
||||
}
|
||||
//# sourceMappingURL=index.d.ts.map
|
|
@ -1 +1 @@
|
|||
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../frontend/index.ts"],"names":[],"mappings":"AAAA,kBAAU,IAAI,CAAC;CAEd"}
|
||||
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../frontend/index.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,OAAO,IAAI;IACd,UAAU,CAAC,EAAG,UAAU,CAAC;CACnC"}
|
|
@ -1,3 +1,7 @@
|
|||
"use strict";
|
||||
;
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9mcm9udGVuZC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBRUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIm5hbWVzcGFjZSBXU1RTIHtcclxuXHJcbn07Il19
|
||||
var WSTS = (function () {
|
||||
function WSTS() {
|
||||
}
|
||||
return WSTS;
|
||||
}());
|
||||
export default WSTS;
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9mcm9udGVuZC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtJQUFBO0lBRUEsQ0FBQztJQUFELFdBQUM7QUFBRCxDQUFDLEFBRkQsSUFFQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBkZWZhdWx0IGNsYXNzIFdTVFMge1xyXG4gICAgcHVibGljIGNvbm5lY3Rpb24/IDogQ29ubmVjdGlvbjtcclxufSJdfQ==
|
82
test.html
82
test.html
|
@ -9,61 +9,61 @@
|
|||
<body>
|
||||
<script src="./wsjs.js"></script>
|
||||
<script>
|
||||
/* let wsjs = new WSJS({
|
||||
endpoint: "ws://localhost:8282"
|
||||
});
|
||||
let room = wsjs.room({
|
||||
name: "MY-ROOM",
|
||||
description: "Gizli Odam",
|
||||
joinType: "password",
|
||||
credential: "123456Kc",
|
||||
ifexistsJoin: true
|
||||
});
|
||||
room.on('joinpeer',(id)=>{
|
||||
/* let wsjs = new WSJS({
|
||||
endpoint: "ws://localhost:8282"
|
||||
});
|
||||
let room = wsjs.room({
|
||||
name: "MY-ROOM",
|
||||
description: "Gizli Odam",
|
||||
joinType: "password",
|
||||
credential: "123456Kc",
|
||||
ifexistsJoin: true
|
||||
});
|
||||
room.on('joinpeer',(id)=>{
|
||||
|
||||
});
|
||||
room.on('invitepeer',(id)=>{
|
||||
});
|
||||
room.on('invitepeer',(id)=>{
|
||||
|
||||
});
|
||||
room.on('acceptedinvite',(id)=>{
|
||||
});
|
||||
room.on('acceptedinvite',(id)=>{
|
||||
|
||||
});
|
||||
room.on('rejectedinvite',(id)=>{
|
||||
});
|
||||
room.on('rejectedinvite',(id)=>{
|
||||
|
||||
});
|
||||
peer.on('message',(pack)=>{
|
||||
});
|
||||
peer.on('message',(pack)=>{
|
||||
|
||||
})
|
||||
room.info();
|
||||
room.send({
|
||||
message: "HI!"
|
||||
});
|
||||
room.closeRoom();
|
||||
room.ejectRoom();
|
||||
})
|
||||
room.info();
|
||||
room.send({
|
||||
message: "HI!"
|
||||
});
|
||||
room.closeRoom();
|
||||
room.ejectRoom();
|
||||
|
||||
room.fetchPeerList().then(e => console.log("e id listesi"))
|
||||
room.fetchPeerList().then(e => console.log("e id listesi"))
|
||||
|
||||
|
||||
|
||||
let peer = wsjs.peer('07781835-0e96-4fc3-b7e1-8e3c67f9c5b7');
|
||||
let peer = wsjs.peer('07781835-0e96-4fc3-b7e1-8e3c67f9c5b7');
|
||||
|
||||
peer.pairRequest();
|
||||
peer.pairRequest();
|
||||
|
||||
peer.on('accept',()=>{
|
||||
peer.send({
|
||||
message: "HI!"
|
||||
});
|
||||
});
|
||||
peer.on('reject',()=>{
|
||||
peer.on('accept',()=>{
|
||||
peer.send({
|
||||
message: "HI!"
|
||||
});
|
||||
});
|
||||
peer.on('reject',()=>{
|
||||
|
||||
});
|
||||
peer.on('message',(data)=>{
|
||||
});
|
||||
peer.on('message',(data)=>{
|
||||
|
||||
});
|
||||
peer.on('close',(data)=>{
|
||||
});
|
||||
peer.on('close',(data)=>{
|
||||
|
||||
});
|
||||
peer.close();
|
||||
});
|
||||
peer.close();
|
||||
*/
|
||||
|
||||
|
||||
|
|
|
@ -15,8 +15,8 @@
|
|||
// "disableReferencedProjectLoad": true, /* Reduce the number of projects loaded automatically by TypeScript. */
|
||||
|
||||
/* Language and Environment */
|
||||
"target": "es2015", /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */
|
||||
"lib": ["DOM","ES2015","ES2015.Promise"], /* Specify a set of bundled library declaration files that describe the target runtime environment. */
|
||||
"target": "ES3", /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */
|
||||
"lib": ["DOM","ES2015","ES2015.Promise"], /* Specify a set of bundled library declaration files that describe the target runtime environment. */
|
||||
// "jsx": "preserve", /* Specify what JSX code is generated. */
|
||||
// "experimentalDecorators": true, /* Enable experimental support for TC39 stage 2 draft decorators. */
|
||||
// "emitDecoratorMetadata": true, /* Emit design-type metadata for decorated declarations in source files. */
|
||||
|
@ -29,7 +29,7 @@
|
|||
// "moduleDetection": "auto", /* Control what method is used to detect module-format JS files. */
|
||||
|
||||
/* Modules */
|
||||
"module": "ES2015", /* Specify what module code is generated. */
|
||||
"module": "ES2015", /* Specify what module code is generated. */
|
||||
"rootDir": "./frontend", /* Specify the root folder within your source files. */
|
||||
"moduleResolution": "node", /* Specify how TypeScript looks up a file from a given module specifier. */
|
||||
"baseUrl": "./", /* Specify the base directory to resolve non-relative module names. */
|
||||
|
@ -39,7 +39,7 @@
|
|||
// "types": [], /* Specify type package names to be included without being referenced in a source file. */
|
||||
// "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */
|
||||
// "moduleSuffixes": [], /* List of file name suffixes to search when resolving a module. */
|
||||
"resolveJsonModule": true, /* Enable importing .json files. */
|
||||
// "resolveJsonModule": true, /* Enable importing .json files. */
|
||||
// "noResolve": true, /* Disallow 'import's, 'require's or '<reference>'s from expanding the number of files TypeScript should add to a project. */
|
||||
|
||||
/* JavaScript Support */
|
||||
|
|
Loading…
Reference in New Issue