chz-telegram-bot 0.0.40 → 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;IAqB7B,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,14 +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
57
  const msg = new incomingMessage_1.IncomingMessage(ctx.update.message);
58
58
  const messageContent = msg.text || `<non-text message: ${msg.type}>`;
59
59
  const messageFromName = msg.from?.first_name ?? 'Unknown';
60
60
  const messageFromId = msg.from?.id ?? 'Unknown';
61
- 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
+ }
62
67
  await this.processMessage(msg);
63
68
  });
64
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,7 +114,9 @@ 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
122
  const msg = new IncomingMessage(ctx.update.message);
@@ -120,12 +125,22 @@ export class BotInstance {
120
125
 
121
126
  const messageFromName = msg.from?.first_name ?? 'Unknown';
122
127
  const messageFromId = msg.from?.id ?? 'Unknown';
123
- Logger.logWithTraceId(
124
- this.name,
125
- msg.traceId,
126
- msg.chatName,
127
- `${messageFromName} (${messageFromId}): ${messageContent}`
128
- );
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
+ }
129
144
 
130
145
  await this.processMessage(msg);
131
146
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "chz-telegram-bot",
3
- "version": "0.0.40",
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,