@talkpilot/core-db 1.0.19 → 1.0.21
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.
- package/README.md +25 -20
- package/dist/municipal/tickets/tickets.types.d.ts +3 -0
- package/dist/municipal/tickets/tickets.types.d.ts.map +1 -1
- package/dist/talkpilot/clientsConfig/clientsConfig.types.d.ts +1 -0
- package/dist/talkpilot/clientsConfig/clientsConfig.types.d.ts.map +1 -1
- package/dist/talkpilot/flows/flows.schema.d.ts +40 -10
- package/dist/talkpilot/flows/flows.schema.d.ts.map +1 -1
- package/dist/talkpilot/flows/flows.schema.js +22 -4
- package/dist/talkpilot/flows/flows.schema.js.map +1 -1
- package/dist/talkpilot/flows/flows.types.d.ts +16 -3
- package/dist/talkpilot/flows/flows.types.d.ts.map +1 -1
- package/dist/test-utils/factories/municipal/tickets.d.ts.map +1 -1
- package/dist/test-utils/factories/municipal/tickets.js +6 -0
- package/dist/test-utils/factories/municipal/tickets.js.map +1 -1
- package/package.json +1 -1
- package/src/municipal/tickets/tickets.types.ts +3 -0
- package/src/talkpilot/clientsConfig/clientsConfig.types.ts +1 -0
- package/src/talkpilot/flows/__tests__/flows.schema.spec.ts +19 -11
- package/src/talkpilot/flows/flows.schema.ts +22 -4
- package/src/talkpilot/flows/flows.types.ts +18 -3
- package/src/talkpilot/phone_numbers/__tests__/phone_numbers.spec.ts +20 -2
- package/src/talkpilot/sessions/__tests__/sessions.spec.ts +18 -1
- package/src/test-utils/factories/municipal/tickets.ts +6 -0
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# @talkpilot/core-db
|
|
2
2
|
|
|
3
|
-
[
|
|
3
|
+
[NPM Version](https://www.npmjs.com/package/@talkpilot/core-db)
|
|
4
4
|
|
|
5
5
|
A TypeScript-based core database management package designed to provide centralized database connections, ORM integrations, and client utilities for other projects. This package manages connections to both **TalkPilot** and **Municipal** MongoDB databases.
|
|
6
6
|
|
|
@@ -67,12 +67,16 @@ async function getSummary() {
|
|
|
67
67
|
The package exports two main sets of tools:
|
|
68
68
|
|
|
69
69
|
### TalkPilot Domain
|
|
70
|
+
|
|
70
71
|
Includes access to:
|
|
72
|
+
|
|
71
73
|
- `agents`, `calls`, `clients`, `flows`, `leads`, `phone_numbers`, `plans`, `results`, `sessions`, `subscriptions`, etc.
|
|
72
74
|
- Exported as root level functions or via `mongodbClient`.
|
|
73
75
|
|
|
74
76
|
### Municipal Domain
|
|
77
|
+
|
|
75
78
|
Includes access to:
|
|
79
|
+
|
|
76
80
|
- `cities`, `streets`, `departmentsSubjects`, `tickets`.
|
|
77
81
|
- Functions are prefixed where necessary or accessible via `getMunicipalDataDb`.
|
|
78
82
|
|
|
@@ -88,16 +92,15 @@ The clients will automatically attempt to use the following environment variable
|
|
|
88
92
|
### Setup
|
|
89
93
|
|
|
90
94
|
1. Clone the repository and install dependencies:
|
|
91
|
-
|
|
95
|
+
```bash
|
|
92
96
|
git clone https://github.com/talkpilot/core-db.git
|
|
93
97
|
cd core-db
|
|
94
98
|
npm install
|
|
95
|
-
|
|
96
|
-
|
|
99
|
+
```
|
|
97
100
|
2. Build the project:
|
|
98
|
-
|
|
101
|
+
```bash
|
|
99
102
|
npm run build
|
|
100
|
-
|
|
103
|
+
```
|
|
101
104
|
|
|
102
105
|
This will generate the `dist/` directory with the compiled JavaScript and type definitions.
|
|
103
106
|
|
|
@@ -106,30 +109,24 @@ This will generate the `dist/` directory with the compiled JavaScript and type d
|
|
|
106
109
|
To publish a new version of the package:
|
|
107
110
|
|
|
108
111
|
1. **Test your changes**:
|
|
109
|
-
|
|
112
|
+
```bash
|
|
110
113
|
npm test
|
|
111
|
-
|
|
112
|
-
|
|
114
|
+
```
|
|
113
115
|
2. **Update the version**:
|
|
114
|
-
|
|
116
|
+
```bash
|
|
115
117
|
# Bumps patch version (0.1.0 -> 0.1.1)
|
|
116
118
|
npm version patch
|
|
117
119
|
# Or for minor changes (0.1.0 -> 0.2.0)
|
|
118
120
|
# npm version minor
|
|
119
121
|
# Or for major changes (0.1.0 -> 1.0.0)
|
|
120
122
|
# npm version major
|
|
121
|
-
|
|
122
|
-
|
|
123
|
+
```
|
|
123
124
|
3. **Publish to npm**:
|
|
124
|
-
|
|
125
|
-
```bash
|
|
126
|
-
npm publish
|
|
127
|
-
```
|
|
128
|
-
|
|
125
|
+
Ensure you have the shared team token in your `~/.npmrc` (see [Development Guide](./DEVELOPMENT.md#team-access--authentication)).
|
|
129
126
|
4. **Update in other repos**:
|
|
130
|
-
|
|
127
|
+
```bash
|
|
131
128
|
npm update @talkpilot/core-db
|
|
132
|
-
|
|
129
|
+
```
|
|
133
130
|
|
|
134
131
|
## License
|
|
135
132
|
|
|
@@ -142,5 +139,13 @@ MIT
|
|
|
142
139
|
## Release Notes
|
|
143
140
|
|
|
144
141
|
### 1.0.16
|
|
142
|
+
|
|
145
143
|
- Fixed critical issues present in version 1.0.15.
|
|
146
|
-
- **Warning**: Version 1.0.15 is bugged and should not be used. Please use at least version 1.0.16.
|
|
144
|
+
- **Warning**: Version 1.0.15 is bugged and should not be used. Please use at least version 1.0.16.
|
|
145
|
+
|
|
146
|
+
### 1.0.20
|
|
147
|
+
|
|
148
|
+
- Added to Moked106Config this param: withNeedAttentionCalls
|
|
149
|
+
- withNeedAttentionCalls?: boolean
|
|
150
|
+
|
|
151
|
+
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tickets.types.d.ts","sourceRoot":"","sources":["../../../src/municipal/tickets/tickets.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAE3C,OAAO,EAAC,QAAQ,EAAC,MAAM,gBAAgB,CAAC;AAExC,MAAM,MAAM,MAAM,GAAG;IACnB,GAAG,EAAE,QAAQ,CAAC;IACd,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,QAAQ,CAAC;IACnB,kBAAkB,EAAE;QAElB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAEtC,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"tickets.types.d.ts","sourceRoot":"","sources":["../../../src/municipal/tickets/tickets.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAE3C,OAAO,EAAC,QAAQ,EAAC,MAAM,gBAAgB,CAAC;AAExC,MAAM,MAAM,MAAM,GAAG;IACnB,GAAG,EAAE,QAAQ,CAAC;IACd,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,QAAQ,CAAC;IACnB,kBAAkB,EAAE;QAElB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAEtC,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;AAEvC,0CAA0C;AAC1C,MAAM,MAAM,gBAAgB,GAAG;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clientsConfig.types.d.ts","sourceRoot":"","sources":["../../../src/talkpilot/clientsConfig/clientsConfig.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEjC;;GAEG;AACH,MAAM,MAAM,6BAA6B,GAAG;IAC1C,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACnD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CAC7B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,2BAA2B,CAAC,EAAE,6BAA6B,CAAC;IAC5D,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,mBAAmB,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"clientsConfig.types.d.ts","sourceRoot":"","sources":["../../../src/talkpilot/clientsConfig/clientsConfig.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEjC;;GAEG;AACH,MAAM,MAAM,6BAA6B,GAAG;IAC1C,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACnD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CAC7B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,2BAA2B,CAAC,EAAE,6BAA6B,CAAC;IAC5D,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG;IACrB,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,QAAQ,GAAG,QAAQ,IAAI;IACxD,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,CAAC,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,QAAQ,GAAG,QAAQ,IAAI,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC"}
|
|
@@ -23,17 +23,47 @@ export declare const flowMongoSchema: {
|
|
|
23
23
|
readonly conversationSettings: {
|
|
24
24
|
readonly bsonType: readonly ["object", "null"];
|
|
25
25
|
readonly properties: {
|
|
26
|
-
readonly
|
|
27
|
-
readonly bsonType: "
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
26
|
+
readonly interruptions: {
|
|
27
|
+
readonly bsonType: readonly ["object", "null"];
|
|
28
|
+
readonly properties: {
|
|
29
|
+
readonly enableInterruptionDetection: {
|
|
30
|
+
readonly bsonType: "bool";
|
|
31
|
+
};
|
|
32
|
+
readonly interruptionWindowSeconds: {
|
|
33
|
+
readonly bsonType: "number";
|
|
34
|
+
};
|
|
35
|
+
readonly interruptionThresholdSeconds: {
|
|
36
|
+
readonly bsonType: "number";
|
|
37
|
+
};
|
|
38
|
+
readonly interruptionInstruction: {
|
|
39
|
+
readonly bsonType: "string";
|
|
40
|
+
};
|
|
41
|
+
};
|
|
42
|
+
readonly additionalProperties: false;
|
|
34
43
|
};
|
|
35
|
-
readonly
|
|
36
|
-
readonly bsonType: "
|
|
44
|
+
readonly silence: {
|
|
45
|
+
readonly bsonType: readonly ["object", "null"];
|
|
46
|
+
readonly properties: {
|
|
47
|
+
readonly enableSilenceDetection: {
|
|
48
|
+
readonly bsonType: "bool";
|
|
49
|
+
};
|
|
50
|
+
readonly firstWarningSilenceSeconds: {
|
|
51
|
+
readonly bsonType: "number";
|
|
52
|
+
};
|
|
53
|
+
readonly firstWarningInstruction: {
|
|
54
|
+
readonly bsonType: "string";
|
|
55
|
+
};
|
|
56
|
+
readonly secondWarningSilenceSeconds: {
|
|
57
|
+
readonly bsonType: "number";
|
|
58
|
+
};
|
|
59
|
+
readonly secondWarningInstruction: {
|
|
60
|
+
readonly bsonType: "string";
|
|
61
|
+
};
|
|
62
|
+
readonly disconnectSilenceSeconds: {
|
|
63
|
+
readonly bsonType: "number";
|
|
64
|
+
};
|
|
65
|
+
};
|
|
66
|
+
readonly additionalProperties: false;
|
|
37
67
|
};
|
|
38
68
|
};
|
|
39
69
|
readonly additionalProperties: false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flows.schema.d.ts","sourceRoot":"","sources":["../../../src/talkpilot/flows/flows.schema.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe
|
|
1
|
+
{"version":3,"file":"flows.schema.d.ts","sourceRoot":"","sources":["../../../src/talkpilot/flows/flows.schema.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqHlB,CAAC"}
|
|
@@ -14,10 +14,28 @@ exports.flowMongoSchema = {
|
|
|
14
14
|
conversationSettings: {
|
|
15
15
|
bsonType: ['object', 'null'],
|
|
16
16
|
properties: {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
17
|
+
interruptions: {
|
|
18
|
+
bsonType: ['object', 'null'],
|
|
19
|
+
properties: {
|
|
20
|
+
enableInterruptionDetection: { bsonType: 'bool' },
|
|
21
|
+
interruptionWindowSeconds: { bsonType: 'number' },
|
|
22
|
+
interruptionThresholdSeconds: { bsonType: 'number' },
|
|
23
|
+
interruptionInstruction: { bsonType: 'string' },
|
|
24
|
+
},
|
|
25
|
+
additionalProperties: false,
|
|
26
|
+
},
|
|
27
|
+
silence: {
|
|
28
|
+
bsonType: ['object', 'null'],
|
|
29
|
+
properties: {
|
|
30
|
+
enableSilenceDetection: { bsonType: 'bool' },
|
|
31
|
+
firstWarningSilenceSeconds: { bsonType: 'number' },
|
|
32
|
+
firstWarningInstruction: { bsonType: 'string' },
|
|
33
|
+
secondWarningSilenceSeconds: { bsonType: 'number' },
|
|
34
|
+
secondWarningInstruction: { bsonType: 'string' },
|
|
35
|
+
disconnectSilenceSeconds: { bsonType: 'number' },
|
|
36
|
+
},
|
|
37
|
+
additionalProperties: false,
|
|
38
|
+
},
|
|
21
39
|
},
|
|
22
40
|
additionalProperties: false,
|
|
23
41
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flows.schema.js","sourceRoot":"","sources":["../../../src/talkpilot/flows/flows.schema.ts"],"names":[],"mappings":";;;AAAa,QAAA,eAAe,GAAG;IAC7B,QAAQ,EAAE,QAAQ;IAClB,QAAQ,EAAE,CAAC,UAAU,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,cAAc,CAAC;IAC/E,UAAU,EAAE;QACV,GAAG,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE;QAC7B,QAAQ,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE;QAChC,QAAQ,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE;QAChC,kBAAkB,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE;QAC1C,eAAe,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE;QACvC,KAAK,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE;QACvC,oBAAoB,EAAE;YACpB,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;YAC5B,UAAU,EAAE;gBACV,
|
|
1
|
+
{"version":3,"file":"flows.schema.js","sourceRoot":"","sources":["../../../src/talkpilot/flows/flows.schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -96,11 +96,24 @@ export type UserProperty = {
|
|
|
96
96
|
name: string;
|
|
97
97
|
description: string;
|
|
98
98
|
};
|
|
99
|
-
export type
|
|
100
|
-
silenceTimeoutSeconds?: number;
|
|
99
|
+
export type InterruptionSettings = {
|
|
101
100
|
enableInterruptionDetection?: boolean;
|
|
102
|
-
|
|
101
|
+
interruptionWindowSeconds?: number;
|
|
103
102
|
interruptionThresholdSeconds?: number;
|
|
103
|
+
interruptionInstruction?: string;
|
|
104
|
+
};
|
|
105
|
+
export type SilenceEscalationSettings = {
|
|
106
|
+
enableSilenceDetection?: boolean;
|
|
107
|
+
firstWarningSilenceSeconds?: number;
|
|
108
|
+
firstWarningInstruction?: string;
|
|
109
|
+
secondWarningSilenceSeconds?: number;
|
|
110
|
+
secondWarningInstruction?: string;
|
|
111
|
+
disconnectSilenceSeconds?: number;
|
|
112
|
+
silenceTimeoutSeconds?: number;
|
|
113
|
+
};
|
|
114
|
+
export type ConversationSettings = {
|
|
115
|
+
interruptions?: InterruptionSettings;
|
|
116
|
+
silence?: SilenceEscalationSettings;
|
|
104
117
|
};
|
|
105
118
|
export type Flow = {
|
|
106
119
|
freeTextContent?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flows.types.d.ts","sourceRoot":"","sources":["../../../src/talkpilot/flows/flows.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAInC,MAAM,MAAM,QAAQ,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAChD,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;AAErE,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC;AACzD,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,UAAU,CAAC;AAElD,MAAM,MAAM,QAAQ,GAAG;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,YAAY,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC1B,aAAa,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IAErC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC5B,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;CAEhC,CAAC;AAEF,MAAM,MAAM,QAAQ,GAChB,OAAO,GACP,KAAK,GACL,WAAW,GACX,WAAW,GACX,MAAM,GACN,aAAa,GACb,eAAe,GACf,KAAK,CAAC;AACV,KAAK,QAAQ,GAAG;IACd,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IAEb,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,SAAS,CAAC,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,CAAC;AAErD,MAAM,MAAM,OAAO,GAAG,QAAQ,GAAG;IAAE,IAAI,EAAE,KAAK,CAAA;CAAE,CAAC;AAEjD,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG;IACrC,IAAI,EAAE,WAAW,CAAC;IAClB,UAAU,EAAE,KAAK,CAAC;QAChB,eAAe,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACzB,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KACpB,CAAC,CAAC;IACH,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,YAAY,CAAC,EAAE;QAAE,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,CAAC;AAE7D,MAAM,MAAM,QAAQ,GAAG;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,UAAU,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;IAClC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,UAAU,CAAC;AAE5C,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG;IACvC,IAAI,EAAE,aAAa,CAAC;IACpB,uFAAuF;IACvF,WAAW,EAAE,UAAU,CAAC;IACxB,0EAA0E;IAC1E,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG;IACzC,IAAI,EAAE,eAAe,CAAC;IACtB,SAAS,EAAE,QAAQ,EAAE,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG,QAAQ,GAAG;IAAE,IAAI,EAAE,KAAK,CAAA;CAAE,CAAC;AAEjD,MAAM,MAAM,WAAW,GACnB,SAAS,GACT,OAAO,GACP,aAAa,GACb,aAAa,GACb,QAAQ,GACR,eAAe,GACf,iBAAiB,GACjB,OAAO,CAAC;AAEZ,MAAM,MAAM,IAAI,GAAG;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,
|
|
1
|
+
{"version":3,"file":"flows.types.d.ts","sourceRoot":"","sources":["../../../src/talkpilot/flows/flows.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tickets.d.ts","sourceRoot":"","sources":["../../../../src/test-utils/factories/municipal/tickets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGlC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0CAA0C,CAAC;AAKvE,eAAO,MAAM,aAAa,
|
|
1
|
+
{"version":3,"file":"tickets.d.ts","sourceRoot":"","sources":["../../../../src/test-utils/factories/municipal/tickets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGlC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0CAA0C,CAAC;AAKvE,eAAO,MAAM,aAAa,2EAoBvB,CAAC;AAEJ,wBAAgB,YAAY,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAEhE"}
|
|
@@ -19,6 +19,12 @@ exports.ticketFactory = fishery_1.Factory.define(() => ({
|
|
|
19
19
|
house_number: faker_1.faker.location.buildingNumber(),
|
|
20
20
|
event_subject_id: faker_1.faker.string.numeric(4),
|
|
21
21
|
event_sub_subject_id: faker_1.faker.string.numeric(4),
|
|
22
|
+
image1: faker_1.faker.image.url(),
|
|
23
|
+
image2: faker_1.faker.image.url(),
|
|
24
|
+
image3: faker_1.faker.image.url(),
|
|
25
|
+
file1: faker_1.faker.system.filePath(),
|
|
26
|
+
file2: faker_1.faker.system.filePath(),
|
|
27
|
+
file3: faker_1.faker.system.filePath(),
|
|
22
28
|
},
|
|
23
29
|
}));
|
|
24
30
|
function createTicket(overrides) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tickets.js","sourceRoot":"","sources":["../../../../src/test-utils/factories/municipal/tickets.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"tickets.js","sourceRoot":"","sources":["../../../../src/test-utils/factories/municipal/tickets.ts"],"names":[],"mappings":";;;AA8BA,oCAEC;AAhCD,qCAAkC;AAClC,qCAAmC;AACnC,2CAAwC;AAIxC,MAAM,YAAY,GAAe,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;AAEzE,QAAA,aAAa,GAAG,iBAAO,CAAC,MAAM,CAAS,GAAG,EAAE,CAAC,CAAC;IACzD,GAAG,EAAE,IAAI,kBAAQ,EAAE;IACnB,SAAS,EAAE,IAAI,IAAI,EAAE;IACrB,SAAS,EAAE,IAAI,IAAI,EAAE;IACrB,QAAQ,EAAE,aAAK,CAAC,OAAO,CAAC,YAAY,CAAC,YAAY,CAAC;IAClD,kBAAkB,EAAE;QAClB,UAAU,EAAE,aAAK,CAAC,MAAM,CAAC,SAAS,EAAE;QACpC,SAAS,EAAE,aAAK,CAAC,MAAM,CAAC,QAAQ,EAAE;QAClC,iBAAiB,EAAE,aAAK,CAAC,KAAK,CAAC,QAAQ,EAAE;QACzC,MAAM,EAAE,aAAK,CAAC,QAAQ,CAAC,MAAM,EAAE;QAC/B,YAAY,EAAE,aAAK,CAAC,QAAQ,CAAC,cAAc,EAAE;QAC7C,gBAAgB,EAAE,aAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QACzC,oBAAoB,EAAE,aAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7C,MAAM,EAAE,aAAK,CAAC,KAAK,CAAC,GAAG,EAAE;QACzB,MAAM,EAAE,aAAK,CAAC,KAAK,CAAC,GAAG,EAAE;QACzB,MAAM,EAAE,aAAK,CAAC,KAAK,CAAC,GAAG,EAAE;QACzB,KAAK,EAAE,aAAK,CAAC,MAAM,CAAC,QAAQ,EAAE;QAC9B,KAAK,EAAE,aAAK,CAAC,MAAM,CAAC,QAAQ,EAAE;QAC9B,KAAK,EAAE,aAAK,CAAC,MAAM,CAAC,QAAQ,EAAE;KAC/B;CACF,CAAC,CAAC,CAAC;AAEJ,SAAgB,YAAY,CAAC,SAA2B;IACtD,OAAO,qBAAa,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;AACxC,CAAC"}
|
package/package.json
CHANGED
|
@@ -14,17 +14,25 @@ describe('flowMongoSchema', () => {
|
|
|
14
14
|
const schema: any = flowMongoSchema;
|
|
15
15
|
const convSettings = schema.properties.conversationSettings.properties;
|
|
16
16
|
|
|
17
|
-
expect(convSettings).toHaveProperty('
|
|
18
|
-
expect(convSettings.
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
expect(
|
|
22
|
-
|
|
23
|
-
expect(
|
|
24
|
-
expect(
|
|
25
|
-
|
|
26
|
-
expect(convSettings).toHaveProperty('
|
|
27
|
-
expect(convSettings.
|
|
17
|
+
expect(convSettings).toHaveProperty('interruptions');
|
|
18
|
+
expect(convSettings.interruptions.bsonType).toEqual(['object', 'null']);
|
|
19
|
+
|
|
20
|
+
const interruptions = convSettings.interruptions.properties;
|
|
21
|
+
expect(interruptions.enableInterruptionDetection.bsonType).toEqual('bool');
|
|
22
|
+
expect(interruptions.interruptionWindowSeconds.bsonType).toEqual('number');
|
|
23
|
+
expect(interruptions.interruptionThresholdSeconds.bsonType).toEqual('number');
|
|
24
|
+
expect(interruptions.interruptionInstruction.bsonType).toEqual('string');
|
|
25
|
+
|
|
26
|
+
expect(convSettings).toHaveProperty('silence');
|
|
27
|
+
expect(convSettings.silence.bsonType).toEqual(['object', 'null']);
|
|
28
|
+
|
|
29
|
+
const silence = convSettings.silence.properties;
|
|
30
|
+
expect(silence.enableSilenceDetection.bsonType).toEqual('bool');
|
|
31
|
+
expect(silence.firstWarningSilenceSeconds.bsonType).toEqual('number');
|
|
32
|
+
expect(silence.firstWarningInstruction.bsonType).toEqual('string');
|
|
33
|
+
expect(silence.secondWarningSilenceSeconds.bsonType).toEqual('number');
|
|
34
|
+
expect(silence.secondWarningInstruction.bsonType).toEqual('string');
|
|
35
|
+
expect(silence.disconnectSilenceSeconds.bsonType).toEqual('number');
|
|
28
36
|
});
|
|
29
37
|
});
|
|
30
38
|
|
|
@@ -11,10 +11,28 @@ export const flowMongoSchema = {
|
|
|
11
11
|
conversationSettings: {
|
|
12
12
|
bsonType: ['object', 'null'],
|
|
13
13
|
properties: {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
14
|
+
interruptions: {
|
|
15
|
+
bsonType: ['object', 'null'],
|
|
16
|
+
properties: {
|
|
17
|
+
enableInterruptionDetection: { bsonType: 'bool' },
|
|
18
|
+
interruptionWindowSeconds: { bsonType: 'number' },
|
|
19
|
+
interruptionThresholdSeconds: { bsonType: 'number' },
|
|
20
|
+
interruptionInstruction: { bsonType: 'string' },
|
|
21
|
+
},
|
|
22
|
+
additionalProperties: false,
|
|
23
|
+
},
|
|
24
|
+
silence: {
|
|
25
|
+
bsonType: ['object', 'null'],
|
|
26
|
+
properties: {
|
|
27
|
+
enableSilenceDetection: { bsonType: 'bool' },
|
|
28
|
+
firstWarningSilenceSeconds: { bsonType: 'number' },
|
|
29
|
+
firstWarningInstruction: { bsonType: 'string' },
|
|
30
|
+
secondWarningSilenceSeconds: { bsonType: 'number' },
|
|
31
|
+
secondWarningInstruction: { bsonType: 'string' },
|
|
32
|
+
disconnectSilenceSeconds: { bsonType: 'number' },
|
|
33
|
+
},
|
|
34
|
+
additionalProperties: false,
|
|
35
|
+
},
|
|
18
36
|
},
|
|
19
37
|
additionalProperties: false,
|
|
20
38
|
},
|
|
@@ -124,11 +124,26 @@ export type UserProperty = {
|
|
|
124
124
|
description: string;
|
|
125
125
|
};
|
|
126
126
|
|
|
127
|
-
export type
|
|
128
|
-
silenceTimeoutSeconds?: number;
|
|
127
|
+
export type InterruptionSettings = {
|
|
129
128
|
enableInterruptionDetection?: boolean;
|
|
130
|
-
|
|
129
|
+
interruptionWindowSeconds?: number;
|
|
131
130
|
interruptionThresholdSeconds?: number;
|
|
131
|
+
interruptionInstruction?: string;
|
|
132
|
+
};
|
|
133
|
+
|
|
134
|
+
export type SilenceEscalationSettings = {
|
|
135
|
+
enableSilenceDetection?: boolean;
|
|
136
|
+
firstWarningSilenceSeconds?: number;
|
|
137
|
+
firstWarningInstruction?: string;
|
|
138
|
+
secondWarningSilenceSeconds?: number;
|
|
139
|
+
secondWarningInstruction?: string;
|
|
140
|
+
disconnectSilenceSeconds?: number;
|
|
141
|
+
silenceTimeoutSeconds?: number;
|
|
142
|
+
};
|
|
143
|
+
|
|
144
|
+
export type ConversationSettings = {
|
|
145
|
+
interruptions?: InterruptionSettings;
|
|
146
|
+
silence?: SilenceEscalationSettings;
|
|
132
147
|
};
|
|
133
148
|
|
|
134
149
|
/* ---------- The Flow object ---------- */
|
|
@@ -12,7 +12,25 @@ import { ObjectId } from 'mongodb';
|
|
|
12
12
|
describe('db.phoneNumbers', () => {
|
|
13
13
|
describe('getPhoneDataByPhoneNumber', () => {
|
|
14
14
|
it('return phone number data with flow', async () => {
|
|
15
|
-
const flow = createFlow({
|
|
15
|
+
const flow = createFlow({
|
|
16
|
+
clientId: 'test-client-id',
|
|
17
|
+
conversationSettings: {
|
|
18
|
+
interruptions: {
|
|
19
|
+
enableInterruptionDetection: true,
|
|
20
|
+
interruptionWindowSeconds: 60,
|
|
21
|
+
interruptionThresholdSeconds: 10,
|
|
22
|
+
interruptionInstruction: 'I am hearing background noise that makes it hard for me to focus on what you are saying. Please try to move to a quieter place or reduce the noise so I can better assist you.',
|
|
23
|
+
},
|
|
24
|
+
silence: {
|
|
25
|
+
enableSilenceDetection: true,
|
|
26
|
+
firstWarningSilenceSeconds: 5,
|
|
27
|
+
firstWarningInstruction: 'I have not heard you for a few seconds. If you are still on the line, please say something so we can continue.',
|
|
28
|
+
secondWarningSilenceSeconds: 10,
|
|
29
|
+
secondWarningInstruction: 'I still have not heard anything from you. If you do not respond in the next few seconds, I will have to end this call.',
|
|
30
|
+
disconnectSilenceSeconds: 30,
|
|
31
|
+
},
|
|
32
|
+
},
|
|
33
|
+
});
|
|
16
34
|
const phoneData = createPhoneNumber({ flow_id: flow._id, client_id: 'test-client-id' });
|
|
17
35
|
|
|
18
36
|
await getFlowsCollection().insertOne(flow);
|
|
@@ -28,7 +46,7 @@ describe('db.phoneNumbers', () => {
|
|
|
28
46
|
});
|
|
29
47
|
// Specifically check if the flow was joined correctly
|
|
30
48
|
expect(result?.flow.flowName).toBe(flow.flowName);
|
|
31
|
-
expect(result?.flow.conversationSettings?.
|
|
49
|
+
expect(result?.flow.conversationSettings?.silence?.firstWarningSilenceSeconds).toBe(5);
|
|
32
50
|
});
|
|
33
51
|
});
|
|
34
52
|
|
|
@@ -10,7 +10,24 @@ describe('sessions', () => {
|
|
|
10
10
|
it('returns session by incoming phone number', async () => {
|
|
11
11
|
const to = '+972500000000';
|
|
12
12
|
const from = '+972540000000';
|
|
13
|
-
const flow = createFlow({
|
|
13
|
+
const flow = createFlow({
|
|
14
|
+
conversationSettings: {
|
|
15
|
+
interruptions: {
|
|
16
|
+
enableInterruptionDetection: true,
|
|
17
|
+
interruptionWindowSeconds: 60,
|
|
18
|
+
interruptionThresholdSeconds: 10,
|
|
19
|
+
interruptionInstruction: 'I am hearing background noise that makes it hard for me to focus on what you are saying. Please try to move to a quieter place or reduce the noise so I can better assist you.',
|
|
20
|
+
},
|
|
21
|
+
silence: {
|
|
22
|
+
enableSilenceDetection: true,
|
|
23
|
+
firstWarningSilenceSeconds: 5,
|
|
24
|
+
firstWarningInstruction: 'I have not heard you for a few seconds. If you are still on the line, please say something so we can continue.',
|
|
25
|
+
secondWarningSilenceSeconds: 10,
|
|
26
|
+
secondWarningInstruction: 'I still have not heard anything from you. If you do not respond in the next few seconds, I will have to end this call.',
|
|
27
|
+
disconnectSilenceSeconds: 30,
|
|
28
|
+
},
|
|
29
|
+
},
|
|
30
|
+
});
|
|
14
31
|
const phoneNumberData = createPhoneNumber({ phone_number: to, flow_id: flow._id });
|
|
15
32
|
const json = { [faker.lorem.word()]: faker.lorem.sentence() };
|
|
16
33
|
|
|
@@ -19,6 +19,12 @@ export const ticketFactory = Factory.define<Ticket>(() => ({
|
|
|
19
19
|
house_number: faker.location.buildingNumber(),
|
|
20
20
|
event_subject_id: faker.string.numeric(4),
|
|
21
21
|
event_sub_subject_id: faker.string.numeric(4),
|
|
22
|
+
image1: faker.image.url(),
|
|
23
|
+
image2: faker.image.url(),
|
|
24
|
+
image3: faker.image.url(),
|
|
25
|
+
file1: faker.system.filePath(),
|
|
26
|
+
file2: faker.system.filePath(),
|
|
27
|
+
file3: faker.system.filePath(),
|
|
22
28
|
},
|
|
23
29
|
}));
|
|
24
30
|
|