platform/plugins/client-resources
Alexander Onnikov f5c0bed057
UBERF-8657 API Client package (#7081)
Signed-off-by: Alexander Onnikov <Alexander.Onnikov@xored.com>
2024-11-06 15:00:57 +07:00
..
config :Apply templates (#3799) 2023-10-07 16:38:21 +06:00
src UBERF-8657 API Client package (#7081) 2024-11-06 15:00:57 +07: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 Bump package versions (#5728) 2024-06-05 12:46:40 +07:00
readme.md TSK-825: Client proper reconnection (#2797) 2023-03-24 10:53:12 +06:00
tsconfig.json Fix validate build (#4780) 2024-02-27 15:29:41 +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)
...