@futdevpro/nts-dynamo 1.14.26 → 1.14.27
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/build/_modules/assistant/_services/ass-io.control-service.d.ts +2 -2
- package/build/_modules/assistant/_services/ass-io.control-service.d.ts.map +1 -1
- package/build/_modules/assistant/_services/ass-main.control-service.d.ts +2 -2
- package/build/_modules/assistant/_services/ass-main.control-service.d.ts.map +1 -1
- package/build/_modules/assistant/_services/ass.service-base.d.ts +5 -5
- package/build/_modules/assistant/_services/ass.service-base.d.ts.map +1 -1
- package/build/_modules/assistant/_services/ass.service-base.js.map +1 -1
- package/build/_modules/bot/_collections/bot-operations.util.d.ts +13 -13
- package/build/_modules/bot/_collections/bot-operations.util.d.ts.map +1 -1
- package/build/_modules/bot/_collections/bot-operations.util.js.map +1 -1
- package/build/_modules/bot/_models/bot-channel.interface.d.ts +2 -2
- package/build/_modules/bot/_models/bot-channel.interface.d.ts.map +1 -1
- package/build/_modules/bot/_models/bot-command.interface.d.ts +3 -3
- package/build/_modules/bot/_models/bot-command.interface.d.ts.map +1 -1
- package/build/_modules/bot/_models/bot-global-settings.interface.d.ts +3 -3
- package/build/_modules/bot/_models/bot-global-settings.interface.d.ts.map +1 -1
- package/build/_modules/bot/_models/bot-message-wrapper.interface.d.ts +4 -4
- package/build/_modules/bot/_models/bot-message-wrapper.interface.d.ts.map +1 -1
- package/build/_modules/bot/_models/bot-message.interface.d.ts +2 -2
- package/build/_modules/bot/_models/bot-message.interface.d.ts.map +1 -1
- package/build/_modules/bot/_models/{bot-message-provider.interface.d.ts → bot-messaging-provider.interface.d.ts} +19 -19
- package/build/_modules/bot/_models/bot-messaging-provider.interface.d.ts.map +1 -0
- package/build/_modules/bot/_models/{bot-message-provider.interface.js → bot-messaging-provider.interface.js} +1 -1
- package/build/_modules/bot/_models/bot-messaging-provider.interface.js.map +1 -0
- package/build/_modules/bot/_modules/discord-bot/_collections/dib-operations.util.d.ts +2 -2
- package/build/_modules/bot/_modules/discord-bot/_collections/dib-operations.util.d.ts.map +1 -1
- package/build/_modules/bot/_modules/discord-bot/_collections/dib.util.d.ts +2 -2
- package/build/_modules/bot/_modules/discord-bot/_collections/dib.util.d.ts.map +1 -1
- package/build/_modules/bot/_modules/discord-bot/_collections/dib.util.js.map +1 -1
- package/build/_modules/bot/_modules/discord-bot/_services/{dib-message-provider.service.d.ts → dib-messaging-provider.service.d.ts} +4 -4
- package/build/_modules/bot/_modules/discord-bot/_services/dib-messaging-provider.service.d.ts.map +1 -0
- package/build/_modules/bot/_modules/discord-bot/_services/{dib-message-provider.service.js → dib-messaging-provider.service.js} +4 -4
- package/build/_modules/bot/_modules/discord-bot/_services/dib-messaging-provider.service.js.map +1 -0
- package/build/_modules/bot/_modules/discord-bot/index.d.ts +1 -1
- package/build/_modules/bot/_modules/discord-bot/index.d.ts.map +1 -1
- package/build/_modules/bot/_modules/discord-bot/index.js +1 -1
- package/build/_modules/bot/_modules/discord-bot/index.js.map +1 -1
- package/build/_modules/bot/_modules/dynamo-bot/_collections/dyb-operations.util.d.ts +3 -3
- package/build/_modules/bot/_modules/dynamo-bot/_collections/dyb-operations.util.d.ts.map +1 -1
- package/build/_modules/bot/_modules/dynamo-bot/_collections/dyb-operations.util.js.map +1 -1
- package/build/_modules/bot/_modules/dynamo-bot/_collections/dyb.util.d.ts +2 -2
- package/build/_modules/bot/_modules/dynamo-bot/_collections/dyb.util.d.ts.map +1 -1
- package/build/_modules/bot/_modules/dynamo-bot/_collections/dyb.util.js.map +1 -1
- package/build/_modules/bot/_modules/dynamo-bot/_services/{dyb-message-provider.service.d.ts → dyb-messaging-provider.service.d.ts} +5 -5
- package/build/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.service.d.ts.map +1 -0
- package/build/_modules/bot/_modules/dynamo-bot/_services/{dyb-message-provider.service.js → dyb-messaging-provider.service.js} +4 -4
- package/build/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.service.js.map +1 -0
- package/build/_modules/bot/_modules/dynamo-bot/index.d.ts +1 -1
- package/build/_modules/bot/_modules/dynamo-bot/index.d.ts.map +1 -1
- package/build/_modules/bot/_modules/dynamo-bot/index.js +1 -1
- package/build/_modules/bot/_modules/dynamo-bot/index.js.map +1 -1
- package/build/_modules/bot/_modules/slack-bot/_collections/slb-operations.util.d.ts +2 -2
- package/build/_modules/bot/_modules/slack-bot/_collections/slb-operations.util.d.ts.map +1 -1
- package/build/_modules/bot/_modules/slack-bot/_services/{slb-message-provider.service.d.ts → slb-messaging-provider.service.d.ts} +4 -4
- package/build/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.service.d.ts.map +1 -0
- package/build/_modules/bot/_modules/slack-bot/_services/{slb-message-provider.service.js → slb-messaging-provider.service.js} +4 -4
- package/build/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.service.js.map +1 -0
- package/build/_modules/bot/_modules/slack-bot/index.d.ts +1 -1
- package/build/_modules/bot/_modules/slack-bot/index.d.ts.map +1 -1
- package/build/_modules/bot/_modules/slack-bot/index.js +1 -1
- package/build/_modules/bot/_modules/slack-bot/index.js.map +1 -1
- package/build/_modules/bot/_modules/teams-bot/_collections/teb-operations.util.d.ts +2 -2
- package/build/_modules/bot/_modules/teams-bot/_collections/teb-operations.util.d.ts.map +1 -1
- package/build/_modules/bot/_modules/teams-bot/_services/{teb-message-provider.service.d.ts → teb-messaging-provider.service.d.ts} +4 -4
- package/build/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.service.d.ts.map +1 -0
- package/build/_modules/bot/_modules/teams-bot/_services/{teb-message-provider.service.js → teb-messaging-provider.service.js} +4 -4
- package/build/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.service.js.map +1 -0
- package/build/_modules/bot/_modules/teams-bot/index.d.ts +1 -1
- package/build/_modules/bot/_modules/teams-bot/index.d.ts.map +1 -1
- package/build/_modules/bot/_modules/teams-bot/index.js +1 -1
- package/build/_modules/bot/_modules/teams-bot/index.js.map +1 -1
- package/build/_modules/bot/_services/bot-commands.control-service.d.ts +6 -6
- package/build/_modules/bot/_services/bot-commands.control-service.d.ts.map +1 -1
- package/build/_modules/bot/_services/bot-commands.control-service.js.map +1 -1
- package/build/_modules/bot/_services/bot-io.control-service.d.ts +12 -12
- package/build/_modules/bot/_services/bot-io.control-service.d.ts.map +1 -1
- package/build/_modules/bot/_services/bot-io.control-service.js +4 -18
- package/build/_modules/bot/_services/bot-io.control-service.js.map +1 -1
- package/build/_modules/bot/_services/bot-main.control-service.d.ts +16 -16
- package/build/_modules/bot/_services/bot-main.control-service.d.ts.map +1 -1
- package/build/_modules/bot/_services/bot-main.control-service.js +9 -3
- package/build/_modules/bot/_services/bot-main.control-service.js.map +1 -1
- package/build/_modules/bot/_services/bot-messaging-provider-factory.service.d.ts +6 -0
- package/build/_modules/bot/_services/bot-messaging-provider-factory.service.d.ts.map +1 -0
- package/build/_modules/bot/_services/bot-messaging-provider-factory.service.js +47 -0
- package/build/_modules/bot/_services/bot-messaging-provider-factory.service.js.map +1 -0
- package/build/_modules/bot/_services/bot-provider-factory.service.d.ts +2 -3
- package/build/_modules/bot/_services/bot-provider-factory.service.d.ts.map +1 -1
- package/build/_modules/bot/_services/bot-provider-factory.service.js +18 -34
- package/build/_modules/bot/_services/bot-provider-factory.service.js.map +1 -1
- package/build/_modules/bot/_services/bot-routines.control-service.d.ts +2 -2
- package/build/_modules/bot/_services/bot-routines.control-service.d.ts.map +1 -1
- package/build/_modules/bot/index.d.ts +2 -2
- package/build/_modules/bot/index.d.ts.map +1 -1
- package/build/_modules/bot/index.js +2 -2
- package/build/_modules/bot/index.js.map +1 -1
- package/build/_modules/discord-bot/_services/dibo-main.control-service.d.ts.map +1 -1
- package/build/_modules/discord-bot/_services/dibo-main.control-service.js +2 -0
- package/build/_modules/discord-bot/_services/dibo-main.control-service.js.map +1 -1
- package/package.json +1 -1
- package/src/_modules/assistant/_services/ass-io.control-service.ts +3 -3
- package/src/_modules/assistant/_services/ass-main.control-service.ts +3 -3
- package/src/_modules/assistant/_services/ass.service-base.ts +15 -15
- package/src/_modules/bot/_collections/bot-operations.util.ts +14 -14
- package/src/_modules/bot/_models/bot-channel.interface.ts +2 -2
- package/src/_modules/bot/_models/bot-command.interface.ts +3 -3
- package/src/_modules/bot/_models/bot-global-settings.interface.ts +3 -3
- package/src/_modules/bot/_models/bot-message-wrapper.interface.ts +5 -5
- package/src/_modules/bot/_models/bot-message.interface.ts +2 -2
- package/src/_modules/bot/_models/{bot-message-provider.interface.ts → bot-messaging-provider.interface.ts} +21 -21
- package/src/_modules/bot/_modules/discord-bot/_collections/dib-operations.util.ts +2 -2
- package/src/_modules/bot/_modules/discord-bot/_collections/dib.util.ts +2 -2
- package/src/_modules/bot/_modules/discord-bot/_services/{dib-message-provider.service.ts → dib-messaging-provider.service.ts} +4 -4
- package/src/_modules/bot/_modules/discord-bot/index.ts +1 -1
- package/src/_modules/bot/_modules/dynamo-bot/_collections/dyb-operations.util.ts +3 -3
- package/src/_modules/bot/_modules/dynamo-bot/_collections/dyb.util.ts +2 -2
- package/src/_modules/bot/_modules/dynamo-bot/_services/{dyb-message-provider.service.ts → dyb-messaging-provider.service.ts} +5 -5
- package/src/_modules/bot/_modules/dynamo-bot/index.ts +1 -1
- package/src/_modules/bot/_modules/slack-bot/_collections/slb-operations.util.ts +2 -2
- package/src/_modules/bot/_modules/slack-bot/_services/{slb-message-provider.service.ts → slb-messaging-provider.service.ts} +4 -4
- package/src/_modules/bot/_modules/slack-bot/index.ts +1 -1
- package/src/_modules/bot/_modules/teams-bot/_collections/teb-operations.util.ts +2 -2
- package/src/_modules/bot/_modules/teams-bot/_services/{teb-message-provider.service.ts → teb-messaging-provider.service.ts} +4 -4
- package/src/_modules/bot/_modules/teams-bot/index.ts +1 -1
- package/src/_modules/bot/_services/bot-commands.control-service.ts +14 -14
- package/src/_modules/bot/_services/bot-io.control-service.ts +21 -38
- package/src/_modules/bot/_services/bot-main.control-service.ts +56 -49
- package/src/_modules/bot/_services/{bot-provider-factory.service.ts → bot-messaging-provider-factory.service.ts} +13 -13
- package/src/_modules/bot/_services/bot-routines.control-service.ts +3 -3
- package/src/_modules/bot/index.ts +2 -2
- package/src/_modules/discord-bot/_services/dibo-main.control-service.ts +2 -0
- package/build/_modules/bot/_models/bot-message-provider.interface.d.ts.map +0 -1
- package/build/_modules/bot/_models/bot-message-provider.interface.js.map +0 -1
- package/build/_modules/bot/_modules/discord-bot/_services/dib-message-provider.service.d.ts.map +0 -1
- package/build/_modules/bot/_modules/discord-bot/_services/dib-message-provider.service.js.map +0 -1
- package/build/_modules/bot/_modules/dynamo-bot/_services/dyb-message-provider.service.d.ts.map +0 -1
- package/build/_modules/bot/_modules/dynamo-bot/_services/dyb-message-provider.service.js.map +0 -1
- package/build/_modules/bot/_modules/slack-bot/_services/slb-message-provider.service.d.ts.map +0 -1
- package/build/_modules/bot/_modules/slack-bot/_services/slb-message-provider.service.js.map +0 -1
- package/build/_modules/bot/_modules/teams-bot/_services/teb-message-provider.service.d.ts.map +0 -1
- package/build/_modules/bot/_modules/teams-bot/_services/teb-message-provider.service.js.map +0 -1
|
@@ -3,7 +3,7 @@ import { DyNTS_Bot_Message } from '../../bot/_models/bot-message.interface';
|
|
|
3
3
|
import { DyNTS_Bot_MessageWrapper } from '../../bot/_models/bot-message-wrapper.interface';
|
|
4
4
|
import { DyNTS_Bot_Channel } from '../../bot/_models/bot-channel.interface';
|
|
5
5
|
import { DyNTS_Bot_User } from '../../bot/_models/bot-user.interface';
|
|
6
|
-
import {
|
|
6
|
+
import { DyNTS_Bot_MessagingProvider } from '../../bot/_models/bot-messaging-provider.interface';
|
|
7
7
|
import { DyNTS_AI_LLMChat_ServiceBase } from '../../ai/_services/ai-llm-chat.service-base';
|
|
8
8
|
import { DyFM_AI_Message } from '@futdevpro/fsm-dynamo/ai';
|
|
9
9
|
import { DyNTS_Ass_global_settings } from '../_collections/ass-global-settings.const';
|
|
@@ -17,11 +17,11 @@ import { DyNTS_Ass_IO_ControlService } from './ass-io.control-service';
|
|
|
17
17
|
* USES EXISTING AI ABSTRACTIONS - no duplication
|
|
18
18
|
*/
|
|
19
19
|
export abstract class DyNTS_Ass_ServiceBase<
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
> extends DyNTS_Bot_Main_ControlService<
|
|
20
|
+
T_MessagePlatformChannel extends DyNTS_Bot_Channel<any> = DyNTS_Bot_Channel<any>,
|
|
21
|
+
T_MessagePlatformMessage extends DyNTS_Bot_Message<any> = DyNTS_Bot_Message<any>,
|
|
22
|
+
T_MessagePlatformUser extends DyNTS_Bot_User<any> = DyNTS_Bot_User<any>,
|
|
23
|
+
T_MessageProvider extends DyNTS_Bot_MessagingProvider<T_MessagePlatformChannel, T_MessagePlatformMessage, T_MessagePlatformUser> = DyNTS_Bot_MessagingProvider<T_MessagePlatformChannel, T_MessagePlatformMessage, T_MessagePlatformUser>
|
|
24
|
+
> extends DyNTS_Bot_Main_ControlService<T_MessagePlatformChannel, T_MessagePlatformMessage, T_MessagePlatformUser, T_MessageProvider> {
|
|
25
25
|
|
|
26
26
|
// AI Provider - uses EXISTING abstraction
|
|
27
27
|
protected _aiProvider: DyNTS_AI_LLMChat_ServiceBase;
|
|
@@ -34,10 +34,10 @@ export abstract class DyNTS_Ass_ServiceBase<
|
|
|
34
34
|
|
|
35
35
|
// Override botIO to use assistant IO
|
|
36
36
|
protected abstract override getBotIOControlService(): DyNTS_Ass_IO_ControlService<
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
37
|
+
T_MessagePlatformChannel,
|
|
38
|
+
T_MessagePlatformMessage,
|
|
39
|
+
T_MessagePlatformUser,
|
|
40
|
+
T_MessageProvider
|
|
41
41
|
>;
|
|
42
42
|
|
|
43
43
|
// Assistant-specific settings
|
|
@@ -64,10 +64,10 @@ export abstract class DyNTS_Ass_ServiceBase<
|
|
|
64
64
|
* Now uses wrapper's provider to ensure messages from correct platform
|
|
65
65
|
*/
|
|
66
66
|
async gatherMessagesForMessage(
|
|
67
|
-
message:
|
|
68
|
-
wrapper: DyNTS_Bot_MessageWrapper<
|
|
67
|
+
message: T_MessagePlatformMessage,
|
|
68
|
+
wrapper: DyNTS_Bot_MessageWrapper<T_MessagePlatformMessage>,
|
|
69
69
|
limit: number = 100
|
|
70
|
-
): Promise<
|
|
70
|
+
): Promise<T_MessagePlatformMessage[]> {
|
|
71
71
|
const channelId = message.channelId;
|
|
72
72
|
// Use wrapper's provider to fetch messages from the correct platform
|
|
73
73
|
const messages = await wrapper.provider.fetchMessages(channelId, limit);
|
|
@@ -84,8 +84,8 @@ export abstract class DyNTS_Ass_ServiceBase<
|
|
|
84
84
|
* Convert gathered messages to AI conversation using EXISTING DyFM_AI_Message
|
|
85
85
|
*/
|
|
86
86
|
async gatherMessagesAsAIConversation(
|
|
87
|
-
message:
|
|
88
|
-
wrapper: DyNTS_Bot_MessageWrapper<
|
|
87
|
+
message: T_MessagePlatformMessage,
|
|
88
|
+
wrapper: DyNTS_Bot_MessageWrapper<T_MessagePlatformMessage>,
|
|
89
89
|
issuer: string,
|
|
90
90
|
): Promise<DyFM_AI_Message[]> {
|
|
91
91
|
const messages = await this.gatherMessagesForMessage(message, wrapper);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { DyFM_Error, DyFM_Log } from '@futdevpro/fsm-dynamo';
|
|
2
|
-
import {
|
|
2
|
+
import { DyNTS_Bot_MessagingProvider } from '../_models/bot-messaging-provider.interface';
|
|
3
3
|
import { DyNTS_Bot_Message } from '../_models/bot-message.interface';
|
|
4
4
|
import { DyNTS_Bot_Channel } from '../_models/bot-channel.interface';
|
|
5
5
|
import { DyNTS_Bot_User } from '../_models/bot-user.interface';
|
|
@@ -11,11 +11,11 @@ export abstract class DyNTS_Bot_Operations_Util<
|
|
|
11
11
|
T_PlatformChannel extends DyNTS_Bot_Channel<any> = DyNTS_Bot_Channel<any>,
|
|
12
12
|
T_PlatformMessage extends DyNTS_Bot_Message<any> = DyNTS_Bot_Message<any>,
|
|
13
13
|
T_PlatformUser extends DyNTS_Bot_User<any> = DyNTS_Bot_User<any>,
|
|
14
|
-
T_PlatformProvider extends
|
|
14
|
+
T_PlatformProvider extends DyNTS_Bot_MessagingProvider<
|
|
15
15
|
T_PlatformChannel,
|
|
16
16
|
T_PlatformMessage,
|
|
17
17
|
T_PlatformUser
|
|
18
|
-
> =
|
|
18
|
+
> = DyNTS_Bot_MessagingProvider<
|
|
19
19
|
T_PlatformChannel,
|
|
20
20
|
T_PlatformMessage,
|
|
21
21
|
T_PlatformUser
|
|
@@ -24,7 +24,7 @@ export abstract class DyNTS_Bot_Operations_Util<
|
|
|
24
24
|
|
|
25
25
|
static async findChannelByName<
|
|
26
26
|
T_PlatformChannel extends DyNTS_Bot_Channel<any>,
|
|
27
|
-
T_PlatformProvider extends
|
|
27
|
+
T_PlatformProvider extends DyNTS_Bot_MessagingProvider<T_PlatformChannel, any, any>
|
|
28
28
|
>(
|
|
29
29
|
provider: T_PlatformProvider,
|
|
30
30
|
name: string
|
|
@@ -39,7 +39,7 @@ export abstract class DyNTS_Bot_Operations_Util<
|
|
|
39
39
|
return channel;
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
static async sendMessageToChannelByName<T_PlatformChannel extends DyNTS_Bot_Channel<any>, T_PlatformProvider extends
|
|
42
|
+
static async sendMessageToChannelByName<T_PlatformChannel extends DyNTS_Bot_Channel<any>, T_PlatformProvider extends DyNTS_Bot_MessagingProvider<T_PlatformChannel, any, any>>(
|
|
43
43
|
provider: T_PlatformProvider,
|
|
44
44
|
channelName: string,
|
|
45
45
|
message: string
|
|
@@ -54,21 +54,21 @@ export abstract class DyNTS_Bot_Operations_Util<
|
|
|
54
54
|
}
|
|
55
55
|
}
|
|
56
56
|
|
|
57
|
-
static async readMembersInChannel<T_PlatformUser extends DyNTS_Bot_User<any>, T_PlatformProvider extends
|
|
57
|
+
static async readMembersInChannel<T_PlatformUser extends DyNTS_Bot_User<any>, T_PlatformProvider extends DyNTS_Bot_MessagingProvider<any, any, T_PlatformUser>>(
|
|
58
58
|
provider: T_PlatformProvider,
|
|
59
59
|
channelName: string
|
|
60
60
|
): Promise<T_PlatformUser[]> {
|
|
61
61
|
return await provider.readMembersInChannel(channelName);
|
|
62
62
|
}
|
|
63
63
|
|
|
64
|
-
static async readMemberNamesInChannel<T_PlatformProvider extends
|
|
64
|
+
static async readMemberNamesInChannel<T_PlatformProvider extends DyNTS_Bot_MessagingProvider<any, any, any>>(
|
|
65
65
|
provider: T_PlatformProvider,
|
|
66
66
|
channelName: string
|
|
67
67
|
): Promise<string[]> {
|
|
68
68
|
return await provider.readMemberNamesInChannel(channelName);
|
|
69
69
|
}
|
|
70
70
|
|
|
71
|
-
static async fetchAllMessagesWithPaging<T_PlatformMessage extends DyNTS_Bot_Message<any>, T_PlatformProvider extends
|
|
71
|
+
static async fetchAllMessagesWithPaging<T_PlatformMessage extends DyNTS_Bot_Message<any>, T_PlatformProvider extends DyNTS_Bot_MessagingProvider<any, T_PlatformMessage, any>>(
|
|
72
72
|
provider: T_PlatformProvider,
|
|
73
73
|
channelId: string,
|
|
74
74
|
maxFetch = 1000
|
|
@@ -76,7 +76,7 @@ export abstract class DyNTS_Bot_Operations_Util<
|
|
|
76
76
|
return await provider.fetchAllMessagesWithPaging(channelId, maxFetch);
|
|
77
77
|
}
|
|
78
78
|
|
|
79
|
-
static async readLastMessageDatesByMembers<T_PlatformProvider extends
|
|
79
|
+
static async readLastMessageDatesByMembers<T_PlatformProvider extends DyNTS_Bot_MessagingProvider<any, any, any>>(
|
|
80
80
|
provider: T_PlatformProvider,
|
|
81
81
|
channelName: string,
|
|
82
82
|
memberNames: string[]
|
|
@@ -84,7 +84,7 @@ export abstract class DyNTS_Bot_Operations_Util<
|
|
|
84
84
|
return await provider.readLastMessageDatesByMembers(channelName, memberNames);
|
|
85
85
|
}
|
|
86
86
|
|
|
87
|
-
static async readLastMessageWithMemberNamePingInIt<T_PlatformUser extends DyNTS_Bot_User<any>, T_PlatformProvider extends
|
|
87
|
+
static async readLastMessageWithMemberNamePingInIt<T_PlatformUser extends DyNTS_Bot_User<any>, T_PlatformProvider extends DyNTS_Bot_MessagingProvider<any, any, T_PlatformUser>>(
|
|
88
88
|
provider: T_PlatformProvider,
|
|
89
89
|
channelName: string,
|
|
90
90
|
users: T_PlatformUser[]
|
|
@@ -94,7 +94,7 @@ export abstract class DyNTS_Bot_Operations_Util<
|
|
|
94
94
|
|
|
95
95
|
static readMentionsInChannel = this.readLastMessageWithMemberNamePingInIt;
|
|
96
96
|
|
|
97
|
-
static async readLastMessagesInChannel<T_PlatformMessage extends DyNTS_Bot_Message<any>, T_PlatformChannel extends DyNTS_Bot_Channel<any>, T_PlatformProvider extends
|
|
97
|
+
static async readLastMessagesInChannel<T_PlatformMessage extends DyNTS_Bot_Message<any>, T_PlatformChannel extends DyNTS_Bot_Channel<any>, T_PlatformProvider extends DyNTS_Bot_MessagingProvider<T_PlatformChannel, T_PlatformMessage, any>>(
|
|
98
98
|
provider: T_PlatformProvider,
|
|
99
99
|
channelName: string,
|
|
100
100
|
): Promise<T_PlatformMessage[]> {
|
|
@@ -102,14 +102,14 @@ export abstract class DyNTS_Bot_Operations_Util<
|
|
|
102
102
|
return await provider.fetchMessages(channel.id, 100);
|
|
103
103
|
}
|
|
104
104
|
|
|
105
|
-
static async getLastMessageInChannel<T_PlatformMessage extends DyNTS_Bot_Message<any>, T_PlatformProvider extends
|
|
105
|
+
static async getLastMessageInChannel<T_PlatformMessage extends DyNTS_Bot_Message<any>, T_PlatformProvider extends DyNTS_Bot_MessagingProvider<any, T_PlatformMessage, any>>(
|
|
106
106
|
provider: T_PlatformProvider,
|
|
107
107
|
channelName: string
|
|
108
108
|
): Promise<T_PlatformMessage> {
|
|
109
109
|
return await provider.getLastMessageInChannel(channelName);
|
|
110
110
|
}
|
|
111
111
|
|
|
112
|
-
static async deleteMessage<T_PlatformProvider extends
|
|
112
|
+
static async deleteMessage<T_PlatformProvider extends DyNTS_Bot_MessagingProvider<any, any, any>>(
|
|
113
113
|
provider: T_PlatformProvider,
|
|
114
114
|
messageId: string,
|
|
115
115
|
channelId: string
|
|
@@ -121,7 +121,7 @@ export abstract class DyNTS_Bot_Operations_Util<
|
|
|
121
121
|
DyFM_Log.success('Message deleted');
|
|
122
122
|
}
|
|
123
123
|
|
|
124
|
-
static async reportIn<T_PlatformMessage extends DyNTS_Bot_Message<any>, T_PlatformProvider extends
|
|
124
|
+
static async reportIn<T_PlatformMessage extends DyNTS_Bot_Message<any>, T_PlatformProvider extends DyNTS_Bot_MessagingProvider<any, T_PlatformMessage, any>>(provider: T_PlatformProvider): Promise<void> {
|
|
125
125
|
try {
|
|
126
126
|
const lastReportMessage = await this.getLastMessageInChannel(
|
|
127
127
|
provider,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export interface DyNTS_Bot_Channel<
|
|
1
|
+
export interface DyNTS_Bot_Channel<T_MessagingPlatformChannel = any> {
|
|
2
2
|
id: string;
|
|
3
3
|
name: string;
|
|
4
4
|
isTextBased: boolean;
|
|
5
5
|
isDM: boolean;
|
|
6
|
-
rawPlatformChannel:
|
|
6
|
+
rawPlatformChannel: T_MessagingPlatformChannel;
|
|
7
7
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { DyNTS_Bot_Message } from './bot-message.interface';
|
|
2
2
|
|
|
3
|
-
export interface DyNTS_Bot_Command<
|
|
3
|
+
export interface DyNTS_Bot_Command<T_MessagingPlatformMessage extends DyNTS_Bot_Message<any> = DyNTS_Bot_Message<any>> {
|
|
4
4
|
command: string;
|
|
5
5
|
description: string;
|
|
6
|
-
commandHandler: (message:
|
|
7
|
-
permissionNeeded?: (message:
|
|
6
|
+
commandHandler: (message: T_MessagingPlatformMessage) => Promise<void>;
|
|
7
|
+
permissionNeeded?: (message: T_MessagingPlatformMessage) => Promise<boolean>;
|
|
8
8
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { DyNTS_Bot_Command } from './bot-command.interface';
|
|
2
|
-
import {
|
|
2
|
+
import { DyNTS_Bot_MessagingProvider_Config } from './bot-messaging-provider.interface';
|
|
3
3
|
|
|
4
4
|
export interface DyNTS_Bot_Global_Settings {
|
|
5
5
|
/**
|
|
@@ -89,8 +89,8 @@ export interface DyNTS_Bot_Global_Settings {
|
|
|
89
89
|
|
|
90
90
|
export interface DyNTS_Bot_MultiMessageProvider_Settings {
|
|
91
91
|
/** Array of provider configurations (use for multiple providers) */
|
|
92
|
-
providers:
|
|
92
|
+
providers: DyNTS_Bot_MessagingProvider_Config[];
|
|
93
93
|
}
|
|
94
94
|
|
|
95
95
|
/** Union type supporting both single and multi-provider configurations */
|
|
96
|
-
export type DyNTS_Bot_Settings =
|
|
96
|
+
export type DyNTS_Bot_Settings = DyNTS_Bot_MessagingProvider_Config | (DyNTS_Bot_Global_Settings & DyNTS_Bot_MultiMessageProvider_Settings);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { DyNTS_Bot_Message } from './bot-message.interface';
|
|
2
2
|
import { DyNTS_Bot_Channel } from './bot-channel.interface';
|
|
3
3
|
import { DyNTS_Bot_User } from './bot-user.interface';
|
|
4
|
-
import {
|
|
4
|
+
import { DyNTS_Bot_MessagingProvider } from './bot-messaging-provider.interface';
|
|
5
5
|
import { DyNTS_Bot_MessageProvider_Type } from '../_enums/bot-message-provider.enum';
|
|
6
6
|
|
|
7
7
|
/**
|
|
@@ -10,10 +10,10 @@ import { DyNTS_Bot_MessageProvider_Type } from '../_enums/bot-message-provider.e
|
|
|
10
10
|
* back through the correct platform
|
|
11
11
|
*/
|
|
12
12
|
export interface DyNTS_Bot_MessageWrapper<
|
|
13
|
-
|
|
13
|
+
T_MessagingPlatformMessage extends DyNTS_Bot_Message<any> = DyNTS_Bot_Message<any>
|
|
14
14
|
> {
|
|
15
15
|
/** The wrapped message */
|
|
16
|
-
message:
|
|
16
|
+
message: T_MessagingPlatformMessage;
|
|
17
17
|
|
|
18
18
|
/** Unique identifier for the provider instance */
|
|
19
19
|
providerId: string;
|
|
@@ -22,9 +22,9 @@ export interface DyNTS_Bot_MessageWrapper<
|
|
|
22
22
|
providerType: DyNTS_Bot_MessageProvider_Type;
|
|
23
23
|
|
|
24
24
|
/** Reference to the provider instance for sending replies */
|
|
25
|
-
provider:
|
|
25
|
+
provider: DyNTS_Bot_MessagingProvider<
|
|
26
26
|
DyNTS_Bot_Channel<any>,
|
|
27
|
-
|
|
27
|
+
T_MessagingPlatformMessage,
|
|
28
28
|
DyNTS_Bot_User<any>
|
|
29
29
|
>;
|
|
30
30
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export interface DyNTS_Bot_Message<
|
|
1
|
+
export interface DyNTS_Bot_Message<T_MessagingPlatformMessage = any> {
|
|
2
2
|
id: string;
|
|
3
3
|
content: string;
|
|
4
4
|
authorId: string;
|
|
@@ -10,5 +10,5 @@ export interface DyNTS_Bot_Message<T_PlatformMessage = any> {
|
|
|
10
10
|
isBot: boolean;
|
|
11
11
|
replyToMessageId?: string;
|
|
12
12
|
mentions: string[]; // user IDs
|
|
13
|
-
rawPlatformMessage:
|
|
13
|
+
rawPlatformMessage: T_MessagingPlatformMessage; // Original platform message for platform-specific operations
|
|
14
14
|
}
|
|
@@ -6,11 +6,11 @@ import { DyNTS_Bot_LastMentionDate } from './bot-last-mention-date.interface';
|
|
|
6
6
|
import { DyNTS_Bot_MessageProvider_Type } from '../_enums/bot-message-provider.enum';
|
|
7
7
|
import { DyNTS_Bot_Global_Settings } from './bot-global-settings.interface';
|
|
8
8
|
|
|
9
|
-
export interface
|
|
9
|
+
export interface DyNTS_Bot_MessagingProvider_Config extends DyNTS_Bot_Global_Settings {
|
|
10
10
|
/** Unique identifier for this provider instance (required when using multiple providers) */
|
|
11
11
|
providerId?: string;
|
|
12
12
|
messageProvider: DyNTS_Bot_MessageProvider_Type;
|
|
13
|
-
messageProviderInstance?:
|
|
13
|
+
messageProviderInstance?: DyNTS_Bot_MessagingProvider;
|
|
14
14
|
discord?: {
|
|
15
15
|
token: string;
|
|
16
16
|
guildId: string;
|
|
@@ -33,41 +33,41 @@ export interface DyNTS_Bot_MessageProvider_Config extends DyNTS_Bot_Global_Setti
|
|
|
33
33
|
};
|
|
34
34
|
}
|
|
35
35
|
|
|
36
|
-
export interface
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
36
|
+
export interface DyNTS_Bot_MessagingProvider<
|
|
37
|
+
T_MessagingPlatformChannel extends DyNTS_Bot_Channel<any> = DyNTS_Bot_Channel<any>,
|
|
38
|
+
T_MessagingPlatformMessage extends DyNTS_Bot_Message<any> = DyNTS_Bot_Message<any>,
|
|
39
|
+
T_MessagingPlatformUser extends DyNTS_Bot_User<any> = DyNTS_Bot_User<any>
|
|
40
40
|
> {
|
|
41
41
|
// Initialization
|
|
42
|
-
initialize(config:
|
|
42
|
+
initialize(config: DyNTS_Bot_MessagingProvider_Config): Promise<void>;
|
|
43
43
|
login(token: string): Promise<void>;
|
|
44
44
|
|
|
45
45
|
// Channel operations
|
|
46
|
-
getChannelByName(name: string): Promise<
|
|
47
|
-
sendMessageToChannelByName(channelName: string, message: string): Promise<
|
|
48
|
-
getMessagesFromChannelByChannelName(channelName: string, limit?: number): Promise<
|
|
49
|
-
getLastMessageInChannel(channelName: string): Promise<
|
|
46
|
+
getChannelByName(name: string): Promise<T_MessagingPlatformChannel>;
|
|
47
|
+
sendMessageToChannelByName(channelName: string, message: string): Promise<T_MessagingPlatformMessage>;
|
|
48
|
+
getMessagesFromChannelByChannelName(channelName: string, limit?: number): Promise<T_MessagingPlatformMessage[]>;
|
|
49
|
+
getLastMessageInChannel(channelName: string): Promise<T_MessagingPlatformMessage>;
|
|
50
50
|
clearChannel(channelId: string): Promise<void>;
|
|
51
51
|
|
|
52
52
|
// Message operations
|
|
53
|
-
sendMessage(channelId: string, content: string): Promise<
|
|
54
|
-
replyToMessage(messageId: string, channelId: string, content: string): Promise<
|
|
53
|
+
sendMessage(channelId: string, content: string): Promise<T_MessagingPlatformMessage>;
|
|
54
|
+
replyToMessage(messageId: string, channelId: string, content: string): Promise<T_MessagingPlatformMessage>;
|
|
55
55
|
sendTyping(channelId: string): Promise<void>;
|
|
56
|
-
fetchMessages(channelId: string, limit: number): Promise<
|
|
57
|
-
fetchAllMessagesWithPaging(channelId: string, maxFetch?: number): Promise<
|
|
56
|
+
fetchMessages(channelId: string, limit: number): Promise<T_MessagingPlatformMessage[]>;
|
|
57
|
+
fetchAllMessagesWithPaging(channelId: string, maxFetch?: number): Promise<T_MessagingPlatformMessage[]>;
|
|
58
58
|
deleteMessage(messageId: string, channelId: string): Promise<void>;
|
|
59
59
|
|
|
60
60
|
// User operations
|
|
61
|
-
getUserByName(username: string): Promise<
|
|
61
|
+
getUserByName(username: string): Promise<T_MessagingPlatformUser>;
|
|
62
62
|
getUserMention(userId: string): string;
|
|
63
|
-
readMembersInChannel(channelName: string): Promise<
|
|
63
|
+
readMembersInChannel(channelName: string): Promise<T_MessagingPlatformUser[]>;
|
|
64
64
|
readMemberNamesInChannel(channelName: string): Promise<string[]>;
|
|
65
65
|
|
|
66
66
|
// Advanced message queries
|
|
67
|
-
getLastMessageSentBy(channelName: string, username: string): Promise<
|
|
68
|
-
getLastMentionOf(channelName: string, username: string): Promise<
|
|
67
|
+
getLastMessageSentBy(channelName: string, username: string): Promise<T_MessagingPlatformMessage>;
|
|
68
|
+
getLastMentionOf(channelName: string, username: string): Promise<T_MessagingPlatformMessage>;
|
|
69
69
|
readLastMessageDatesByMembers(channelName: string, memberNames: string[]): Promise<DyNTS_Bot_LastMessageDate[]>;
|
|
70
|
-
readLastMessageWithMemberNamePingInIt(channelName: string, users:
|
|
70
|
+
readLastMessageWithMemberNamePingInIt(channelName: string, users: T_MessagingPlatformUser[]): Promise<DyNTS_Bot_LastMentionDate[]>;
|
|
71
71
|
|
|
72
72
|
// Platform-specific features (optional, may return null/undefined for unsupported platforms)
|
|
73
73
|
getRoleByName?(roleName: string): any;
|
|
@@ -75,7 +75,7 @@ export interface DyNTS_Bot_MessageProvider<
|
|
|
75
75
|
getRolePingsByName?(roleNames: string[]): Promise<string>;
|
|
76
76
|
|
|
77
77
|
// Event binding
|
|
78
|
-
onMessage(handler: (message:
|
|
78
|
+
onMessage(handler: (message: T_MessagingPlatformMessage, issuer: string, providerId?: string) => void): void;
|
|
79
79
|
onReady(handler: () => void): void;
|
|
80
80
|
onError(handler: (error: Error) => void): void;
|
|
81
81
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { DyNTS_Bot_Operations_Util } from '../../../_collections/bot-operations.util';
|
|
2
2
|
import { DyNTS_DiB_Message, DyNTS_DiB_Channel, DyNTS_DiB_User } from '../_models/dib-platform.types';
|
|
3
|
-
import {
|
|
3
|
+
import { DyNTS_DiB_MessagingProvider } from '../_services/dib-messaging-provider.service';
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* Discord Bot Operations Utility
|
|
@@ -11,7 +11,7 @@ export class DyNTS_DiB_Operations_Util extends DyNTS_Bot_Operations_Util<
|
|
|
11
11
|
DyNTS_DiB_Channel,
|
|
12
12
|
DyNTS_DiB_Message,
|
|
13
13
|
DyNTS_DiB_User,
|
|
14
|
-
|
|
14
|
+
DyNTS_DiB_MessagingProvider
|
|
15
15
|
> {
|
|
16
16
|
// Discord-specific operations can be added here
|
|
17
17
|
// All base operations are inherited from the generic class
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { DyFM_Error, DyFM_Log } from '@futdevpro/fsm-dynamo';
|
|
2
|
-
import {
|
|
2
|
+
import { DyNTS_DiB_MessagingProvider } from '../_services/dib-messaging-provider.service';
|
|
3
3
|
import { DyNTS_global_settings } from '../../../../../_collections/global-settings.const';
|
|
4
4
|
|
|
5
5
|
export class DyNTS_DiB_Util {
|
|
6
6
|
|
|
7
|
-
static async reportIn(provider:
|
|
7
|
+
static async reportIn(provider: DyNTS_DiB_MessagingProvider): Promise<void> {
|
|
8
8
|
try {
|
|
9
9
|
const reportMessage = `${provider.getBotDisplayName()} report for duty! ` +
|
|
10
10
|
`(v${DyNTS_global_settings.systemVersion} ${DyNTS_global_settings.env_settings?.environment})`;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { Client, GatewayIntentBits, Guild, Collection, GuildMember, Message, Partials, Role, TextChannel } from 'discord.js';
|
|
2
2
|
import { DyFM_Error, DyFM_Log } from '@futdevpro/fsm-dynamo';
|
|
3
|
-
import {
|
|
3
|
+
import { DyNTS_Bot_MessagingProvider, DyNTS_Bot_MessagingProvider_Config } from '../../../_models/bot-messaging-provider.interface';
|
|
4
4
|
import { DyNTS_Bot_LastMessageDate } from '../../../_models/bot-last-message-date.interface';
|
|
5
5
|
import { DyNTS_Bot_LastMentionDate } from '../../../_models/bot-last-mention-date.interface';
|
|
6
6
|
import { DyNTS_Bot_MessageProvider_Type } from '../../../_enums/bot-message-provider.enum';
|
|
7
7
|
import { DyNTS_DiB_Message, DyNTS_DiB_Channel, DyNTS_DiB_User } from '../_models/dib-platform.types';
|
|
8
8
|
import { DyNTS_global_settings } from '../../../../../_collections/global-settings.const';
|
|
9
9
|
|
|
10
|
-
export class
|
|
10
|
+
export class DyNTS_DiB_MessagingProvider implements DyNTS_Bot_MessagingProvider<
|
|
11
11
|
DyNTS_DiB_Channel,
|
|
12
12
|
DyNTS_DiB_Message,
|
|
13
13
|
DyNTS_DiB_User
|
|
@@ -17,7 +17,7 @@ export class DyNTS_DiB_MessageProvider implements DyNTS_Bot_MessageProvider<
|
|
|
17
17
|
private channelCache: Map<string, TextChannel>;
|
|
18
18
|
private roleCache: Map<string, Role>;
|
|
19
19
|
private isInitialized: boolean = false;
|
|
20
|
-
private config:
|
|
20
|
+
private config: DyNTS_Bot_MessagingProvider_Config;
|
|
21
21
|
|
|
22
22
|
// Event handlers
|
|
23
23
|
private messageHandlers: Array<(message: DyNTS_DiB_Message, issuer: string) => void> = [];
|
|
@@ -38,7 +38,7 @@ export class DyNTS_DiB_MessageProvider implements DyNTS_Bot_MessageProvider<
|
|
|
38
38
|
return this.guild;
|
|
39
39
|
}
|
|
40
40
|
|
|
41
|
-
async initialize(config:
|
|
41
|
+
async initialize(config: DyNTS_Bot_MessagingProvider_Config): Promise<void> {
|
|
42
42
|
this.config = config;
|
|
43
43
|
|
|
44
44
|
if (config.messageProvider !== DyNTS_Bot_MessageProvider_Type.discord) {
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
export * from './_models/dib-platform.types';
|
|
9
9
|
|
|
10
10
|
// SERVICES
|
|
11
|
-
export * from './_services/dib-
|
|
11
|
+
export * from './_services/dib-messaging-provider.service';
|
|
12
12
|
|
|
13
13
|
// COLLECTIONS
|
|
14
14
|
export * from './_collections/dib-operations.util';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { DyFM_Error, DyFM_Log } from '@futdevpro/fsm-dynamo';
|
|
2
|
-
import {
|
|
2
|
+
import { DyNTS_DyB_MessagingProvider } from '../_services/dyb-messaging-provider.service';
|
|
3
3
|
import { DyNTS_DyB_Message, DyNTS_DyB_Channel } from '../_models/dyb-platform.types';
|
|
4
4
|
|
|
5
5
|
export class DyNTS_DyB_Operations_Util {
|
|
@@ -7,7 +7,7 @@ export class DyNTS_DyB_Operations_Util {
|
|
|
7
7
|
/**
|
|
8
8
|
* Get conversation statistics
|
|
9
9
|
*/
|
|
10
|
-
static async getConversationStats(provider:
|
|
10
|
+
static async getConversationStats(provider: DyNTS_DyB_MessagingProvider, conversationId: string): Promise<{
|
|
11
11
|
messageCount: number;
|
|
12
12
|
participantCount: number;
|
|
13
13
|
lastActivity: Date | null;
|
|
@@ -35,7 +35,7 @@ export class DyNTS_DyB_Operations_Util {
|
|
|
35
35
|
* Search messages in conversation
|
|
36
36
|
*/
|
|
37
37
|
static async searchMessages(
|
|
38
|
-
provider:
|
|
38
|
+
provider: DyNTS_DyB_MessagingProvider,
|
|
39
39
|
conversationId: string,
|
|
40
40
|
searchTerm: string
|
|
41
41
|
): Promise<DyNTS_DyB_Message[]> {
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { DyFM_Error, DyFM_Log } from '@futdevpro/fsm-dynamo';
|
|
2
|
-
import {
|
|
2
|
+
import { DyNTS_DyB_MessagingProvider } from '../_services/dyb-messaging-provider.service';
|
|
3
3
|
import { DyNTS_global_settings } from '../../../../../_collections/global-settings.const';
|
|
4
4
|
|
|
5
5
|
export class DyNTS_DyB_Util {
|
|
6
6
|
|
|
7
|
-
static async reportIn(provider:
|
|
7
|
+
static async reportIn(provider: DyNTS_DyB_MessagingProvider): Promise<void> {
|
|
8
8
|
try {
|
|
9
9
|
const reportMessage = `${provider.getBotDisplayName()} report for duty! ` +
|
|
10
10
|
`(v${DyNTS_global_settings.systemVersion} ${DyNTS_global_settings.env_settings?.environment})`;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { DyFM_Error, DyFM_Log, week } from '@futdevpro/fsm-dynamo';
|
|
2
|
-
import {
|
|
2
|
+
import { DyNTS_Bot_MessagingProvider, DyNTS_Bot_MessagingProvider_Config } from '../../../_models/bot-messaging-provider.interface';
|
|
3
3
|
import { DyNTS_Bot_LastMessageDate } from '../../../_models/bot-last-message-date.interface';
|
|
4
4
|
import { DyNTS_Bot_LastMentionDate } from '../../../_models/bot-last-mention-date.interface';
|
|
5
5
|
import { DyNTS_Bot_MessageProvider_Type } from '../../../_enums/bot-message-provider.enum';
|
|
@@ -11,13 +11,13 @@ import { DyNTS_Msg_Conversation_DataService } from '../../../../messaging/_servi
|
|
|
11
11
|
import { DyNTS_Msg_Events_Service } from '../../../../messaging/_services/msg-events.service';
|
|
12
12
|
import { DyFM_Msg_Conversation, DyFM_Msg_EventKey, DyFM_Msg_Message, DyFM_Msg_Participant } from '@futdevpro/fsm-dynamo/messaging';
|
|
13
13
|
|
|
14
|
-
export class
|
|
14
|
+
export class DyNTS_DyB_MessagingProvider implements DyNTS_Bot_MessagingProvider<
|
|
15
15
|
DyNTS_DyB_Channel,
|
|
16
16
|
DyNTS_DyB_Message,
|
|
17
17
|
DyNTS_DyB_User
|
|
18
18
|
> {
|
|
19
19
|
private isInitialized: boolean = false;
|
|
20
|
-
private config:
|
|
20
|
+
private config: DyNTS_Bot_MessagingProvider_Config;
|
|
21
21
|
private conversationCache: Map<string, DyNTS_DyB_Channel>;
|
|
22
22
|
private userCache: Map<string, DyNTS_DyB_User>;
|
|
23
23
|
|
|
@@ -37,7 +37,7 @@ export class DyNTS_DyB_MessageProvider implements DyNTS_Bot_MessageProvider<
|
|
|
37
37
|
this.eventsService = DyNTS_Msg_Events_Service.getInstance();
|
|
38
38
|
}
|
|
39
39
|
|
|
40
|
-
async initialize(config:
|
|
40
|
+
async initialize(config: DyNTS_Bot_MessagingProvider_Config): Promise<void> {
|
|
41
41
|
this.config = config;
|
|
42
42
|
|
|
43
43
|
if (config.messageProvider !== DyNTS_Bot_MessageProvider_Type.dynamo) {
|
|
@@ -358,7 +358,7 @@ export class DyNTS_DyB_MessageProvider implements DyNTS_Bot_MessageProvider<
|
|
|
358
358
|
}
|
|
359
359
|
|
|
360
360
|
// Helper method to get config
|
|
361
|
-
getConfig():
|
|
361
|
+
getConfig(): DyNTS_Bot_MessagingProvider_Config {
|
|
362
362
|
return this.config;
|
|
363
363
|
}
|
|
364
364
|
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
export * from './_models/dyb-platform.types';
|
|
10
10
|
|
|
11
11
|
// SERVICES
|
|
12
|
-
export * from './_services/dyb-
|
|
12
|
+
export * from './_services/dyb-messaging-provider.service';
|
|
13
13
|
|
|
14
14
|
// COLLECTIONS
|
|
15
15
|
export * from './_collections/dyb-operations.util';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { DyNTS_Bot_Operations_Util } from '../../../_collections/bot-operations.util';
|
|
2
2
|
import { DyNTS_SlB_Message, DyNTS_SlB_Channel, DyNTS_SlB_User } from '../_models/slb-platform.types';
|
|
3
|
-
import {
|
|
3
|
+
import { DyNTS_SlB_MessagingProvider } from '../_services/slb-messaging-provider.service';
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* Slack Bot Operations Utility
|
|
@@ -11,7 +11,7 @@ export class DyNTS_SlB_Operations_Util extends DyNTS_Bot_Operations_Util<
|
|
|
11
11
|
DyNTS_SlB_Channel,
|
|
12
12
|
DyNTS_SlB_Message,
|
|
13
13
|
DyNTS_SlB_User,
|
|
14
|
-
|
|
14
|
+
DyNTS_SlB_MessagingProvider
|
|
15
15
|
> {
|
|
16
16
|
// Slack-specific operations can be added here
|
|
17
17
|
// All base operations are inherited from the generic class
|
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { DyNTS_Bot_MessagingProvider, DyNTS_Bot_MessagingProvider_Config } from '../../../_models/bot-messaging-provider.interface';
|
|
2
2
|
import { DyNTS_Bot_LastMessageDate } from '../../../_models/bot-last-message-date.interface';
|
|
3
3
|
import { DyNTS_Bot_LastMentionDate } from '../../../_models/bot-last-mention-date.interface';
|
|
4
4
|
import { DyNTS_Bot_MessageProvider_Type } from '../../../_enums/bot-message-provider.enum';
|
|
5
5
|
import { DyNTS_SlB_Message, DyNTS_SlB_Channel, DyNTS_SlB_User } from '../_models/slb-platform.types';
|
|
6
6
|
|
|
7
|
-
export class
|
|
7
|
+
export class DyNTS_SlB_MessagingProvider implements DyNTS_Bot_MessagingProvider<
|
|
8
8
|
DyNTS_SlB_Channel,
|
|
9
9
|
DyNTS_SlB_Message,
|
|
10
10
|
DyNTS_SlB_User
|
|
11
11
|
> {
|
|
12
12
|
private isInitialized: boolean = false;
|
|
13
|
-
private config:
|
|
13
|
+
private config: DyNTS_Bot_MessagingProvider_Config;
|
|
14
14
|
|
|
15
15
|
// Event handlers
|
|
16
16
|
private messageHandlers: Array<(message: DyNTS_SlB_Message, issuer: string) => void> = [];
|
|
17
17
|
private readyHandlers: Array<() => void> = [];
|
|
18
18
|
private errorHandlers: Array<(error: Error) => void> = [];
|
|
19
19
|
|
|
20
|
-
async initialize(config:
|
|
20
|
+
async initialize(config: DyNTS_Bot_MessagingProvider_Config): Promise<void> {
|
|
21
21
|
this.config = config;
|
|
22
22
|
|
|
23
23
|
if (config.messageProvider !== DyNTS_Bot_MessageProvider_Type.slack) {
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
export * from './_models/slb-platform.types';
|
|
9
9
|
|
|
10
10
|
// SERVICES
|
|
11
|
-
export * from './_services/slb-
|
|
11
|
+
export * from './_services/slb-messaging-provider.service';
|
|
12
12
|
|
|
13
13
|
// COLLECTIONS
|
|
14
14
|
export * from './_collections/slb-operations.util';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { DyNTS_Bot_Operations_Util } from '../../../_collections/bot-operations.util';
|
|
2
2
|
import { DyNTS_TeB_Message, DyNTS_TeB_Channel, DyNTS_TeB_User } from '../_models/teb-platform.types';
|
|
3
|
-
import {
|
|
3
|
+
import { DyNTS_TeB_MessagingProvider } from '../_services/teb-messaging-provider.service';
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* Teams Bot Operations Utility
|
|
@@ -11,7 +11,7 @@ export class DyNTS_TeB_Operations_Util extends DyNTS_Bot_Operations_Util<
|
|
|
11
11
|
DyNTS_TeB_Channel,
|
|
12
12
|
DyNTS_TeB_Message,
|
|
13
13
|
DyNTS_TeB_User,
|
|
14
|
-
|
|
14
|
+
DyNTS_TeB_MessagingProvider
|
|
15
15
|
> {
|
|
16
16
|
// Teams-specific operations can be added here
|
|
17
17
|
// All base operations are inherited from the generic class
|
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { DyNTS_Bot_MessagingProvider, DyNTS_Bot_MessagingProvider_Config } from '../../../_models/bot-messaging-provider.interface';
|
|
2
2
|
import { DyNTS_Bot_LastMessageDate } from '../../../_models/bot-last-message-date.interface';
|
|
3
3
|
import { DyNTS_Bot_LastMentionDate } from '../../../_models/bot-last-mention-date.interface';
|
|
4
4
|
import { DyNTS_Bot_MessageProvider_Type } from '../../../_enums/bot-message-provider.enum';
|
|
5
5
|
import { DyNTS_TeB_Message, DyNTS_TeB_Channel, DyNTS_TeB_User } from '../_models/teb-platform.types';
|
|
6
6
|
|
|
7
|
-
export class
|
|
7
|
+
export class DyNTS_TeB_MessagingProvider implements DyNTS_Bot_MessagingProvider<
|
|
8
8
|
DyNTS_TeB_Channel,
|
|
9
9
|
DyNTS_TeB_Message,
|
|
10
10
|
DyNTS_TeB_User
|
|
11
11
|
> {
|
|
12
12
|
private isInitialized: boolean = false;
|
|
13
|
-
private config:
|
|
13
|
+
private config: DyNTS_Bot_MessagingProvider_Config;
|
|
14
14
|
|
|
15
15
|
// Event handlers
|
|
16
16
|
private messageHandlers: Array<(message: DyNTS_TeB_Message, issuer: string) => void> = [];
|
|
17
17
|
private readyHandlers: Array<() => void> = [];
|
|
18
18
|
private errorHandlers: Array<(error: Error) => void> = [];
|
|
19
19
|
|
|
20
|
-
async initialize(config:
|
|
20
|
+
async initialize(config: DyNTS_Bot_MessagingProvider_Config): Promise<void> {
|
|
21
21
|
this.config = config;
|
|
22
22
|
|
|
23
23
|
if (config.messageProvider !== DyNTS_Bot_MessageProvider_Type.teams) {
|