@botonic/plugin-hubtype-sdk 2.23.0
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/CHANGELOG.md +201 -0
- package/README.md +11 -0
- package/package.json +21 -0
- package/src/http-client.d.ts +11 -0
- package/src/http-client.js +63 -0
- package/src/http-client.js.map +1 -0
- package/src/hubtype-sdk.d.ts +43 -0
- package/src/hubtype-sdk.js +128 -0
- package/src/hubtype-sdk.js.map +1 -0
- package/src/index.d.ts +56 -0
- package/src/index.js +117 -0
- package/src/index.js.map +1 -0
- package/src/shared.d.ts +1 -0
- package/src/shared.js +2 -0
- package/src/shared.js.map +1 -0
- package/src/types/agents.d.ts +8 -0
- package/src/types/agents.js +2 -0
- package/src/types/agents.js.map +1 -0
- package/src/types/ai.d.ts +17 -0
- package/src/types/ai.js +2 -0
- package/src/types/ai.js.map +1 -0
- package/src/types/cases.d.ts +103 -0
- package/src/types/cases.js +8 -0
- package/src/types/cases.js.map +1 -0
- package/src/types/chats.d.ts +35 -0
- package/src/types/chats.js +2 -0
- package/src/types/chats.js.map +1 -0
- package/src/types/config.d.ts +11 -0
- package/src/types/config.js +2 -0
- package/src/types/config.js.map +1 -0
- package/src/types/contact-info.d.ts +3 -0
- package/src/types/contact-info.js +2 -0
- package/src/types/contact-info.js.map +1 -0
- package/src/types/http-client.d.ts +8 -0
- package/src/types/http-client.js +8 -0
- package/src/types/http-client.js.map +1 -0
- package/src/types/messages.d.ts +53 -0
- package/src/types/messages.js +2 -0
- package/src/types/messages.js.map +1 -0
- package/src/types/queues.d.ts +95 -0
- package/src/types/queues.js +6 -0
- package/src/types/queues.js.map +1 -0
- package/src/types/shared.d.ts +46 -0
- package/src/types/shared.js +2 -0
- package/src/types/shared.js.map +1 -0
- package/src/types/users.d.ts +27 -0
- package/src/types/users.js +14 -0
- package/src/types/users.js.map +1 -0
- package/src/types/whatsapp.d.ts +78 -0
- package/src/types/whatsapp.js +2 -0
- package/src/types/whatsapp.js.map +1 -0
package/src/index.js
ADDED
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import { __awaiter } from "tslib";
|
|
2
|
+
import { HubtypeSdk } from './hubtype-sdk';
|
|
3
|
+
export class BotonicPluginHubtypeSdk {
|
|
4
|
+
constructor() {
|
|
5
|
+
this.pre = (botContext) => {
|
|
6
|
+
if (!this.hubtypeSdk) {
|
|
7
|
+
this.hubtypeSdk = new HubtypeSdk({
|
|
8
|
+
accessToken: botContext.session.accessToken,
|
|
9
|
+
baseUrl: botContext.session.hubtypeApi,
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
else {
|
|
13
|
+
this.setAccessToken(botContext.session.accessToken);
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
this.setAccessToken = (accessToken) => {
|
|
17
|
+
this.hubtypeSdk.setAccessToken(accessToken);
|
|
18
|
+
};
|
|
19
|
+
this.knowledgeBaseInference = (request, config) => __awaiter(this, void 0, void 0, function* () {
|
|
20
|
+
return this.hubtypeSdk.knowledgeBaseInference(request, config);
|
|
21
|
+
});
|
|
22
|
+
this.searchCases = (params, config) => __awaiter(this, void 0, void 0, function* () {
|
|
23
|
+
return this.hubtypeSdk.searchCases(params, config);
|
|
24
|
+
});
|
|
25
|
+
this.searchAllCases = (params, config) => __awaiter(this, void 0, void 0, function* () {
|
|
26
|
+
return this.hubtypeSdk.searchAllCases(params, config);
|
|
27
|
+
});
|
|
28
|
+
this.getCases = (params, config) => __awaiter(this, void 0, void 0, function* () {
|
|
29
|
+
return this.hubtypeSdk.getCases(params, config);
|
|
30
|
+
});
|
|
31
|
+
this.getAllCases = (params, config) => __awaiter(this, void 0, void 0, function* () {
|
|
32
|
+
return this.hubtypeSdk.getAllCases(params, config);
|
|
33
|
+
});
|
|
34
|
+
this.getCaseById = (id, config) => __awaiter(this, void 0, void 0, function* () {
|
|
35
|
+
return this.hubtypeSdk.getCaseById(id, config);
|
|
36
|
+
});
|
|
37
|
+
this.getChats = (params, config) => __awaiter(this, void 0, void 0, function* () {
|
|
38
|
+
return this.hubtypeSdk.getChats(params, config);
|
|
39
|
+
});
|
|
40
|
+
this.getAllChats = (params, config) => __awaiter(this, void 0, void 0, function* () {
|
|
41
|
+
return this.hubtypeSdk.getAllChats(params, config);
|
|
42
|
+
});
|
|
43
|
+
this.getChatById = (id, config) => __awaiter(this, void 0, void 0, function* () {
|
|
44
|
+
return this.hubtypeSdk.getChatById(id, config);
|
|
45
|
+
});
|
|
46
|
+
this.getChatTranscript = (chatId, config) => __awaiter(this, void 0, void 0, function* () {
|
|
47
|
+
return this.hubtypeSdk.getChatTranscript(chatId, config);
|
|
48
|
+
});
|
|
49
|
+
this.getChatTranscriptByProvider = (params, config) => __awaiter(this, void 0, void 0, function* () {
|
|
50
|
+
return this.hubtypeSdk.getChatTranscriptByProvider(params, config);
|
|
51
|
+
});
|
|
52
|
+
this.getMessages = (params, config) => __awaiter(this, void 0, void 0, function* () {
|
|
53
|
+
return this.hubtypeSdk.getMessages(params, config);
|
|
54
|
+
});
|
|
55
|
+
this.getAllMessages = (params, config) => __awaiter(this, void 0, void 0, function* () {
|
|
56
|
+
return this.hubtypeSdk.getAllMessages(params, config);
|
|
57
|
+
});
|
|
58
|
+
this.getMessageById = (id, config) => __awaiter(this, void 0, void 0, function* () {
|
|
59
|
+
return this.hubtypeSdk.getMessageById(id, config);
|
|
60
|
+
});
|
|
61
|
+
this.getQueues = (params, config) => __awaiter(this, void 0, void 0, function* () {
|
|
62
|
+
return this.hubtypeSdk.getQueues(params, config);
|
|
63
|
+
});
|
|
64
|
+
this.getAllQueues = (params, config) => __awaiter(this, void 0, void 0, function* () {
|
|
65
|
+
return this.hubtypeSdk.getAllQueues(params, config);
|
|
66
|
+
});
|
|
67
|
+
this.getQueueById = (id, config) => __awaiter(this, void 0, void 0, function* () {
|
|
68
|
+
return this.hubtypeSdk.getQueueById(id, config);
|
|
69
|
+
});
|
|
70
|
+
this.getQueueAvailableAgents = (queueId, config) => __awaiter(this, void 0, void 0, function* () {
|
|
71
|
+
return this.hubtypeSdk.getQueueAvailableAgents(queueId, config);
|
|
72
|
+
});
|
|
73
|
+
this.getQueueAvailabilityById = (queueId, flags, config) => __awaiter(this, void 0, void 0, function* () {
|
|
74
|
+
return this.hubtypeSdk.getQueueAvailabilityById(queueId, flags, config);
|
|
75
|
+
});
|
|
76
|
+
this.getProjectAvailabilityById = (projectId, flags, config) => __awaiter(this, void 0, void 0, function* () {
|
|
77
|
+
return this.hubtypeSdk.getProjectAvailabilityById(projectId, flags, config);
|
|
78
|
+
});
|
|
79
|
+
this.getUsers = (params, config) => __awaiter(this, void 0, void 0, function* () {
|
|
80
|
+
return this.hubtypeSdk.getUsers(params, config);
|
|
81
|
+
});
|
|
82
|
+
this.getAllUsers = (params, config) => __awaiter(this, void 0, void 0, function* () {
|
|
83
|
+
return this.hubtypeSdk.getAllUsers(params, config);
|
|
84
|
+
});
|
|
85
|
+
this.getUserById = (id, config) => __awaiter(this, void 0, void 0, function* () {
|
|
86
|
+
return this.hubtypeSdk.getUserById(id, config);
|
|
87
|
+
});
|
|
88
|
+
this.sendWhatsappTemplate = (providerAccountId, request, config) => __awaiter(this, void 0, void 0, function* () {
|
|
89
|
+
return this.hubtypeSdk.sendWhatsappTemplate(providerAccountId, request, config);
|
|
90
|
+
});
|
|
91
|
+
this.addOrUpdateContactInfoField = (chatId, fieldName, value, config) => __awaiter(this, void 0, void 0, function* () {
|
|
92
|
+
return this.hubtypeSdk.addOrUpdateContactInfoField(chatId, fieldName, value, config);
|
|
93
|
+
});
|
|
94
|
+
this.getContactInfoFields = (chatId, config) => __awaiter(this, void 0, void 0, function* () {
|
|
95
|
+
return this.hubtypeSdk.getContactInfoFields(chatId, config);
|
|
96
|
+
});
|
|
97
|
+
this.banChat = (chatId, config) => __awaiter(this, void 0, void 0, function* () {
|
|
98
|
+
return this.hubtypeSdk.banChat(chatId, config);
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
// Re-export everything
|
|
103
|
+
export * from './http-client';
|
|
104
|
+
export * from './hubtype-sdk';
|
|
105
|
+
export * from './types/agents';
|
|
106
|
+
export * from './types/ai';
|
|
107
|
+
export * from './types/cases';
|
|
108
|
+
export * from './types/chats';
|
|
109
|
+
export * from './types/config';
|
|
110
|
+
export * from './types/contact-info';
|
|
111
|
+
export * from './types/http-client';
|
|
112
|
+
export * from './types/messages';
|
|
113
|
+
export * from './types/queues';
|
|
114
|
+
export * from './types/shared';
|
|
115
|
+
export * from './types/users';
|
|
116
|
+
export * from './types/whatsapp';
|
|
117
|
+
//# sourceMappingURL=index.js.map
|
package/src/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/botonic/plugin-hubtype-sdk/src/index.ts"],"names":[],"mappings":"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"}
|
package/src/shared.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const DEFAULT_BASE_URL = "https://api.hubtype.com";
|
package/src/shared.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../../../libs/botonic/plugin-hubtype-sdk/src/shared.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG,yBAAyB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agents.js","sourceRoot":"","sources":["../../../../../../libs/botonic/plugin-hubtype-sdk/src/types/agents.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export interface InferenceRequest {
|
|
2
|
+
question: string;
|
|
3
|
+
sources: string[];
|
|
4
|
+
}
|
|
5
|
+
export interface InferenceResponse {
|
|
6
|
+
inference_id: string;
|
|
7
|
+
question: string;
|
|
8
|
+
answer: string;
|
|
9
|
+
has_knowledge: boolean;
|
|
10
|
+
is_faithful: boolean;
|
|
11
|
+
chunk_ids: string[];
|
|
12
|
+
chunks: Chunk[];
|
|
13
|
+
}
|
|
14
|
+
export interface Chunk {
|
|
15
|
+
id: string;
|
|
16
|
+
text: string;
|
|
17
|
+
}
|
package/src/types/ai.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai.js","sourceRoot":"","sources":["../../../../../../libs/botonic/plugin-hubtype-sdk/src/types/ai.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import { Agent } from './agents';
|
|
2
|
+
import { Chat } from './chats';
|
|
3
|
+
import { Queue } from './queues';
|
|
4
|
+
export type CaseChat = Pick<Chat, 'id' | 'provider' | 'provider_account_id' | 'provider_id' | 'username' | 'name'>;
|
|
5
|
+
export interface CaseQueue extends Pick<Queue, 'id' | 'name'> {
|
|
6
|
+
project: {
|
|
7
|
+
id: string;
|
|
8
|
+
name: string;
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
export interface CaseAgent extends Pick<Agent, 'id' | 'email'> {
|
|
12
|
+
name: string;
|
|
13
|
+
}
|
|
14
|
+
export interface ContactReason {
|
|
15
|
+
id: string;
|
|
16
|
+
name: string;
|
|
17
|
+
category_name: string;
|
|
18
|
+
project_id: string;
|
|
19
|
+
created_by_system: boolean;
|
|
20
|
+
}
|
|
21
|
+
export interface Case {
|
|
22
|
+
id: string;
|
|
23
|
+
chat: CaseChat;
|
|
24
|
+
queue: CaseQueue;
|
|
25
|
+
description: string | null;
|
|
26
|
+
status: CaseStatus;
|
|
27
|
+
created_at: string;
|
|
28
|
+
assigned_to: CaseAgent | null;
|
|
29
|
+
resolved_by: CaseAgent | null;
|
|
30
|
+
resolved_at: string | null;
|
|
31
|
+
contact_reasons: ContactReason[];
|
|
32
|
+
resolution: string | null;
|
|
33
|
+
typification: string | null;
|
|
34
|
+
rating: number | null;
|
|
35
|
+
has_agent_message: boolean;
|
|
36
|
+
interactions: number | null;
|
|
37
|
+
initial_response_time: number | null;
|
|
38
|
+
agent_time_on_task: number | null;
|
|
39
|
+
}
|
|
40
|
+
export declare enum CaseStatus {
|
|
41
|
+
ATTENDING = "status_attending",
|
|
42
|
+
IDLE = "status_idle",
|
|
43
|
+
RESOLVED = "status_resolved",
|
|
44
|
+
WAITING = "status_waiting"
|
|
45
|
+
}
|
|
46
|
+
export interface CaseListParams {
|
|
47
|
+
created_after?: string;
|
|
48
|
+
created_before?: string;
|
|
49
|
+
status?: CaseStatus[];
|
|
50
|
+
resolved_after?: string;
|
|
51
|
+
resolved_before?: string;
|
|
52
|
+
order?: string;
|
|
53
|
+
cursor?: string;
|
|
54
|
+
page_size?: number;
|
|
55
|
+
}
|
|
56
|
+
export interface CaseSearchParams {
|
|
57
|
+
start_date?: string;
|
|
58
|
+
end_date?: string;
|
|
59
|
+
q?: string;
|
|
60
|
+
status?: 'status_attending' | 'status_idle' | 'status_resolved' | 'status_waiting';
|
|
61
|
+
provider?: 'apple' | 'facebook' | 'instagram' | 'telegram' | 'twitter' | 'webchat' | 'whatsapp';
|
|
62
|
+
queue_id?: string;
|
|
63
|
+
project_id?: string;
|
|
64
|
+
agent_id?: string;
|
|
65
|
+
cursor?: string;
|
|
66
|
+
page_size?: number;
|
|
67
|
+
}
|
|
68
|
+
export interface AgentSearchResult {
|
|
69
|
+
id: string;
|
|
70
|
+
email: string;
|
|
71
|
+
username: string;
|
|
72
|
+
first_name: string;
|
|
73
|
+
last_name: string;
|
|
74
|
+
}
|
|
75
|
+
export interface ChatSearchResult {
|
|
76
|
+
id: string;
|
|
77
|
+
created_at: string;
|
|
78
|
+
provider: string;
|
|
79
|
+
provider_account_id: string;
|
|
80
|
+
provider_id: string;
|
|
81
|
+
name: string;
|
|
82
|
+
username: string;
|
|
83
|
+
is_blocked: boolean;
|
|
84
|
+
is_banned: boolean;
|
|
85
|
+
is_online: boolean;
|
|
86
|
+
last_message_received: string;
|
|
87
|
+
last_online_status_changed_at?: string;
|
|
88
|
+
}
|
|
89
|
+
export interface CaseSearchResult {
|
|
90
|
+
id: string;
|
|
91
|
+
created_at: string;
|
|
92
|
+
status: string;
|
|
93
|
+
project_id: string;
|
|
94
|
+
queue_id: string;
|
|
95
|
+
chat: ChatSearchResult;
|
|
96
|
+
provider: string;
|
|
97
|
+
description?: string;
|
|
98
|
+
assigned_to?: AgentSearchResult;
|
|
99
|
+
resolved_by?: AgentSearchResult;
|
|
100
|
+
resolved_at?: string;
|
|
101
|
+
resolution_status?: string;
|
|
102
|
+
has_agent_message: boolean;
|
|
103
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export var CaseStatus;
|
|
2
|
+
(function (CaseStatus) {
|
|
3
|
+
CaseStatus["ATTENDING"] = "status_attending";
|
|
4
|
+
CaseStatus["IDLE"] = "status_idle";
|
|
5
|
+
CaseStatus["RESOLVED"] = "status_resolved";
|
|
6
|
+
CaseStatus["WAITING"] = "status_waiting";
|
|
7
|
+
})(CaseStatus || (CaseStatus = {}));
|
|
8
|
+
//# sourceMappingURL=cases.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cases.js","sourceRoot":"","sources":["../../../../../../libs/botonic/plugin-hubtype-sdk/src/types/cases.ts"],"names":[],"mappings":"AAoDA,MAAM,CAAN,IAAY,UAKX;AALD,WAAY,UAAU;IACpB,4CAA8B,CAAA;IAC9B,kCAAoB,CAAA;IACpB,0CAA4B,CAAA;IAC5B,wCAA0B,CAAA;AAC5B,CAAC,EALW,UAAU,KAAV,UAAU,QAKrB"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
export interface Chat {
|
|
2
|
+
id: string;
|
|
3
|
+
provider: string;
|
|
4
|
+
provider_account_id: string;
|
|
5
|
+
provider_id: string;
|
|
6
|
+
username: string | null;
|
|
7
|
+
name: string;
|
|
8
|
+
is_blocked: boolean;
|
|
9
|
+
is_banned: boolean;
|
|
10
|
+
last_message_received: string;
|
|
11
|
+
chat_tags: ChatTag[];
|
|
12
|
+
}
|
|
13
|
+
export interface ChatTag {
|
|
14
|
+
id: string;
|
|
15
|
+
tag_id?: string;
|
|
16
|
+
created_at: string;
|
|
17
|
+
tag_value: string;
|
|
18
|
+
}
|
|
19
|
+
export interface ChatTranscriptParams {
|
|
20
|
+
provider_account_id: string;
|
|
21
|
+
provider_id: string;
|
|
22
|
+
}
|
|
23
|
+
export interface ChatListParams {
|
|
24
|
+
provider_account_id?: string;
|
|
25
|
+
provider_id?: string;
|
|
26
|
+
order?: string;
|
|
27
|
+
cursor?: string;
|
|
28
|
+
page_size?: number;
|
|
29
|
+
}
|
|
30
|
+
export interface ContactInfoField {
|
|
31
|
+
id: string;
|
|
32
|
+
name: string;
|
|
33
|
+
value: string;
|
|
34
|
+
is_active: boolean;
|
|
35
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chats.js","sourceRoot":"","sources":["../../../../../../libs/botonic/plugin-hubtype-sdk/src/types/chats.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { AxiosRequestConfig, RawAxiosRequestHeaders } from 'axios';
|
|
2
|
+
export interface HttpClientConfig {
|
|
3
|
+
baseUrl?: string;
|
|
4
|
+
accessToken?: string;
|
|
5
|
+
timeout?: number;
|
|
6
|
+
retries?: number;
|
|
7
|
+
headers?: RawAxiosRequestHeaders;
|
|
8
|
+
}
|
|
9
|
+
export interface RequestConfig extends AxiosRequestConfig {
|
|
10
|
+
retries?: number;
|
|
11
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../../../libs/botonic/plugin-hubtype-sdk/src/types/config.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contact-info.js","sourceRoot":"","sources":["../../../../../../libs/botonic/plugin-hubtype-sdk/src/types/contact-info.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-client.js","sourceRoot":"","sources":["../../../../../../libs/botonic/plugin-hubtype-sdk/src/types/http-client.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;IACZ,GAAG,EAAE,KAAK;IACV,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,OAAO;CACN,CAAA"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { User } from './users';
|
|
2
|
+
export interface MessageListParams {
|
|
3
|
+
created_after?: string;
|
|
4
|
+
created_before?: string;
|
|
5
|
+
chat_id?: string;
|
|
6
|
+
case_id?: string;
|
|
7
|
+
chat_provider_id?: string;
|
|
8
|
+
bot_id?: string;
|
|
9
|
+
type?: MessageType[];
|
|
10
|
+
action?: MessageAction;
|
|
11
|
+
whatsapp_template_name?: string;
|
|
12
|
+
order?: string;
|
|
13
|
+
cursor?: string;
|
|
14
|
+
page_size?: number;
|
|
15
|
+
}
|
|
16
|
+
export type MessageType = 'audio' | 'botevent' | 'button_message' | 'carousel' | 'chatevent' | 'contact' | 'custom' | 'deleted' | 'document' | 'form' | 'image' | 'list' | 'location' | 'missed' | 'other' | 'postback' | 'raw' | 'receipt' | 'text' | 'video' | 'webchat_client_settings' | 'webevent' | 'whatsapp_button_list' | 'whatsapp_cta_url_button' | 'whatsapp_template';
|
|
17
|
+
export type MessageAction = 'message_sent_by_enduser' | 'message_sent_by_agent' | 'message_sent_by_bot' | 'message_sent_by_campaign' | 'missed_enduser_msg' | 'case_created' | 'case_assigned_to' | 'case_reopened' | 'case_transferred_to' | 'case_status_changed' | 'case_contact_reasons_changed' | 'queue_closed' | 'queue_opened' | 'chat_closed_by_enduser' | 'chat_online' | 'chat_offline' | 'note' | 'bot_agent_rating' | 'bot_channel_rating' | 'bot_faq_useful' | 'bot_rating' | 'bot_faq' | 'bot_start' | 'bot_open' | 'bot_ai_model' | 'bot_ai_knowledge_base' | 'bot_keywords_model' | 'fallback' | 'handoff_option' | 'handoff_success' | 'handoff_fail' | 'flow_node' | 'nlu_intent' | 'nlu_intent_smart' | 'nlu_keyword' | 'knowledgebase' | 'custom' | 'feedback_message' | 'feedback_conversation' | 'feedback_knowledgebase' | 'feedback_webview' | 'feedback_case' | 'webview_step' | 'webview_end';
|
|
18
|
+
export type MessageAck = 'sent_attempt' | 'sent' | 'delivered' | 'read' | 'error';
|
|
19
|
+
export type MessageProvider = 'apple' | 'facebook' | 'generic' | 'instagram' | 'telegram' | 'twitter' | 'webchat' | 'whatsapp';
|
|
20
|
+
export interface Message {
|
|
21
|
+
id: string;
|
|
22
|
+
created_at: string;
|
|
23
|
+
deleted_at: string | null;
|
|
24
|
+
chat_id: string;
|
|
25
|
+
provider: MessageProvider;
|
|
26
|
+
chat_provider_id: string;
|
|
27
|
+
type: MessageType;
|
|
28
|
+
action: MessageAction;
|
|
29
|
+
bot_id: string | null;
|
|
30
|
+
queue_id: string | null;
|
|
31
|
+
case_id: string | null;
|
|
32
|
+
agent_id: string | null;
|
|
33
|
+
agent: User;
|
|
34
|
+
text: string | null;
|
|
35
|
+
attachment_url: string | null;
|
|
36
|
+
location: Record<string, any> | null;
|
|
37
|
+
contact: Record<string, any> | null;
|
|
38
|
+
extra_data: Record<string, any> | null;
|
|
39
|
+
whatsapp_template_message: Record<string, any> | null;
|
|
40
|
+
ack: MessageAck | null;
|
|
41
|
+
error_message: string | null;
|
|
42
|
+
carousel: Record<string, any> | null;
|
|
43
|
+
buttons: Record<string, any> | null;
|
|
44
|
+
list: Record<string, any> | null;
|
|
45
|
+
raw: Record<string, any> | null;
|
|
46
|
+
payload: string | null;
|
|
47
|
+
event_data: Record<string, any>;
|
|
48
|
+
translations: {
|
|
49
|
+
written_language: string | null;
|
|
50
|
+
swapped_language: string | null;
|
|
51
|
+
messages: Record<string, any>;
|
|
52
|
+
};
|
|
53
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messages.js","sourceRoot":"","sources":["../../../../../../libs/botonic/plugin-hubtype-sdk/src/types/messages.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { Agent } from './agents';
|
|
2
|
+
export interface Queue {
|
|
3
|
+
id: string;
|
|
4
|
+
status: QueueStatus;
|
|
5
|
+
name: string;
|
|
6
|
+
created_by_id: string;
|
|
7
|
+
agents: any[];
|
|
8
|
+
project_id: string;
|
|
9
|
+
project_name: string;
|
|
10
|
+
provider_accounts: any[];
|
|
11
|
+
model_config: ModelConfig;
|
|
12
|
+
waiting_cases_count: number;
|
|
13
|
+
automatic_open: string;
|
|
14
|
+
automatic_close: string;
|
|
15
|
+
max_waiting_time: string | null;
|
|
16
|
+
schedule_settings: ScheduleSettings;
|
|
17
|
+
opening_mode: string;
|
|
18
|
+
attending_cases_count: number;
|
|
19
|
+
idle_cases_count: number;
|
|
20
|
+
}
|
|
21
|
+
export type QueueSummary = Pick<Queue, 'id' | 'name' | 'project_id' | 'status'>;
|
|
22
|
+
export interface ModelConfig {
|
|
23
|
+
initial_message: string;
|
|
24
|
+
closed_message: string;
|
|
25
|
+
num_cases_for_busy: number;
|
|
26
|
+
time_idle: string;
|
|
27
|
+
time_case_resolved: string;
|
|
28
|
+
time_case_closed: string | null;
|
|
29
|
+
time_waiting_sla_1: string;
|
|
30
|
+
time_waiting_sla_2: string;
|
|
31
|
+
availability_threshold_waiting_cases: number;
|
|
32
|
+
prioritisation: string;
|
|
33
|
+
target_sla: number;
|
|
34
|
+
typifications: string;
|
|
35
|
+
}
|
|
36
|
+
export interface ScheduleSettings {
|
|
37
|
+
timezone: string;
|
|
38
|
+
weekly_schedule: DaySchedule[];
|
|
39
|
+
exceptions: ScheduleException[];
|
|
40
|
+
}
|
|
41
|
+
export interface DaySchedule {
|
|
42
|
+
day: string;
|
|
43
|
+
time_shifts: TimeShift[];
|
|
44
|
+
}
|
|
45
|
+
export interface TimeShift {
|
|
46
|
+
start_time: Time;
|
|
47
|
+
end_time: Time;
|
|
48
|
+
}
|
|
49
|
+
export interface Time {
|
|
50
|
+
hour: number;
|
|
51
|
+
minute: number;
|
|
52
|
+
}
|
|
53
|
+
export interface ScheduleException {
|
|
54
|
+
name: string;
|
|
55
|
+
status: string;
|
|
56
|
+
day_of_month: number;
|
|
57
|
+
month: number;
|
|
58
|
+
year: number;
|
|
59
|
+
time_shifts: TimeShift[];
|
|
60
|
+
}
|
|
61
|
+
export declare enum QueueStatus {
|
|
62
|
+
OPEN = "status_open",
|
|
63
|
+
CLOSED = "status_closed"
|
|
64
|
+
}
|
|
65
|
+
export interface QueueAvailableAgent extends Pick<Agent, 'id' | 'email' | 'first_name' | 'last_name'> {
|
|
66
|
+
busy_rank: number;
|
|
67
|
+
attending_count: number;
|
|
68
|
+
idle_count: number;
|
|
69
|
+
}
|
|
70
|
+
export interface QueueListParams {
|
|
71
|
+
project_id?: string;
|
|
72
|
+
order?: string;
|
|
73
|
+
cursor?: string;
|
|
74
|
+
page_size?: number;
|
|
75
|
+
}
|
|
76
|
+
export interface QueueAvailabilityInfo {
|
|
77
|
+
available: boolean;
|
|
78
|
+
waiting_cases: number;
|
|
79
|
+
availability_threshold_waiting_cases: number;
|
|
80
|
+
open: boolean;
|
|
81
|
+
name: string;
|
|
82
|
+
available_agents: number;
|
|
83
|
+
}
|
|
84
|
+
export interface ProjectAvailabilityInfo {
|
|
85
|
+
queues: QueueAvailabilityInfo[];
|
|
86
|
+
available: boolean;
|
|
87
|
+
waiting_cases: number;
|
|
88
|
+
availability_threshold_waiting_cases: number;
|
|
89
|
+
available_agents: number;
|
|
90
|
+
}
|
|
91
|
+
export type AvailabilityFlags = {
|
|
92
|
+
check_queue_schedule?: boolean;
|
|
93
|
+
check_available_agents?: boolean;
|
|
94
|
+
check_waiting_cases?: boolean;
|
|
95
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queues.js","sourceRoot":"","sources":["../../../../../../libs/botonic/plugin-hubtype-sdk/src/types/queues.ts"],"names":[],"mappings":"AAqEA,MAAM,CAAN,IAAY,WAGX;AAHD,WAAY,WAAW;IACrB,mCAAoB,CAAA;IACpB,uCAAwB,CAAA;AAC1B,CAAC,EAHW,WAAW,KAAX,WAAW,QAGtB"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { Plugin } from '@botonic/shared';
|
|
2
|
+
import { InferenceRequest, InferenceResponse } from './ai';
|
|
3
|
+
import { Case, CaseListParams, CaseSearchParams, CaseSearchResult } from './cases';
|
|
4
|
+
import { Chat, ChatListParams, ChatTranscriptParams } from './chats';
|
|
5
|
+
import { RequestConfig } from './config';
|
|
6
|
+
import { Message, MessageListParams } from './messages';
|
|
7
|
+
import { AvailabilityFlags, ProjectAvailabilityInfo, QueueAvailabilityInfo, QueueAvailableAgent, QueueListParams, QueueSummary } from './queues';
|
|
8
|
+
import { User, UserListParams } from './users';
|
|
9
|
+
import { SendWhatsappTemplateRequest, SendWhatsappTemplateResponse } from './whatsapp';
|
|
10
|
+
export interface BotonicPluginHubtypeSdkInterface {
|
|
11
|
+
setAccessToken(accessToken: string): void;
|
|
12
|
+
knowledgeBaseInference(request: InferenceRequest, config?: RequestConfig): Promise<InferenceResponse>;
|
|
13
|
+
searchCases(params: CaseSearchParams, config?: RequestConfig): Promise<PaginatedResponse<CaseSearchResult>>;
|
|
14
|
+
searchAllCases(params: CaseSearchParams, config?: RequestConfig): Promise<CaseSearchResult[]>;
|
|
15
|
+
getCases(params?: CaseListParams, config?: RequestConfig): Promise<PaginatedResponse<Case>>;
|
|
16
|
+
getAllCases(params?: CaseListParams, config?: RequestConfig): Promise<Case[]>;
|
|
17
|
+
getCaseById(id: string, config?: RequestConfig): Promise<Case>;
|
|
18
|
+
getChats(params?: ChatListParams, config?: RequestConfig): Promise<PaginatedResponse<Chat>>;
|
|
19
|
+
getAllChats(params?: ChatListParams, config?: RequestConfig): Promise<Chat[]>;
|
|
20
|
+
getChatById(id: string, config?: RequestConfig): Promise<Chat>;
|
|
21
|
+
getChatTranscript(chatId: string, config?: RequestConfig): Promise<ArrayBuffer>;
|
|
22
|
+
getChatTranscriptByProvider(params: ChatTranscriptParams, config?: RequestConfig): Promise<ArrayBuffer>;
|
|
23
|
+
getMessages(params?: MessageListParams, config?: RequestConfig): Promise<PaginatedResponse<Message>>;
|
|
24
|
+
getAllMessages(params?: MessageListParams, config?: RequestConfig): Promise<Message[]>;
|
|
25
|
+
getMessageById(id: string, config?: RequestConfig): Promise<Message>;
|
|
26
|
+
getQueues(params?: QueueListParams, config?: RequestConfig): Promise<PaginatedResponse<QueueSummary>>;
|
|
27
|
+
getAllQueues(params?: QueueListParams, config?: RequestConfig): Promise<QueueSummary[]>;
|
|
28
|
+
getQueueById(id: string, config?: RequestConfig): Promise<QueueSummary>;
|
|
29
|
+
getQueueAvailableAgents(queueId: string, config?: RequestConfig): Promise<QueueAvailableAgent[]>;
|
|
30
|
+
getQueueAvailabilityById(queueId: string, flags?: AvailabilityFlags, config?: RequestConfig): Promise<QueueAvailabilityInfo>;
|
|
31
|
+
getProjectAvailabilityById(projectId: string, flags?: AvailabilityFlags, config?: RequestConfig): Promise<ProjectAvailabilityInfo>;
|
|
32
|
+
getUsers(params?: UserListParams, config?: RequestConfig): Promise<PaginatedResponse<User>>;
|
|
33
|
+
getAllUsers(params?: UserListParams, config?: RequestConfig): Promise<User[]>;
|
|
34
|
+
getUserById(id: string, config?: RequestConfig): Promise<User>;
|
|
35
|
+
sendWhatsappTemplate(providerAccountId: string, request: SendWhatsappTemplateRequest, config?: RequestConfig): Promise<SendWhatsappTemplateResponse>;
|
|
36
|
+
addOrUpdateContactInfoField(chatId: string, fieldName: string, value: any, config?: RequestConfig): Promise<void>;
|
|
37
|
+
}
|
|
38
|
+
export interface HubtypeSdkPluginInterface extends Plugin, BotonicPluginHubtypeSdkInterface {
|
|
39
|
+
setAccessToken(accessToken: string): void;
|
|
40
|
+
}
|
|
41
|
+
export interface PaginatedResponse<T> {
|
|
42
|
+
count?: number;
|
|
43
|
+
next: string | null;
|
|
44
|
+
previous: string | null;
|
|
45
|
+
results: T[];
|
|
46
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../../../../libs/botonic/plugin-hubtype-sdk/src/types/shared.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export interface User {
|
|
2
|
+
id: string;
|
|
3
|
+
email: string;
|
|
4
|
+
first_name: string | null;
|
|
5
|
+
last_name: string | null;
|
|
6
|
+
role: RoleEnum;
|
|
7
|
+
status: UserStatusEnum;
|
|
8
|
+
has_translation_service: boolean;
|
|
9
|
+
num_cases_for_busy: number | null;
|
|
10
|
+
}
|
|
11
|
+
export declare enum RoleEnum {
|
|
12
|
+
ADMIN = "role_admin",
|
|
13
|
+
MANAGER = "role_manager",
|
|
14
|
+
AGENT = "role_agent"
|
|
15
|
+
}
|
|
16
|
+
export declare enum UserStatusEnum {
|
|
17
|
+
OFFLINE = "status_offline",
|
|
18
|
+
AVAILABLE = "status_available",
|
|
19
|
+
AWAY = "status_away",
|
|
20
|
+
BUSY = "status_busy"
|
|
21
|
+
}
|
|
22
|
+
export interface UserListParams {
|
|
23
|
+
email?: string;
|
|
24
|
+
order?: string;
|
|
25
|
+
cursor?: string;
|
|
26
|
+
page_size?: number;
|
|
27
|
+
}
|