@microsoft/agents-hosting 0.6.1 → 0.6.16-gc874f0c9d8
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/src/activityHandler.d.ts +29 -5
- package/dist/src/activityHandler.js +30 -6
- package/dist/src/activityHandler.js.map +1 -1
- package/dist/src/agent-client/agentClient.js +1 -1
- package/dist/src/agent-client/agentClient.js.map +1 -1
- package/dist/src/agent-client/agentResponseHandler.d.ts +34 -0
- package/dist/src/agent-client/agentResponseHandler.js +35 -1
- package/dist/src/agent-client/agentResponseHandler.js.map +1 -1
- package/dist/src/app/adaptiveCards/adaptiveCardsActions.d.ts +23 -2
- package/dist/src/app/adaptiveCards/adaptiveCardsActions.js.map +1 -1
- package/dist/src/app/adaptiveCards/adaptiveCardsSearchParams.d.ts +1 -1
- package/dist/src/app/agentApplication.d.ts +46 -34
- package/dist/src/app/agentApplication.js +64 -40
- package/dist/src/app/agentApplication.js.map +1 -1
- package/dist/src/app/agentApplicationOptions.d.ts +74 -13
- package/dist/src/app/appRoute.d.ts +56 -2
- package/dist/src/app/attachmentDownloader.d.ts +1 -0
- package/dist/src/app/attachmentDownloader.js +2 -1
- package/dist/src/app/attachmentDownloader.js.map +1 -1
- package/dist/src/app/authorization.d.ts +1 -1
- package/dist/src/app/authorization.js +1 -1
- package/dist/src/app/authorization.js.map +1 -1
- package/dist/src/app/extensions.d.ts +37 -1
- package/dist/src/app/extensions.js +38 -2
- package/dist/src/app/extensions.js.map +1 -1
- package/dist/src/app/index.d.ts +2 -0
- package/dist/src/app/index.js +2 -0
- package/dist/src/app/index.js.map +1 -1
- package/dist/src/app/routeList.d.ts +13 -0
- package/dist/src/app/routeList.js +30 -0
- package/dist/src/app/routeList.js.map +1 -0
- package/dist/src/app/routeRank.d.ts +51 -0
- package/dist/src/app/routeRank.js +56 -0
- package/dist/src/app/routeRank.js.map +1 -0
- package/dist/src/app/streaming/citationUtil.d.ts +1 -1
- package/dist/src/app/streaming/streamingResponse.d.ts +1 -2
- package/dist/src/app/streaming/streamingResponse.js +29 -41
- package/dist/src/app/streaming/streamingResponse.js.map +1 -1
- package/dist/src/app/turnState.d.ts +2 -0
- package/dist/src/app/turnState.js +3 -1
- package/dist/src/app/turnState.js.map +1 -1
- package/dist/src/auth/authConfiguration.d.ts +4 -0
- package/dist/src/auth/authConfiguration.js +5 -1
- package/dist/src/auth/authConfiguration.js.map +1 -1
- package/dist/src/auth/authProvider.d.ts +1 -1
- package/dist/src/auth/jwt-middleware.js +1 -1
- package/dist/src/auth/jwt-middleware.js.map +1 -1
- package/dist/src/auth/msalTokenCredential.d.ts +14 -0
- package/dist/src/auth/msalTokenCredential.js +14 -0
- package/dist/src/auth/msalTokenCredential.js.map +1 -1
- package/dist/src/auth/msalTokenProvider.js +4 -2
- package/dist/src/auth/msalTokenProvider.js.map +1 -1
- package/dist/src/baseAdapter.d.ts +22 -1
- package/dist/src/baseAdapter.js +23 -2
- package/dist/src/baseAdapter.js.map +1 -1
- package/dist/src/cards/adaptiveCard.d.ts +2 -0
- package/dist/src/cards/animationCard.d.ts +1 -1
- package/dist/src/cards/audioCard.d.ts +1 -1
- package/dist/src/cards/cardImage.d.ts +1 -1
- package/dist/src/cards/fact.d.ts +1 -1
- package/dist/src/cards/heroCard.d.ts +1 -1
- package/dist/src/cards/o365ConnectorCardSection.d.ts +5 -0
- package/dist/src/cloudAdapter.d.ts +11 -0
- package/dist/src/cloudAdapter.js +33 -4
- package/dist/src/cloudAdapter.js.map +1 -1
- package/dist/src/connector-client/connectorClient.js +1 -1
- package/dist/src/connector-client/connectorClient.js.map +1 -1
- package/dist/src/getProductInfo.js +2 -2
- package/dist/src/getProductInfo.js.map +1 -1
- package/dist/src/index.d.ts +0 -2
- package/dist/src/index.js +0 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/middlewareSet.js +1 -1
- package/dist/src/middlewareSet.js.map +1 -1
- package/dist/src/oauth/oAuthFlow.js +1 -1
- package/dist/src/oauth/oAuthFlow.js.map +1 -1
- package/dist/src/oauth/userTokenClient.js +1 -1
- package/dist/src/oauth/userTokenClient.js.map +1 -1
- package/dist/src/state/agentState.js +1 -1
- package/dist/src/state/agentState.js.map +1 -1
- package/dist/src/state/agentStatePropertyAccesor.d.ts +269 -38
- package/dist/src/state/agentStatePropertyAccesor.js +269 -38
- package/dist/src/state/agentStatePropertyAccesor.js.map +1 -1
- package/dist/src/statusCodes.d.ts +30 -0
- package/dist/src/statusCodes.js +30 -0
- package/dist/src/statusCodes.js.map +1 -1
- package/dist/src/storage/fileStorage.d.ts +97 -0
- package/dist/src/storage/fileStorage.js +97 -0
- package/dist/src/storage/fileStorage.js.map +1 -1
- package/dist/src/storage/memoryStorage.d.ts +2 -1
- package/dist/src/storage/memoryStorage.js +3 -2
- package/dist/src/storage/memoryStorage.js.map +1 -1
- package/dist/src/storage/storage.d.ts +1 -0
- package/dist/src/transcript/transcriptLoggerMiddleware.js +1 -1
- package/dist/src/transcript/transcriptLoggerMiddleware.js.map +1 -1
- package/dist/src/turnContext.d.ts +1 -0
- package/dist/src/turnContext.js +1 -0
- package/dist/src/turnContext.js.map +1 -1
- package/package.json +4 -5
- package/src/activityHandler.ts +30 -6
- package/src/agent-client/agentClient.ts +1 -1
- package/src/agent-client/agentResponseHandler.ts +35 -1
- package/src/app/adaptiveCards/adaptiveCardsActions.ts +23 -2
- package/src/app/adaptiveCards/adaptiveCardsSearchParams.ts +1 -1
- package/src/app/agentApplication.ts +70 -41
- package/src/app/agentApplicationOptions.ts +75 -13
- package/src/app/appRoute.ts +57 -2
- package/src/app/attachmentDownloader.ts +2 -1
- package/src/app/authorization.ts +2 -2
- package/src/app/extensions.ts +45 -2
- package/src/app/index.ts +2 -0
- package/src/app/routeList.ts +37 -0
- package/src/app/routeRank.ts +54 -0
- package/src/app/streaming/citationUtil.ts +1 -1
- package/src/app/streaming/streamingResponse.ts +23 -71
- package/src/app/turnState.ts +3 -1
- package/src/auth/authConfiguration.ts +5 -1
- package/src/auth/authProvider.ts +1 -1
- package/src/auth/jwt-middleware.ts +1 -1
- package/src/auth/msalTokenCredential.ts +15 -0
- package/src/auth/msalTokenProvider.ts +4 -2
- package/src/baseAdapter.ts +25 -2
- package/src/cards/adaptiveCard.ts +2 -0
- package/src/cards/animationCard.ts +1 -1
- package/src/cards/audioCard.ts +1 -1
- package/src/cards/cardImage.ts +1 -1
- package/src/cards/fact.ts +1 -1
- package/src/cards/heroCard.ts +1 -1
- package/src/cards/o365ConnectorCardSection.ts +5 -0
- package/src/cloudAdapter.ts +36 -4
- package/src/connector-client/connectorClient.ts +1 -1
- package/src/getProductInfo.ts +2 -2
- package/src/index.ts +0 -2
- package/src/middlewareSet.ts +1 -1
- package/src/oauth/oAuthFlow.ts +1 -1
- package/src/oauth/userTokenClient.ts +1 -1
- package/src/state/agentState.ts +1 -1
- package/src/state/agentStatePropertyAccesor.ts +269 -38
- package/src/statusCodes.ts +30 -0
- package/src/storage/fileStorage.ts +99 -0
- package/src/storage/memoryStorage.ts +3 -2
- package/src/storage/storage.ts +1 -0
- package/src/transcript/transcriptLoggerMiddleware.ts +1 -1
- package/src/turnContext.ts +1 -0
- package/dist/src/logger.d.ts +0 -44
- package/dist/src/logger.js +0 -77
- package/dist/src/logger.js.map +0 -1
- package/src/logger.ts +0 -76
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
4
|
+
* Licensed under the MIT License.
|
|
5
|
+
*/
|
|
2
6
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
7
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
8
|
};
|
|
@@ -6,7 +10,60 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
10
|
exports.FileStorage = void 0;
|
|
7
11
|
const path_1 = __importDefault(require("path"));
|
|
8
12
|
const fs_1 = __importDefault(require("fs"));
|
|
13
|
+
/**
|
|
14
|
+
* A file-based storage implementation that persists data to the local filesystem.
|
|
15
|
+
*
|
|
16
|
+
* @remarks
|
|
17
|
+
* FileStorage stores all data in a single JSON file named 'state.json' within a specified folder.
|
|
18
|
+
* This implementation is suitable for development scenarios, local testing, and single-instance
|
|
19
|
+
* deployments where shared state across multiple instances is not required.
|
|
20
|
+
*
|
|
21
|
+
* The storage format is a simple key-value JSON object where keys are strings and values
|
|
22
|
+
* can be any JSON-serializable data. All operations are synchronous file I/O operations
|
|
23
|
+
* wrapped in Promise interfaces to match the Storage contract.
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```typescript
|
|
27
|
+
* const storage = new FileStorage('./data');
|
|
28
|
+
*
|
|
29
|
+
* // Write some data
|
|
30
|
+
* await storage.write({
|
|
31
|
+
* 'user123': { name: 'John', lastSeen: new Date().toISOString() },
|
|
32
|
+
* 'conversation456': { turn: 5, context: 'discussing weather' }
|
|
33
|
+
* });
|
|
34
|
+
*
|
|
35
|
+
* // Read specific keys
|
|
36
|
+
* const data = await storage.read(['user123']);
|
|
37
|
+
* console.log(data.user123); // { name: 'John', lastSeen: '...' }
|
|
38
|
+
*
|
|
39
|
+
* // Delete data
|
|
40
|
+
* await storage.delete(['conversation456']);
|
|
41
|
+
* ```
|
|
42
|
+
*
|
|
43
|
+
* @warning
|
|
44
|
+
* This implementation does not provide:
|
|
45
|
+
* - Thread safety for concurrent access
|
|
46
|
+
* - Optimistic concurrency control (eTag support)
|
|
47
|
+
* - Atomic operations across multiple keys
|
|
48
|
+
* - Scale for large datasets
|
|
49
|
+
*
|
|
50
|
+
* For production scenarios requiring these features, consider using
|
|
51
|
+
* database-backed storage implementations instead.
|
|
52
|
+
*/
|
|
9
53
|
class FileStorage {
|
|
54
|
+
/**
|
|
55
|
+
* Creates a new FileStorage instance that stores data in the specified folder.
|
|
56
|
+
*
|
|
57
|
+
* @param folder The absolute or relative path to the folder where the state.json file will be stored
|
|
58
|
+
*
|
|
59
|
+
* @remarks
|
|
60
|
+
* The constructor performs the following initialization steps:
|
|
61
|
+
* 1. Creates the target folder if it doesn't exist (including parent directories)
|
|
62
|
+
* 2. Creates an empty state.json file if it doesn't exist
|
|
63
|
+
* 3. Loads existing data from state.json into memory for fast access
|
|
64
|
+
*
|
|
65
|
+
* @throws May throw filesystem errors if the folder cannot be created or accessed
|
|
66
|
+
*/
|
|
10
67
|
constructor(folder) {
|
|
11
68
|
this._folder = folder;
|
|
12
69
|
if (!fs_1.default.existsSync(folder)) {
|
|
@@ -18,6 +75,19 @@ class FileStorage {
|
|
|
18
75
|
const data = fs_1.default.readFileSync(path_1.default.join(folder, 'state.json'), 'utf8');
|
|
19
76
|
this._stateFile = JSON.parse(data);
|
|
20
77
|
}
|
|
78
|
+
/**
|
|
79
|
+
* Reads store items from the filesystem storage.
|
|
80
|
+
*
|
|
81
|
+
* @param keys Array of keys to read from storage
|
|
82
|
+
* @returns Promise resolving to an object containing the requested items (keys that don't exist are omitted)
|
|
83
|
+
*
|
|
84
|
+
* @throws ReferenceError if keys array is empty or undefined
|
|
85
|
+
*
|
|
86
|
+
* @remarks
|
|
87
|
+
* This method reads from the in-memory cache that was loaded during construction,
|
|
88
|
+
* making it very fast but potentially returning stale data if the file was
|
|
89
|
+
* modified by external processes.
|
|
90
|
+
*/
|
|
21
91
|
read(keys) {
|
|
22
92
|
return new Promise((resolve, reject) => {
|
|
23
93
|
if (!keys || keys.length === 0) {
|
|
@@ -35,6 +105,20 @@ class FileStorage {
|
|
|
35
105
|
}
|
|
36
106
|
});
|
|
37
107
|
}
|
|
108
|
+
/**
|
|
109
|
+
* Writes store items to the filesystem storage.
|
|
110
|
+
*
|
|
111
|
+
* @param changes Object containing key-value pairs to write to storage
|
|
112
|
+
* @returns Promise that resolves when the write operation completes
|
|
113
|
+
*
|
|
114
|
+
* @remarks
|
|
115
|
+
* This method updates both the in-memory cache and writes the entire state
|
|
116
|
+
* to the state.json file. The file is written with pretty-printing (2-space indentation)
|
|
117
|
+
* for better readability during development and debugging.
|
|
118
|
+
*
|
|
119
|
+
* Note: This implementation does not support eTag-based optimistic concurrency control.
|
|
120
|
+
* Any eTag values in the changes object are ignored.
|
|
121
|
+
*/
|
|
38
122
|
write(changes) {
|
|
39
123
|
const keys = Object.keys(changes);
|
|
40
124
|
for (const key of keys) {
|
|
@@ -43,6 +127,19 @@ class FileStorage {
|
|
|
43
127
|
fs_1.default.writeFileSync(this._folder + '/state.json', JSON.stringify(this._stateFile, null, 2));
|
|
44
128
|
return Promise.resolve();
|
|
45
129
|
}
|
|
130
|
+
/**
|
|
131
|
+
* Deletes store items from the filesystem storage.
|
|
132
|
+
*
|
|
133
|
+
* @param keys Array of keys to delete from storage
|
|
134
|
+
* @returns Promise that resolves when the delete operation completes
|
|
135
|
+
*
|
|
136
|
+
* @throws ReferenceError if keys array is empty or undefined
|
|
137
|
+
*
|
|
138
|
+
* @remarks
|
|
139
|
+
* This method removes the specified keys from both the in-memory cache
|
|
140
|
+
* and writes the updated state to the state.json file. Keys that don't
|
|
141
|
+
* exist in storage are silently ignored.
|
|
142
|
+
*/
|
|
46
143
|
delete(keys) {
|
|
47
144
|
return new Promise((resolve, reject) => {
|
|
48
145
|
if (!keys || keys.length === 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fileStorage.js","sourceRoot":"","sources":["../../../src/storage/fileStorage.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"fileStorage.js","sourceRoot":"","sources":["../../../src/storage/fileStorage.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ import { Storage, StoreItem } from './storage';
|
|
|
6
6
|
/**
|
|
7
7
|
* A simple in-memory storage provider that implements the Storage interface.
|
|
8
8
|
*
|
|
9
|
+
* @remarks
|
|
9
10
|
* This class provides a volatile storage solution that keeps data in memory,
|
|
10
11
|
* which means data is lost when the process terminates. It's primarily useful for:
|
|
11
12
|
* - Development and testing scenarios
|
|
@@ -13,7 +14,7 @@ import { Storage, StoreItem } from './storage';
|
|
|
13
14
|
* - Stateless environments where external storage isn't available
|
|
14
15
|
*
|
|
15
16
|
* MemoryStorage supports optimistic concurrency control through eTags and
|
|
16
|
-
* can be used as a singleton through the getSingleInstance() method to
|
|
17
|
+
* can be used as a singleton through the {@link MemoryStorage.getSingleInstance | getSingleInstance() method} to
|
|
17
18
|
* share state across different parts of an application.
|
|
18
19
|
*/
|
|
19
20
|
export declare class MemoryStorage implements Storage {
|
|
@@ -5,11 +5,12 @@
|
|
|
5
5
|
*/
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
7
|
exports.MemoryStorage = void 0;
|
|
8
|
-
const logger_1 = require("
|
|
8
|
+
const logger_1 = require("@microsoft/agents-activity/logger");
|
|
9
9
|
const logger = (0, logger_1.debug)('agents:memory-storage');
|
|
10
10
|
/**
|
|
11
11
|
* A simple in-memory storage provider that implements the Storage interface.
|
|
12
12
|
*
|
|
13
|
+
* @remarks
|
|
13
14
|
* This class provides a volatile storage solution that keeps data in memory,
|
|
14
15
|
* which means data is lost when the process terminates. It's primarily useful for:
|
|
15
16
|
* - Development and testing scenarios
|
|
@@ -17,7 +18,7 @@ const logger = (0, logger_1.debug)('agents:memory-storage');
|
|
|
17
18
|
* - Stateless environments where external storage isn't available
|
|
18
19
|
*
|
|
19
20
|
* MemoryStorage supports optimistic concurrency control through eTags and
|
|
20
|
-
* can be used as a singleton through the getSingleInstance() method to
|
|
21
|
+
* can be used as a singleton through the {@link MemoryStorage.getSingleInstance | getSingleInstance() method} to
|
|
21
22
|
* share state across different parts of an application.
|
|
22
23
|
*/
|
|
23
24
|
class MemoryStorage {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memoryStorage.js","sourceRoot":"","sources":["../../../src/storage/memoryStorage.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAGH,
|
|
1
|
+
{"version":3,"file":"memoryStorage.js","sourceRoot":"","sources":["../../../src/storage/memoryStorage.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAGH,8DAAyD;AAEzD,MAAM,MAAM,GAAG,IAAA,cAAK,EAAC,uBAAuB,CAAC,CAAA;AAE7C;;;;;;;;;;;;;GAaG;AACH,MAAa,aAAa;IAOxB;;;;OAIG;IACH,YAAqB,SAAkC,EAAE;QAApC,WAAM,GAAN,MAAM,CAA8B;QAVzD;;WAEG;QACK,SAAI,GAAW,CAAC,CAAA;IAOqC,CAAC;IAE9D;;;;;;;OAOG;IACH,MAAM,CAAC,iBAAiB;QACtB,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;YAC5B,aAAa,CAAC,QAAQ,GAAG,IAAI,aAAa,EAAE,CAAA;QAC9C,CAAC;QACD,OAAO,aAAa,CAAC,QAAQ,CAAA;IAC/B,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,IAAI,CAAE,IAAc;QACxB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,cAAc,CAAC,iCAAiC,CAAC,CAAA;QAC7D,CAAC;QAED,MAAM,IAAI,GAAc,EAAE,CAAA;QAC1B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,CAAC,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC,CAAA;YAClC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;YAC7B,IAAI,IAAI,EAAE,CAAC;gBACT,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YAC9B,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,KAAK,CAAE,OAAkB;QAC7B,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrC,MAAM,IAAI,cAAc,CAAC,oCAAoC,CAAC,CAAA;QAChE,CAAC;QAED,KAAK,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACrD,MAAM,CAAC,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC,CAAA;YAClC,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;YACnC,IAAI,CAAC,UAAU,IAAI,OAAO,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBACzD,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;YAC7B,CAAC;iBAAM,CAAC;gBACN,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;gBACtC,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,EAAE,CAAC;oBAClC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;gBAC7B,CAAC;qBAAM,CAAC;oBACN,MAAM,IAAI,KAAK,CAAC,2BAA2B,GAAG,yBAAyB,CAAC,CAAA;gBAC1E,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CAAE,IAAc;QAC1B,MAAM,CAAC,IAAI,CAAC,kBAAkB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAChD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QACzB,CAAC;IACH,CAAC;IAED;;;;;;;;;;;OAWG;IACK,QAAQ,CAAE,GAAW,EAAE,IAAa;QAC1C,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;QACzE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;IAC1C,CAAC;CACF;AAnHD,sCAmHC"}
|
|
@@ -42,6 +42,7 @@ export type StorageKeyFactory = (context: TurnContext) => string | Promise<strin
|
|
|
42
42
|
/**
|
|
43
43
|
* Defines the interface for storage operations in the Agents platform.
|
|
44
44
|
*
|
|
45
|
+
* @remarks
|
|
45
46
|
* Storage providers persist state data across conversation turns, enabling
|
|
46
47
|
* agents to maintain context over time. Different implementations may store
|
|
47
48
|
* data in memory, databases, blob storage, or other persistence mechanisms.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.TranscriptLoggerMiddleware = void 0;
|
|
4
4
|
const agents_activity_1 = require("@microsoft/agents-activity");
|
|
5
|
-
const logger_1 = require("
|
|
5
|
+
const logger_1 = require("@microsoft/agents-activity/logger");
|
|
6
6
|
const appLogger = (0, logger_1.debug)('agents:rest-client');
|
|
7
7
|
/**
|
|
8
8
|
* Middleware for logging agent conversations to a transcript logger.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transcriptLoggerMiddleware.js","sourceRoot":"","sources":["../../../src/transcript/transcriptLoggerMiddleware.ts"],"names":[],"mappings":";;;AAIA,gEAA0H;AAC1H,
|
|
1
|
+
{"version":3,"file":"transcriptLoggerMiddleware.js","sourceRoot":"","sources":["../../../src/transcript/transcriptLoggerMiddleware.ts"],"names":[],"mappings":"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"}
|
|
@@ -44,6 +44,7 @@ export interface TurnContext {
|
|
|
44
44
|
/**
|
|
45
45
|
* Represents the context for a single turn in a conversation between a user and an agent.
|
|
46
46
|
*
|
|
47
|
+
* @remarks
|
|
47
48
|
* TurnContext is a central concept in the Agents framework - it contains:
|
|
48
49
|
* - The incoming activity that started the turn
|
|
49
50
|
* - Access to the adapter that can be used to send responses
|
package/dist/src/turnContext.js
CHANGED
|
@@ -13,6 +13,7 @@ exports.AgentCallbackHandlerKey = 'agentCallbackHandler';
|
|
|
13
13
|
/**
|
|
14
14
|
* Represents the context for a single turn in a conversation between a user and an agent.
|
|
15
15
|
*
|
|
16
|
+
* @remarks
|
|
16
17
|
* TurnContext is a central concept in the Agents framework - it contains:
|
|
17
18
|
* - The incoming activity that started the turn
|
|
18
19
|
* - Access to the adapter that can be used to send responses
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"turnContext.js","sourceRoot":"","sources":["../../src/turnContext.ts"],"names":[],"mappings":";;;AAAA,oGAAoG;AACpG,uDAAuD;AAEvD,gEAAsH;AAEtH,6EAAyE;AAGzE,yEAAqE;AAgCrE;;GAEG;AACU,QAAA,uBAAuB,GAAG,sBAAsB,CAAA;AAO7D
|
|
1
|
+
{"version":3,"file":"turnContext.js","sourceRoot":"","sources":["../../src/turnContext.ts"],"names":[],"mappings":"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"}
|
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": "0.6.
|
|
4
|
+
"version": "0.6.16-gc874f0c9d8",
|
|
5
5
|
"homepage": "https://github.com/microsoft/Agents-for-js",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
@@ -19,11 +19,10 @@
|
|
|
19
19
|
"main": "dist/src/index.js",
|
|
20
20
|
"types": "dist/src/index.d.ts",
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"@azure/core-auth": "^1.
|
|
22
|
+
"@azure/core-auth": "^1.10.0",
|
|
23
23
|
"@azure/msal-node": "^3.6.0",
|
|
24
|
-
"@microsoft/agents-activity": "0.6.
|
|
25
|
-
"axios": "^1.
|
|
26
|
-
"debug": "^4.3.7",
|
|
24
|
+
"@microsoft/agents-activity": "0.6.16-gc874f0c9d8",
|
|
25
|
+
"axios": "^1.10.0",
|
|
27
26
|
"jsonwebtoken": "^9.0.2",
|
|
28
27
|
"jwks-rsa": "^3.2.0"
|
|
29
28
|
},
|
package/src/activityHandler.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
|
-
import { debug } from '
|
|
5
|
+
import { debug } from '@microsoft/agents-activity/logger'
|
|
6
6
|
import { TurnContext } from './turnContext'
|
|
7
7
|
import { Activity, ActivityTypes, Channels } from '@microsoft/agents-activity'
|
|
8
8
|
import { StatusCodes } from './statusCodes'
|
|
@@ -30,12 +30,36 @@ const logger = debug('agents:activity-handler')
|
|
|
30
30
|
/**
|
|
31
31
|
* Handles incoming activities from channels and dispatches them to the appropriate handlers.
|
|
32
32
|
*
|
|
33
|
-
*
|
|
34
|
-
* in an agent application. It processes various activity types such as messages, conversation updates,
|
|
35
|
-
* message reactions, etc., and routes them to the appropriate handler methods.
|
|
33
|
+
* @remarks
|
|
36
34
|
*
|
|
37
|
-
*
|
|
38
|
-
*
|
|
35
|
+
* This class is provided to simplify the migration from Bot Framework SDK v4 to the Agents Hosting framework.
|
|
36
|
+
*
|
|
37
|
+
* The ActivityHandler serves as the central hub for processing incoming activities in conversational AI applications.
|
|
38
|
+
* It provides a comprehensive framework for handling various activity types including messages, conversation updates,
|
|
39
|
+
* message reactions, typing indicators, installation updates, and invoke operations such as adaptive cards and search.
|
|
40
|
+
*
|
|
41
|
+
* ## Key Features:
|
|
42
|
+
* - **Activity Routing**: Automatically routes activities to appropriate handlers based on activity type
|
|
43
|
+
* - **Handler Registration**: Provides fluent API methods (onMessage, onConversationUpdate, etc.) for registering event handlers
|
|
44
|
+
* - **Invoke Support**: Built-in handling for adaptive card actions and search invoke operations
|
|
45
|
+
* - **Error Handling**: Robust error handling with proper HTTP status codes for invoke operations
|
|
46
|
+
* - **Extensibility**: Designed for inheritance to allow custom behavior and specialized handlers
|
|
47
|
+
*
|
|
48
|
+
* ## Usage:
|
|
49
|
+
* ```typescript
|
|
50
|
+
* const handler = new ActivityHandler()
|
|
51
|
+
* .onMessage(async (context, next) => {
|
|
52
|
+
* await context.sendActivity('Hello!');
|
|
53
|
+
* await next();
|
|
54
|
+
* })
|
|
55
|
+
* .onMembersAdded(async (context, next) => {
|
|
56
|
+
* // Welcome new members
|
|
57
|
+
* await next();
|
|
58
|
+
* });
|
|
59
|
+
* ```
|
|
60
|
+
*
|
|
61
|
+
* Developers can extend this class to implement domain-specific logic, override default behaviors,
|
|
62
|
+
* or add support for custom activity types and invoke operations.
|
|
39
63
|
*/
|
|
40
64
|
export class ActivityHandler {
|
|
41
65
|
/**
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { AuthConfiguration, MsalTokenProvider } from '../auth'
|
|
2
2
|
import { Activity, ConversationReference, RoleTypes } from '@microsoft/agents-activity'
|
|
3
3
|
import { v4 } from 'uuid'
|
|
4
|
-
import { debug } from '
|
|
4
|
+
import { debug } from '@microsoft/agents-activity/logger'
|
|
5
5
|
import { ConversationState } from '../state'
|
|
6
6
|
import { TurnContext } from '../turnContext'
|
|
7
7
|
|
|
@@ -5,7 +5,7 @@ import { Request, Response, Application } from 'express'
|
|
|
5
5
|
import { TurnContext } from '../turnContext'
|
|
6
6
|
import { v4 } from 'uuid'
|
|
7
7
|
import { normalizeIncomingActivity } from '../activityWireCompat'
|
|
8
|
-
import { debug } from '
|
|
8
|
+
import { debug } from '@microsoft/agents-activity/logger'
|
|
9
9
|
import { ConversationState } from '../state'
|
|
10
10
|
|
|
11
11
|
const logger = debug('agents:agent-client')
|
|
@@ -14,6 +14,40 @@ interface ConversationReferenceState {
|
|
|
14
14
|
conversationReference: ConversationReference
|
|
15
15
|
}
|
|
16
16
|
|
|
17
|
+
/**
|
|
18
|
+
* To enable Agent to Agent communication, configures the agent response controller endpoint for handling incoming activities from external services.
|
|
19
|
+
*
|
|
20
|
+
* This function sets up a POST endpoint that receives activities (messages, events, etc.) from external
|
|
21
|
+
* services and processes them through the bot framework's activity handling pipeline. It's typically used
|
|
22
|
+
* when the agent needs to receive and respond to activities from channels or services that send activities
|
|
23
|
+
* to a specific webhook endpoint.
|
|
24
|
+
*
|
|
25
|
+
* @param app - The Express application instance to configure the route on
|
|
26
|
+
* @param adapter - The CloudAdapter instance used for processing bot framework activities and managing conversations
|
|
27
|
+
* @param agent - The ActivityHandler instance that contains the bot's logic for processing different types of activities
|
|
28
|
+
* @param conversationState - The ConversationState instance used for managing conversation-specific state and conversation references
|
|
29
|
+
*
|
|
30
|
+
* @remarks
|
|
31
|
+
* The endpoint expects activities to be sent to:
|
|
32
|
+
* `POST /api/agentresponse/v3/conversations/{conversationId}/activities/{activityId}`
|
|
33
|
+
*
|
|
34
|
+
* The function handles:
|
|
35
|
+
* - Normalizing incoming activity data from the request body
|
|
36
|
+
* - Retrieving conversation references from conversation state
|
|
37
|
+
* - Continuing conversations using the stored conversation reference
|
|
38
|
+
* - Processing EndOfConversation activities by cleaning up conversation state
|
|
39
|
+
* - Sending activities through the turn context and returning responses
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* ```typescript
|
|
43
|
+
* const app = express();
|
|
44
|
+
* const adapter = new CloudAdapter();
|
|
45
|
+
* const agent = new MyActivityHandler();
|
|
46
|
+
* const conversationState = new ConversationState(memoryStorage);
|
|
47
|
+
*
|
|
48
|
+
* configureResponseController(app, adapter, agent, conversationState);
|
|
49
|
+
* ```
|
|
50
|
+
*/
|
|
17
51
|
export const configureResponseController = (app: Application, adapter: CloudAdapter, agent: ActivityHandler, conversationState: ConversationState) => {
|
|
18
52
|
app.post('/api/agentresponse/v3/conversations/:conversationId/activities/:activityId', handleResponse(adapter, agent, conversationState))
|
|
19
53
|
}
|
|
@@ -33,14 +33,35 @@ enum AdaptiveCardInvokeResponseType {
|
|
|
33
33
|
SEARCH = 'application/vnd.microsoft.search.searchResponse'
|
|
34
34
|
}
|
|
35
35
|
|
|
36
|
+
/**
|
|
37
|
+
* Represents a single search result item returned from an Adaptive Card search operation.
|
|
38
|
+
* This interface defines the structure for search results that are displayed to users
|
|
39
|
+
* when they perform searches within Adaptive Cards, such as typeahead or dropdown searches.
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* ```typescript
|
|
43
|
+
* const searchResult: AdaptiveCardSearchResult = {
|
|
44
|
+
* title: "John Doe",
|
|
45
|
+
* value: "john.doe@company.com"
|
|
46
|
+
* };
|
|
47
|
+
* ```
|
|
48
|
+
*/
|
|
36
49
|
export interface AdaptiveCardSearchResult {
|
|
37
50
|
/**
|
|
38
|
-
* The
|
|
51
|
+
* The display text shown to the user in the search results.
|
|
52
|
+
* This is typically the human-readable label that appears in dropdowns,
|
|
53
|
+
* typeahead suggestions, or search result lists.
|
|
54
|
+
*
|
|
55
|
+
* @example "John Doe" or "Microsoft Teams - General Channel"
|
|
39
56
|
*/
|
|
40
57
|
title: string;
|
|
41
58
|
|
|
42
59
|
/**
|
|
43
|
-
* The value associated with
|
|
60
|
+
* The underlying value associated with this search result.
|
|
61
|
+
* This is usually the actual data value that gets selected when the user
|
|
62
|
+
* chooses this result, such as an ID, email address, or other identifier.
|
|
63
|
+
*
|
|
64
|
+
* @example "john.doe@company.com" or "channel-id-12345"
|
|
44
65
|
*/
|
|
45
66
|
value: string;
|
|
46
67
|
}
|