chz-telegram-bot 0.0.39 → 0.0.41

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.
@@ -20,6 +20,7 @@ export declare class BotInstance {
20
20
  storageClient?: IStorageClient;
21
21
  storagePath?: string;
22
22
  scheduledPeriod?: Seconds;
23
+ verboseLoggingForIncomingMessage?: boolean;
23
24
  });
24
25
  private initializeScheduledProcessing;
25
26
  private initializeMessageProcessing;
@@ -1 +1 @@
1
- {"version":3,"file":"botInstance.d.ts","sourceRoot":"","sources":["../../entities/botInstance.ts"],"names":[],"mappings":"AAKA,OAAO,EAAuB,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAM5D,qBAAa,WAAW;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,GAAG,CAAqB;IAChC,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,QAAQ,CAAgC;IAChD,OAAO,CAAC,SAAS,CAAkC;IACnD,OAAO,CAAC,KAAK,CAAyB;IACtC,OAAO,EAAE,cAAc,CAAC;gBAEZ,OAAO,EAAE;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,aAAa,CAAC,YAAY,CAAC,EAAE,CAAC;QACxC,SAAS,EAAE,eAAe,CAAC,YAAY,CAAC,EAAE,CAAC;QAC3C,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC9B,aAAa,CAAC,EAAE,cAAc,CAAC;QAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,eAAe,CAAC,EAAE,OAAO,CAAC;KAC7B;IAmCD,OAAO,CAAC,6BAA6B;IA2CrC,OAAO,CAAC,2BAA2B;IAsB7B,IAAI,CAAC,IAAI,EAAE,MAAM;YAYT,YAAY;YAyBZ,cAAc;CAmB/B"}
1
+ {"version":3,"file":"botInstance.d.ts","sourceRoot":"","sources":["../../entities/botInstance.ts"],"names":[],"mappings":"AAKA,OAAO,EAAuB,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAM5D,qBAAa,WAAW;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,GAAG,CAAqB;IAChC,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,QAAQ,CAAgC;IAChD,OAAO,CAAC,SAAS,CAAkC;IACnD,OAAO,CAAC,KAAK,CAAyB;IACtC,OAAO,EAAE,cAAc,CAAC;gBAEZ,OAAO,EAAE;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,aAAa,CAAC,YAAY,CAAC,EAAE,CAAC;QACxC,SAAS,EAAE,eAAe,CAAC,YAAY,CAAC,EAAE,CAAC;QAC3C,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC9B,aAAa,CAAC,EAAE,cAAc,CAAC;QAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,gCAAgC,CAAC,EAAE,OAAO,CAAC;KAC9C;IAqCD,OAAO,CAAC,6BAA6B;IA2CrC,OAAO,CAAC,2BAA2B;IAiC7B,IAAI,CAAC,IAAI,EAAE,MAAM;YAYT,YAAY;YAyBZ,cAAc;CAmB/B"}
@@ -25,7 +25,7 @@ class BotInstance {
25
25
  options.storageClient ??
26
26
  new jsonFileStorage_1.JsonFileStorage(options.name, actions, options.storagePath);
27
27
  this.api = new telegramApi_1.TelegramApiService(this.name, this.telegraf.telegram, this.storage, this.chats);
28
- this.initializeMessageProcessing();
28
+ this.initializeMessageProcessing(options.verboseLoggingForIncomingMessage ?? false);
29
29
  this.initializeScheduledProcessing(options.scheduledPeriod ?? (0, timeConvertions_1.hoursToSeconds)(1));
30
30
  this.storage.saveMetadata(actions, this.name);
31
31
  this.telegraf.launch();
@@ -51,15 +51,19 @@ class BotInstance {
51
51
  }, delay, this.name);
52
52
  }
53
53
  }
54
- initializeMessageProcessing() {
54
+ initializeMessageProcessing(verboseLoggingForIncomingMessage) {
55
55
  if (this.commands.length > 0) {
56
56
  this.telegraf.on('message', async (ctx) => {
57
- console.dir(ctx.update);
58
57
  const msg = new incomingMessage_1.IncomingMessage(ctx.update.message);
59
58
  const messageContent = msg.text || `<non-text message: ${msg.type}>`;
60
59
  const messageFromName = msg.from?.first_name ?? 'Unknown';
61
60
  const messageFromId = msg.from?.id ?? 'Unknown';
62
- logger_1.Logger.logWithTraceId(this.name, msg.traceId, msg.chatName, `${messageFromName} (${messageFromId}): ${messageContent}`);
61
+ if (verboseLoggingForIncomingMessage) {
62
+ logger_1.Logger.logObjectWithTraceId(this.name, msg.traceId, msg.chatName, ctx.update.message);
63
+ }
64
+ else {
65
+ logger_1.Logger.logWithTraceId(this.name, msg.traceId, msg.chatName, `${messageFromName} (${messageFromId}): ${messageContent}`);
66
+ }
63
67
  await this.processMessage(msg);
64
68
  });
65
69
  }
@@ -1,5 +1,6 @@
1
1
  declare class JsonLogger {
2
2
  private serializeError;
3
+ logObjectWithTraceId(botName: string, traceId: string | number, chatName: string, data: any): void;
3
4
  logWithTraceId(botName: string, traceId: string | number, chatName: string, text: string): void;
4
5
  errorWithTraceId<TData>(botName: string, traceId: string | number, chatName: string, errorObj: unknown, extraData?: TData | undefined): void;
5
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../services/logger.ts"],"names":[],"mappings":"AAAA,cAAM,UAAU;IAEZ,OAAO,CAAC,cAAc;IAQtB,cAAc,CACV,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GAAG,MAAM,EACxB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM;IAOhB,gBAAgB,CAAC,KAAK,EAClB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GAAG,MAAM,EACxB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,OAAO,EACjB,SAAS,CAAC,EAAE,KAAK,GAAG,SAAS;CAQpC;AAED,eAAO,MAAM,MAAM,YAAmB,CAAC"}
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../services/logger.ts"],"names":[],"mappings":"AAAA,cAAM,UAAU;IAEZ,OAAO,CAAC,cAAc;IAQtB,oBAAoB,CAChB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GAAG,MAAM,EACxB,QAAQ,EAAE,MAAM,EAEhB,IAAI,EAAE,GAAG;IAQb,cAAc,CACV,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GAAG,MAAM,EACxB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM;IAOhB,gBAAgB,CAAC,KAAK,EAClB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GAAG,MAAM,EACxB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,OAAO,EACjB,SAAS,CAAC,EAAE,KAAK,GAAG,SAAS;CAQpC;AAED,eAAO,MAAM,MAAM,YAAmB,CAAC"}
@@ -10,6 +10,14 @@ class JsonLogger {
10
10
  });
11
11
  return JSON.stringify(plainObject);
12
12
  }
13
+ logObjectWithTraceId(botName, traceId, chatName,
14
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
15
+ data) {
16
+ data.botName = botName;
17
+ data.traceId = traceId;
18
+ data.chatName = chatName;
19
+ console.log(data);
20
+ }
13
21
  logWithTraceId(botName, traceId, chatName, text) {
14
22
  console.log(`{"botName":"${botName}","traceId":"${traceId}","chatName":"${chatName}","text":"${text}"}`);
15
23
  }
@@ -33,6 +33,7 @@ export class BotInstance {
33
33
  storageClient?: IStorageClient;
34
34
  storagePath?: string;
35
35
  scheduledPeriod?: Seconds;
36
+ verboseLoggingForIncomingMessage?: boolean;
36
37
  }) {
37
38
  this.name = options.name;
38
39
  this.commands = options.commands;
@@ -58,7 +59,9 @@ export class BotInstance {
58
59
  this.chats
59
60
  );
60
61
 
61
- this.initializeMessageProcessing();
62
+ this.initializeMessageProcessing(
63
+ options.verboseLoggingForIncomingMessage ?? false
64
+ );
62
65
  this.initializeScheduledProcessing(
63
66
  options.scheduledPeriod ?? hoursToSeconds(1 as Hours)
64
67
  );
@@ -111,22 +114,33 @@ export class BotInstance {
111
114
  );
112
115
  }
113
116
  }
114
- private initializeMessageProcessing() {
117
+ private initializeMessageProcessing(
118
+ verboseLoggingForIncomingMessage: boolean
119
+ ) {
115
120
  if (this.commands.length > 0) {
116
121
  this.telegraf.on('message', async (ctx) => {
117
- console.dir(ctx.update);
118
122
  const msg = new IncomingMessage(ctx.update.message);
119
123
  const messageContent =
120
124
  msg.text || `<non-text message: ${msg.type}>`;
121
125
 
122
126
  const messageFromName = msg.from?.first_name ?? 'Unknown';
123
127
  const messageFromId = msg.from?.id ?? 'Unknown';
124
- Logger.logWithTraceId(
125
- this.name,
126
- msg.traceId,
127
- msg.chatName,
128
- `${messageFromName} (${messageFromId}): ${messageContent}`
129
- );
128
+
129
+ if (verboseLoggingForIncomingMessage) {
130
+ Logger.logObjectWithTraceId(
131
+ this.name,
132
+ msg.traceId,
133
+ msg.chatName,
134
+ ctx.update.message
135
+ );
136
+ } else {
137
+ Logger.logWithTraceId(
138
+ this.name,
139
+ msg.traceId,
140
+ msg.chatName,
141
+ `${messageFromName} (${messageFromId}): ${messageContent}`
142
+ );
143
+ }
130
144
 
131
145
  await this.processMessage(msg);
132
146
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "chz-telegram-bot",
3
- "version": "0.0.39",
3
+ "version": "0.0.41",
4
4
  "type": "module",
5
5
  "dependencies": {
6
6
  "async-sema": "^3.1.1",
@@ -8,6 +8,19 @@ class JsonLogger {
8
8
  return JSON.stringify(plainObject);
9
9
  }
10
10
 
11
+ logObjectWithTraceId(
12
+ botName: string,
13
+ traceId: string | number,
14
+ chatName: string,
15
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
16
+ data: any
17
+ ) {
18
+ data.botName = botName;
19
+ data.traceId = traceId;
20
+ data.chatName = chatName;
21
+ console.log(data);
22
+ }
23
+
11
24
  logWithTraceId(
12
25
  botName: string,
13
26
  traceId: string | number,