
Product
Introducing Webhook Events for Alert Changes
Add real-time Socket webhook events to your workflows to automatically receive software supply chain alert changes in real time.
@555platform/555-js-sdk
Advanced tools
555-js-sdk provides simple APIs to build chat based applications using 555 Platform.
npm i @555platform/555-js-sdk
import SDK from '@555platform/555-js-sdk';
Make connection using 555token, ConnectOptions and MessageAdapter
const sdk = SDK.Client.create(
userData.access_token,
{
url: '',
automaticReconnect: true
},
new SDK.QueuedMessageAdapter<SDK.MessagePayload>()
);
sdk.chat.connect();
Get list of rooms current user is a member of.
const iter: SDK.Paginator<
SDK.RoomDescriptor,
SDK.RoomIterator
> = await sdk.chat.getUserRoomDescriptors(0, 0);
Callbacks and Events from SDK.
SDK.Client.Chat.on(
SDK.CMF.ChatServerEventTypes.RoomAdded,
this.onRoomsChanged
);
SDK.Client.Chat.on(
SDK.CMF.ChatServerEventTypes.UserJoinedRoom,
this.onRoomsChanged
);
SDK.Client.Chat.on(
SDK.CMF.ChatServerEventTypes.UserLeftRoom,
this.onRoomsChanged
);
SDK.Client.Chat.on(
SDK.CMF.ChatServerEventTypes.RoomReceivedMessage,
this.onRoomReceivedMessage
);
sdk.onTokenAboutToExpire(() =>
// renewToken is a function you need to implement to fetch new token
// from application server
renewToken(renewedToken => sdk.updateToken(renewedToken));
);
Factory method to create and initialize Client
Parameters
| Name | Type | Argument | Description |
|---|---|---|---|
| accessToken | string | required | 555 Platform access token |
| options | ConnectOptions | required | Options to customize 555 Connection behavior |
| messageAdapter | MessageAdapter | required | Message adapter class conforming to MessageAdapter interface |
Returns
Type
Client|Error
Updates current token. Used to update Client with refreshed token.
Parameters
| Name | Type | Argument | Description |
|---|---|---|---|
| accessToken | string | required | 555 Platform access token |
Returns
Type
void
Connect to platform.
Parameters
| Name | Type | Argument | Description |
|---|---|---|---|
| options | ConnectOptions | optional | Connection options |
Returns
Type
Promise.<Client|void>
Manually disconnect the client.
Returns
Type
Promise.<void|Error>
Register handler for event.
Parameters
| Name | Type | Description |
|---|---|---|
| event | Event | Event type |
| callback | Function | Callback function |
Triggered 5 minutes before access token is to expire.
client.onTokenAboutToExpire(() =>
// renewToken is a function you need to implement to fetch new token
// from application server
renewToken(renewedToken => sdk.updateToken(renewedToken));
);
These options are parameters for connecting to platform.
Type
Object
Properties
| Name | Type | Argument |
|---|---|---|
| url | string | required |
| protocol | string[] | optional |
| automaticReconnect | boolean | optional |
| reconnectionAttempts | number | optional |
| reconnectDelay | number | optional |
| reconnectBackoffAlgorithm | BackoffAlgorithm | optional |
| pollInterval | number | optional |
| requestTimeout | number | optional |
| requestRetries | number | optional |
| paginatorDefaultPageSize | number | optional |
| nextPingDelay | number | optional |
| pingWaitDelay | number | optional |
Create room on the server with current user as the member.
Parameters
| Name | Type | Argument | Description |
|---|---|---|---|
| options | CreateRoomOptions | Create room options |
Returns
Type
Promise.<Room>
Get room by its ID.
Parameters
| Name | Type | Description |
|---|---|---|
| roomId | String | room ID |
Returns
Type
Promise.<Room>
Get list of public rooms.
Returns
Type
Promis.<Paginator.<RoomDescriptor>>
Get list of rooms current user is a member of.
Returns
Type
Promise.<Paginator.<RoomDescriptor>>
Return User object for the user ID.
Parameters
| Name | Type | Description |
|---|---|---|
| userId | String | User ID |
Returns
Type
Promise.<User>
Return User object for currently logged in user.
Returns
Type
Promise.<User>
Gracefully disconnect SDK from the platform
Returns
Type
Promise.<void>
Set last consumed message index to new index.
Parameters
| Name | Type | Description |
|---|---|---|
| index | Number | Message index to set last read to |
Returns
Type
Promise.<number|Error>
Type
Object
Properties
| Name | Type | Description |
|---|---|---|
| room | RoomDescriptor | Room descriptor with updated last message and consumed message index |
| message | Message | Message object with the new message |
Triggered when user joins the room.
Type
User
Triggered when user leaves the room.
Type
User
Triggered when message was updated.
Type
Object
Properties
| Name | Type | Description |
|---|---|---|
| message | Message | Updated Message |
| index | Number | Index of the updated message |
Triggered when a user in the room started typing.
Type
User
These options are parameters for creating a room.
Type
Object
Properties
| Name | Type | Argument |
|---|---|---|
| attributes | Object | optional |
| friendlyName | String | required |
| createdBy | string | required |
| isPrivate | boolean | required |
| isDirect | boolean | required |
| isSMS | boolean | optional |
| smsNumber | string | optional |
| members | string[] | required |
Properties
| Name | Type | Description |
|---|---|---|
| roomId | String | Room ID |
| friendlyName | String | Room display name |
| createdAt | Date | Date of creation |
| createdBy | User | User who created the room |
| updatedAt | Date | Date of update |
| members | Array.<User> | Users who are members of this room |
| isPrivate | Boolean | Is room private or public ('public' or 'private') |
| isArchive | boolean | Is room archived |
| isSms | boolean | Is sms |
| smsNumber | string | sms number |
| attributes | Object | Object with room's custom attributes |
| lastMessageIndex | number | Index of last message |
| lastConsumedMessageIndex | number | Index of last consumed message |
| consumedMessageOffset | number | Number of unread messages by user this message is directed to |
Invite a user to the room.
Parameters
| Name | Type | Description |
|---|---|---|
| userId | String | User ID |
Returns
Type
Promise.<Room|Error>
Leave the Room.
Returns
Type
Promise.<Room|Error>
Properties
| Name | Type | Argument |
|---|---|---|
| roomId | string | required |
Remove user from the Room.
Returns
Type
Promise.<Room|Error>
Archives the Room.
Returns
Type
Promise.<Room|Error>
Deletes the Room.
Returns
Type
Promise.<Room|Error>
Update the Room.
Returns
Type
Promise.<Void|Error>
update message.
Returns
Type
Promise.<Void|Error>
delete message.
Returns
Type
Promise.<Message|Error>
Properties
| Name | Type | Argument |
|---|---|---|
| roomId | string | required |
| messageId | string | required |
Remove user from this Room.
Parameters
| Name | Type | Description |
|---|---|---|
| userId | String | User ID |
Returns
Type
Promise.<void|Error>
Triggered when user joins the room.
Type
User
Triggered when user leaves the room.
Type
User
Triggered when message was updated.
Type
Object
Properties
| Name | Type | Description |
|---|---|---|
| message | Message | Updated Message |
| index | Number | Index of the updated message |
Triggered when a user in the room started typing.
Type
User
Import JS SDK as below:
import { JSSDK } from '@555platform/555-js-sdk';
And declare global variables inside .ts wrapper to access Rtc components via window object.
declare var window: any;
or
declare var IrisRtcSession: any;
JS SDK Documenation is available here
FAQs
JavaScript SDK for 555 Platform
We found that @555platform/555-js-sdk demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 5 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Product
Add real-time Socket webhook events to your workflows to automatically receive software supply chain alert changes in real time.

Security News
ENISA has become a CVE Program Root, giving the EU a central authority for coordinating vulnerability reporting, disclosure, and cross-border response.

Product
Socket now scans OpenVSX extensions, giving teams early detection of risky behaviors, hidden capabilities, and supply chain threats in developer tools.