You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+7-1Lines changed: 7 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,10 +1,16 @@
1
1
# CHANGELOG.md
2
2
3
+
4
+
## 2.4.2
5
+
- Fix an issue in Streams’ Voice ID APIs that may have led to incorrect values being set against the generatedSpeakerID field in the VoiceIdResult segment of Connect Contact Trace Records (CTRs).
6
+
7
+
## 2.4.1
8
+
- This version brings in updates that will provide enhanced monitoring experience to agents and supervisors, allowing to silently monitor multiparty calls, and if needed to barge in the call and take over control, mute agents, or drop them from the call. New APIs introduced with this feature are `isSilentMonitor`, `isBarge`, `isSilentMonitorEnabled`, `isBargeEnabled`, `isUnderSupervision`, `updateMonitorParticipantState`, `getMonitorCapabilities`, `getMonitorStatus`, `isForcedMute`.
9
+
3
10
## 2.4.0
4
11
- Introduce Amazon Connect Step-by-step guides embedding support via `connect.agentApp.initApp`.
5
12
6
13
## 2.3.0
7
-
- Fix an issue in Streams’ Voice ID APIs that may have led to incorrect values being set against the generatedSpeakerID field in the VoiceIdResult segment of Connect Contact Trace Records (CTRs).
8
14
- Make StreamsJS compatible with strict mode
9
15
- Fix an issue that connect.ValueError and connect.StateError don't print error message properly
Copy file name to clipboardExpand all lines: Documentation.md
+125-3Lines changed: 125 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -15,10 +15,12 @@ In version 1.x, we also support `make` for legacy builds. This option was remove
15
15
1. December 2022 - In addition to the CCP, customers can now embed the Step-by-step guides application using the connect.agentApp. See the [updated documentation](https://github.com/amazon-connect/amazon-connect-streams/blob/master/Documentation.md#initialization-for-ccp-customer-profiles-and-wisdom) for details on usage.
16
16
*### About Amazon Connect Step-by-step guides
17
17
+ With Amazon Connect you can now create guides that walk agents through tailored views that focus on what must be seen or done by the agent at a given moment during an interaction. You can design workflows for various types of customer interactions and present agents with different step-by-step guides based on context, such as call queue, customer information, and interactive voice response (IVR). This feature is available in the Connect agent workspace as well as an embeddable application that can be embedded into another website via the Streams API. For more information, visit the AWS website: https://aws.amazon.com/connect/agent-workspace/
18
+
1. December 2022 - 2.4.2
19
+
* This patch fixes an issue in Streams’ Voice ID APIs that may have led to incorrect values being set against the generatedSpeakerID field in the VoiceIdResult segment of Connect Contact Trace Records (CTRs). This occurred in some scenarios where you call either enrollSpeakerInVoiceId(), evaluateSpeakerWithVoiceId(), or updateVoiceIdSpeakerId() in your custom CCP integration code. If you are using Voice ID and consuming Voice ID CTRs, or updating speaker ID in your agent workflow, please upgrade to this version.
18
20
1. December 2022 - 2.4.1
19
21
* This version brings in updates that will provide enhanced monitoring experience to agents and supervisors, allowing to silently monitor multiparty calls, and if needed to barge in the call and take over control, mute agents, or drop them from the call. New APIs introduced with this feature are `isSilentMonitor`, `isBarge`, `isSilentMonitorEnabled`, `isBargeEnabled`, `isUnderSupervision`, `updateMonitorParticipantState`, `getMonitorCapabilities`, `getMonitorStatus`, `isForcedMute`.
20
22
1. August 2022 - 2.3.0
21
-
*This patch fixes an issue in Streams’ Voice ID APIs that may have led to incorrect values being set against the generatedSpeakerID field in the VoiceIdResult segment of Connect Contact Trace Records (CTRs). This occurred in some scenarios where you call either enrollSpeakerInVoiceId(), evaluateSpeakerWithVoiceId(), or updateVoiceIdSpeakerId() in your custom CCP integration code. If you are using Voice ID and consuming Voice ID CTRs, please upgrade to this version.
23
+
*[Update on 12/13/2022] Please see 2.4.2 for final resolution of the Voice ID CTR fix.
22
24
1. Jan 2022 - 2.0.0
23
25
* Multiple calls to `initCCP` will no longer append multiple embedded CCPs to the window, and only the first call to `initCCP` will succeed. Please note that the use-case of initializing multiple CCPs has never been supported by Streams, and this change has been added to prevent unpredictable behavior arising from such cases.
24
26
*`agent.onContactPending` has been removed. Please use `contact.onPending` instead. `connect.onError` now triggers. Previously, this api did not work at all. Please be aware that, if you have application logic within this function, its behavior has changed. See its entry in documentation.md for more details.
@@ -1429,7 +1431,12 @@ conn.muteParticipant({
1429
1431
failure: function(err) { /* ... */ }
1430
1432
});
1431
1433
```
1432
-
Mute the connection server side.
1434
+
Mute the connection server side.
1435
+
#### Multiparty call
1436
+
Any agent participant can mute another agent participant.
1437
+
1438
+
#### Supervisor barges into the call
1439
+
Agents can mute themselves, but cannot mute other agents or supervisor.
1433
1440
1434
1441
Optional success and failure callbacks can be provided to determine if the operation was successful.
1435
1442
@@ -1440,7 +1447,12 @@ conn.unmuteParticipant({
1440
1447
failure: function(err) { /* ... */ }
1441
1448
});
1442
1449
```
1443
-
Unmute the connection server side.
1450
+
Unmute the connection server side.
1451
+
#### Multiparty call
1452
+
Any agent can only unmute themselves.
1453
+
1454
+
#### Supervisor barges into the call
1455
+
Agents can only unmute themselves up until the point they have been muted by the supervisor (isForcedMute API can help checking that). Once they have been muted by the supervisor, agent cannot unmute themselves until supervisor unmutes agent (at which point agent will regain ability to mute and unmute themselves). If supervisor has muted but not unmuted agent then drops from call, agent will be able to unmute themselves once supervisor has dropped.
1444
1456
1445
1457
Optional success and failure callbacks can be provided to determine if the operation was successful.
Enhanced monitoring providing real-time silent monitoring and barge capability to help managers and supervisors to listen in the agents' conversations and barge into the call if needed to take over the control and provide better customer experience. Supervisors in barge mode will be able to force mute agents and prevent them from unmuting themselves, will be able to hold, drop any connection, or directly speak with the customer. If the supervisor has muted an agent and then drops from the call, the agent will be able to unmute themselves once supervisor has dropped. Monitoring APIs are expected to be used against agent's(or supervisor's) connection. To start enhanced monitoring supervisor/manager will need to click an eye icon on the Real Time Metrics page.
2007
+
2008
+
Streams Enhanced Monitoring APIs can be tested after all these prerequisites are met:
2009
+
1. Enable Multi-Party Calls and Enhanced Monitoring in Telephony section of the Amazon Connect Console.
2010
+
1. Enable Real-time contact monitoring and Real-time contact barge-in in Security Profiles
2011
+
2012
+
### `voiceConnection.isSilentMonitor()`
2013
+
```js
2014
+
if (conn.isSilentMonitor()) { /* ... */ }
2015
+
```
2016
+
Returns true if monitorStatus is `MonitoringMode.SILENT_MONITOR`. This means the supervisor connection is in silent monitoring state. Regular agent will not see supervisor's connection in the snapshot while it is in silent monitor state.
2017
+
2018
+
### `voiceConnection.isBarge()`
2019
+
```js
2020
+
if (conn.isBarge()) { /* ... */ }
2021
+
```
2022
+
Returns true if monitorStatus is `MonitoringMode.BARGE`. This means the connection is in barge-in state. Regular agent will see the supervisor's connection in the list of connections in the snapshot.
2023
+
2024
+
### `voiceConnection.isSilentMonitorEnabled()`
2025
+
```js
2026
+
if (conn.isSilentMonitorEnabled()) { /* ... */ }
2027
+
```
2028
+
Returns true if agent's monitoringCapabilities contain `MonitoringMode.SILENT_MONITOR` type.
2029
+
2030
+
### `voiceConnection.isBargeEnabled()`
2031
+
```js
2032
+
if (conn.isBargeEnabled()) { /* ... */ }
2033
+
```
2034
+
Returns true if agent's monitoringCapabilities contain `MonitoringMode.BARGE` state type.
2035
+
2036
+
### `voiceConnection.getMonitorCapabilities()`
2037
+
```js
2038
+
var allowedMonitorStates =conn.getMonitorCapabilities();
2039
+
```
2040
+
Returns the array of enabled monitor states of this connection. The array will consist of `MonitoringMode` enum values.
2041
+
2042
+
### `voiceConnection.getMonitorStatus()`
2043
+
```js
2044
+
var monitorState =conn.getMonitorStatus();
2045
+
```
2046
+
Returns the current monitoring state of this connection. The value can be on of `MonitoringMode` enum values if the agent is supervisor, or the monitorStatus will not be present for the agent.
2047
+
2048
+
### `voiceConnection.isForcedMute()`
2049
+
```js
2050
+
if (conn.isForcedMute()) { /* ... */ }
2051
+
```
2052
+
Determine whether the connection was forced muted by the manager.
Updates the monitor participant state to switch between different monitoring modes. The targetState value is a `MonitoringMode` enum member.
2062
+
2063
+
### `contact.isUnderSupervision()`
2064
+
```js
2065
+
if (contact.isUnderSupervision()) { /* ... */ }
2066
+
```
2067
+
Determines if the contact is under manager's supervision
2068
+
2069
+
#### Usage examples
2070
+
2071
+
Check that barge is enabled before switching to the barge mode - first we need to make sure that barge is enabled for the supervisor connection, and after that initiate monitor status change on the contact.
console.log("Successfully changed the monitoring status to barge, now you can control the conversation")
2077
+
},
2078
+
failure:function(err) {
2079
+
console.log("Somenting went wrong, here is the error ", err)
2080
+
}
2081
+
});
2082
+
}
2083
+
```
2084
+
2085
+
Check that silent monitor is enabled before switching to the silent monitor mode - first we need to make sure that silent monitor is enabled for the supervisor connection, and after that initiate monitor status change on the contact.
console.log("Successfully changed the monitoring status to silent monitor")
2091
+
},
2092
+
failure:function(err) {
2093
+
console.log("Somenting went wrong, here is the error ", err)
2094
+
}
2095
+
});
2096
+
}
2097
+
```
2098
+
2099
+
After supervisor mutes the agent - force mute field is automatically updated on the agent side. You may want to display a banner or somehow indicate to the agent that he cannot unmute himself back anymore.
2100
+
2101
+
```js
2102
+
if(voiceConnection.isForcedMute()) {
2103
+
/* Some logic here to indicate forced mute to the agent */
2104
+
}
2105
+
```
2106
+
2107
+
After supervisor barges the call - agent doesn't have control anymore. Agent can only mute or unmute himself until he was forced muted, or leave the call. It will be good to indicate that to ahent as well by hiding or disabling buttons.
2108
+
2109
+
```js
2110
+
if(voiceConnection.isUnderSupervision()) {
2111
+
/* Some logic here to indicate disabled call controls to the agent */
Copy file name to clipboardExpand all lines: README.md
+5-1Lines changed: 5 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -21,8 +21,12 @@ In version 1.x, we also support `make` for legacy builds. This option was remove
21
21
1. December 2022 - In addition to the CCP, customers can now embed the Step-by-step guides application using the connect.agentApp. See the [updated documentation](https://github.com/amazon-connect/amazon-connect-streams/blob/master/Documentation.md#initialization-for-ccp-customer-profiles-and-wisdom) for details on usage.
22
22
*### About Amazon Connect Step-by-step guides
23
23
+ With Amazon Connect you can now create guides that walk agents through tailored views that focus on what must be seen or done by the agent at a given moment during an interaction. You can design workflows for various types of customer interactions and present agents with different step-by-step guides based on context, such as call queue, customer information, and interactive voice response (IVR). This feature is available in the Connect agent workspace as well as an embeddable application that can be embedded into another website via the Streams API. For more information, visit the AWS website: https://aws.amazon.com/connect/agent-workspace/
24
+
1. December 2022 - 2.4.2
25
+
* This patch fixes an issue in Streams’ Voice ID APIs that may have led to incorrect values being set against the generatedSpeakerID field in the VoiceIdResult segment of Connect Contact Trace Records (CTRs). This occurred in some scenarios where you call either enrollSpeakerInVoiceId(), evaluateSpeakerWithVoiceId(), or updateVoiceIdSpeakerId() in your custom CCP integration code. If you are using Voice ID and consuming Voice ID CTRs, or updating speaker ID in your agent workflow, please upgrade to this version.
26
+
1. December 2022 - 2.4.1
27
+
* This version brings in updates that will provide enhanced monitoring experience to agents and supervisors, allowing to silently monitor multiparty calls, and if needed to barge in the call and take over control, mute agents, or drop them from the call. New APIs introduced with this feature are `isSilentMonitor`, `isBarge`, `isSilentMonitorEnabled`, `isBargeEnabled`, `isUnderSupervision`, `updateMonitorParticipantState`, `getMonitorCapabilities`, `getMonitorStatus`, `isForcedMute`.
24
28
1. August 2022 - 2.3.0
25
-
*This patch fixes an issue in Streams’ Voice ID APIs that may have led to incorrect values being set against the generatedSpeakerID field in the VoiceIdResult segment of Connect Contact Trace Records (CTRs). This occurred in some scenarios where you call either enrollSpeakerInVoiceId(), evaluateSpeakerWithVoiceId(), or updateVoiceIdSpeakerId() in your custom CCP integration code. If you are using Voice ID and consuming Voice ID CTRs, please upgrade to this version.
29
+
*[Update on 12/13/2022] Please see 2.4.2 for final resolution of the Voice ID CTR fix.
26
30
1. Jan 2022 - 2.0.0
27
31
* Multiple calls to `initCCP` will no longer append multiple embedded CCPs to the window, and only the first call to `initCCP` will succeed. Please note that the use-case of initializing multiple CCPs with `initCCP` has never been supported by Streams, and this change has been added to prevent unpredictable behavior arising from such cases.
28
32
*`agent.onContactPending` has been removed. Please use `contact.onPending` instead. `connect.onError` now triggers. Previously, this api did not work at all. Please be aware that, if you have application logic within this function, its behavior has changed. See its entry in documentation.md for more details.
0 commit comments