Subscription Method Added

master
Viraj Trivedi 8 years ago
parent 3f2691495f
commit 8bad3e1cfa

@ -67,4 +67,8 @@ export declare class RealTimeAPI {
* Get Observalble to the Result of Method Call from Rocket.Chat Realtime API
*/
callMethod(method: string, ...params: Array<{}>): Observable<any>;
/**
* getSubscription
*/
getSubscription(streamName: string, streamParam: string, addEvent: boolean): Observable<any>;
}

@ -169,6 +169,26 @@ var RealTimeAPI = (function () {
});
return this.getObservableFilteredByID(id);
};
/**
* getSubscription
*/
RealTimeAPI.prototype.getSubscription = function (streamName, streamParam, addEvent) {
var id = uuid_1.v1();
var subscription = this.webSocket.multiplex(function () { return JSON.stringify({
"msg": "sub",
"id": id,
"name": streamName,
"params": [
streamParam,
addEvent
]
}); }, function () { return JSON.stringify({
"msg": "unsub",
"id": id
}); }, function (message) { return typeof message.collection === "string" && message.collection === streamName && message.fields.eventName === streamParam; } // Proper Filtering to be done. This is temporary filter just for the stream-room-messages subscription
);
return subscription;
};
return RealTimeAPI;
}());
exports.RealTimeAPI = RealTimeAPI;

@ -1 +1 @@
{"version":3,"file":"RealTimeAPI.js","sourceRoot":"","sources":["../src/RealTimeAPI.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"RealTimeAPI.js","sourceRoot":"","sources":["../src/RealTimeAPI.ts"],"names":[],"mappings":";AAAA;;GAEG;;AAEH,6BAAkC;AAElC,6BAAkC;AAClC,uCAAmC;AAEnC;IAII,qBAAY,KAAoC;QAC5C,MAAM,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC;YACnB,KAAK,QAAQ;gBACT,IAAI,CAAC,GAAG,GAAG,KAAe,CAAC;gBAC3B,IAAI,CAAC,SAAS,GAAG,iBAAU,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAChD,KAAK,CAAC;YACV,KAAK,QAAQ;gBACT,IAAI,CAAC,SAAS,GAAG,KAA6B,CAAC;gBAC/C,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;gBAC9B,KAAK,CAAC;YACV;gBACI,MAAM,IAAI,KAAK,CAAC,qHAAkH,OAAO,KAAK,OAAG,CAAC,CAAC;QAC3J,CAAC;IACL,CAAC;IAED;;OAEG;IACI,mCAAa,GAApB;QACI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,UAAA,GAAG,IAAI,OAAA,iBAAU,CAAC,EAAE,CAAC,GAAG,CAAC,EAAlB,CAAkB,CAAC,CAAC;IAC3D,CAAC;IAED;;OAEG;IACI,+BAAS,GAAhB,UAAiB,cAAkD;QAC/D,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IACzD,CAAC;IAGD;;OAEG;IACI,6BAAO,GAAd,UAAe,YAAiD;QAC5D,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACI,kCAAY,GAAnB,UAAoB,iBAA4C;QAC5D,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,iBAAiB,CAAC,CAAC;IAC5D,CAAC;IAED;;OAEG;IACI,+BAAS,GAAhB,UAAiB,cAAkD,EAAE,YAAiD,EAAE,iBAA4C;QAChK,IAAI,CAAC,aAAa,EAAE,CAAC,SAAS,CAAC,cAAc,EAAE,YAAY,EAAE,iBAAiB,CAAC,CAAC;IACpF,CAAC;IAED;;OAEG;IACI,iCAAW,GAAlB,UAAmB,aAAiB;QAChC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACI,wDAAkC,GAAzC,UAA0C,WAAmB;QACzD,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC,UAAC,OAAY,IAAK,OAAA,OAAO,CAAC,GAAG,KAAK,WAAW,EAA3B,CAA2B,CAAC,CAAC;IACtF,CAAC;IAED;;OAEG;IACI,+CAAyB,GAAhC,UAAiC,EAAU;QACvC,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC,UAAC,OAAY,IAAK,OAAA,OAAO,CAAC,EAAE,KAAK,EAAE,EAAjB,CAAiB,CAAC,CAAC;IAC5E,CAAC;IAED;;OAEG;IACI,qCAAe,GAAtB;QACI,IAAI,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;QACzF,MAAM,CAAC,IAAI,CAAC,kCAAkC,CAAC,WAAW,CAAC,CAAC;IAChE,CAAC;IAED;;OAEG;IACI,+BAAS,GAAhB;QAAA,iBAIC;QAHG,IAAI,CAAC,kCAAkC,CAAC,MAAM,CAAC,CAAC,SAAS,CACrD,UAAA,OAAO,IAAI,OAAA,KAAI,CAAC,WAAW,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAjC,CAAiC,CAC/C,CAAC;IACN,CAAC;IAED;;OAEG;IACI,2BAAK,GAAZ,UAAa,QAAgB,EAAE,QAAgB;QAC3C,IAAI,EAAE,GAAG,SAAI,EAAE,CAAC;QAChB,IAAI,CAAC,WAAW,CAAC;YACb,KAAK,EAAE,QAAQ;YACf,QAAQ,EAAE,OAAO;YACjB,IAAI,EAAE,EAAE;YACR,QAAQ,EAAE;gBACN;oBACI,MAAM,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE;oBAChC,UAAU,EAAE;wBACR,QAAQ,EAAE,kBAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE;wBACrC,WAAW,EAAE,SAAS;qBACzB;iBACJ;aACJ;SACJ,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACI,wCAAkB,GAAzB,UAA0B,SAAiB;QACvC,IAAI,EAAE,GAAG,SAAI,EAAE,CAAC;QAChB,IAAI,CAAC,WAAW,CAAC;YACb,KAAK,EAAE,QAAQ;YACf,QAAQ,EAAE,OAAO;YACjB,IAAI,EAAE,EAAE;YACR,QAAQ,EAAE;gBACN,EAAE,QAAQ,EAAE,SAAS,EAAE;aAC1B;SACJ,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACI,oCAAc,GAArB,UAAsB,SAAiB,EAAE,UAAkB;QACvD,IAAI,EAAE,GAAG,SAAI,EAAE,CAAC;QAChB,IAAI,CAAC,WAAW,CAAC;YACb,KAAK,EAAE,QAAQ;YACf,QAAQ,EAAE,OAAO;YACjB,IAAI,EAAE,EAAE;YACR,QAAQ,EAAE;gBACN;oBACI,OAAO,EAAE;wBACL,iBAAiB,EAAE,SAAS;wBAC5B,kBAAkB,EAAE,UAAU;qBACjC;iBACJ;aACJ;SACJ,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACI,wCAAkB,GAAzB,UAA0B,EAAU;QAChC,IAAI,gBAAgB,GAAG,IAAI,CAAC,yBAAyB,CAAC,EAAE,CAAC,CAAC;QAC1D,IAAI,QAAgB,CAAC;QACrB,gBAAgB,CAAC,SAAS,CACtB,UAAC,OAAY;YACT,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,OAAO,CAAC,GAAG,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAClE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACrC,CAAC,CACJ,CAAC;QAEF,IAAI,eAAe,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,UAAA,GAAG,IAAI,OAAA,GAAG,CAAC,IAAI,CAAC,UAAA,GAAG,IAAI,OAAA,GAAG,CAAC,EAAE,KAAK,QAAQ,IAAI,QAAQ,KAAK,SAAS,EAA7C,CAA6C,CAAC,KAAK,SAAS,EAA5E,CAA4E,CAAC,CAAC,GAAG,CAAC,UAAA,GAAG,IAAI,OAAA,GAAG,CAAC,CAAC,CAAC,EAAN,CAAM,CAAC,CAAC;QACjL,MAAM,CAAC,iBAAU,CAAC,KAAK,CAAC,gBAAgB,EAAE,eAAe,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACI,gCAAU,GAAjB,UAAkB,MAAc;QAAE,gBAAoB;aAApB,UAAoB,EAApB,qBAAoB,EAApB,IAAoB;YAApB,+BAAoB;;QAClD,IAAI,EAAE,GAAG,SAAI,EAAE,CAAC;QAChB,IAAI,CAAC,WAAW,CAAC;YACb,KAAK,EAAE,QAAQ;YACf,MAAM,QAAA;YACN,EAAE,IAAA;YACF,MAAM,QAAA;SACT,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED;;OAEG;IACI,qCAAe,GAAtB,UAAuB,UAAkB,EAAE,WAAmB,EAAE,QAAiB;QAC7E,IAAI,EAAE,GAAG,SAAI,EAAE,CAAC;QAChB,IAAI,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CACvC,cAAM,OAAA,IAAI,CAAC,SAAS,CAAC;YACjB,KAAK,EAAE,KAAK;YACZ,IAAI,EAAE,EAAE;YACR,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE;gBACN,WAAW;gBACX,QAAQ;aACX;SACJ,CAAC,EARI,CAQJ,EACF,cAAM,OAAA,IAAI,CAAC,SAAS,CAAC;YACjB,KAAK,EAAE,OAAO;YACd,IAAI,EAAE,EAAE;SACX,CAAC,EAHI,CAGJ,EACF,UAAC,OAAY,IAAK,OAAA,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ,IAAI,OAAO,CAAC,UAAU,KAAK,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,SAAS,KAAK,WAAW,EAAvH,CAAuH,CAAC,uGAAuG;SACpP,CAAC;QACF,MAAM,CAAC,YAAY,CAAC;IACxB,CAAC;IACL,kBAAC;AAAD,CAAC,AA9MD,IA8MC;AA9MY,kCAAW"}

7
package-lock.json generated

@ -1,6 +1,6 @@
{
"name": "rocket.chat.realtime.api.rxjs",
"version": "0.0.1",
"version": "0.0.2",
"lockfileVersion": 1,
"dependencies": {
"@types/crypto-js": {
@ -31,11 +31,6 @@
"resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.4.1.tgz",
"integrity": "sha1-ti91fyeURdJloYpY+wpw3JDpFiY="
},
"symbol-observable": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.4.tgz",
"integrity": "sha1-Kb9hXUqnEhvdiYsi1LP5vE4qoD0="
},
"typescript": {
"version": "2.3.4",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-2.3.4.tgz",

@ -189,4 +189,28 @@ export class RealTimeAPI {
});
return this.getObservableFilteredByID(id);
}
/**
* getSubscription
*/
public getSubscription(streamName: string, streamParam: string, addEvent: boolean) {
let id = uuid();
let subscription = this.webSocket.multiplex(
() => JSON.stringify({
"msg": "sub",
"id": id,
"name": streamName,
"params": [
streamParam,
addEvent
]
}),
() => JSON.stringify({
"msg": "unsub",
"id": id
}),
(message: any) => typeof message.collection === "string" && message.collection === streamName && message.fields.eventName === streamParam // Proper Filtering to be done. This is temporary filter just for the stream-room-messages subscription
);
return subscription;
}
}
Loading…
Cancel
Save