Skip to content

Commit 195a582

Browse files
New version 2.6.6 (#41)
1 parent 876b3b9 commit 195a582

File tree

8 files changed

+56
-9
lines changed

8 files changed

+56
-9
lines changed

RELEASE_NOTES.md

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
# Release Notes
22

3+
- [Version 2.6.6](#v266)
34
- [Version 2.6.5](#v265)
45
- [Version 2.6.4](#v264)
56
- [Version 2.6.3](#v263)
@@ -15,14 +16,18 @@
1516
- [Version 2.4.3](#v243)
1617
- [Version 2.4.2](#v242)
1718

19+
## Version 2.6.6 <a name="v266">
20+
21+
### Fixed Issues
22+
23+
- Documentation fixes
24+
1825
## Version 2.6.5 <a name="v265">
1926

2027
### New Features
2128

2229
- **New UserInputReceived Entity Event Handler Method**: See [Writing Entity Event Handlers](https://github.com/oracle/bots-node-sdk/blob/master/ENTIY_EVENT_HANDLER.md) for more information.
2330

24-
- **REST Service Event Handlers**: REST service event handlers can be used to transform the REST request and response body when using the Call REST component in your flow. See [Writing REST Service Event Handlers](https://github.com/oracle/bots-node-sdk/blob/master/REST_SERVCICE_EVENT_HANDLER.md) for more information. This feature is only available in the Limited Availability release of Oracle Digital Assistant version 23.06.
25-
2631
### Fixed Issues
2732

2833
- Fixed TypeScript definition of EntityValidateEvent

REST_SERVICE_EVENT_HANDLER.md

Lines changed: 23 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,16 @@ module.exports = {
4848
*/
4949
transformResponsePayload: async (event, context) => {
5050
return event.payload;
51+
},
52+
53+
/**
54+
* Handler to transform the error response payload
55+
* @param {TransformPayloadEvent} event
56+
* @param {RestServiceContext} context
57+
* @returns {object} the transformed error response payload
58+
*/
59+
transformErrorResponsePayload: async (event, context) => {
60+
return event.payload;
5161
}
5262
}
5363
};
@@ -95,6 +105,16 @@ export class MyRestServiceEventHandler implements RestServiceEventHandler {
95105
*/
96106
transformResponsePayload: async (event: TransformPayloadEvent, context: RestServiceContext): Promise<any> => {
97107
return event.payload;
108+
},
109+
110+
/**
111+
* Handler to transform the error response payload
112+
* @param {TransformPayloadEvent} event
113+
* @param {RestServiceContext} context
114+
* @returns {object} the transformed error response payload
115+
*/
116+
transformErrorResponsePayload: async (event: TransformPayloadEvent, context: RestServiceContext): Promise<any> => {
117+
return event.payload;
98118
}
99119

100120
};
@@ -122,6 +142,7 @@ The table below lists the event methods that can be implemented:
122142

123143
| Event | Description | Event Properties |
124144
|--|--|--|
125-
| `transformRequestPayload` | A handler that can be used to trasnform the REST request body. | <ul><li><b>payload</b>: The request body object.</li></ul>
126-
| `transformResponsePayload` | A handler that can be used to trasnform the REST response body. | <ul><li><b>payload</b>: The response body object.</li></ul>
145+
| `transformRequestPayload` | A handler that can be used to transform the REST request body. | <ul><li><b>payload</b>: The request body object.</li></ul>
146+
| `transformResponsePayload` | A handler that can be used to transform the REST response body. | <ul><li><b>payload</b>: The response body object.</li></ul>
147+
| `transformErrorResponsePayload` | A handler that can be used to transform the REST response body when the REST service returned an error status (400 or higher). | <ul><li><b>payload</b>: The response body object.</li></ul>
127148

bin/templates/components/restserviceeventhandler/template.js

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,18 @@ module.exports = {
3434
*/
3535
transformResponsePayload: async (event, context) => {
3636
return event.payload;
37+
},
38+
39+
/**
40+
* Handler to transform the error response payload
41+
* @param {TransformPayloadEvent} event
42+
* @param {RestServiceContext} context
43+
* @returns {object} the transformed error response payload
44+
*/
45+
transformErrorResponsePayload: async (event, context) => {
46+
return event.payload;
3747
}
48+
3849
}
3950
};
4051

bin/templates/components/restserviceeventhandler/template.ts

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,16 @@ export class {{className}} implements RestServiceEventHandler {
4343
*/
4444
transformResponsePayload: async (event: TransformPayloadEvent, context: RestServiceContext): Promise<any> => {
4545
return event.payload;
46+
},
47+
48+
/**
49+
* Handler to transform the error response payload
50+
* @param {TransformPayloadEvent} event
51+
* @param {RestServiceContext} context
52+
* @returns {object} the transformed error response payload
53+
*/
54+
transformErrorResponsePayload: async (event: TransformPayloadEvent, context: RestServiceContext): Promise<any> => {
55+
return event.payload;
4656
}
4757

4858
};

lib/restservice/utils.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ async function invokeRestServiceEventHandlers(component, context) {
2323
if (returnValue) {
2424
context.setRequestPayload(returnValue);
2525
}
26-
} else if (eventName === `transformResponsePayload`) {
26+
} else if (eventName === `transformResponsePayload` || eventName === `transformErrorResponsePayload`) {
2727
let payload = context.getResponsePayload();
2828
event.properties = {'payload': payload};
2929
logger.debug(`Invoking event handler ${eventName}`);

package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@oracle/bots-node-sdk",
3-
"version": "2.6.5",
3+
"version": "2.6.6",
44
"description": "Oracle Bots SDK for custom component development and webhook integrations",
55
"main": "index.js",
66
"browser": "index-browser.js",

ts/lib/restservice/utils.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ export async function invokeRestServiceEventHandlers(component: RestServiceEvent
2525
if (returnValue) {
2626
context.setRequestPayload(returnValue);
2727
}
28-
} else if (eventName === `transformResponsePayload`) {
28+
} else if (eventName === `transformResponsePayload` || eventName === `transformErrorResponsePayload`) {
2929
let payload = context.getResponsePayload();
3030
event.properties = {'payload': payload};
3131
logger.debug(`Invoking event handler ${eventName}`);

0 commit comments

Comments
 (0)