@futdevpro/nts-dynamo 1.14.78 → 1.14.80
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/bot/_modules/discord-bot/_services/dib-messaging-provider.control-service.d.ts +4 -4
- package/build/_modules/bot/_modules/discord-bot/_services/dib-messaging-provider.control-service.d.ts.map +1 -1
- package/build/_modules/bot/_modules/discord-bot/_services/dib-messaging-provider.control-service.js +22 -22
- package/build/_modules/bot/_modules/discord-bot/_services/dib-messaging-provider.control-service.js.map +1 -1
- package/build/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.d.ts +4 -4
- package/build/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.d.ts.map +1 -1
- package/build/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.js +19 -19
- package/build/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.js.map +1 -1
- package/build/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.d.ts +4 -4
- package/build/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.d.ts.map +1 -1
- package/build/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.js +1 -1
- package/build/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.js.map +1 -1
- package/build/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.d.ts +4 -4
- package/build/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.d.ts.map +1 -1
- package/build/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.js +1 -1
- package/build/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.js.map +1 -1
- package/build/_modules/bot/_services/bot-main.control-service.js +2 -2
- package/build/_modules/bot/_services/bot-main.control-service.js.map +1 -1
- package/build/_modules/bot/_services/bot-messaging-provider.service-base.d.ts +4 -4
- package/build/_modules/bot/_services/bot-messaging-provider.service-base.d.ts.map +1 -1
- package/build/_services/base/data.service.d.ts.map +1 -1
- package/build/_services/base/data.service.js +10 -2
- package/build/_services/base/data.service.js.map +1 -1
- package/package.json +1 -1
- package/src/_modules/bot/_modules/discord-bot/_services/dib-messaging-provider.control-service.ts +30 -24
- package/src/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.ts +22 -22
- package/src/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.ts +6 -6
- package/src/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.ts +6 -6
- package/src/_modules/bot/_services/bot-main.control-service.ts +2 -2
- package/src/_modules/bot/_services/bot-messaging-provider.service-base.ts +5 -5
- package/src/_services/base/data.service.ts +15 -5
package/src/_modules/bot/_modules/discord-bot/_services/dib-messaging-provider.control-service.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Client, GatewayIntentBits, Guild, Collection, GuildMember, Message, Partials, Role, TextChannel, Channel, DMChannel } from 'discord.js';
|
|
2
|
-
import { DyFM_AnyError, DyFM_Error, DyFM_Log, week } from '@futdevpro/fsm-dynamo';
|
|
2
|
+
import { DyFM_AnyError, DyFM_Array, DyFM_Error, DyFM_Log, week } from '@futdevpro/fsm-dynamo';
|
|
3
3
|
import { DyNTS_Bot_MessagingProvider_ServiceBase, DyNTS_Bot_MessagingProvider_Config } from '../../../_services/bot-messaging-provider.service-base';
|
|
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';
|
|
@@ -115,7 +115,7 @@ export class DyNTS_DiB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
115
115
|
|
|
116
116
|
async getChannelByName(name: string): Promise<DyNTS_DiB_Channel> {
|
|
117
117
|
if (this.channelCache.has(name)) {
|
|
118
|
-
return this.wrapChannel(this.channelCache.get(name));
|
|
118
|
+
return await this.wrapChannel(this.channelCache.get(name));
|
|
119
119
|
}
|
|
120
120
|
|
|
121
121
|
const channel = this.guild.channels.cache.find(
|
|
@@ -127,7 +127,7 @@ export class DyNTS_DiB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
127
127
|
}
|
|
128
128
|
|
|
129
129
|
this.channelCache.set(name, channel);
|
|
130
|
-
return this.wrapChannel(channel);
|
|
130
|
+
return await this.wrapChannel(channel);
|
|
131
131
|
}
|
|
132
132
|
|
|
133
133
|
async getChannelById(id: string): Promise<DyNTS_DiB_Channel> {
|
|
@@ -139,7 +139,7 @@ export class DyNTS_DiB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
139
139
|
if (!this.channelCache.has(channel.name)) {
|
|
140
140
|
this.channelCache.set(channel.name, channel);
|
|
141
141
|
}
|
|
142
|
-
return this.wrapChannel(channel);
|
|
142
|
+
return await this.wrapChannel(channel);
|
|
143
143
|
}
|
|
144
144
|
|
|
145
145
|
async sendMessageToChannelByName(channelName: string, message: string): Promise<DyNTS_DiB_Message> {
|
|
@@ -190,7 +190,7 @@ export class DyNTS_DiB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
190
190
|
limit: limit
|
|
191
191
|
});
|
|
192
192
|
|
|
193
|
-
return Array.from(messages.values()).map((msg: Message) => this.wrapMessage(msg));
|
|
193
|
+
return await Promise.all(Array.from(messages.values()).map(async (msg: Message) => await this.wrapMessage(msg)));
|
|
194
194
|
}
|
|
195
195
|
|
|
196
196
|
async getLastMessageInChannel(channelName: string): Promise<DyNTS_DiB_Message> {
|
|
@@ -205,7 +205,7 @@ export class DyNTS_DiB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
205
205
|
});
|
|
206
206
|
const lastMessage: Message = messages.first();
|
|
207
207
|
|
|
208
|
-
return lastMessage ? this.wrapMessage(lastMessage) : null;
|
|
208
|
+
return lastMessage ? await this.wrapMessage(lastMessage) : null;
|
|
209
209
|
}
|
|
210
210
|
|
|
211
211
|
async clearChannel(channel: DyNTS_DiB_Channel): Promise<void> {
|
|
@@ -261,10 +261,10 @@ export class DyNTS_DiB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
261
261
|
}
|
|
262
262
|
|
|
263
263
|
firstMessage.content = originalContent;
|
|
264
|
-
return this.wrapMessage(firstMessage);
|
|
264
|
+
return await this.wrapMessage(firstMessage);
|
|
265
265
|
} else {
|
|
266
266
|
const message: Message = await discordTextChannel.send(content);
|
|
267
|
-
return this.wrapMessage(message);
|
|
267
|
+
return await this.wrapMessage(message);
|
|
268
268
|
}
|
|
269
269
|
}
|
|
270
270
|
|
|
@@ -295,10 +295,10 @@ export class DyNTS_DiB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
295
295
|
}
|
|
296
296
|
|
|
297
297
|
firstMessage.content = originalContent;
|
|
298
|
-
return this.wrapMessage(firstMessage);
|
|
298
|
+
return await this.wrapMessage(firstMessage);
|
|
299
299
|
} else {
|
|
300
300
|
const reply: Message= await message.rawPlatformMessage.reply(content);
|
|
301
|
-
return this.wrapMessage(reply);
|
|
301
|
+
return await this.wrapMessage(reply);
|
|
302
302
|
}
|
|
303
303
|
} catch (error) {
|
|
304
304
|
DyFM_Error.logSimple('Error replying to message:', error);
|
|
@@ -334,7 +334,7 @@ export class DyNTS_DiB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
334
334
|
const messages: Collection<string, Message> = await (channel.rawPlatformChannel as TextChannel).messages.fetch({
|
|
335
335
|
limit: limit
|
|
336
336
|
});
|
|
337
|
-
return Array.from(messages.values()).map((msg: Message) => this.wrapMessage(msg));
|
|
337
|
+
return await Promise.all(Array.from(messages.values()).map(async (msg: Message) => await this.wrapMessage(msg)));
|
|
338
338
|
}
|
|
339
339
|
|
|
340
340
|
async fetchMessagesById(id: string, limit: number): Promise<DyNTS_DiB_Message[]> {
|
|
@@ -350,7 +350,7 @@ export class DyNTS_DiB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
350
350
|
const messages: Collection<string, Message> = await message.rawPlatformMessage.channel.messages.fetch({
|
|
351
351
|
limit: limit
|
|
352
352
|
});
|
|
353
|
-
return Array.from(messages.values()).map((msg: Message) => this.wrapMessage(msg));
|
|
353
|
+
return await Promise.all(Array.from(messages.values()).map(async (msg: Message) => await this.wrapMessage(msg)));
|
|
354
354
|
}
|
|
355
355
|
|
|
356
356
|
async fetchAllMessagesWithPaging(channel: DyNTS_DiB_Channel, maxFetch: number = 1000): Promise<DyNTS_DiB_Message[]> {
|
|
@@ -369,9 +369,12 @@ export class DyNTS_DiB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
369
369
|
const messageCollection: Collection<string, Message> = await channel.rawPlatformChannel.messages.fetch(options);
|
|
370
370
|
if (messageCollection.size === 0) break;
|
|
371
371
|
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
372
|
+
await DyFM_Array.asyncForEach(
|
|
373
|
+
Array.from(messageCollection.values()),
|
|
374
|
+
async (msg: Message) => {
|
|
375
|
+
allMessages.push(await this.wrapMessage(msg));
|
|
376
|
+
}
|
|
377
|
+
);
|
|
375
378
|
|
|
376
379
|
lastId = Array.from(messageCollection.values()).pop()?.id;
|
|
377
380
|
fetched += messageCollection.size;
|
|
@@ -392,7 +395,7 @@ export class DyNTS_DiB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
392
395
|
throw new Error(`User not found with username: ${username}`);
|
|
393
396
|
}
|
|
394
397
|
|
|
395
|
-
return this.wrapUser(member);
|
|
398
|
+
return await this.wrapUser(member);
|
|
396
399
|
}
|
|
397
400
|
|
|
398
401
|
getUserMention(userId: string): string {
|
|
@@ -408,7 +411,10 @@ export class DyNTS_DiB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
408
411
|
(channel.rawPlatformChannel as TextChannel).permissionsFor(member)?.has('ViewChannel')
|
|
409
412
|
);
|
|
410
413
|
|
|
411
|
-
return
|
|
414
|
+
return await DyFM_Array.asyncMap(
|
|
415
|
+
Array.from(allowedMembers.values()),
|
|
416
|
+
async (member: GuildMember) => await this.wrapUser(member)
|
|
417
|
+
);
|
|
412
418
|
}
|
|
413
419
|
|
|
414
420
|
async fetchMembersInGuild(guild: Guild): Promise<Collection<string, GuildMember>> {
|
|
@@ -545,9 +551,9 @@ export class DyNTS_DiB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
545
551
|
return pings.join(' ');
|
|
546
552
|
}
|
|
547
553
|
|
|
548
|
-
create_onMessageEventListener(handler: (message: DyNTS_DiB_Message, issuer: string) => void): void {
|
|
549
|
-
this.client.on('messageCreate', (message: Message) => {
|
|
550
|
-
handler(this.wrapMessage(message), 'discord');
|
|
554
|
+
async create_onMessageEventListener(handler: (message: DyNTS_DiB_Message, issuer: string) => Promise<void>): Promise<void> {
|
|
555
|
+
this.client.on('messageCreate', async (message: Message) => {
|
|
556
|
+
await handler(await this.wrapMessage(message), 'discord');
|
|
551
557
|
});
|
|
552
558
|
}
|
|
553
559
|
|
|
@@ -569,7 +575,7 @@ export class DyNTS_DiB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
569
575
|
);
|
|
570
576
|
}
|
|
571
577
|
|
|
572
|
-
wrapMessage(message: Message): DyNTS_DiB_Message {
|
|
578
|
+
async wrapMessage(message: Message): Promise<DyNTS_DiB_Message> {
|
|
573
579
|
let replyTo: Message | null = null;
|
|
574
580
|
if (message.reference?.messageId) {
|
|
575
581
|
replyTo = message.channel.messages.cache.get(
|
|
@@ -597,14 +603,14 @@ export class DyNTS_DiB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
597
603
|
|
|
598
604
|
issuer: message.author.id,
|
|
599
605
|
|
|
600
|
-
channel: this.wrapChannel(message.channel),
|
|
606
|
+
channel: await this.wrapChannel(message.channel),
|
|
601
607
|
/* user: this.wrapUser(message.author), */
|
|
602
608
|
|
|
603
609
|
provider: this,
|
|
604
610
|
});
|
|
605
611
|
}
|
|
606
612
|
|
|
607
|
-
wrapChannel(channel: Channel): DyNTS_DiB_Channel {
|
|
613
|
+
async wrapChannel(channel: Channel): Promise<DyNTS_DiB_Channel> {
|
|
608
614
|
return new DyNTS_Bot_ChannelWrapper<Channel>({
|
|
609
615
|
id: channel.id,
|
|
610
616
|
name: (channel as TextChannel).name || ('DM Channel with ' + (channel as DMChannel).recipient.username),
|
|
@@ -617,7 +623,7 @@ export class DyNTS_DiB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
617
623
|
});
|
|
618
624
|
}
|
|
619
625
|
|
|
620
|
-
wrapUser(user: GuildMember): DyNTS_DiB_User {
|
|
626
|
+
async wrapUser(user: GuildMember): Promise<DyNTS_DiB_User> {
|
|
621
627
|
return new DyNTS_Bot_UserWrapper<GuildMember>({
|
|
622
628
|
id: user.user.id,
|
|
623
629
|
username: user.user.username,
|
package/src/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DyFM_AnyError, DyFM_Error, DyFM_Log, week } from '@futdevpro/fsm-dynamo';
|
|
1
|
+
import { DyFM_AnyError, DyFM_Array, DyFM_Error, DyFM_Log, week } from '@futdevpro/fsm-dynamo';
|
|
2
2
|
import {
|
|
3
3
|
DyFM_Msg_Provider_Type, DyFM_Msg_Conversation, DyFM_Msg_EventKey, DyFM_Msg_Message, DyFM_Msg_Participant
|
|
4
4
|
} from '@futdevpro/fsm-dynamo/messaging';
|
|
@@ -95,7 +95,7 @@ export class DyNTS_DyB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
95
95
|
// Channel operations
|
|
96
96
|
async getChannelByName(name: string): Promise<DyNTS_Bot_ChannelWrapper<DyFM_Msg_Conversation>> {
|
|
97
97
|
if (this.channelCache.has(name)) {
|
|
98
|
-
return this.wrapChannel(this.channelCache.get(name));
|
|
98
|
+
return await this.wrapChannel(this.channelCache.get(name));
|
|
99
99
|
}
|
|
100
100
|
|
|
101
101
|
const conversationService: DyNTS_Msg_Conversation_DataService = new DyNTS_Msg_Conversation_DataService({
|
|
@@ -116,12 +116,12 @@ export class DyNTS_DyB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
116
116
|
}
|
|
117
117
|
|
|
118
118
|
this.channelCache.set(name, conversation);
|
|
119
|
-
return this.wrapChannel(conversation);
|
|
119
|
+
return await this.wrapChannel(conversation);
|
|
120
120
|
}
|
|
121
121
|
|
|
122
122
|
async getChannelById(id: string): Promise<DyNTS_Bot_ChannelWrapper<DyFM_Msg_Conversation>> {
|
|
123
123
|
if (this.channelCache.has(id)) {
|
|
124
|
-
return this.wrapChannel(this.channelCache.get(id));
|
|
124
|
+
return await this.wrapChannel(this.channelCache.get(id));
|
|
125
125
|
}
|
|
126
126
|
|
|
127
127
|
const conversationService: DyNTS_Msg_Conversation_DataService = new DyNTS_Msg_Conversation_DataService({
|
|
@@ -138,13 +138,13 @@ export class DyNTS_DyB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
138
138
|
}
|
|
139
139
|
|
|
140
140
|
this.channelCache.set(id, conversation);
|
|
141
|
-
return this.wrapChannel(conversation);
|
|
141
|
+
return await this.wrapChannel(conversation);
|
|
142
142
|
}
|
|
143
143
|
|
|
144
144
|
async sendMessageToChannel(channel: DyNTS_Bot_ChannelWrapper<DyFM_Msg_Conversation>, message: string, issuer: string): Promise<DyNTS_Bot_MessageWrapper<DyFM_Msg_Message>> {
|
|
145
145
|
const msg: DyFM_Msg_Message = await this.messaging_CS.sendMessage(channel.id, { content: message }, this.botId, issuer);
|
|
146
146
|
|
|
147
|
-
return this.wrapMessage(msg);
|
|
147
|
+
return await this.wrapMessage(msg);
|
|
148
148
|
}
|
|
149
149
|
|
|
150
150
|
async sendMessageToChannelByName(channelName: string, message: string, issuer: string): Promise<DyNTS_Bot_MessageWrapper<DyFM_Msg_Message>> {
|
|
@@ -200,7 +200,7 @@ export class DyNTS_DyB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
200
200
|
$limit: limit
|
|
201
201
|
});
|
|
202
202
|
|
|
203
|
-
return
|
|
203
|
+
return await DyFM_Array.asyncMap(messages, async (msg: DyFM_Msg_Message) => await this.wrapMessage(msg));
|
|
204
204
|
}
|
|
205
205
|
|
|
206
206
|
async fetchMessagesById(id: string, limit: number): Promise<DyNTS_Bot_MessageWrapper<DyFM_Msg_Message>[]> {
|
|
@@ -215,7 +215,7 @@ export class DyNTS_DyB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
215
215
|
$limit: limit
|
|
216
216
|
});
|
|
217
217
|
|
|
218
|
-
return
|
|
218
|
+
return await DyFM_Array.asyncMap(messages, async (msg: DyFM_Msg_Message) => await this.wrapMessage(msg));
|
|
219
219
|
}
|
|
220
220
|
|
|
221
221
|
async fetchMessagesForMessage(messageWrapper: DyNTS_Bot_MessageWrapper<DyFM_Msg_Message>, limit: number): Promise<DyNTS_Bot_MessageWrapper<DyFM_Msg_Message>[]> {
|
|
@@ -244,7 +244,7 @@ export class DyNTS_DyB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
244
244
|
joinedAt: new Date()
|
|
245
245
|
};
|
|
246
246
|
|
|
247
|
-
return this.wrapUser(userData);
|
|
247
|
+
return await this.wrapUser(userData);
|
|
248
248
|
}
|
|
249
249
|
|
|
250
250
|
getUserMention(userId: string): string {
|
|
@@ -255,7 +255,7 @@ export class DyNTS_DyB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
255
255
|
const channelWrapper: DyNTS_Bot_ChannelWrapper<DyFM_Msg_Conversation> = await this.getChannelByName(channelName);
|
|
256
256
|
const participants: DyFM_Msg_Participant[] = channelWrapper.rawPlatformChannel.participants || [];
|
|
257
257
|
|
|
258
|
-
return
|
|
258
|
+
return await DyFM_Array.asyncMap(participants, async (participant: DyFM_Msg_Participant) => await this.wrapUser(participant));
|
|
259
259
|
}
|
|
260
260
|
|
|
261
261
|
async readMemberNamesInChannel(channelName: string): Promise<string[]> {
|
|
@@ -364,9 +364,9 @@ export class DyNTS_DyB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
364
364
|
}
|
|
365
365
|
|
|
366
366
|
// Event binding
|
|
367
|
-
create_onMessageEventListener(
|
|
368
|
-
handler: (message: DyNTS_Bot_MessageWrapper<DyFM_Msg_Message>, issuer: string) => void
|
|
369
|
-
): void {
|
|
367
|
+
async create_onMessageEventListener(
|
|
368
|
+
handler: (message: DyNTS_Bot_MessageWrapper<DyFM_Msg_Message>, issuer: string) => Promise<void>
|
|
369
|
+
): Promise<void> {
|
|
370
370
|
// TODO: Implement message event listener for messaging system
|
|
371
371
|
DyFM_Log.info('Message event listener created (messaging integration)');
|
|
372
372
|
}
|
|
@@ -389,7 +389,7 @@ export class DyNTS_DyB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
389
389
|
);
|
|
390
390
|
}
|
|
391
391
|
|
|
392
|
-
wrapMessage(msgMessage: DyFM_Msg_Message): DyNTS_Bot_MessageWrapper<DyFM_Msg_Message
|
|
392
|
+
async wrapMessage(msgMessage: DyFM_Msg_Message): Promise<DyNTS_Bot_MessageWrapper<DyFM_Msg_Message>> {
|
|
393
393
|
return new DyNTS_Bot_MessageWrapper<DyFM_Msg_Message>({
|
|
394
394
|
id: msgMessage._id,
|
|
395
395
|
content: msgMessage.content,
|
|
@@ -418,10 +418,10 @@ export class DyNTS_DyB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
418
418
|
});
|
|
419
419
|
}
|
|
420
420
|
|
|
421
|
-
wrapChannel(conversation:
|
|
421
|
+
async wrapChannel(conversation: DyFM_Msg_Conversation): Promise<DyNTS_Bot_ChannelWrapper<DyFM_Msg_Conversation>> {
|
|
422
422
|
return new DyNTS_Bot_ChannelWrapper<DyFM_Msg_Conversation>({
|
|
423
|
-
id: conversation._id
|
|
424
|
-
name: conversation.
|
|
423
|
+
id: conversation._id,
|
|
424
|
+
name: conversation.title || conversation.platformChannelId || 'unknown',
|
|
425
425
|
isTextBased: true,
|
|
426
426
|
isDM: conversation.type === 'direct',
|
|
427
427
|
isVoiceBased: false,
|
|
@@ -430,12 +430,12 @@ export class DyNTS_DyB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
430
430
|
});
|
|
431
431
|
}
|
|
432
432
|
|
|
433
|
-
wrapUser(user:
|
|
433
|
+
async wrapUser(user: DyFM_Msg_Participant): Promise<DyNTS_Bot_UserWrapper<DyFM_Msg_Participant>> {
|
|
434
434
|
return new DyNTS_Bot_UserWrapper<DyFM_Msg_Participant>({
|
|
435
|
-
id: user.userId
|
|
436
|
-
username: user.username
|
|
437
|
-
displayName: user.displayName
|
|
438
|
-
isBot:
|
|
435
|
+
id: user.userId,
|
|
436
|
+
username: user.username,
|
|
437
|
+
displayName: user.displayName,
|
|
438
|
+
isBot: false,
|
|
439
439
|
rawPlatformUser: user,
|
|
440
440
|
provider: this
|
|
441
441
|
});
|
package/src/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.ts
CHANGED
|
@@ -161,9 +161,9 @@ export class DyNTS_SlB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
161
161
|
}
|
|
162
162
|
|
|
163
163
|
// Event binding
|
|
164
|
-
create_onMessageEventListener(
|
|
165
|
-
handler: (message: DyNTS_Bot_MessageWrapper<SlackMessage>, issuer: string) => void
|
|
166
|
-
): void {
|
|
164
|
+
async create_onMessageEventListener(
|
|
165
|
+
handler: (message: DyNTS_Bot_MessageWrapper<SlackMessage>, issuer: string) => Promise<void>
|
|
166
|
+
): Promise<void> {
|
|
167
167
|
throw new Error('Slack provider not yet implemented');
|
|
168
168
|
}
|
|
169
169
|
|
|
@@ -179,15 +179,15 @@ export class DyNTS_SlB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
179
179
|
throw new Error('Slack provider not yet implemented');
|
|
180
180
|
}
|
|
181
181
|
|
|
182
|
-
wrapMessage(message: SlackMessage): DyNTS_Bot_MessageWrapper<SlackMessage
|
|
182
|
+
wrapMessage(message: SlackMessage): Promise<DyNTS_Bot_MessageWrapper<SlackMessage>> {
|
|
183
183
|
throw new Error('Slack provider not yet implemented');
|
|
184
184
|
}
|
|
185
185
|
|
|
186
|
-
wrapChannel(channel: SlackChannel): DyNTS_Bot_ChannelWrapper<SlackChannel
|
|
186
|
+
wrapChannel(channel: SlackChannel): Promise<DyNTS_Bot_ChannelWrapper<SlackChannel>> {
|
|
187
187
|
throw new Error('Slack provider not yet implemented');
|
|
188
188
|
}
|
|
189
189
|
|
|
190
|
-
wrapUser(user: SlackUser): DyNTS_Bot_UserWrapper<SlackUser
|
|
190
|
+
wrapUser(user: SlackUser): Promise<DyNTS_Bot_UserWrapper<SlackUser>> {
|
|
191
191
|
throw new Error('Slack provider not yet implemented');
|
|
192
192
|
}
|
|
193
193
|
}
|
package/src/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.ts
CHANGED
|
@@ -161,9 +161,9 @@ export class DyNTS_TeB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
161
161
|
}
|
|
162
162
|
|
|
163
163
|
// Event binding
|
|
164
|
-
create_onMessageEventListener(
|
|
165
|
-
handler: (message: DyNTS_Bot_MessageWrapper<TeamsMessage>, issuer: string) => void
|
|
166
|
-
): void {
|
|
164
|
+
async create_onMessageEventListener(
|
|
165
|
+
handler: (message: DyNTS_Bot_MessageWrapper<TeamsMessage>, issuer: string) => Promise<void>
|
|
166
|
+
): Promise<void> {
|
|
167
167
|
throw new Error('Teams provider not yet implemented');
|
|
168
168
|
}
|
|
169
169
|
|
|
@@ -179,15 +179,15 @@ export class DyNTS_TeB_MessagingProvider_ControlService extends DyNTS_Bot_Messag
|
|
|
179
179
|
throw new Error('Teams provider not yet implemented');
|
|
180
180
|
}
|
|
181
181
|
|
|
182
|
-
wrapMessage(message: TeamsMessage): DyNTS_Bot_MessageWrapper<TeamsMessage
|
|
182
|
+
wrapMessage(message: TeamsMessage): Promise<DyNTS_Bot_MessageWrapper<TeamsMessage>> {
|
|
183
183
|
throw new Error('Teams provider not yet implemented');
|
|
184
184
|
}
|
|
185
185
|
|
|
186
|
-
wrapChannel(channel: TeamsChannel): DyNTS_Bot_ChannelWrapper<TeamsChannel
|
|
186
|
+
wrapChannel(channel: TeamsChannel): Promise<DyNTS_Bot_ChannelWrapper<TeamsChannel>> {
|
|
187
187
|
throw new Error('Teams provider not yet implemented');
|
|
188
188
|
}
|
|
189
189
|
|
|
190
|
-
wrapUser(user: TeamsUser): DyNTS_Bot_UserWrapper<TeamsUser
|
|
190
|
+
wrapUser(user: TeamsUser): Promise<DyNTS_Bot_UserWrapper<TeamsUser>> {
|
|
191
191
|
throw new Error('Teams provider not yet implemented');
|
|
192
192
|
}
|
|
193
193
|
}
|
|
@@ -202,9 +202,9 @@ export abstract class DyNTS_Bot_Main_ControlService<
|
|
|
202
202
|
DyFM_Log.success(`${provider.name} Error event registered`);
|
|
203
203
|
}
|
|
204
204
|
|
|
205
|
-
provider.create_onMessageEventListener((message: DyNTS_Bot_MessageWrapper<any>, messageIssuer: string) => {
|
|
205
|
+
provider.create_onMessageEventListener(async (message: DyNTS_Bot_MessageWrapper<any>, messageIssuer: string) => {
|
|
206
206
|
try {
|
|
207
|
-
this.botIO_CS._handleNewMessage(message, messageIssuer)
|
|
207
|
+
await this.botIO_CS._handleNewMessage(message, messageIssuer)
|
|
208
208
|
} catch (error) {
|
|
209
209
|
DyFM_Error.logSimple(`${provider.name} error handling new message:`, error);
|
|
210
210
|
DyNTS_GlobalService.globalErrorHandler(error);
|
|
@@ -133,17 +133,17 @@ export abstract class DyNTS_Bot_MessagingProvider_ServiceBase<
|
|
|
133
133
|
// /* handler: (message: DyNTS_Bot_MessageWrapper<T_MessagingPlatformMessage>, issuer: string, providerId?: string) => void */
|
|
134
134
|
//): Promise<DyNTS_Bot_MessageWrapper<T_MessagingPlatformMessage>>; /* void; */
|
|
135
135
|
abstract create_onMessageEventListener(
|
|
136
|
-
handler: (message: DyNTS_Bot_MessageWrapper<T_MessagingPlatformMessage>, issuer: string) => void
|
|
137
|
-
): void
|
|
136
|
+
handler: (message: DyNTS_Bot_MessageWrapper<T_MessagingPlatformMessage>, issuer: string) => Promise<void>
|
|
137
|
+
): Promise<void>;
|
|
138
138
|
//abstract create_onReadyEventListener(handler: () => void): void;
|
|
139
139
|
abstract create_onErrorEventListener(handler: (error: DyFM_AnyError) => void): void;
|
|
140
140
|
|
|
141
141
|
abstract sendReport(message: string): Promise<DyNTS_Bot_MessageWrapper<T_MessagingPlatformMessage>>;
|
|
142
142
|
abstract sendReportIn(message: string): Promise<DyNTS_Bot_MessageWrapper<T_MessagingPlatformMessage>>;
|
|
143
143
|
|
|
144
|
-
abstract wrapMessage(message: T_MessagingPlatformMessage): DyNTS_Bot_MessageWrapper<T_MessagingPlatformMessage
|
|
145
|
-
abstract wrapChannel(channel: T_MessagingPlatformChannel): DyNTS_Bot_ChannelWrapper<T_MessagingPlatformChannel
|
|
146
|
-
abstract wrapUser(user: T_MessagingPlatformUser): DyNTS_Bot_UserWrapper<T_MessagingPlatformUser
|
|
144
|
+
abstract wrapMessage(message: T_MessagingPlatformMessage): Promise<DyNTS_Bot_MessageWrapper<T_MessagingPlatformMessage>>;
|
|
145
|
+
abstract wrapChannel(channel: T_MessagingPlatformChannel): Promise<DyNTS_Bot_ChannelWrapper<T_MessagingPlatformChannel>>;
|
|
146
|
+
abstract wrapUser(user: T_MessagingPlatformUser): Promise<DyNTS_Bot_UserWrapper<T_MessagingPlatformUser>>;
|
|
147
147
|
|
|
148
148
|
/* abstract channelIsTextBased(channel: T_MessagingPlatformChannel): boolean;
|
|
149
149
|
abstract channelIsVoiceBased(channel: T_MessagingPlatformChannel): boolean;
|
|
@@ -1989,9 +1989,15 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
|
|
|
1989
1989
|
(searchString: string): string => searchString.toLowerCase()
|
|
1990
1990
|
);
|
|
1991
1991
|
|
|
1992
|
-
return (dataProperty: string): boolean =>
|
|
1993
|
-
|
|
1994
|
-
|
|
1992
|
+
return (dataProperty: string): boolean => {
|
|
1993
|
+
// Convert to string if not already a string (handles numbers, etc.)
|
|
1994
|
+
const dataPropertyAsString: string =
|
|
1995
|
+
dataProperty != null ? String(dataProperty) : '';
|
|
1996
|
+
return lowerCaseSearchValueArray.some(
|
|
1997
|
+
(searchString: string): boolean =>
|
|
1998
|
+
dataPropertyAsString?.toLowerCase().includes(searchString)
|
|
1999
|
+
);
|
|
2000
|
+
};
|
|
1995
2001
|
} else {
|
|
1996
2002
|
const lowerCaseSearchValue: string = (searchValue as string)?.toLowerCase();
|
|
1997
2003
|
|
|
@@ -1999,8 +2005,12 @@ export class DyNTS_DataService<T extends DyFM_Metadata> {
|
|
|
1999
2005
|
return (dataProperty: string): boolean => !dataProperty;
|
|
2000
2006
|
}
|
|
2001
2007
|
|
|
2002
|
-
return (dataProperty: string): boolean =>
|
|
2003
|
-
|
|
2008
|
+
return (dataProperty: string): boolean => {
|
|
2009
|
+
// Convert to string if not already a string (handles numbers, etc.)
|
|
2010
|
+
const dataPropertyAsString: string =
|
|
2011
|
+
dataProperty != null ? String(dataProperty) : '';
|
|
2012
|
+
return dataPropertyAsString?.toLowerCase().includes(lowerCaseSearchValue);
|
|
2013
|
+
};
|
|
2004
2014
|
}
|
|
2005
2015
|
|
|
2006
2016
|
case DyFM_BasicProperty_Type.date:
|