platform/plugins/client-resources
Andrey Sobolev c23af625f6
Enhanced Phased build (#4599)
Signed-off-by: Andrey Sobolev <haiodo@gmail.com>
2024-02-12 23:57:11 +07:00
..
config :Apply templates (#3799) 2023-10-07 16:38:21 +06:00
src UBERF-5418: Fix status editing (#4590) 2024-02-09 21:55:03 +06:00
.eslintrc.js :Apply templates (#3799) 2023-10-07 16:38:21 +06:00
.npmignore initial client-resources implementation 2021-08-07 06:30:10 +02:00
CHANGELOG.json Migrate to hcengineering and publish to github packages (#2273) 2022-09-21 14:08:25 +06:00
CHANGELOG.md Migrate to hcengineering and publish to github packages (#2273) 2022-09-21 14:08:25 +06:00
jest.config.js :Apply templates (#3799) 2023-10-07 16:38:21 +06:00
package.json Enhanced Phased build (#4599) 2024-02-12 23:57:11 +07:00
readme.md TSK-825: Client proper reconnection (#2797) 2023-03-24 10:53:12 +06:00
tsconfig.json Upgrade Typescript to 5.2.0 (#3810) 2023-10-08 03:14:00 +07:00

Overview

Package allow to create a client to interact with running platform.

Usage

  import clientResources from '@hcengineering/client-resources'
  import core, { Client } from '@hcengineering/core'

  // ...

  const token = ... // Token obtained somehow.

  const connection: Client = await (await clientResources()).function.GetClient(token, transactorUrl)

  // Now client is usable

  // Use close, to shutdown connection.
  await connection.close()

Node JS

For NodeJS environment it is required to configure ClientSocketFactory using 'ws' package.

// We need to override default WebSocket factory with 'ws' one.
setMetadata(client.metadata.ClientSocketFactory, (url) => new WebSocket(url))

const connection: Client = await (await clientResources()).function.GetClient(token, transactorUrl)
...