You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
Lei OT 288be11acf 1 1 year ago
lib 1 1 year ago
src fix: Extended typings for "callMethod" 4 years ago
tests test: Renamed `__tests__` directory to `tests` 6 years ago
.eslintrc style: Added ESlint and prettier for linters. 7 years ago
.gitignore Initial commit 8 years ago
.npmignore Rename .npmingnore to .npmignore 8 years ago
.prettierignore style: Added ESlint and prettier for linters. 7 years ago
.releaserc 1 1 year ago
.travis.yml ci: Possible fix for 127 error travisCI 6 years ago
LICENSE Initial commit 8 years ago
README.md Update README.md 5 years ago
package-lock.json Merge pull request #59 from inf3cti0n95/dependabot/npm_and_yarn/https-proxy-agent-2.2.4 5 years ago
package.json 1 1 year ago
tsconfig.json Initial Commit 8 years ago

README.md

Rocket.Chat.RealTime.API.RxJS

Commitizen friendly Build Status codecov npm semantic-release

Abstraction for Utilizing Rocket.Chat's Realtime API Methods with RxJS v6

Installation

npm install --save rocket.chat.realtime.api.rxjs

For RxJS v5 Version of the Package

npm install --save rocket.chat.realtime.api.rxjs@1.0.0

Usage


import { RealTimeAPI } from "rocket.chat.realtime.api.rxjs";

const realTimeAPI =  new RealTimeAPI("wss://demo.rocket.chat/websocket");
// Provide, URL to the Rocket.Chat's Realtime API.

realTimeAPI.keepAlive().subscribe();
// Responds "pong" to the "ping" message sent by the Realtime API. To keep the connection alive.

const auth = realTimeAPI.login(USERNAME, PASSWORD);
// Creating Observable

//Now subscribing the observable

    auth.subscribe(
    (data) => console.log(data),
    (err) => console.log(err),
    () => console.log('completed'));
...
...

// Use any of the methods implmented in the package.

Methods

Methods Functionality
connectToServer() Initiates Connections to the Server to the RealTime API. Returns Observable with the server's response
keepAlive() Returns Observable to subscribe which Responds "pong" to the "ping" message sent by the Realtime API. To keep the connection alive.
login(username, password) Returns Observable to the Result/Response from the RealTime API.
loginWithAuthToken(authToken) Returns Observable to the Result/Response from the RealTime API.
loginWithOAuth(credToken, credSecret) Returns Observable to the Result/Response from the RealTime API.
callMethod(methodName, ...params) Returns Observable to the Result of Method Call from Rocket.Chat Realtime API
sendMessage(jsonObject) Sends the JSON Object to the API Server
onMessage( message => console.log(message) ) Subscribes to the Messages sent from the server
onError( error => console.error(error) ) Subscribes to the Errors.
onCompletion(() => console.info("Complete")) Subscribes to Completion on the Websocket Connection
subscribe(messageHandler, errorHandler, completionHandler) Subscribes to All three i.e - messages, errors and completion
getObservable() Returns observable of the WebSocket Connection to the RealTime API
disconnect() Disconnect the WebSocket Connection between client and RealTime API

Checkout the Rocket.Chat's RealTime API documentation for further information on working of the RealTime API.