@eka-care/medassist-core 1.0.5 → 1.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/dist/Synapse.d.ts +18 -5
  2. package/dist/Synapse.d.ts.map +1 -1
  3. package/dist/Synapse.js +60 -16
  4. package/dist/connection/Websocket.d.ts.map +1 -1
  5. package/dist/connection/Websocket.js +7 -2
  6. package/dist/constants/index.d.ts +7 -0
  7. package/dist/constants/index.d.ts.map +1 -1
  8. package/dist/constants/index.js +18 -5
  9. package/dist/events/Events.d.ts +4 -5
  10. package/dist/events/Events.d.ts.map +1 -1
  11. package/dist/events/Events.js +3 -4
  12. package/dist/events/types.d.ts +15 -11
  13. package/dist/events/types.d.ts.map +1 -1
  14. package/dist/index.d.ts +5 -2
  15. package/dist/index.d.ts.map +1 -1
  16. package/dist/index.js +10 -7
  17. package/dist/messages/MessageManager.d.ts +1 -1
  18. package/dist/messages/MessageManager.d.ts.map +1 -1
  19. package/dist/messages/MessageManager.js +44 -53
  20. package/dist/messages/types.d.ts +36 -17
  21. package/dist/messages/types.d.ts.map +1 -1
  22. package/dist/messages/types.js +14 -1
  23. package/dist/resources/index.d.ts +7 -0
  24. package/dist/resources/index.d.ts.map +1 -1
  25. package/dist/resources/index.js +12 -0
  26. package/dist/resources/session/types.d.ts +11 -5
  27. package/dist/resources/session/types.d.ts.map +1 -1
  28. package/dist/resources/toolCall/ToolCall.d.ts +8 -0
  29. package/dist/resources/toolCall/ToolCall.d.ts.map +1 -0
  30. package/dist/resources/toolCall/ToolCall.js +53 -0
  31. package/dist/resources/toolCall/types.d.ts +80 -0
  32. package/dist/resources/toolCall/types.d.ts.map +1 -0
  33. package/dist/resources/toolCall/types.js +24 -0
  34. package/dist/resources/types.d.ts +6 -0
  35. package/dist/resources/types.d.ts.map +1 -1
  36. package/package.json +1 -1
package/dist/Synapse.d.ts CHANGED
@@ -4,15 +4,20 @@
4
4
  */
5
5
  import { ConnectionType } from "./connection/ConnectionFactory";
6
6
  import { type Environment } from "./constants";
7
- import { SYNAPSE_REALTIME_EVENTS } from "./messages/types";
7
+ import { SYNAPSE_REALTIME_EVENTS, type TInitalPrompt } from "./messages/types";
8
8
  import { SynapseError } from "./internal/Error/Error";
9
- import { type SessionResponse } from "./resources/session/types";
9
+ import { type TInitialMessage, type SessionResponse } from "./resources/session/types";
10
10
  import { type AudioMetaData } from "./media/audio/types";
11
+ import type { ToolCallResponse } from "./resources/toolCall/types";
11
12
  export interface SendMessageOptions {
12
13
  message?: string;
13
14
  messageId?: string;
14
15
  files?: File[];
15
16
  audio?: AudioMetaData;
17
+ toolCalled?: boolean;
18
+ tool_declined?: boolean;
19
+ tool_id?: string;
20
+ initial_prompts?: TInitalPrompt[];
16
21
  }
17
22
  export interface SynapseSDKOverrides {
18
23
  prompt?: string;
@@ -33,6 +38,11 @@ export interface SynapseSDKConfig {
33
38
  overrides?: SynapseSDKOverrides;
34
39
  callbacks?: SynapseSDKCallbacks;
35
40
  }
41
+ export interface SessionConfig {
42
+ session_id: string;
43
+ session_token?: string;
44
+ initial_message?: TInitialMessage;
45
+ }
36
46
  export interface ExistingSessionOptions {
37
47
  session_id: string;
38
48
  session_token: string;
@@ -41,8 +51,7 @@ export declare class SynapseSDK {
41
51
  private connection;
42
52
  private messageManager;
43
53
  private resourceManager;
44
- private sessionToken;
45
- private sessionId;
54
+ private sessionConfig;
46
55
  private config;
47
56
  private connectionType;
48
57
  constructor(config: SynapseSDKConfig);
@@ -57,7 +66,7 @@ export declare class SynapseSDK {
57
66
  /**
58
67
  * Send a message conetnt will be text always
59
68
  */
60
- sendMessage({ message, files, audio, }: SendMessageOptions): Promise<void>;
69
+ sendMessage({ message, files, audio, tool_declined, tool_id, initial_prompts }: SendMessageOptions): Promise<void>;
61
70
  /**
62
71
  * Register a listener for a specific event
63
72
  */
@@ -70,6 +79,10 @@ export declare class SynapseSDK {
70
79
  * Get the session ID
71
80
  */
72
81
  getSessionConfig(): SessionResponse;
82
+ /**
83
+ * Call tool
84
+ */
85
+ callTool<R extends ToolCallResponse = ToolCallResponse>(name: string, params?: Record<string, unknown>): Promise<R>;
73
86
  /**
74
87
  * Send audio
75
88
  * */
@@ -1 +1 @@
1
- {"version":3,"file":"Synapse.d.ts","sourceRoot":"","sources":["../src/Synapse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Synapse.d.ts","sourceRoot":"","sources":["../src/Synapse.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAEL,cAAc,EACf,MAAM,gCAAgC,CAAC;AAKxC,OAAO,EAAE,KAAK,WAAW,EAAa,MAAM,aAAa,CAAC;AAI1D,OAAO,EACL,uBAAuB,EAEvB,KAAK,aAAa,EACnB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAML,YAAY,EAEb,MAAM,wBAAwB,CAAC;AAShC,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,eAAe,EACrB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;IACf,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAC,aAAa,EAAE,CAAA;CACjC;AACD,MAAM,WAAW,mBAAmB;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,MAAM,eAAe,GAAG,YAAY,GAAG,KAAK,CAAC;AACnD,MAAM,WAAW,mBAAmB;IAClC,kBAAkB,CAAC,EAAE,CAAC,eAAe,EAAE,eAAe,KAAK,IAAI,CAAC;IAGhE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;CAC5C;AACD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,SAAS,CAAC,EAAE,mBAAmB,CAAC;IAChC,SAAS,CAAC,EAAE,mBAAmB,CAAC;CAEjC;AAED,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC;AACD,MAAM,WAAW,sBAAsB;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACvB;AAGD,qBAAa,UAAU;IACrB,OAAO,CAAC,UAAU,CAA+B;IACjD,OAAO,CAAC,cAAc,CAAkB;IACxC,OAAO,CAAC,eAAe,CAAkB;IAEzC,OAAO,CAAC,aAAa,CAA8B;IACnD,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,cAAc,CAAiB;gBAE3B,MAAM,EAAE,gBAAgB;IAapC;;;;;;OAMG;IACU,YAAY,CACvB,eAAe,CAAC,EAAE,sBAAsB,GACvC,OAAO,CAAC,eAAe,CAAC;IAwB3B;;OAEG;IACU,WAAW,CAAC,EACvB,OAAO,EACP,KAAK,EACL,KAAK,EACL,aAAa,EACb,OAAO,EACP,eAAe,EAChB,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAmCrC;;OAEG;IACI,EAAE,CACP,KAAK,EAAE,uBAAuB,EAC9B,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,GACrC,IAAI;IAIP;;OAEG;IACI,GAAG,CACR,KAAK,EAAE,uBAAuB,EAC9B,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,GACrC,IAAI;IAIP;;OAEG;IACI,gBAAgB,IAAI,eAAe;IAU1C;;OAEG;IACU,QAAQ,CAAC,CAAC,SAAS,gBAAgB,GAAG,gBAAgB,EACjE,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,OAAO,CAAC,CAAC,CAAC;IA+Cb;;SAEK;IACQ,cAAc,CAAC,EAC1B,QAAQ,EACR,OAAO,GACR,EAAE;QACD,QAAQ,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAC;QAC1C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;KAClC,GAAG,OAAO,CAAC,IAAI,CAAC;IAgCjB;;OAEG;IACI,YAAY,IAAI,IAAI;IAmCpB,WAAW,IAAI,OAAO;IAG7B;;OAEG;IACI,UAAU,IAAI,IAAI;IAUzB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,cAAc;IAYtB;;;OAGG;YACW,oBAAoB;IAuClC;;;OAGG;YACW,aAAa;IA2C3B;;OAEG;YACW,cAAc;IAwB5B;;OAEG;YACW,gBAAgB;IAM9B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAwC1B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAW/B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAe9B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAgD/B;;OAEG;YACW,mBAAmB;IAsCjC,OAAO,CAAC,iBAAiB;CAW1B"}
package/dist/Synapse.js CHANGED
@@ -14,13 +14,13 @@ const types_1 = require("./messages/types");
14
14
  const Error_1 = require("./utils/Error");
15
15
  const Error_2 = require("./internal/Error/Error");
16
16
  const Events_1 = require("./events/Events");
17
+ //TODO: Fix issue with handling error content type ,which is comming as a connection error to the user
17
18
  class SynapseSDK {
18
19
  connection = null;
19
20
  messageManager;
20
21
  resourceManager;
21
22
  // private agentConfig: AgentConfig | null = null;
22
- sessionToken = null;
23
- sessionId = null;
23
+ sessionConfig = null;
24
24
  config;
25
25
  connectionType;
26
26
  constructor(config) {
@@ -63,7 +63,7 @@ class SynapseSDK {
63
63
  /**
64
64
  * Send a message conetnt will be text always
65
65
  */
66
- async sendMessage({ message, files, audio, }) {
66
+ async sendMessage({ message, files, audio, tool_declined, tool_id, initial_prompts }) {
67
67
  if (!this.connection) {
68
68
  const error = new Error_2.ConnectionError("Connection not established. Session may not be initialized.", {
69
69
  context: { stage: "sendChatMessage" },
@@ -78,6 +78,9 @@ class SynapseSDK {
78
78
  message: message,
79
79
  files: files,
80
80
  audio: audio,
81
+ ...(tool_declined && { tool_declined }),
82
+ ...(tool_id && { tool_id }),
83
+ ...(initial_prompts?.length && { initial_prompts })
81
84
  });
82
85
  break;
83
86
  default:
@@ -107,16 +110,57 @@ class SynapseSDK {
107
110
  * Get the session ID
108
111
  */
109
112
  getSessionConfig() {
110
- if (!this.sessionId || !this.sessionToken) {
113
+ if (!this.sessionConfig?.session_id || !this.sessionConfig?.session_token) {
111
114
  throw new Error_2.SessionError("Session ID or token not found", {
112
115
  context: { stage: "getSessionConfig" },
113
116
  hint: "Ensure the session API returns both identifiers.",
114
117
  });
115
118
  }
116
- return {
117
- session_id: this.sessionId,
118
- session_token: this.sessionToken,
119
- };
119
+ return this.sessionConfig;
120
+ }
121
+ /**
122
+ * Call tool
123
+ */
124
+ async callTool(name, params) {
125
+ if (!this.connection) {
126
+ const error = new Error_2.ConnectionError("Connection not established. Session may not be initialized.", {
127
+ context: { stage: "callTool" },
128
+ hint: "Call startSession() before attempting to call tool.",
129
+ });
130
+ this.emitError(error);
131
+ throw error;
132
+ }
133
+ if (!this.sessionConfig?.session_id) {
134
+ const error = new Error_2.SessionError("Session ID not found", {
135
+ context: { stage: "callTool" },
136
+ hint: "Call startSession() before attempting to call tool.",
137
+ });
138
+ this.emitError(error);
139
+ throw error;
140
+ }
141
+ switch (this.connectionType) {
142
+ case ConnectionFactory_1.ConnectionType.SOCKET:
143
+ try {
144
+ const response = await this.resourceManager.callTool(this.sessionConfig.session_id, name, params);
145
+ if (response.err) {
146
+ throw new Error_2.APIError(response.err.msg, 500, response.err);
147
+ }
148
+ return response;
149
+ }
150
+ catch (error) {
151
+ if (error instanceof Error_2.APIError && error?.status === 401) {
152
+ await this.handleSessionExpiry();
153
+ return await this.callTool(name, params);
154
+ }
155
+ throw error;
156
+ }
157
+ default:
158
+ const error = new Error_2.ConnectionError("Unsupported connection type", {
159
+ context: { stage: "callTool", connectionType: this.connectionType },
160
+ });
161
+ this.emitError(error);
162
+ throw error;
163
+ }
120
164
  }
121
165
  /**
122
166
  * Send audio
@@ -222,8 +266,7 @@ class SynapseSDK {
222
266
  hint: "Ensure the session API returns both identifiers.",
223
267
  });
224
268
  }
225
- this.sessionId = sessionResponse.session_id;
226
- this.sessionToken = sessionResponse.session_token;
269
+ this.sessionConfig = sessionResponse;
227
270
  const serverUrl = (0, constants_1.getConfig)(this.config?.environment).WEBSOCKET_URL;
228
271
  const connectionType = this.config.connectionType === "socket"
229
272
  ? ConnectionFactory_1.ConnectionType.SOCKET
@@ -353,7 +396,7 @@ class SynapseSDK {
353
396
  * Handle socket connection open
354
397
  */
355
398
  onSocketConnectionOpen() {
356
- if (!this.sessionToken) {
399
+ if (!this.sessionConfig?.session_token) {
357
400
  const error = new Error_2.SessionError("Session token not set. Call startSession() first.", {
358
401
  context: { stage: "onSocketConnectionOpen" },
359
402
  hint: "Ensure startSession() completes successfully before socket opens.",
@@ -361,7 +404,7 @@ class SynapseSDK {
361
404
  this.emitError(error);
362
405
  throw error;
363
406
  }
364
- this.messageManager.sendSocketAuthMessage(this.sessionToken);
407
+ this.messageManager.sendSocketAuthMessage(this.sessionConfig.session_token);
365
408
  }
366
409
  /**
367
410
  * Handle incoming socket messages
@@ -411,21 +454,22 @@ class SynapseSDK {
411
454
  async handleSessionExpiry() {
412
455
  try {
413
456
  this.endSession();
414
- if (!this.sessionId || !this.sessionToken) {
457
+ if (!this.sessionConfig?.session_id ||
458
+ !this.sessionConfig?.session_token) {
415
459
  const error = new Error_2.SessionError("Session ID or token not found", {
416
460
  context: { stage: "handleSessionExpiry" },
417
461
  });
418
462
  this.emitError(error);
419
463
  throw error;
420
464
  }
421
- const refreshed = await this.refreshSession(this.sessionId, this.sessionToken);
465
+ const refreshed = await this.refreshSession(this.sessionConfig.session_id, this.sessionConfig.session_token);
422
466
  if (!refreshed.session_id || !refreshed.session_token) {
423
467
  throw new Error_2.SessionError("Session refresh failed", {
424
468
  context: { stage: "handleSessionExpiry" },
425
469
  });
426
470
  }
427
- this.sessionId = refreshed.session_id;
428
- this.sessionToken = refreshed.session_token;
471
+ this.sessionConfig.session_id = refreshed.session_id;
472
+ this.sessionConfig.session_token = refreshed.session_token;
429
473
  await this.initializeConnection(refreshed);
430
474
  this.setupEventHandlers();
431
475
  this.config.callbacks?.onSessionRefreshed?.(refreshed);
@@ -1 +1 @@
1
- {"version":3,"file":"Websocket.d.ts","sourceRoot":"","sources":["../../src/connection/Websocket.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AACvE,OAAO,EAGL,KAAK,aAAa,EACnB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,KAAK,qBAAqB,EAC3B,MAAM,kBAAkB,CAAC;AAO1B,MAAM,WAAW,yBAA0B,SAAQ,aAAa;IAC9D,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE;QACJ,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,qBAAa,mBAAoB,SAAQ,cAAc;IACrD,SAAgB,cAAc,EAAE,MAAM,CAAC;IACvC,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,cAAc,CAAa;gBAEvB,MAAM,EAAE,yBAAyB;IAO7C;;OAEG;IACH,OAAO,CAAC,OAAO;IA6Bf;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAO1B;;OAEG;IACH,OAAO,CAAC,UAAU;IAclB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAgB3B;;OAEG;IACH,OAAO,CAAC,WAAW;IAQnB;;OAEG;IACH,OAAO,CAAC,WAAW;IA+CnB;;OAEG;IACI,WAAW,CAAC,OAAO,EAAE,qBAAqB,GAAG,IAAI;IAyBxD;;OAEG;IACI,KAAK,IAAI,IAAI;IAQpB;;OAEG;IACI,WAAW,IAAI,OAAO;IAItB,eAAe,IAAI,IAAI;CAI/B"}
1
+ {"version":3,"file":"Websocket.d.ts","sourceRoot":"","sources":["../../src/connection/Websocket.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AACvE,OAAO,EAGL,KAAK,aAAa,EACnB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAO9D,MAAM,WAAW,yBAA0B,SAAQ,aAAa;IAC9D,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE;QACJ,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,qBAAa,mBAAoB,SAAQ,cAAc;IACrD,SAAgB,cAAc,EAAE,MAAM,CAAC;IACvC,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,cAAc,CAAa;gBAEvB,MAAM,EAAE,yBAAyB;IAY7C;;OAEG;IACH,OAAO,CAAC,OAAO;IA6Bf;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAQ1B;;OAEG;IACH,OAAO,CAAC,UAAU;IAclB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAgB3B;;OAEG;IACH,OAAO,CAAC,WAAW;IAQnB;;OAEG;IACH,OAAO,CAAC,WAAW;IA8CnB;;OAEG;IACI,WAAW,CAAC,OAAO,EAAE,qBAAqB,GAAG,IAAI;IAyBxD;;OAEG;IACI,KAAK,IAAI,IAAI;IAQpB;;OAEG;IACI,WAAW,IAAI,OAAO;IAItB,eAAe,IAAI,IAAI;CAI/B"}
@@ -14,7 +14,12 @@ class WebSocketConnection extends BaseConnection_1.BaseConnection {
14
14
  reconnectCount = 0;
15
15
  constructor(config) {
16
16
  super();
17
- this.config = { ...config, reconnect: config.reconnect || true, reconnectAttempts: config.reconnectAttempts || 3, reconnectDelay: config.reconnectDelay || 1000 };
17
+ this.config = {
18
+ ...config,
19
+ reconnect: config.reconnect || true,
20
+ reconnectAttempts: config.reconnectAttempts || 3,
21
+ reconnectDelay: config.reconnectDelay || 1000,
22
+ };
18
23
  this.conversationId = config.auth.sessionId;
19
24
  this.connect();
20
25
  }
@@ -49,7 +54,7 @@ class WebSocketConnection extends BaseConnection_1.BaseConnection {
49
54
  */
50
55
  buildConnectionUrl() {
51
56
  const url = new URL(this.config.serverUrl);
52
- url.pathname = `/ws/med-assist/session/${this.config.auth.sessionId}/`;
57
+ url.pathname = `/reloaded/ws/med-assist/session/${this.config.auth.sessionId}/`;
53
58
  return url.toString();
54
59
  }
55
60
  /**
@@ -12,6 +12,13 @@ declare const STAGING_CONFIG: {
12
12
  };
13
13
  export type EnvironmentConfig = typeof DEVELOPMENT_CONFIG | typeof PRODUCTION_CONFIG | typeof STAGING_CONFIG;
14
14
  export declare const getConfig: (environment?: Environment) => EnvironmentConfig;
15
+ export declare enum SYNAPSE_TOOL_NAME {
16
+ MOBILE_VERIFICATION = "mobile_verification",
17
+ AVAILABILITY_DATES = "availability_dates",
18
+ AVAILABILITY_SLOTS = "availability_slots",
19
+ DOCTOR_DETAILS = "doctor_details",
20
+ GET_LOCATION = "get_location"
21
+ }
15
22
  export type Environment = "development" | "production" | "staging";
16
23
  export {};
17
24
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/constants/index.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,iBAAiB;;;CAGtB,CAAC;AAGF,QAAA,MAAM,kBAAkB;;;CAGvB,CAAC;AAEF,QAAA,MAAM,cAAc;;;CAGnB,CAAC;AACF,MAAM,MAAM,iBAAiB,GAAG,OAAO,kBAAkB,GAAG,OAAO,iBAAiB,GAAG,OAAO,cAAc,CAAC;AAE7G,eAAO,MAAM,SAAS,GAAI,cAAa,WAA0B,KAAG,iBASnE,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,aAAa,GAAG,YAAY,GAAG,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/constants/index.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,iBAAiB;;;CAGtB,CAAC;AAKF,QAAA,MAAM,kBAAkB;;;CAIvB,CAAC;AAEF,QAAA,MAAM,cAAc;;;CAGnB,CAAC;AACF,MAAM,MAAM,iBAAiB,GACzB,OAAO,kBAAkB,GACzB,OAAO,iBAAiB,GACxB,OAAO,cAAc,CAAC;AAE1B,eAAO,MAAM,SAAS,GACpB,cAAa,WAA0B,KACtC,iBASF,CAAC;AAEF,oBAAY,iBAAiB;IAC3B,mBAAmB,wBAAwB;IAC3C,kBAAkB,uBAAuB;IACzC,kBAAkB,uBAAuB;IACzC,cAAc,mBAAmB;IACjC,YAAY,iBAAiB;CAC9B;AAED,MAAM,MAAM,WAAW,GAAG,aAAa,GAAG,YAAY,GAAG,SAAS,CAAC"}
@@ -1,13 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getConfig = void 0;
3
+ exports.SYNAPSE_TOOL_NAME = exports.getConfig = void 0;
4
4
  const PRODUCTION_CONFIG = {
5
- WEBSOCKET_URL: "wss://matrix-ws.eka.care",
6
- BASE_API_URL: "https://matrix.eka.care",
5
+ WEBSOCKET_URL: "wss://matrix-ws.eka.care/reloaded",
6
+ BASE_API_URL: "https://matrix.eka.care/reloaded",
7
7
  };
8
+ // const PRODUCTION_CONFIG = {
9
+ // WEBSOCKET_URL: "ws://7d122fab59fd.ngrok-free.app/reloaded",
10
+ // BASE_API_URL: "https://7d122fab59fd.ngrok-free.app/reloaded",
11
+ // }
8
12
  const DEVELOPMENT_CONFIG = {
9
- WEBSOCKET_URL: "wss://matrix-ws.dev.eka.care",
10
- BASE_API_URL: "https://matrix.dev.eka.care",
13
+ // can be used for local development
14
+ WEBSOCKET_URL: "wss://matrix-ws.dev.eka.care/reloaded",
15
+ BASE_API_URL: "https://matrix.dev.eka.care/reloaded",
11
16
  };
12
17
  const STAGING_CONFIG = {
13
18
  WEBSOCKET_URL: "wss://matrix-ws.dev.eka.care",
@@ -26,3 +31,11 @@ const getConfig = (environment = "production") => {
26
31
  return PRODUCTION_CONFIG;
27
32
  };
28
33
  exports.getConfig = getConfig;
34
+ var SYNAPSE_TOOL_NAME;
35
+ (function (SYNAPSE_TOOL_NAME) {
36
+ SYNAPSE_TOOL_NAME["MOBILE_VERIFICATION"] = "mobile_verification";
37
+ SYNAPSE_TOOL_NAME["AVAILABILITY_DATES"] = "availability_dates";
38
+ SYNAPSE_TOOL_NAME["AVAILABILITY_SLOTS"] = "availability_slots";
39
+ SYNAPSE_TOOL_NAME["DOCTOR_DETAILS"] = "doctor_details";
40
+ SYNAPSE_TOOL_NAME["GET_LOCATION"] = "get_location";
41
+ })(SYNAPSE_TOOL_NAME || (exports.SYNAPSE_TOOL_NAME = SYNAPSE_TOOL_NAME = {}));
@@ -5,15 +5,14 @@ export declare const SOCKET_CONTENT_TYPES: {
5
5
  readonly TEXT: "text";
6
6
  readonly AUDIO: "audio";
7
7
  readonly FILE: "file";
8
- readonly PILL: "pill";
9
- readonly MULTI: "multi";
10
- readonly DOCTOR_CARD: "doctor_card";
8
+ readonly TOOL_CALL: "tool";
11
9
  readonly TIPS: "tips";
12
10
  readonly INLINE_TEXT: "inline_text";
13
- readonly MOBILE_VERIFICATION: "mobile_verification";
11
+ readonly TOOL_START: "tool_start";
12
+ readonly TOOL_END: "tool_end";
14
13
  };
15
14
  export type SOCKET_CONTENT_TYPES = (typeof SOCKET_CONTENT_TYPES)[keyof typeof SOCKET_CONTENT_TYPES];
16
- export type SOCKET_CHAT_CONTENT_TYPES = (typeof SOCKET_CONTENT_TYPES)["TEXT"] | (typeof SOCKET_CONTENT_TYPES)["FILE"] | (typeof SOCKET_CONTENT_TYPES)["DOCTOR_CARD"];
15
+ export type SOCKET_CHAT_CONTENT_TYPES = (typeof SOCKET_CONTENT_TYPES)["TEXT"] | (typeof SOCKET_CONTENT_TYPES)["FILE"] | (typeof SOCKET_CONTENT_TYPES)["TOOL_CALL"];
17
16
  export declare const SOCKET_EVENTS: {
18
17
  readonly PING: "ping";
19
18
  readonly PONG: "pong";
@@ -1 +1 @@
1
- {"version":3,"file":"Events.d.ts","sourceRoot":"","sources":["../../src/events/Events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE7C,MAAM,MAAM,qBAAqB,GAC7B,QAAQ,CAAC,WAAW,GACpB,QAAQ,CAAC,WAAW,GACpB,QAAQ,CAAC,YAAY,GACrB,QAAQ,CAAC,WAAW,GACpB,QAAQ,CAAC,0BAA0B,GACnC,QAAQ,CAAC,0BAA0B,GACnC,QAAQ,CAAC,4BAA4B,GACrC,QAAQ,CAAC,iCAAiC,CAAC;AAE/C,MAAM,MAAM,qBAAqB,GAC7B,QAAQ,CAAC,WAAW,GACpB,QAAQ,CAAC,WAAW,GACpB,QAAQ,CAAC,YAAY,GACrB,QAAQ,CAAC,WAAW,GACpB,QAAQ,CAAC,2CAA2C,GACpD,QAAQ,CAAC,0BAA0B,GACnC,QAAQ,CAAC,4BAA4B,GACrC,QAAQ,CAAC,iCAAiC,CAAC;AAG/C,eAAO,MAAM,oBAAoB;;;;;;;;;;CAUvB,CAAC;AAEX,MAAM,MAAM,oBAAoB,GAC9B,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,OAAO,oBAAoB,CAAC,CAAC;AAEnE,MAAM,MAAM,yBAAyB,GACjC,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,CAAC,GACrC,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,CAAC,GACrC,CAAC,OAAO,oBAAoB,CAAC,CAAC,aAAa,CAAC,CAAC;AAEjD,eAAO,MAAM,aAAa;;;;;;;;;;CAahB,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC;AAE/E,eAAO,MAAM,8BAA8B;;;CAGjC,CAAC;AAEX,MAAM,MAAM,8BAA8B,GACxC,CAAC,OAAO,8BAA8B,CAAC,CAAC,MAAM,OAAO,8BAA8B,CAAC,CAAC;AAEvF,MAAM,MAAM,yBAAyB,GAAG,QAAQ,CAAC,WAAW,CAAC;AAC7D,MAAM,MAAM,yBAAyB,GAAG,QAAQ,CAAC,WAAW,CAAC;AAC7D,MAAM,MAAM,0BAA0B,GAAG,QAAQ,CAAC,YAAY,CAAC;AAC/D,MAAM,MAAM,yBAAyB,GAAG,QAAQ,CAAC,WAAW,CAAC;AAC7D,MAAM,MAAM,0CAA0C,GACpD,QAAQ,CAAC,2CAA2C,CAAC;AACvD,MAAM,MAAM,yBAAyB,GAAG,QAAQ,CAAC,0BAA0B,CAAC;AAC5E,MAAM,MAAM,2BAA2B,GAAG,QAAQ,CAAC,4BAA4B,CAAC;AAChF,MAAM,MAAM,gCAAgC,GAC1C,QAAQ,CAAC,iCAAiC,CAAC;AAE7C,MAAM,MAAM,yBAAyB,GAAG,QAAQ,CAAC,0BAA0B,CAAC;AAC5E,MAAM,MAAM,2BAA2B,GAAG,QAAQ,CAAC,4BAA4B,CAAC;AAChF,MAAM,MAAM,gCAAgC,GAC1C,QAAQ,CAAC,iCAAiC,CAAC;AAC7C,MAAM,MAAM,cAAc,GAAG,QAAQ,CAAC,WAAW,CAAC;AAClD,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,GAAG,GACX,OAAO,IAAI,qBAAqB,CAYlC"}
1
+ {"version":3,"file":"Events.d.ts","sourceRoot":"","sources":["../../src/events/Events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE7C,MAAM,MAAM,qBAAqB,GAC7B,QAAQ,CAAC,WAAW,GACpB,QAAQ,CAAC,WAAW,GACpB,QAAQ,CAAC,YAAY,GACrB,QAAQ,CAAC,WAAW,GACpB,QAAQ,CAAC,0BAA0B,GACnC,QAAQ,CAAC,0BAA0B,GACnC,QAAQ,CAAC,4BAA4B,GACrC,QAAQ,CAAC,iCAAiC,CAAC;AAE/C,MAAM,MAAM,qBAAqB,GAC7B,QAAQ,CAAC,WAAW,GACpB,QAAQ,CAAC,WAAW,GACpB,QAAQ,CAAC,YAAY,GACrB,QAAQ,CAAC,WAAW,GACpB,QAAQ,CAAC,2CAA2C,GACpD,QAAQ,CAAC,0BAA0B,GACnC,QAAQ,CAAC,4BAA4B,GACrC,QAAQ,CAAC,iCAAiC,CAAC;AAG/C,eAAO,MAAM,oBAAoB;;;;;;;;;CASvB,CAAC;AAEX,MAAM,MAAM,oBAAoB,GAC9B,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,OAAO,oBAAoB,CAAC,CAAC;AAEnE,MAAM,MAAM,yBAAyB,GACjC,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,CAAC,GACrC,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,CAAC,GACrC,CAAC,OAAO,oBAAoB,CAAC,CAAC,WAAW,CAAC,CAAC;AAE/C,eAAO,MAAM,aAAa;;;;;;;;;;CAahB,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC;AAE/E,eAAO,MAAM,8BAA8B;;;CAGjC,CAAC;AAEX,MAAM,MAAM,8BAA8B,GACxC,CAAC,OAAO,8BAA8B,CAAC,CAAC,MAAM,OAAO,8BAA8B,CAAC,CAAC;AAEvF,MAAM,MAAM,yBAAyB,GAAG,QAAQ,CAAC,WAAW,CAAC;AAC7D,MAAM,MAAM,yBAAyB,GAAG,QAAQ,CAAC,WAAW,CAAC;AAC7D,MAAM,MAAM,0BAA0B,GAAG,QAAQ,CAAC,YAAY,CAAC;AAC/D,MAAM,MAAM,yBAAyB,GAAG,QAAQ,CAAC,WAAW,CAAC;AAC7D,MAAM,MAAM,0CAA0C,GACpD,QAAQ,CAAC,2CAA2C,CAAC;AACvD,MAAM,MAAM,yBAAyB,GAAG,QAAQ,CAAC,0BAA0B,CAAC;AAC5E,MAAM,MAAM,2BAA2B,GAAG,QAAQ,CAAC,4BAA4B,CAAC;AAChF,MAAM,MAAM,gCAAgC,GAC1C,QAAQ,CAAC,iCAAiC,CAAC;AAE7C,MAAM,MAAM,yBAAyB,GAAG,QAAQ,CAAC,0BAA0B,CAAC;AAC5E,MAAM,MAAM,2BAA2B,GAAG,QAAQ,CAAC,4BAA4B,CAAC;AAChF,MAAM,MAAM,gCAAgC,GAC1C,QAAQ,CAAC,iCAAiC,CAAC;AAC7C,MAAM,MAAM,cAAc,GAAG,QAAQ,CAAC,WAAW,CAAC;AAClD,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,GAAG,GACX,OAAO,IAAI,qBAAqB,CAYlC"}
@@ -7,12 +7,11 @@ exports.SOCKET_CONTENT_TYPES = {
7
7
  TEXT: "text",
8
8
  AUDIO: "audio",
9
9
  FILE: "file",
10
- PILL: "pill",
11
- MULTI: "multi",
12
- DOCTOR_CARD: "doctor_card",
10
+ TOOL_CALL: "tool",
13
11
  TIPS: "tips",
14
12
  INLINE_TEXT: "inline_text",
15
- MOBILE_VERIFICATION: "mobile_verification",
13
+ TOOL_START: "tool_start",
14
+ TOOL_END: "tool_end",
16
15
  };
17
16
  exports.SOCKET_EVENTS = {
18
17
  // Client to Server events
@@ -2,7 +2,8 @@
2
2
  * Event types for message layer
3
3
  * These are specific to the messaging layer and don't affect the base connection layer
4
4
  */
5
- import { MULTI_SELECT_ADDITIONAL_OPTION, SOCKET_CONTENT_TYPES, SOCKET_EVENTS } from "./Events";
5
+ import { type SYNAPSE_TOOL_TYPES, type ToolDetails } from "../resources/toolCall/types";
6
+ import { SOCKET_CONTENT_TYPES, SOCKET_EVENTS } from "./Events";
6
7
  export interface BaseMessage {
7
8
  ev: SOCKET_EVENTS;
8
9
  _id: string;
@@ -30,11 +31,11 @@ export interface AuthSynapseToMatrixMessage extends BaseMessage {
30
31
  }
31
32
  export interface ChatSynapseToMatrixMessage extends BaseMessage {
32
33
  ev: (typeof SOCKET_EVENTS)["CHAT"];
33
- ct: (typeof SOCKET_CONTENT_TYPES)["TEXT"] | (typeof SOCKET_CONTENT_TYPES)["FILE"] | (typeof SOCKET_CONTENT_TYPES)["DOCTOR_CARD"];
34
+ ct: (typeof SOCKET_CONTENT_TYPES)["TEXT"] | (typeof SOCKET_CONTENT_TYPES)["FILE"] | (typeof SOCKET_CONTENT_TYPES)["TOOL_CALL"];
34
35
  data?: {
35
36
  url?: string;
36
37
  text?: string;
37
- tool_use_id?: string;
38
+ tool_id?: string;
38
39
  hidden?: boolean;
39
40
  extension?: string;
40
41
  tool_use_params?: any;
@@ -56,6 +57,13 @@ export interface ConnectionEstablishedMatrixToSynapseMessage extends BaseMessage
56
57
  sid: string;
57
58
  msg: string;
58
59
  }
60
+ export type ToolCallData = {
61
+ tool_id: string | null;
62
+ tool_type?: SYNAPSE_TOOL_TYPES;
63
+ tool_name: string;
64
+ details?: ToolDetails;
65
+ _meta?: Record<string, unknown>;
66
+ };
59
67
  export interface ChatMatrixToSynapseMessage extends BaseMessage {
60
68
  ev: (typeof SOCKET_EVENTS)["CHAT"];
61
69
  ct: Exclude<SOCKET_CONTENT_TYPES, (typeof SOCKET_CONTENT_TYPES)["AUDIO"]>;
@@ -63,21 +71,17 @@ export interface ChatMatrixToSynapseMessage extends BaseMessage {
63
71
  urls?: string[];
64
72
  exp?: number;
65
73
  text?: string;
66
- tool_use_id?: string;
67
- choices?: string[];
68
- callbacks: Record<string, boolean>;
69
- additional_option?: typeof MULTI_SELECT_ADDITIONAL_OPTION;
70
- mobile_number?: string;
71
- };
74
+ tips?: string[];
75
+ } & Partial<ToolCallData>;
72
76
  }
73
77
  export interface StreamMatrixToSynapseMessage extends BaseMessage {
74
78
  ev: (typeof SOCKET_EVENTS)["STREAM"];
75
- ct: (typeof SOCKET_CONTENT_TYPES)["TEXT"] | (typeof SOCKET_CONTENT_TYPES)["TIPS"];
79
+ ct: (typeof SOCKET_CONTENT_TYPES)["TEXT"] | (typeof SOCKET_CONTENT_TYPES)["TIPS"] | (typeof SOCKET_CONTENT_TYPES)["TOOL_CALL"] | (typeof SOCKET_CONTENT_TYPES)["TOOL_START"] | (typeof SOCKET_CONTENT_TYPES)["TOOL_END"];
76
80
  data: {
77
81
  text?: string;
78
82
  progress_msg?: string;
79
83
  tips?: string[];
80
- };
84
+ } & Partial<ToolCallData>;
81
85
  }
82
86
  export interface EndOfStreamMatrixToSynapseMessage extends BaseMessage {
83
87
  ev: (typeof SOCKET_EVENTS)["END_OF_STREAM"];
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/events/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/events/types.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -13,13 +13,16 @@ export { ResourceManager } from "./resources";
13
13
  export * from "./resources/types";
14
14
  export { Session } from "./resources/session/Session";
15
15
  export * from "./resources/session/types";
16
+ export { ToolCall } from "./resources/toolCall/ToolCall";
17
+ export * from "./resources/toolCall/types";
16
18
  export { MessageManager } from "./messages/MessageManager";
17
- export { SYNAPSE_REALTIME_EVENTS, type SynapseRealTimeEventData, type ToolEscalationData, } from "./messages/types";
19
+ export * from "./messages/types";
20
+ export * from "./events/types";
18
21
  export { HttpClient } from "./internal/Api/HttpClient";
19
22
  export type { HttpClientConfig } from "./internal/Api/HttpClient";
20
23
  export { SynapseError, APIError, APIUserAbortError, APIConnectionTimeoutError, BadRequestError, UnauthorizedError, PermissionDeniedError, NotFoundError, MethodNotAllowedError, RateLimitError, InternalServerError, SynapseErrorCode, } from "./internal/Error/Error";
21
24
  export { ErrorType } from "./internal/Error/types";
22
- export type { Environment } from "./constants";
25
+ export { type Environment } from "./constants";
23
26
  export { ErrorUtils } from "./utils/Error";
24
27
  export * from "./media/audio/types";
25
28
  export type { SendMessageOptions } from "./Synapse";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,YAAY,EACV,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EACL,iBAAiB,EACjB,cAAc,GACf,MAAM,gCAAgC,CAAC;AACxC,YAAY,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AACvE,cAAc,6BAA6B,CAAC;AAG5C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,cAAc,mBAAmB,CAAC;AAElC,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,cAAc,2BAA2B,CAAC;AAG1C,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EACL,uBAAuB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,kBAAkB,GACxB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,YAAY,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAGlE,OAAO,EACL,YAAY,EACZ,QAAQ,EACR,iBAAiB,EACjB,yBAAyB,EACzB,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,aAAa,EACb,qBAAqB,EACrB,cAAc,EACd,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,cAAc,qBAAqB,CAAC;AAEpC,YAAY,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,YAAY,EACV,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EACL,iBAAiB,EACjB,cAAc,GACf,MAAM,gCAAgC,CAAC;AACxC,YAAY,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AACvE,cAAc,6BAA6B,CAAC;AAG5C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,cAAc,mBAAmB,CAAC;AAElC,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,cAAc,2BAA2B,CAAC;AAE1C,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AACzD,cAAc,4BAA4B,CAAC;AAG3C,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,cAAc,kBAAkB,CAAC;AAEjC,cAAc,gBAAgB,CAAC;AAG/B,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,YAAY,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAGlE,OAAO,EACL,YAAY,EACZ,QAAQ,EACR,iBAAiB,EACjB,yBAAyB,EACzB,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,aAAa,EACb,qBAAqB,EACrB,cAAc,EACd,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,cAAc,qBAAqB,CAAC;AAEpC,YAAY,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC"}
package/dist/index.js CHANGED
@@ -18,7 +18,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
18
18
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
19
19
  };
20
20
  Object.defineProperty(exports, "__esModule", { value: true });
21
- exports.SYNAPSE_MESSAGE_TYPES = exports.ErrorUtils = exports.ErrorType = exports.SynapseErrorCode = exports.InternalServerError = exports.RateLimitError = exports.MethodNotAllowedError = exports.NotFoundError = exports.PermissionDeniedError = exports.UnauthorizedError = exports.BadRequestError = exports.APIConnectionTimeoutError = exports.APIUserAbortError = exports.APIError = exports.SynapseError = exports.HttpClient = exports.SYNAPSE_REALTIME_EVENTS = exports.MessageManager = exports.Session = exports.ResourceManager = exports.ConnectionType = exports.ConnectionFactory = exports.WebSocketConnection = exports.BaseConnection = exports.SynapseSDK = void 0;
21
+ exports.SYNAPSE_MESSAGE_TYPES = exports.ErrorUtils = exports.ErrorType = exports.SynapseErrorCode = exports.InternalServerError = exports.RateLimitError = exports.MethodNotAllowedError = exports.NotFoundError = exports.PermissionDeniedError = exports.UnauthorizedError = exports.BadRequestError = exports.APIConnectionTimeoutError = exports.APIUserAbortError = exports.APIError = exports.SynapseError = exports.HttpClient = exports.MessageManager = exports.ToolCall = exports.Session = exports.ResourceManager = exports.ConnectionType = exports.ConnectionFactory = exports.WebSocketConnection = exports.BaseConnection = exports.SynapseSDK = void 0;
22
22
  // High-level API (Primary interface for most users)
23
23
  var Synapse_1 = require("./Synapse");
24
24
  Object.defineProperty(exports, "SynapseSDK", { enumerable: true, get: function () { return Synapse_1.SynapseSDK; } });
@@ -38,11 +38,14 @@ __exportStar(require("./resources/types"), exports);
38
38
  var Session_1 = require("./resources/session/Session");
39
39
  Object.defineProperty(exports, "Session", { enumerable: true, get: function () { return Session_1.Session; } });
40
40
  __exportStar(require("./resources/session/types"), exports);
41
+ var ToolCall_1 = require("./resources/toolCall/ToolCall");
42
+ Object.defineProperty(exports, "ToolCall", { enumerable: true, get: function () { return ToolCall_1.ToolCall; } });
43
+ __exportStar(require("./resources/toolCall/types"), exports);
41
44
  // Message layer (for advanced usage)
42
45
  var MessageManager_1 = require("./messages/MessageManager");
43
46
  Object.defineProperty(exports, "MessageManager", { enumerable: true, get: function () { return MessageManager_1.MessageManager; } });
44
- var types_1 = require("./messages/types");
45
- Object.defineProperty(exports, "SYNAPSE_REALTIME_EVENTS", { enumerable: true, get: function () { return types_1.SYNAPSE_REALTIME_EVENTS; } });
47
+ __exportStar(require("./messages/types"), exports);
48
+ __exportStar(require("./events/types"), exports);
46
49
  // Core HTTP client (for advanced usage)
47
50
  var HttpClient_1 = require("./internal/Api/HttpClient");
48
51
  Object.defineProperty(exports, "HttpClient", { enumerable: true, get: function () { return HttpClient_1.HttpClient; } });
@@ -60,11 +63,11 @@ Object.defineProperty(exports, "MethodNotAllowedError", { enumerable: true, get:
60
63
  Object.defineProperty(exports, "RateLimitError", { enumerable: true, get: function () { return Error_1.RateLimitError; } });
61
64
  Object.defineProperty(exports, "InternalServerError", { enumerable: true, get: function () { return Error_1.InternalServerError; } });
62
65
  Object.defineProperty(exports, "SynapseErrorCode", { enumerable: true, get: function () { return Error_1.SynapseErrorCode; } });
63
- var types_2 = require("./internal/Error/types");
64
- Object.defineProperty(exports, "ErrorType", { enumerable: true, get: function () { return types_2.ErrorType; } });
66
+ var types_1 = require("./internal/Error/types");
67
+ Object.defineProperty(exports, "ErrorType", { enumerable: true, get: function () { return types_1.ErrorType; } });
65
68
  // Utilities
66
69
  var Error_2 = require("./utils/Error");
67
70
  Object.defineProperty(exports, "ErrorUtils", { enumerable: true, get: function () { return Error_2.ErrorUtils; } });
68
71
  __exportStar(require("./media/audio/types"), exports);
69
- var types_3 = require("./messages/types");
70
- Object.defineProperty(exports, "SYNAPSE_MESSAGE_TYPES", { enumerable: true, get: function () { return types_3.SYNAPSE_MESSAGE_TYPES; } });
72
+ var types_2 = require("./messages/types");
73
+ Object.defineProperty(exports, "SYNAPSE_MESSAGE_TYPES", { enumerable: true, get: function () { return types_2.SYNAPSE_MESSAGE_TYPES; } });
@@ -21,7 +21,7 @@ export declare class MessageManager {
21
21
  /**
22
22
  * send chat message through socket
23
23
  */
24
- sendSocketMessage({ message, files, audio, url, }: SocketChatRequestData): void;
24
+ sendSocketMessage({ message, files, audio, url, tool_declined, tool_id, initial_prompts }: SocketChatRequestData): void;
25
25
  /**
26
26
  * Handle incoming chat message
27
27
  */
@@ -1 +1 @@
1
- {"version":3,"file":"MessageManager.d.ts","sourceRoot":"","sources":["../../src/messages/MessageManager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEtD,OAAO,EAGL,KAAK,yBAAyB,EAC9B,KAAK,2BAA2B,EAChC,KAAK,0BAA0B,EAC/B,KAAK,gCAAgC,EACtC,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAEvE,OAAO,EAEL,KAAK,qBAAqB,EAI3B,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAS1D,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEzE,qBAAa,cAAc;IACzB,OAAO,CAAC,UAAU,CAA+B;IACjD,OAAO,CAAC,SAAS,CAAoC;IACrD,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,YAAY,CAA6B;gBAErC,UAAU,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,mBAAmB;IAIvE;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA+C/B;;OAEG;IACI,iBAAiB,CAAC,EACvB,OAAO,EACP,KAAK,EACL,KAAK,EACL,GAAG,GACJ,EAAE,qBAAqB,GAAG,IAAI;IA8C/B;;OAEG;IACI,+BAA+B,CACpC,OAAO,EAAE,yBAAyB,GACjC,IAAI;IAmFP;;OAEG;IACI,iCAAiC,CACtC,OAAO,EAAE,2BAA2B,GACnC,IAAI;IAsDA,gBAAgB,CAAC,OAAO,EAAE,oBAAoB,GAAG,IAAI;IAI5D;;OAEG;IACI,sCAAsC,CAC3C,QAAQ,EAAE,gCAAgC,GACzC,IAAI;IAOP;;OAEG;IACI,gCAAgC,CACrC,OAAO,EAAE,0BAA0B,GAClC,IAAI;IAoBP;;OAEG;IACI,qBAAqB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;IAWxD;;OAEG;IACI,qBAAqB,IAAI,IAAI;IA+CpC;;OAEG;IACU,cAAc,CAAC,EAC1B,QAAQ,EACR,OAAO,GACR,EAAE;QACD,QAAQ,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAC;QAC1C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;KAClC,GAAG,OAAO,CAAC,IAAI,CAAC;IAmCjB;;OAEG;IACI,sBAAsB,IAAI,IAAI;IAsBrC;;OAEG;IACI,qBAAqB,IAAI,IAAI;IAU7B,2BAA2B,IAAI,IAAI;IAM1C;;OAEG;IACI,yBAAyB,IAAI,IAAI;IAkBxC,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,WAAW;IAYnB,OAAO,CAAC,gBAAgB;IAYxB,OAAO,CAAC,gBAAgB;CAsCzB"}
1
+ {"version":3,"file":"MessageManager.d.ts","sourceRoot":"","sources":["../../src/messages/MessageManager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEtD,OAAO,EAGL,KAAK,yBAAyB,EAC9B,KAAK,2BAA2B,EAChC,KAAK,0BAA0B,EAC/B,KAAK,gCAAgC,EACtC,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAEvE,OAAO,EAEL,KAAK,qBAAqB,EAI3B,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAS1D,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEzE,qBAAa,cAAc;IACzB,OAAO,CAAC,UAAU,CAA+B;IACjD,OAAO,CAAC,SAAS,CAAoC;IACrD,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,YAAY,CAA6B;gBAErC,UAAU,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,mBAAmB;IAIvE;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA+C/B;;OAEG;IACI,iBAAiB,CAAC,EACvB,OAAO,EACP,KAAK,EACL,KAAK,EACL,GAAG,EACH,aAAa,EACb,OAAO,EACP,eAAe,EAChB,EAAE,qBAAqB,GAAG,IAAI;IAiD/B;;OAEG;IACI,+BAA+B,CACpC,OAAO,EAAE,yBAAyB,GACjC,IAAI;IA8EP;;OAEG;IACI,iCAAiC,CACtC,OAAO,EAAE,2BAA2B,GACnC,IAAI;IAoFA,gBAAgB,CAAC,OAAO,EAAE,oBAAoB,GAAG,IAAI;IAI5D;;OAEG;IACI,sCAAsC,CAC3C,QAAQ,EAAE,gCAAgC,GACzC,IAAI;IAOP;;OAEG;IACI,gCAAgC,CACrC,OAAO,EAAE,0BAA0B,GAClC,IAAI;IAoBP;;OAEG;IACI,qBAAqB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;IAWxD;;OAEG;IACI,qBAAqB,IAAI,IAAI;IAUpC;;OAEG;IACU,cAAc,CAAC,EAC1B,QAAQ,EACR,OAAO,GACR,EAAE;QACD,QAAQ,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAC;QAC1C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;KAClC,GAAG,OAAO,CAAC,IAAI,CAAC;IAmCjB;;OAEG;IACI,sBAAsB,IAAI,IAAI;IAsBrC;;OAEG;IACI,qBAAqB,IAAI,IAAI;IAU7B,2BAA2B,IAAI,IAAI;IAM1C;;OAEG;IACI,yBAAyB,IAAI,IAAI;IAkBxC,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,WAAW;IAYnB,OAAO,CAAC,gBAAgB;IAYxB,OAAO,CAAC,gBAAgB;CAsCzB"}
@@ -59,7 +59,7 @@ class MessageManager {
59
59
  /**
60
60
  * send chat message through socket
61
61
  */
62
- sendSocketMessage({ message, files, audio, url, }) {
62
+ sendSocketMessage({ message, files, audio, url, tool_declined, tool_id, initial_prompts }) {
63
63
  const connection = this.assertConnection("sendSocketChatMessage");
64
64
  let outMessage;
65
65
  if ((files && files.length > 0) || (url && url.trim() !== "")) {
@@ -77,6 +77,9 @@ class MessageManager {
77
77
  ts: Date.now(),
78
78
  data: {
79
79
  text: message,
80
+ ...(tool_declined && { tool_declined }),
81
+ ...(tool_id && { tool_id }),
82
+ ...(initial_prompts && { initial_prompts })
80
83
  },
81
84
  };
82
85
  }
@@ -141,17 +144,15 @@ class MessageManager {
141
144
  connection.emit(types_1.SYNAPSE_REALTIME_EVENTS.MESSAGE_CHUNK, messageData);
142
145
  }
143
146
  break;
144
- case Events_1.SOCKET_CONTENT_TYPES.PILL:
145
- case Events_1.SOCKET_CONTENT_TYPES.MULTI:
146
- // case SOCKET_CONTENT_TYPES.DOCTOR_CARD:
147
- if (message?.data?.tool_use_id && message._id) {
147
+ case Events_1.SOCKET_CONTENT_TYPES.TOOL_CALL:
148
+ if (message?.data?.tool_id && message._id) {
148
149
  const chatMessageData = {
149
- data: { ...message.data, type: message.ct },
150
+ data: { ...message.data },
150
151
  // type: message.ct,
151
152
  messageId: message._id,
152
153
  timestamp: message.ts,
153
154
  };
154
- connection.emit(types_1.SYNAPSE_REALTIME_EVENTS.TOOL_ESCALATION, chatMessageData);
155
+ connection.emit(types_1.SYNAPSE_REALTIME_EVENTS.TOOL_CALL, chatMessageData);
155
156
  // this.callbacks?.onElicitationTool?.(chatMessageData, message._id);
156
157
  }
157
158
  break;
@@ -168,14 +169,14 @@ class MessageManager {
168
169
  }
169
170
  break;
170
171
  default:
171
- const error = new Error_1.MessageError("Unsupported content type", {
172
- context: {
173
- stage: "handleIncomingSocketChatMessage",
174
- contentType: message.ct,
175
- },
176
- });
177
- this.emitError(error);
178
- throw error;
172
+ // const error = new MessageError("Unsupported content type", {
173
+ // context: {
174
+ // stage: "handleIncomingSocketChatMessage",
175
+ // contentType: message.ct,
176
+ // },
177
+ // });
178
+ // this.emitError(error);
179
+ // throw error;
179
180
  }
180
181
  }
181
182
  /**
@@ -218,8 +219,35 @@ class MessageManager {
218
219
  return;
219
220
  }
220
221
  break;
222
+ case Events_1.SOCKET_CONTENT_TYPES.TOOL_CALL:
223
+ if (message?.data?.tool_id && message._id) {
224
+ const streamMessageData = {
225
+ data: { ...message.data },
226
+ // type: message.ct,
227
+ messageId: message._id,
228
+ timestamp: message.ts,
229
+ };
230
+ connection.emit(types_1.SYNAPSE_REALTIME_EVENTS.TOOL_CALL, streamMessageData);
231
+ // this.callbacks?.onElicitationTool?.(chatMessageData, message._id);
232
+ return;
233
+ }
234
+ break;
235
+ case Events_1.SOCKET_CONTENT_TYPES.TOOL_START:
236
+ const toolStartMessage = {
237
+ data: message?.data,
238
+ messageId: message._id || Date.now().toString(),
239
+ };
240
+ connection.emit(types_1.SYNAPSE_REALTIME_EVENTS.TOOL_START, toolStartMessage);
241
+ break;
242
+ case Events_1.SOCKET_CONTENT_TYPES.TOOL_END:
243
+ const toolEndMessage = {
244
+ data: message?.data,
245
+ messageId: message._id || Date.now().toString(),
246
+ };
247
+ connection.emit(types_1.SYNAPSE_REALTIME_EVENTS.TOOL_END, toolEndMessage);
248
+ break;
221
249
  default:
222
- const error = new Error_1.MessageError("Unsupported content type", {
250
+ const error = new Error_1.MessageError(`Unsupported content type ${message?.ct}`, {
223
251
  context: {
224
252
  stage: "handleIncomingSocketStreamMessage",
225
253
  contentType: message.ct,
@@ -284,43 +312,6 @@ class MessageManager {
284
312
  };
285
313
  connection.sendMessage(pingMessage);
286
314
  }
287
- // /**
288
- // * start recording audio
289
- // */
290
- // private sendSocketStreamMessage({
291
- // data,
292
- // type,
293
- // messageId,
294
- // timestamp,
295
- // }: {
296
- // data: SOCKET_STREAM_DATA;
297
- // type: SOCKET_CONTENT_TYPES;
298
- // messageId?: string;
299
- // timestamp?: number;
300
- // }): void {
301
- // const connection = this.assertConnection("sendSocketStreamMessage");
302
- // switch (type) {
303
- // case SOCKET_CONTENT_TYPES.AUDIO:
304
- // const message: Outgoing.StreamSynapseToMatrixMessage = {
305
- // ev: SOCKET_EVENTS.STREAM,
306
- // ct: type,
307
- // _id: messageId || this.generateId(),
308
- // ts: timestamp || Date.now(),
309
- // data: {
310
- // audio: data.audio,
311
- // format: data.format,
312
- // },
313
- // };
314
- // connection.sendMessage(message);
315
- // break;
316
- // default:
317
- // const error = new MessageError("Unsupported content type", {
318
- // context: { stage: "sendSocketStreamMessage", contentType: type },
319
- // });
320
- // this.emitError(error);
321
- // throw error;
322
- // }
323
- // }
324
315
  /**
325
316
  * send audio message
326
317
  */
@@ -1,18 +1,18 @@
1
1
  /**
2
2
  * Types for message management
3
3
  */
4
- import { SOCKET_CONTENT_TYPES, type IncomingSocketMessage, type OutgoingSocketMessage, MULTI_SELECT_ADDITIONAL_OPTION } from "../events/Events";
4
+ import { SOCKET_CONTENT_TYPES, type IncomingSocketMessage, type OutgoingSocketMessage } from "../events/Events";
5
+ import { type ToolCallData } from "../events/types";
5
6
  import { type AudioMetaData } from "../media/audio/types";
6
7
  export declare const SYNAPSE_MESSAGE_TYPES: {
7
8
  readonly TEXT: "text";
8
9
  readonly AUDIO: "audio";
9
10
  readonly FILE: "file";
10
- readonly PILL: "pill";
11
- readonly MULTI: "multi";
12
- readonly DOCTOR_CARD: "doctor_card";
11
+ readonly TOOL_CALL: "tool";
13
12
  readonly TIPS: "tips";
14
13
  readonly INLINE_TEXT: "inline_text";
15
- readonly MOBILE_VERIFICATION: "mobile_verification";
14
+ readonly TOOL_START: "tool_start";
15
+ readonly TOOL_END: "tool_end";
16
16
  };
17
17
  export type ContentType = SOCKET_CONTENT_TYPES;
18
18
  export type IncomingMessage = IncomingSocketMessage;
@@ -23,10 +23,16 @@ export interface SocketChatRequestData {
23
23
  files?: File[];
24
24
  audio?: AudioMetaData;
25
25
  url?: string;
26
- tool_use_id?: string;
26
+ tool_id?: string;
27
+ tool_declined?: boolean;
27
28
  tool_use_params?: Record<string, unknown>;
28
29
  hidden?: boolean;
30
+ initial_prompts?: TInitalPrompt[];
29
31
  }
32
+ export type TInitalPrompt = {
33
+ role: string;
34
+ text: string;
35
+ };
30
36
  export declare const SYNAPSE_REALTIME_EVENTS: {
31
37
  readonly CONNECTED: "connected";
32
38
  readonly DISCONNECTED: "disconnected";
@@ -35,8 +41,10 @@ export declare const SYNAPSE_REALTIME_EVENTS: {
35
41
  readonly TIPS_MESSAGE: "tips_message";
36
42
  readonly END_OF_STREAM: "end_of_stream";
37
43
  readonly ERROR: "error";
38
- readonly TOOL_ESCALATION: "tool_escalation";
44
+ readonly TOOL_CALL: "tool_call";
39
45
  readonly INLINE_TEXT: "inline_text";
46
+ readonly TOOL_START: "tool_start";
47
+ readonly TOOL_END: "tool_end";
40
48
  };
41
49
  export type SYNAPSE_REALTIME_EVENTS = (typeof SYNAPSE_REALTIME_EVENTS)[keyof typeof SYNAPSE_REALTIME_EVENTS];
42
50
  export declare const SYNAPSE_REALTIME_ERROR_CODES: {
@@ -57,18 +65,29 @@ export declare const SYNAPSE_REALTIME_RESERVED_EVENTS: {
57
65
  export type SYNAPSE_REALTIME_RESERVED_EVENTS = (typeof SYNAPSE_REALTIME_RESERVED_EVENTS)[keyof typeof SYNAPSE_REALTIME_RESERVED_EVENTS];
58
66
  export type SOCKET_STREAM_DATA = AudioMetaData;
59
67
  export type SynapseRealTimeEventData = {
60
- data: ToolEscalationData;
68
+ data: {
69
+ text?: string;
70
+ tips?: string[];
71
+ name?: string;
72
+ } & Partial<ToolCallData>;
61
73
  messageId?: string;
62
74
  timestamp?: number;
63
75
  };
64
- export type SynapseContentTypes = SOCKET_CONTENT_TYPES;
65
- export type ToolEscalationData = {
66
- type?: ContentType;
67
- choices?: string[];
68
- callbacks?: Record<string, boolean>;
69
- additional_option?: typeof MULTI_SELECT_ADDITIONAL_OPTION;
70
- text?: string;
71
- tips?: string[];
72
- [key: string]: unknown;
76
+ export type TAvailability = {
77
+ [hospital_id: string]: {
78
+ selected_date?: string;
79
+ slots_details?: TSlotDetail[];
80
+ };
81
+ };
82
+ export type TSlotDetail = {
83
+ date: string;
84
+ day?: string;
85
+ slots: string[];
86
+ selected_slot?: string;
73
87
  };
88
+ export type TDoctorDetails = {
89
+ doctor_ids?: string[];
90
+ availability?: TAvailability;
91
+ };
92
+ export type SynapseContentTypes = SOCKET_CONTENT_TYPES;
74
93
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/messages/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,oBAAoB,EACpB,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAC1B,8BAA8B,EAC/B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,eAAO,MAAM,qBAAqB;;;;;;;;;;CAAuB,CAAC;AAE1D,MAAM,MAAM,WAAW,GAAG,oBAAoB,CAAC;AAE/C,MAAM,MAAM,eAAe,GAAG,qBAAqB,CAAC;AACpD,MAAM,MAAM,eAAe,GAAG,qBAAqB,CAAC;AAEpD,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;IACf,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAGD,eAAO,MAAM,uBAAuB;;;;;;;;;;CAU1B,CAAC;AAEX,MAAM,MAAM,uBAAuB,GACjC,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,OAAO,uBAAuB,CAAC,CAAC;AAEzE,eAAO,MAAM,4BAA4B;;;;;;;;;;CAU/B,CAAC;AAEX,MAAM,MAAM,4BAA4B,GACtC,CAAC,OAAO,4BAA4B,CAAC,CAAC,MAAM,OAAO,4BAA4B,CAAC,CAAC;AAEnF,eAAO,MAAM,gCAAgC;;CAEnC,CAAC;AAEX,MAAM,MAAM,gCAAgC,GAC1C,CAAC,OAAO,gCAAgC,CAAC,CAAC,MAAM,OAAO,gCAAgC,CAAC,CAAC;AAG3F,MAAM,MAAM,kBAAkB,GAAG,aAAa,CAAC;AAE/C,MAAM,MAAM,wBAAwB,GAAG;IACrC,IAAI,EAAE,kBAAkB,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,oBAAoB,CAAC;AACvD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,iBAAiB,CAAC,EAAE,OAAO,8BAA8B,CAAC;IAC1D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/messages/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,oBAAoB,EACpB,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAC3B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,eAAO,MAAM,qBAAqB;;;;;;;;;CAAuB,CAAC;AAE1D,MAAM,MAAM,WAAW,GAAG,oBAAoB,CAAC;AAE/C,MAAM,MAAM,eAAe,GAAG,qBAAqB,CAAC;AACpD,MAAM,MAAM,eAAe,GAAG,qBAAqB,CAAC;AAEpD,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;IACf,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,eAAe,CAAC,EAAE,aAAa,EAAE,CAAA;CAClC;AACD,MAAM,MAAM,aAAa,GAAE;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAC,CAAA;AAGvD,eAAO,MAAM,uBAAuB;;;;;;;;;;;;CAY1B,CAAC;AAEX,MAAM,MAAM,uBAAuB,GACjC,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,OAAO,uBAAuB,CAAC,CAAC;AAEzE,eAAO,MAAM,4BAA4B;;;;;;;;;;CAU/B,CAAC;AAEX,MAAM,MAAM,4BAA4B,GACtC,CAAC,OAAO,4BAA4B,CAAC,CAAC,MAAM,OAAO,4BAA4B,CAAC,CAAC;AAEnF,eAAO,MAAM,gCAAgC;;CAEnC,CAAC;AAEX,MAAM,MAAM,gCAAgC,GAC1C,CAAC,OAAO,gCAAgC,CAAC,CAAC,MAAM,OAAO,gCAAgC,CAAC,CAAC;AAG3F,MAAM,MAAM,kBAAkB,GAAG,aAAa,CAAC;AAE/C,MAAM,MAAM,wBAAwB,GAAG;IACrC,IAAI,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAChF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,CAAC,WAAW,EAAE,MAAM,GAAG;QACrB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,aAAa,CAAC,EAAE,WAAW,EAAE,CAAC;KAC/B,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,YAAY,CAAC,EAAE,aAAa,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,oBAAoB,CAAC"}
@@ -15,8 +15,10 @@ exports.SYNAPSE_REALTIME_EVENTS = {
15
15
  TIPS_MESSAGE: "tips_message",
16
16
  END_OF_STREAM: "end_of_stream",
17
17
  ERROR: "error",
18
- TOOL_ESCALATION: "tool_escalation",
18
+ TOOL_CALL: "tool_call",
19
19
  INLINE_TEXT: "inline_text",
20
+ TOOL_START: "tool_start",
21
+ TOOL_END: "tool_end"
20
22
  };
21
23
  exports.SYNAPSE_REALTIME_ERROR_CODES = {
22
24
  SESSION_INACTIVE: "session_not_found",
@@ -32,3 +34,14 @@ exports.SYNAPSE_REALTIME_ERROR_CODES = {
32
34
  exports.SYNAPSE_REALTIME_RESERVED_EVENTS = {
33
35
  SESSION_EXPIRED: "session_expired", //to be used for session expiry
34
36
  };
37
+ // export type ToolEscalationData = {
38
+ // type?: ContentType;
39
+ // choices?: string[];
40
+ // callbacks?: Record<string, boolean>;
41
+ // doctor_details?: TDoctorDetails;
42
+ // additional_option?: typeof MULTI_SELECT_ADDITIONAL_OPTION;
43
+ // text?: string;
44
+ // tips?: string[];
45
+ // [key: string]: unknown;
46
+ // };
47
+ //TODO: tips will never come in tool escalation
@@ -3,10 +3,12 @@
3
3
  */
4
4
  import { type ResourceConfig } from "./types";
5
5
  import { type SessionResponse, type USER_FEEDBACK } from "./session/types";
6
+ import type { ToolCallResponse } from "./toolCall/types";
6
7
  export declare class ResourceManager {
7
8
  private resourceConfig;
8
9
  private httpClient;
9
10
  private session;
11
+ private toolCall;
10
12
  constructor(config: ResourceConfig);
11
13
  /**
12
14
  * Fetch agent configuration and create session
@@ -30,5 +32,10 @@ export declare class ResourceManager {
30
32
  * PATCH /med-assist/session/:sessionId/:messageId
31
33
  */
32
34
  sendFeedback(sessionId: string, messageId: string, feedback: USER_FEEDBACK, feedbackReason?: string): Promise<void>;
35
+ /**
36
+ * Call a tool
37
+ * POST /med-assist/api-call-tool
38
+ */
39
+ callTool<R extends ToolCallResponse = ToolCallResponse>(sessionId: string, toolName: string, toolParams?: Record<string, unknown>): Promise<R>;
33
40
  }
34
41
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/resources/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,SAAS,CAAC;AAG9C,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAG3E,qBAAa,eAAe;IAC1B,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,OAAO,CAAU;gBAEb,MAAM,EAAE,cAAc;IAgBlC;;OAEG;IACU,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAwBpE;;;OAGG;IACU,eAAe,CAC1B,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC;IAgDjD;;;OAGG;IACU,cAAc,CACzB,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,eAAe,CAAC;IAI3B;;;OAGG;IACU,YAAY,CACvB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,aAAa,EACvB,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,IAAI,CAAC;CAGjB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/resources/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,SAAS,CAAC;AAG9C,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAG3E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,qBAAa,eAAe;IAC1B,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,QAAQ,CAAyB;gBAE7B,MAAM,EAAE,cAAc;IAgBlC;;OAEG;IACU,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAwBpE;;;OAGG;IACU,eAAe,CAC1B,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC;IAgDjD;;;OAGG;IACU,cAAc,CACzB,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,eAAe,CAAC;IAI3B;;;OAGG;IACU,YAAY,CACvB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,aAAa,EACvB,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,IAAI,CAAC;IAShB;;;OAGG;IACU,QAAQ,CAAC,CAAC,SAAS,gBAAgB,GAAG,gBAAgB,EACjE,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACnC,OAAO,CAAC,CAAC,CAAC;CAMd"}
@@ -7,10 +7,12 @@ exports.ResourceManager = void 0;
7
7
  const HttpClient_1 = require("../internal/Api/HttpClient");
8
8
  const Session_1 = require("./session/Session");
9
9
  const Error_1 = require("../internal/Error/Error");
10
+ const ToolCall_1 = require("./toolCall/ToolCall");
10
11
  class ResourceManager {
11
12
  resourceConfig;
12
13
  httpClient;
13
14
  session;
15
+ toolCall = null;
14
16
  constructor(config) {
15
17
  this.resourceConfig = config;
16
18
  // Set up HTTP client with agentId header for all requests
@@ -104,5 +106,15 @@ class ResourceManager {
104
106
  async sendFeedback(sessionId, messageId, feedback, feedbackReason) {
105
107
  return await this.session.feedback(sessionId, messageId, feedback, feedbackReason);
106
108
  }
109
+ /**
110
+ * Call a tool
111
+ * POST /med-assist/api-call-tool
112
+ */
113
+ async callTool(sessionId, toolName, toolParams) {
114
+ if (!this.toolCall) {
115
+ this.toolCall = new ToolCall_1.ToolCall(this.httpClient);
116
+ }
117
+ return await this.toolCall.callTool(sessionId, toolName, toolParams);
118
+ }
107
119
  }
108
120
  exports.ResourceManager = ResourceManager;
@@ -1,17 +1,23 @@
1
+ import type { ResourceResponse } from "../types";
1
2
  export declare const USER_FEEDBACK: {
2
3
  readonly LIKE: "LIKE";
3
4
  readonly DISLIKE: "DISLIKE";
4
5
  readonly NONE: "NONE";
5
6
  };
6
7
  export type USER_FEEDBACK = (typeof USER_FEEDBACK)[keyof typeof USER_FEEDBACK];
7
- export interface SessionResponse {
8
+ export type TInitialMessage = {
9
+ text?: string;
10
+ suggestions: {
11
+ label?: string;
12
+ value?: string;
13
+ response?: string;
14
+ }[];
15
+ };
16
+ export interface SessionResponse extends ResourceResponse {
8
17
  session_id: string;
9
18
  session_token?: string;
10
19
  session_validity_s?: string;
11
20
  msg?: string;
12
- error?: {
13
- code: string;
14
- msg: string;
15
- };
21
+ initial_message?: TInitialMessage;
16
22
  }
17
23
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/resources/session/types.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa;;;;CAIhB,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC;AAE/E,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,GAAG,EAAE,MAAM,CAAC;KACb,CAAC;CACH"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/resources/session/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAEjD,eAAO,MAAM,aAAa;;;;CAIhB,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC;AAE/E,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CACtE,CAAC;AAEF,MAAM,WAAW,eAAgB,SAAQ,gBAAgB;IACvD,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC"}
@@ -0,0 +1,8 @@
1
+ import { BaseResource } from "../../internal/Api/BaseResource";
2
+ import { type ToolCallResponse } from "./types";
3
+ export declare class ToolCall extends BaseResource {
4
+ private basePath;
5
+ callTool<R extends ToolCallResponse>(sessionId: string, toolName: string, toolParams?: Record<string, unknown>): Promise<R>;
6
+ private requestLocation;
7
+ }
8
+ //# sourceMappingURL=ToolCall.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToolCall.d.ts","sourceRoot":"","sources":["../../../src/resources/toolCall/ToolCall.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAGL,KAAK,gBAAgB,EACtB,MAAM,SAAS,CAAC;AAEjB,qBAAa,QAAS,SAAQ,YAAY;IACxC,OAAO,CAAC,QAAQ,CAA+B;IAElC,QAAQ,CAAC,CAAC,SAAS,gBAAgB,EAC9C,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACnC,OAAO,CAAC,CAAC,CAAC;YAYC,eAAe;CA0C9B"}
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ToolCall = void 0;
4
+ const BaseResource_1 = require("../../internal/Api/BaseResource");
5
+ const types_1 = require("./types");
6
+ class ToolCall extends BaseResource_1.BaseResource {
7
+ basePath = "/med-assist/api-call-tool";
8
+ async callTool(sessionId, toolName, toolParams) {
9
+ if (toolName === types_1.SYNAPSE_TOOL_NAME.GET_LOCATION) {
10
+ return this.requestLocation();
11
+ }
12
+ return this.post(`${this.basePath}?session_id=${sessionId}&tool_name=${toolName}`, {
13
+ tool_params: toolParams,
14
+ });
15
+ }
16
+ async requestLocation() {
17
+ return new Promise((resolve, reject) => {
18
+ if (typeof navigator === "undefined" || !navigator.geolocation) {
19
+ reject({
20
+ code: 500,
21
+ message: "Geolocation is not supported by this browser",
22
+ status: 500,
23
+ type: "GEOLOCATION_ERROR",
24
+ originalError: new Error("Geolocation is not supported by this browser"),
25
+ });
26
+ return;
27
+ }
28
+ navigator.geolocation.getCurrentPosition((pos) => {
29
+ resolve({
30
+ latitude: pos.coords.latitude,
31
+ longitude: pos.coords.longitude,
32
+ accuracy: pos.coords?.accuracy ?? undefined,
33
+ });
34
+ }, (error) => {
35
+ //err.code: 1 permission denied, 2 position unavailable, 3 timeout
36
+ // reject(new Error(`Geolocation error: ${error.code}`));
37
+ reject({
38
+ code: error.code,
39
+ message: error.message,
40
+ status: 500,
41
+ type: "GEOLOCATION_ERROR",
42
+ originalError: error,
43
+ });
44
+ return;
45
+ }, {
46
+ timeout: 10000,
47
+ maximumAge: 0,
48
+ enableHighAccuracy: true,
49
+ });
50
+ });
51
+ }
52
+ }
53
+ exports.ToolCall = ToolCall;
@@ -0,0 +1,80 @@
1
+ import { MULTI_SELECT_ADDITIONAL_OPTION } from "../../events/Events";
2
+ import { type TDoctorDetails } from "../../messages/types";
3
+ import type { ResourceResponse } from "../types";
4
+ export type TDoctorToolResponse = ResourceResponse & {
5
+ name: string;
6
+ specialty: string;
7
+ hospitals: THospital[];
8
+ timings?: string;
9
+ experience?: string;
10
+ profile_link?: string;
11
+ profile_pic?: string;
12
+ languages?: string;
13
+ doctor_id: string;
14
+ };
15
+ export type THospital = {
16
+ name: string;
17
+ city?: string;
18
+ state?: string;
19
+ hospital_id: string;
20
+ region_id?: string;
21
+ };
22
+ export type TAvailableSlotsToolResponse = ResourceResponse & {
23
+ slots: string[];
24
+ };
25
+ export type TAvailabilityDatesToolResponse = ResourceResponse & {
26
+ available_dates: string[];
27
+ };
28
+ export declare enum SYNAPSE_TOOL_NAME {
29
+ MOBILE_VERIFICATION = "mobile_verification",
30
+ AVAILABILITY_DATES = "availability_dates",
31
+ AVAILABILITY_SLOTS = "availability_slots",
32
+ DOCTOR_DETAILS = "doctor_details",
33
+ GET_LOCATION = "get_location"
34
+ }
35
+ export declare const SYNAPSE_COMPONENTS: {
36
+ readonly MOBILE_VERIFICATION: "mobile_verification";
37
+ readonly PILL: "pills";
38
+ readonly MULTI: "multi";
39
+ readonly DOCTOR_CARD: "doctor_card";
40
+ };
41
+ export type SYNAPSE_COMPONENT_TYPES = (typeof SYNAPSE_COMPONENTS)[keyof typeof SYNAPSE_COMPONENTS];
42
+ export type SYNAPSE_TOOL_TYPES = {
43
+ ELICITATION: "elicitation";
44
+ };
45
+ export type ToolDetails = {
46
+ input: {
47
+ options: {
48
+ id: string;
49
+ label: string;
50
+ value: string;
51
+ }[];
52
+ mobile_number?: string;
53
+ doctor_details?: TDoctorDetails;
54
+ additional_option?: typeof MULTI_SELECT_ADDITIONAL_OPTION;
55
+ text: string;
56
+ };
57
+ component: SYNAPSE_COMPONENT_TYPES;
58
+ _meta: Record<string, unknown> & {
59
+ callbacks?: ToolCallbacks;
60
+ };
61
+ };
62
+ export type ToolCallbacks = {
63
+ [key in SYNAPSE_TOOL_CALLBACK_NAME]: {
64
+ tool_name: SYNAPSE_TOOL_NAME;
65
+ input_schema: Record<string, unknown>;
66
+ };
67
+ };
68
+ export declare enum SYNAPSE_TOOL_CALLBACK_NAME {
69
+ AVAILABILITY_DATES = "tool_callback_availability_dates",
70
+ AVAILABILITY_SLOTS = "tool_callback_availability_slots",
71
+ MOBILE_VERIFICATION = "tool_callback_mobile_verification",
72
+ DOCTOR_DETAILS = "tool_callback_doctor_details"
73
+ }
74
+ export type TGetLocationToolResponse = ResourceResponse & {
75
+ latitude: number;
76
+ longitude: number;
77
+ accuracy?: number;
78
+ };
79
+ export type ToolCallResponse = TDoctorToolResponse | TAvailableSlotsToolResponse | TAvailabilityDatesToolResponse | TGetLocationToolResponse;
80
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/resources/toolCall/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,8BAA8B,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAEjD,MAAM,MAAM,mBAAmB,GAAG,gBAAgB,GAAG;IACnD,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,SAAS,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG,gBAAgB,GAAG;IAC3D,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG,gBAAgB,GAAG;IAC9D,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B,CAAC;AAEF,oBAAY,iBAAiB;IAC3B,mBAAmB,wBAAwB;IAC3C,kBAAkB,uBAAuB;IACzC,kBAAkB,uBAAuB;IACzC,cAAc,mBAAmB;IACjC,YAAY,iBAAiB;CAC9B;AAED,eAAO,MAAM,kBAAkB;;;;;CAKrB,CAAC;AAEX,MAAM,MAAM,uBAAuB,GACjC,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,OAAO,kBAAkB,CAAC,CAAC;AAE/D,MAAM,MAAM,kBAAkB,GAAG;IAC/B,WAAW,EAAE,aAAa,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE;QACL,OAAO,EAAE;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,EAAE,CAAC;QACxD,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,cAAc,CAAC,EAAE,cAAc,CAAC;QAChC,iBAAiB,CAAC,EAAE,OAAO,8BAA8B,CAAC;QAC1D,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,SAAS,EAAE,uBAAuB,CAAC;IACnC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;QAE/B,SAAS,CAAC,EAAE,aAAa,CAAC;KAC3B,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;KACzB,GAAG,IAAI,0BAA0B,GAAG;QACnC,SAAS,EAAE,iBAAiB,CAAC;QAC7B,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACvC;CACF,CAAC;AAEF,oBAAY,0BAA0B;IACpC,kBAAkB,qCAAqC;IACvD,kBAAkB,qCAAqC;IACvD,mBAAmB,sCAAsC;IACzD,cAAc,iCAAiC;CAChD;AAED,MAAM,MAAM,wBAAwB,GAAG,gBAAgB,GAAG;IACxD,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,mBAAmB,GAAG,2BAA2B,GAAG,8BAA8B,GAAG,wBAAwB,CAAC"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SYNAPSE_TOOL_CALLBACK_NAME = exports.SYNAPSE_COMPONENTS = exports.SYNAPSE_TOOL_NAME = void 0;
4
+ var SYNAPSE_TOOL_NAME;
5
+ (function (SYNAPSE_TOOL_NAME) {
6
+ SYNAPSE_TOOL_NAME["MOBILE_VERIFICATION"] = "mobile_verification";
7
+ SYNAPSE_TOOL_NAME["AVAILABILITY_DATES"] = "availability_dates";
8
+ SYNAPSE_TOOL_NAME["AVAILABILITY_SLOTS"] = "availability_slots";
9
+ SYNAPSE_TOOL_NAME["DOCTOR_DETAILS"] = "doctor_details";
10
+ SYNAPSE_TOOL_NAME["GET_LOCATION"] = "get_location";
11
+ })(SYNAPSE_TOOL_NAME || (exports.SYNAPSE_TOOL_NAME = SYNAPSE_TOOL_NAME = {}));
12
+ exports.SYNAPSE_COMPONENTS = {
13
+ MOBILE_VERIFICATION: "mobile_verification",
14
+ PILL: "pills",
15
+ MULTI: "multi",
16
+ DOCTOR_CARD: "doctor_card",
17
+ };
18
+ var SYNAPSE_TOOL_CALLBACK_NAME;
19
+ (function (SYNAPSE_TOOL_CALLBACK_NAME) {
20
+ SYNAPSE_TOOL_CALLBACK_NAME["AVAILABILITY_DATES"] = "tool_callback_availability_dates";
21
+ SYNAPSE_TOOL_CALLBACK_NAME["AVAILABILITY_SLOTS"] = "tool_callback_availability_slots";
22
+ SYNAPSE_TOOL_CALLBACK_NAME["MOBILE_VERIFICATION"] = "tool_callback_mobile_verification";
23
+ SYNAPSE_TOOL_CALLBACK_NAME["DOCTOR_DETAILS"] = "tool_callback_doctor_details";
24
+ })(SYNAPSE_TOOL_CALLBACK_NAME || (exports.SYNAPSE_TOOL_CALLBACK_NAME = SYNAPSE_TOOL_CALLBACK_NAME = {}));
@@ -19,4 +19,10 @@ export interface ResourceConfig {
19
19
  serverUrl: string;
20
20
  authorization?: string;
21
21
  }
22
+ export type ResourceResponse = {
23
+ err?: {
24
+ code: string;
25
+ msg: string;
26
+ };
27
+ };
22
28
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/resources/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE;QACN,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/resources/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE;QACN,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,GAAG,CAAC,EAAE;QACJ,IAAI,EAAE,MAAM,CAAC;QACb,GAAG,EAAE,MAAM,CAAC;KACb,CAAA;CACF,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eka-care/medassist-core",
3
- "version": "1.0.5",
3
+ "version": "1.0.7",
4
4
  "description": "TypeScript SDK for real-time medical chatbot experiences with session management, WebSocket connectivity, and media handling",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",