@microsoft/agents-hosting 1.5.0-beta.12.ga9a2b23c19 → 1.5.0-beta.14.g1372abd1dc

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/dist/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/package.json",
3
3
  "name": "@microsoft/agents-hosting",
4
- "version": "1.5.0-beta.12.ga9a2b23c19",
4
+ "version": "1.5.0-beta.14.g1372abd1dc",
5
5
  "homepage": "https://github.com/microsoft/Agents-for-js",
6
6
  "repository": {
7
7
  "type": "git",
@@ -21,8 +21,8 @@
21
21
  "dependencies": {
22
22
  "@azure/core-auth": "^1.10.1",
23
23
  "@azure/msal-node": "^5.0.6",
24
- "@microsoft/agents-activity": "1.5.0-beta.12.ga9a2b23c19",
25
- "axios": "^1.13.6",
24
+ "@microsoft/agents-activity": "1.5.0-beta.14.g1372abd1dc",
25
+ "axios": "^1.15.0",
26
26
  "jsonwebtoken": "^9.0.3",
27
27
  "jwks-rsa": "^4.0.1",
28
28
  "object-path": "^0.11.8",
@@ -69,7 +69,6 @@ export declare class AgentApplication<TState extends TurnState> {
69
69
  private readonly _authorizationManager?;
70
70
  private readonly _authorization?;
71
71
  private readonly _proactive?;
72
- private _typingTimer;
73
72
  protected readonly _extensions: AgentExtension<TState>[];
74
73
  private readonly _adaptiveCards;
75
74
  /**
@@ -486,6 +485,9 @@ export declare class AgentApplication<TState extends TurnState> {
486
485
  *
487
486
  */
488
487
  startTypingTimer(context: TurnContext): void;
488
+ private getTypingTimingOptions;
489
+ private getStreamType;
490
+ private sendTypingActivity;
489
491
  /**
490
492
  * Registers an extension with the application.
491
493
  *
@@ -514,19 +516,29 @@ export declare class AgentApplication<TState extends TurnState> {
514
516
  * @returns void
515
517
  *
516
518
  * @remarks
517
- * This method clears the typing indicator timer to prevent further typing indicators
518
- * from being sent. It's typically called automatically when a message is sent, but
519
- * can also be called manually to stop the typing indicator.
519
+ * Calling this overload without a context is deprecated. It only logs a warning and does not stop any timer.
520
+ *
521
+ * @deprecated Pass the current TurnContext to stop only that turn's typing timer.
522
+ */
523
+ stopTypingTimer(): void;
524
+ /**
525
+ * Stops the typing indicator timer for the provided turn context.
526
+ *
527
+ * @param context - The turn context whose typing timer should be stopped.
528
+ * @returns void
529
+ *
530
+ * @remarks
531
+ * This method clears the typing indicator timer for the current turn to prevent further typing indicators
532
+ * from being sent. It's typically called automatically when a message is sent, but can also be called manually.
520
533
  *
521
534
  * @example
522
535
  * ```typescript
523
- * app.startTypingTimer(turnContext);
536
+ * app.startTypingTimer(turnContext)
524
537
  * // Do some processing...
525
- * app.stopTypingTimer(); // Manually stop the typing indicator
538
+ * app.stopTypingTimer(turnContext)
526
539
  * ```
527
- *
528
540
  */
529
- stopTypingTimer(): void;
541
+ stopTypingTimer(context: TurnContext): void;
530
542
  /**
531
543
  * Adds an event handler for specified turn events.
532
544
  *
@@ -19,7 +19,11 @@ const proactive_1 = require("./proactive");
19
19
  const agents_activity_2 = require("@microsoft/agents-activity");
20
20
  const errorHelper_1 = require("../errorHelper");
21
21
  const logger = (0, logger_1.debug)('agents:app');
22
- const TYPING_TIMER_DELAY = 1000;
22
+ // Resend typing every 4 seconds to stay ahead of the ~5 second timeout seen in
23
+ // Web Chat and Microsoft 365. Teams may keep typing indicators visible longer.
24
+ const DEFAULT_TYPING_INITIAL_DELAY = 0;
25
+ const DEFAULT_TYPING_INTERVAL = 4000;
26
+ const TYPING_TIMER_STATE_KEY = Symbol('typingTimerState');
23
27
  /**
24
28
  * Main application class for handling agent conversations and routing.
25
29
  *
@@ -91,6 +95,7 @@ class AgentApplication {
91
95
  ...options,
92
96
  turnStateFactory: (options === null || options === void 0 ? void 0 : options.turnStateFactory) || (() => new turnState_1.TurnState()),
93
97
  startTypingTimer: (options === null || options === void 0 ? void 0 : options.startTypingTimer) !== undefined ? options.startTypingTimer : false,
98
+ typing: (options === null || options === void 0 ? void 0 : options.typing) || undefined,
94
99
  longRunningMessages: (options === null || options === void 0 ? void 0 : options.longRunningMessages) !== undefined ? options.longRunningMessages : false,
95
100
  removeRecipientMention: (options === null || options === void 0 ? void 0 : options.removeRecipientMention) !== undefined ? options.removeRecipientMention : true,
96
101
  transcriptLogger: (options === null || options === void 0 ? void 0 : options.transcriptLogger) || undefined,
@@ -622,7 +627,7 @@ class AgentApplication {
622
627
  throw err;
623
628
  }
624
629
  finally {
625
- this.stopTypingTimer();
630
+ this.stopTypingTimer(context);
626
631
  }
627
632
  }
628
633
  /**
@@ -688,40 +693,71 @@ class AgentApplication {
688
693
  *
689
694
  */
690
695
  startTypingTimer(context) {
691
- if (context.activity.type === agents_activity_1.ActivityTypes.Message && !this._typingTimer) {
692
- let timerRunning = true;
693
- context.onSendActivities(async (context, activities, next) => {
694
- var _a;
695
- if (timerRunning) {
696
- for (let i = 0; i < activities.length; i++) {
697
- if (activities[i].type === agents_activity_1.ActivityTypes.Message || ((_a = activities[i].channelData) === null || _a === void 0 ? void 0 : _a.streamType)) {
698
- this.stopTypingTimer();
699
- timerRunning = false;
700
- await lastSend;
701
- break;
702
- }
703
- }
704
- }
705
- return next();
706
- });
707
- let lastSend = Promise.resolve();
708
- const onTimeout = async () => {
709
- try {
710
- lastSend = context.sendActivity(agents_activity_1.Activity.fromObject({ type: agents_activity_1.ActivityTypes.Typing }));
711
- await lastSend;
696
+ const turnState = context.turnState;
697
+ const typingOptions = this.getTypingTimingOptions(context);
698
+ // Timer state is stored on the current turn so concurrent turns stay isolated.
699
+ const currentState = () => turnState.get(TYPING_TIMER_STATE_KEY);
700
+ if (context.activity.type !== agents_activity_1.ActivityTypes.Message || currentState()) {
701
+ return;
702
+ }
703
+ const state = {
704
+ lastSend: Promise.resolve(),
705
+ stop: () => {
706
+ if (state.timer) {
707
+ clearTimeout(state.timer);
708
+ state.timer = undefined;
712
709
  }
713
- catch (err) {
710
+ turnState.delete(TYPING_TIMER_STATE_KEY);
711
+ }
712
+ };
713
+ turnState.set(TYPING_TIMER_STATE_KEY, state);
714
+ context.onSendActivities(async (context, activities, next) => {
715
+ // Any real response or stream start ends the typing loop for this turn.
716
+ if (activities.some(activity => activity.type === agents_activity_1.ActivityTypes.Message || this.getStreamType(activity) !== undefined)) {
717
+ state.stop();
718
+ // Wait for any in-flight typing send to finish before sending the real response.
719
+ await state.lastSend.catch((err) => {
714
720
  logger.error(err);
715
- this._typingTimer = undefined;
716
- timerRunning = false;
717
- lastSend = Promise.resolve();
718
- }
719
- if (timerRunning) {
720
- this._typingTimer = setTimeout(onTimeout, TYPING_TIMER_DELAY);
721
- }
722
- };
723
- this._typingTimer = setTimeout(onTimeout, TYPING_TIMER_DELAY);
724
- }
721
+ });
722
+ }
723
+ return next();
724
+ });
725
+ const onTimeout = async () => {
726
+ try {
727
+ state.lastSend = this.sendTypingActivity(context);
728
+ await state.lastSend;
729
+ }
730
+ catch (err) {
731
+ logger.error(err);
732
+ state.lastSend = Promise.resolve();
733
+ state.stop();
734
+ return;
735
+ }
736
+ // Only reschedule if this turn still owns the active timer state.
737
+ if (currentState() === state) {
738
+ state.timer = setTimeout(onTimeout, typingOptions.intervalMs);
739
+ }
740
+ };
741
+ state.timer = setTimeout(onTimeout, typingOptions.initialDelayMs);
742
+ }
743
+ getTypingTimingOptions(context) {
744
+ var _a, _b, _c, _d, _e, _f, _g, _h;
745
+ const channelId = context.activity.channelId || context.activity.channelIdChannel || '';
746
+ const channelOptions = channelId ? (_b = (_a = this._options.typing) === null || _a === void 0 ? void 0 : _a.channelStrategies) === null || _b === void 0 ? void 0 : _b[channelId] : undefined;
747
+ return {
748
+ initialDelayMs: (_e = (_c = channelOptions === null || channelOptions === void 0 ? void 0 : channelOptions.initialDelayMs) !== null && _c !== void 0 ? _c : (_d = this._options.typing) === null || _d === void 0 ? void 0 : _d.initialDelayMs) !== null && _e !== void 0 ? _e : DEFAULT_TYPING_INITIAL_DELAY,
749
+ intervalMs: (_h = (_f = channelOptions === null || channelOptions === void 0 ? void 0 : channelOptions.intervalMs) !== null && _f !== void 0 ? _f : (_g = this._options.typing) === null || _g === void 0 ? void 0 : _g.intervalMs) !== null && _h !== void 0 ? _h : DEFAULT_TYPING_INTERVAL
750
+ };
751
+ }
752
+ getStreamType(activity) {
753
+ var _a, _b, _c;
754
+ const streamingEntity = (_a = activity.entities) === null || _a === void 0 ? void 0 : _a.find((entity) => entity.type === 'streaminfo');
755
+ return (_b = streamingEntity === null || streamingEntity === void 0 ? void 0 : streamingEntity.streamType) !== null && _b !== void 0 ? _b : (_c = activity.channelData) === null || _c === void 0 ? void 0 : _c.streamType;
756
+ }
757
+ async sendTypingActivity(context) {
758
+ const conversationReference = context.activity.getConversationReference();
759
+ const typingActivity = agents_activity_1.Activity.fromObject({ type: agents_activity_1.ActivityTypes.Typing }).applyConversationReference(conversationReference);
760
+ return await context.adapter.sendActivities(context, [typingActivity]);
725
761
  }
726
762
  /**
727
763
  * Registers an extension with the application.
@@ -751,29 +787,13 @@ class AgentApplication {
751
787
  this._extensions.push(extension);
752
788
  regcb(extension);
753
789
  }
754
- /**
755
- * Stops the typing indicator timer if it's currently running.
756
- *
757
- * @returns void
758
- *
759
- * @remarks
760
- * This method clears the typing indicator timer to prevent further typing indicators
761
- * from being sent. It's typically called automatically when a message is sent, but
762
- * can also be called manually to stop the typing indicator.
763
- *
764
- * @example
765
- * ```typescript
766
- * app.startTypingTimer(turnContext);
767
- * // Do some processing...
768
- * app.stopTypingTimer(); // Manually stop the typing indicator
769
- * ```
770
- *
771
- */
772
- stopTypingTimer() {
773
- if (this._typingTimer) {
774
- clearTimeout(this._typingTimer);
775
- this._typingTimer = undefined;
790
+ stopTypingTimer(context) {
791
+ var _a;
792
+ if (!context) {
793
+ logger.warn('Application.stopTypingTimer() without a context is deprecated. Pass the current TurnContext instead.');
794
+ return;
776
795
  }
796
+ (_a = context.turnState.get(TYPING_TIMER_STATE_KEY)) === null || _a === void 0 ? void 0 : _a.stop();
777
797
  }
778
798
  /**
779
799
  * Adds an event handler for specified turn events.
@@ -1 +1 @@
1
- {"version":3,"file":"agentApplication.js","sourceRoot":"","sources":["../../../src/app/agentApplication.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agentApplication.js","sourceRoot":"","sources":["../../../src/app/agentApplication.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@ import { AgentApplicationOptions } from './agentApplicationOptions';
8
8
  import { AuthorizationOptions } from './auth/types';
9
9
  import { ProactiveOptions } from './proactive';
10
10
  import { TurnState } from './turnState';
11
+ import { TypingOptions } from './agentApplicationOptions';
11
12
  /**
12
13
  * Builder class for creating and configuring AgentApplication instances.
13
14
  * @typeParam TState Type extending TurnState that will be used by the application
@@ -36,6 +37,13 @@ export declare class AgentApplicationBuilder<TState extends TurnState = TurnStat
36
37
  * @param startTypingTimer Whether to show typing indicators
37
38
  * @returns This builder instance for chaining
38
39
  */
40
+ setStartTypingTimer(startTypingTimer: boolean): this;
41
+ /**
42
+ * Configures timing behavior for automatic typing indicators.
43
+ * @param typing Typing timer options
44
+ * @returns This builder instance for chaining
45
+ */
46
+ withTyping(typing: TypingOptions): this;
39
47
  /**
40
48
  * Sets authentication options for the AgentApplication.
41
49
  * @param authHandlers The user identity authentication options
@@ -44,10 +44,19 @@ class AgentApplicationBuilder {
44
44
  * @param startTypingTimer Whether to show typing indicators
45
45
  * @returns This builder instance for chaining
46
46
  */
47
- // public setStartTypingTimer (startTypingTimer: boolean): this {
48
- // this._options.startTypingTimer = startTypingTimer
49
- // return this
50
- // }
47
+ setStartTypingTimer(startTypingTimer) {
48
+ this._options.startTypingTimer = startTypingTimer;
49
+ return this;
50
+ }
51
+ /**
52
+ * Configures timing behavior for automatic typing indicators.
53
+ * @param typing Typing timer options
54
+ * @returns This builder instance for chaining
55
+ */
56
+ withTyping(typing) {
57
+ this._options.typing = typing;
58
+ return this;
59
+ }
51
60
  /**
52
61
  * Sets authentication options for the AgentApplication.
53
62
  * @param authHandlers The user identity authentication options
@@ -1 +1 @@
1
- {"version":3,"file":"agentApplicationBuilder.js","sourceRoot":"","sources":["../../../src/app/agentApplicationBuilder.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAGH,yDAAqD;AAMrD;;;GAGG;AACH,MAAa,uBAAuB;IAApC;QACY,aAAQ,GAA6C,EAAE,CAAA;IAmEnE,CAAC;IAjEC;;;OAGG;IACH,IAAc,OAAO;QACnB,OAAO,IAAI,CAAC,QAAQ,CAAA;IACtB,CAAC;IAED;;;;OAIG;IACI,WAAW,CAAE,OAAgB;QAClC,IAAI,CAAC,QAAQ,CAAC,OAAO,GAAG,OAAO,CAAA;QAC/B,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;;OAIG;IACI,oBAAoB,CAAE,gBAA8B;QACzD,IAAI,CAAC,QAAQ,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;QACjD,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;;OAIG;IACH,iEAAiE;IACjE,sDAAsD;IACtD,gBAAgB;IAChB,IAAI;IAEJ;;;;OAIG;IACI,iBAAiB,CAAE,YAAkC;QAC1D,IAAI,CAAC,QAAQ,CAAC,aAAa,GAAG,YAAY,CAAA;QAC1C,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;;OAIG;IACI,aAAa,CAAE,OAAyB;QAC7C,IAAI,CAAC,QAAQ,CAAC,SAAS,GAAG,OAAO,CAAA;QACjC,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;OAGG;IACI,KAAK;QACV,OAAO,IAAI,mCAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAC5C,CAAC;CACF;AApED,0DAoEC"}
1
+ {"version":3,"file":"agentApplicationBuilder.js","sourceRoot":"","sources":["../../../src/app/agentApplicationBuilder.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAGH,yDAAqD;AAOrD;;;GAGG;AACH,MAAa,uBAAuB;IAApC;QACY,aAAQ,GAA6C,EAAE,CAAA;IA6EnE,CAAC;IA3EC;;;OAGG;IACH,IAAc,OAAO;QACnB,OAAO,IAAI,CAAC,QAAQ,CAAA;IACtB,CAAC;IAED;;;;OAIG;IACI,WAAW,CAAE,OAAgB;QAClC,IAAI,CAAC,QAAQ,CAAC,OAAO,GAAG,OAAO,CAAA;QAC/B,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;;OAIG;IACI,oBAAoB,CAAE,gBAA8B;QACzD,IAAI,CAAC,QAAQ,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;QACjD,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;;OAIG;IACI,mBAAmB,CAAE,gBAAyB;QACnD,IAAI,CAAC,QAAQ,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;QACjD,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;;OAIG;IACI,UAAU,CAAE,MAAqB;QACtC,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAA;QAC7B,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;;OAIG;IACI,iBAAiB,CAAE,YAAkC;QAC1D,IAAI,CAAC,QAAQ,CAAC,aAAa,GAAG,YAAY,CAAA;QAC1C,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;;OAIG;IACI,aAAa,CAAE,OAAyB;QAC7C,IAAI,CAAC,QAAQ,CAAC,SAAS,GAAG,OAAO,CAAA;QACjC,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;OAGG;IACI,KAAK;QACV,OAAO,IAAI,mCAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAC5C,CAAC;CACF;AA9ED,0DA8EC"}
@@ -12,6 +12,32 @@ import { HeaderPropagationDefinition } from '../headerPropagation';
12
12
  import { AuthorizationOptions } from './auth/types';
13
13
  import { Connections } from '../auth/connections';
14
14
  import { ProactiveOptions } from './proactive';
15
+ /**
16
+ * Typing timer settings for a specific channel or the global default.
17
+ */
18
+ export interface TypingTimingOptions {
19
+ /**
20
+ * Delay in milliseconds before the first typing indicator is sent.
21
+ *
22
+ * @default 0
23
+ */
24
+ initialDelayMs?: number;
25
+ /**
26
+ * Delay in milliseconds between subsequent typing indicators.
27
+ *
28
+ * @default 4000
29
+ */
30
+ intervalMs?: number;
31
+ }
32
+ /**
33
+ * Configuration options for automatic typing indicators.
34
+ */
35
+ export interface TypingOptions extends TypingTimingOptions {
36
+ /**
37
+ * Optional channel-specific timing overrides keyed by channel ID.
38
+ */
39
+ channelStrategies?: Record<string, TypingTimingOptions>;
40
+ }
15
41
  /**
16
42
  * Configuration options for creating and initializing an Agent Application.
17
43
  * This interface defines all the configurable aspects of an agent's behavior,
@@ -54,6 +80,12 @@ export interface AgentApplicationOptions<TState extends TurnState> {
54
80
  * @default false
55
81
  */
56
82
  startTypingTimer: boolean;
83
+ /**
84
+ * Optional timing settings for automatic typing indicators.
85
+ *
86
+ * @default undefined
87
+ */
88
+ typing?: TypingOptions;
57
89
  /**
58
90
  * Whether to enable support for long-running message processing operations.
59
91
  * When enabled, the agent can handle operations that take longer than the typical
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/package.json",
3
3
  "name": "@microsoft/agents-hosting",
4
- "version": "1.5.0-beta.12.ga9a2b23c19",
4
+ "version": "1.5.0-beta.14.g1372abd1dc",
5
5
  "homepage": "https://github.com/microsoft/Agents-for-js",
6
6
  "repository": {
7
7
  "type": "git",
@@ -21,8 +21,8 @@
21
21
  "dependencies": {
22
22
  "@azure/core-auth": "^1.10.1",
23
23
  "@azure/msal-node": "^5.0.6",
24
- "@microsoft/agents-activity": "1.5.0-beta.12.ga9a2b23c19",
25
- "axios": "^1.13.6",
24
+ "@microsoft/agents-activity": "1.5.0-beta.14.g1372abd1dc",
25
+ "axios": "^1.15.0",
26
26
  "jsonwebtoken": "^9.0.3",
27
27
  "jwks-rsa": "^4.0.1",
28
28
  "object-path": "^0.11.8",
@@ -8,7 +8,7 @@ import { ResourceResponse } from '../connector-client'
8
8
  import { debug } from '@microsoft/agents-activity/logger'
9
9
  import { TurnContext } from '../turnContext'
10
10
  import { AdaptiveCardsActions } from './adaptiveCards'
11
- import { AgentApplicationOptions } from './agentApplicationOptions'
11
+ import { AgentApplicationOptions, TypingTimingOptions } from './agentApplicationOptions'
12
12
  import { ConversationUpdateEvents } from './conversationUpdateEvents'
13
13
  import { AgentExtension } from './extensions'
14
14
  import { RouteHandler } from './routeHandler'
@@ -27,7 +27,22 @@ import { Errors } from '../errorHelper'
27
27
 
28
28
  const logger = debug('agents:app')
29
29
 
30
- const TYPING_TIMER_DELAY = 1000
30
+ // Resend typing every 4 seconds to stay ahead of the ~5 second timeout seen in
31
+ // Web Chat and Microsoft 365. Teams may keep typing indicators visible longer.
32
+ const DEFAULT_TYPING_INITIAL_DELAY = 0
33
+ const DEFAULT_TYPING_INTERVAL = 4000
34
+ const TYPING_TIMER_STATE_KEY = Symbol('typingTimerState')
35
+
36
+ type TypingTimerState = {
37
+ timer?: NodeJS.Timeout
38
+ lastSend: Promise<unknown>
39
+ stop: () => void
40
+ }
41
+
42
+ type StreamInfoEntity = {
43
+ type?: string
44
+ streamType?: string
45
+ }
31
46
 
32
47
  /**
33
48
  * Event handler function type for application events.
@@ -80,7 +95,6 @@ export class AgentApplication<TState extends TurnState> {
80
95
  private readonly _authorizationManager?: AuthorizationManager
81
96
  private readonly _authorization?: Authorization
82
97
  private readonly _proactive?: Proactive<TState>
83
- private _typingTimer: NodeJS.Timeout | undefined
84
98
  protected readonly _extensions: AgentExtension<TState>[] = []
85
99
  private readonly _adaptiveCards: AdaptiveCardsActions<TState>
86
100
 
@@ -116,6 +130,7 @@ export class AgentApplication<TState extends TurnState> {
116
130
  ...options,
117
131
  turnStateFactory: options?.turnStateFactory || (() => new TurnState() as TState),
118
132
  startTypingTimer: options?.startTypingTimer !== undefined ? options.startTypingTimer : false,
133
+ typing: options?.typing || undefined,
119
134
  longRunningMessages: options?.longRunningMessages !== undefined ? options.longRunningMessages : false,
120
135
  removeRecipientMention: options?.removeRecipientMention !== undefined ? options.removeRecipientMention : true,
121
136
  transcriptLogger: options?.transcriptLogger || undefined,
@@ -723,7 +738,7 @@ export class AgentApplication<TState extends TurnState> {
723
738
  logger.error(err)
724
739
  throw err
725
740
  } finally {
726
- this.stopTypingTimer()
741
+ this.stopTypingTimer(context)
727
742
  }
728
743
  }
729
744
 
@@ -799,41 +814,82 @@ export class AgentApplication<TState extends TurnState> {
799
814
  *
800
815
  */
801
816
  public startTypingTimer (context: TurnContext): void {
802
- if (context.activity.type === ActivityTypes.Message && !this._typingTimer) {
803
- let timerRunning = true
804
- context.onSendActivities(async (context, activities, next) => {
805
- if (timerRunning) {
806
- for (let i = 0; i < activities.length; i++) {
807
- if (activities[i].type === ActivityTypes.Message || activities[i].channelData?.streamType) {
808
- this.stopTypingTimer()
809
- timerRunning = false
810
- await lastSend
811
- break
812
- }
813
- }
817
+ const turnState = context.turnState
818
+ const typingOptions = this.getTypingTimingOptions(context)
819
+ // Timer state is stored on the current turn so concurrent turns stay isolated.
820
+ const currentState = () => turnState.get<TypingTimerState>(TYPING_TIMER_STATE_KEY)
821
+
822
+ if (context.activity.type !== ActivityTypes.Message || currentState()) {
823
+ return
824
+ }
825
+
826
+ const state: TypingTimerState = {
827
+ lastSend: Promise.resolve(),
828
+ stop: () => {
829
+ if (state.timer) {
830
+ clearTimeout(state.timer)
831
+ state.timer = undefined
814
832
  }
815
833
 
816
- return next()
817
- })
834
+ turnState.delete(TYPING_TIMER_STATE_KEY)
835
+ }
836
+ }
837
+
838
+ turnState.set(TYPING_TIMER_STATE_KEY, state)
818
839
 
819
- let lastSend: Promise<any> = Promise.resolve()
820
- const onTimeout = async () => {
821
- try {
822
- lastSend = context.sendActivity(Activity.fromObject({ type: ActivityTypes.Typing }))
823
- await lastSend
824
- } catch (err: any) {
840
+ context.onSendActivities(async (context, activities, next) => {
841
+ // Any real response or stream start ends the typing loop for this turn.
842
+ if (activities.some(activity => activity.type === ActivityTypes.Message || this.getStreamType(activity) !== undefined)) {
843
+ state.stop()
844
+ // Wait for any in-flight typing send to finish before sending the real response.
845
+ await state.lastSend.catch((err: any) => {
825
846
  logger.error(err)
826
- this._typingTimer = undefined
827
- timerRunning = false
828
- lastSend = Promise.resolve()
829
- }
847
+ })
848
+ }
830
849
 
831
- if (timerRunning) {
832
- this._typingTimer = setTimeout(onTimeout, TYPING_TIMER_DELAY)
833
- }
850
+ return next()
851
+ })
852
+
853
+ const onTimeout = async () => {
854
+ try {
855
+ state.lastSend = this.sendTypingActivity(context)
856
+ await state.lastSend
857
+ } catch (err: any) {
858
+ logger.error(err)
859
+ state.lastSend = Promise.resolve()
860
+ state.stop()
861
+ return
862
+ }
863
+
864
+ // Only reschedule if this turn still owns the active timer state.
865
+ if (currentState() === state) {
866
+ state.timer = setTimeout(onTimeout, typingOptions.intervalMs)
834
867
  }
835
- this._typingTimer = setTimeout(onTimeout, TYPING_TIMER_DELAY)
836
868
  }
869
+
870
+ state.timer = setTimeout(onTimeout, typingOptions.initialDelayMs)
871
+ }
872
+
873
+ private getTypingTimingOptions (context: TurnContext): Required<TypingTimingOptions> {
874
+ const channelId = context.activity.channelId || context.activity.channelIdChannel || ''
875
+ const channelOptions = channelId ? this._options.typing?.channelStrategies?.[channelId] : undefined
876
+
877
+ return {
878
+ initialDelayMs: channelOptions?.initialDelayMs ?? this._options.typing?.initialDelayMs ?? DEFAULT_TYPING_INITIAL_DELAY,
879
+ intervalMs: channelOptions?.intervalMs ?? this._options.typing?.intervalMs ?? DEFAULT_TYPING_INTERVAL
880
+ }
881
+ }
882
+
883
+ private getStreamType (activity: Activity): string | undefined {
884
+ const streamingEntity = activity.entities?.find((entity) => (entity as StreamInfoEntity).type === 'streaminfo') as StreamInfoEntity | undefined
885
+ return streamingEntity?.streamType ?? activity.channelData?.streamType
886
+ }
887
+
888
+ private async sendTypingActivity (context: TurnContext): Promise<ResourceResponse[] | undefined> {
889
+ const conversationReference = context.activity.getConversationReference()
890
+ const typingActivity = Activity.fromObject({ type: ActivityTypes.Typing }).applyConversationReference(conversationReference)
891
+
892
+ return await context.adapter.sendActivities(context, [typingActivity])
837
893
  }
838
894
 
839
895
  /**
@@ -871,23 +927,37 @@ export class AgentApplication<TState extends TurnState> {
871
927
  * @returns void
872
928
  *
873
929
  * @remarks
874
- * This method clears the typing indicator timer to prevent further typing indicators
875
- * from being sent. It's typically called automatically when a message is sent, but
876
- * can also be called manually to stop the typing indicator.
930
+ * Calling this overload without a context is deprecated. It only logs a warning and does not stop any timer.
931
+ *
932
+ * @deprecated Pass the current TurnContext to stop only that turn's typing timer.
933
+ */
934
+ public stopTypingTimer (): void
935
+
936
+ /**
937
+ * Stops the typing indicator timer for the provided turn context.
938
+ *
939
+ * @param context - The turn context whose typing timer should be stopped.
940
+ * @returns void
941
+ *
942
+ * @remarks
943
+ * This method clears the typing indicator timer for the current turn to prevent further typing indicators
944
+ * from being sent. It's typically called automatically when a message is sent, but can also be called manually.
877
945
  *
878
946
  * @example
879
947
  * ```typescript
880
- * app.startTypingTimer(turnContext);
948
+ * app.startTypingTimer(turnContext)
881
949
  * // Do some processing...
882
- * app.stopTypingTimer(); // Manually stop the typing indicator
950
+ * app.stopTypingTimer(turnContext)
883
951
  * ```
884
- *
885
952
  */
886
- public stopTypingTimer (): void {
887
- if (this._typingTimer) {
888
- clearTimeout(this._typingTimer)
889
- this._typingTimer = undefined
953
+ public stopTypingTimer (context: TurnContext): void
954
+ public stopTypingTimer (context?: TurnContext): void {
955
+ if (!context) {
956
+ logger.warn('Application.stopTypingTimer() without a context is deprecated. Pass the current TurnContext instead.')
957
+ return
890
958
  }
959
+
960
+ context.turnState.get<TypingTimerState>(TYPING_TIMER_STATE_KEY)?.stop()
891
961
  }
892
962
 
893
963
  /**
@@ -9,6 +9,7 @@ import { AgentApplicationOptions } from './agentApplicationOptions'
9
9
  import { AuthorizationOptions } from './auth/types'
10
10
  import { ProactiveOptions } from './proactive'
11
11
  import { TurnState } from './turnState'
12
+ import { TypingOptions } from './agentApplicationOptions'
12
13
 
13
14
  /**
14
15
  * Builder class for creating and configuring AgentApplication instances.
@@ -50,10 +51,20 @@ export class AgentApplicationBuilder<TState extends TurnState = TurnState> {
50
51
  * @param startTypingTimer Whether to show typing indicators
51
52
  * @returns This builder instance for chaining
52
53
  */
53
- // public setStartTypingTimer (startTypingTimer: boolean): this {
54
- // this._options.startTypingTimer = startTypingTimer
55
- // return this
56
- // }
54
+ public setStartTypingTimer (startTypingTimer: boolean): this {
55
+ this._options.startTypingTimer = startTypingTimer
56
+ return this
57
+ }
58
+
59
+ /**
60
+ * Configures timing behavior for automatic typing indicators.
61
+ * @param typing Typing timer options
62
+ * @returns This builder instance for chaining
63
+ */
64
+ public withTyping (typing: TypingOptions): this {
65
+ this._options.typing = typing
66
+ return this
67
+ }
57
68
 
58
69
  /**
59
70
  * Sets authentication options for the AgentApplication.
@@ -14,6 +14,35 @@ import { AuthorizationOptions } from './auth/types'
14
14
  import { Connections } from '../auth/connections'
15
15
  import { ProactiveOptions } from './proactive'
16
16
 
17
+ /**
18
+ * Typing timer settings for a specific channel or the global default.
19
+ */
20
+ export interface TypingTimingOptions {
21
+ /**
22
+ * Delay in milliseconds before the first typing indicator is sent.
23
+ *
24
+ * @default 0
25
+ */
26
+ initialDelayMs?: number
27
+
28
+ /**
29
+ * Delay in milliseconds between subsequent typing indicators.
30
+ *
31
+ * @default 4000
32
+ */
33
+ intervalMs?: number
34
+ }
35
+
36
+ /**
37
+ * Configuration options for automatic typing indicators.
38
+ */
39
+ export interface TypingOptions extends TypingTimingOptions {
40
+ /**
41
+ * Optional channel-specific timing overrides keyed by channel ID.
42
+ */
43
+ channelStrategies?: Record<string, TypingTimingOptions>
44
+ }
45
+
17
46
  /**
18
47
  * Configuration options for creating and initializing an Agent Application.
19
48
  * This interface defines all the configurable aspects of an agent's behavior,
@@ -60,6 +89,13 @@ export interface AgentApplicationOptions<TState extends TurnState> {
60
89
  */
61
90
  startTypingTimer: boolean;
62
91
 
92
+ /**
93
+ * Optional timing settings for automatic typing indicators.
94
+ *
95
+ * @default undefined
96
+ */
97
+ typing?: TypingOptions;
98
+
63
99
  /**
64
100
  * Whether to enable support for long-running message processing operations.
65
101
  * When enabled, the agent can handle operations that take longer than the typical