Amazon Connect Service

2024/10/23 - Amazon Connect Service - 1 new2 updated api methods

Changes  Amazon Connect Service Feature: Add support to start screen sharing for a web calling contact.

StartScreenSharing (new) Link ¶

Starts screen sharing for a contact. For more information about screen sharing, see Set up in-app, web, video calling, and screen sharing capabilities in the Amazon Connect Administrator Guide.

See also: AWS API Documentation

Request Syntax

client.start_screen_sharing(
    ClientToken='string',
    InstanceId='string',
    ContactId='string'
)
type ClientToken:

string

param ClientToken:

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

This field is autopopulated if not provided.

type InstanceId:

string

param InstanceId:

[REQUIRED]

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

type ContactId:

string

param ContactId:

[REQUIRED]

The identifier of the contact in this instance of Amazon Connect.

rtype:

dict

returns:

Response Syntax

{}

Response Structure

  • (dict) --

DescribeContact (updated) Link ¶
Changes (response)
{'Contact': {'AgentInfo': {'Capabilities': {'ScreenShare': 'SEND'}},
             'Customer': {'Capabilities': {'ScreenShare': 'SEND'}}}}

This API is in preview release for Amazon Connect and is subject to change.

Describes the specified contact.

See also: AWS API Documentation

Request Syntax

client.describe_contact(
    InstanceId='string',
    ContactId='string'
)
type InstanceId:

string

param InstanceId:

[REQUIRED]

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

type ContactId:

string

param ContactId:

[REQUIRED]

The identifier of the contact.

rtype:

dict

returns:

Response Syntax

{
    'Contact': {
        'Arn': 'string',
        'Id': 'string',
        'InitialContactId': 'string',
        'PreviousContactId': 'string',
        'InitiationMethod': 'INBOUND'|'OUTBOUND'|'TRANSFER'|'QUEUE_TRANSFER'|'CALLBACK'|'API'|'DISCONNECT'|'MONITOR'|'EXTERNAL_OUTBOUND',
        'Name': 'string',
        'Description': 'string',
        'Channel': 'VOICE'|'CHAT'|'TASK',
        'QueueInfo': {
            'Id': 'string',
            'EnqueueTimestamp': datetime(2015, 1, 1)
        },
        'AgentInfo': {
            'Id': 'string',
            'ConnectedToAgentTimestamp': datetime(2015, 1, 1),
            'AgentPauseDurationInSeconds': 123,
            'HierarchyGroups': {
                'Level1': {
                    'Arn': 'string'
                },
                'Level2': {
                    'Arn': 'string'
                },
                'Level3': {
                    'Arn': 'string'
                },
                'Level4': {
                    'Arn': 'string'
                },
                'Level5': {
                    'Arn': 'string'
                }
            },
            'DeviceInfo': {
                'PlatformName': 'string',
                'PlatformVersion': 'string',
                'OperatingSystem': 'string'
            },
            'Capabilities': {
                'Video': 'SEND',
                'ScreenShare': 'SEND'
            }
        },
        'InitiationTimestamp': datetime(2015, 1, 1),
        'DisconnectTimestamp': datetime(2015, 1, 1),
        'LastUpdateTimestamp': datetime(2015, 1, 1),
        'LastPausedTimestamp': datetime(2015, 1, 1),
        'LastResumedTimestamp': datetime(2015, 1, 1),
        'TotalPauseCount': 123,
        'TotalPauseDurationInSeconds': 123,
        'ScheduledTimestamp': datetime(2015, 1, 1),
        'RelatedContactId': 'string',
        'WisdomInfo': {
            'SessionArn': 'string'
        },
        'QueueTimeAdjustmentSeconds': 123,
        'QueuePriority': 123,
        'Tags': {
            'string': 'string'
        },
        'ConnectedToSystemTimestamp': datetime(2015, 1, 1),
        'RoutingCriteria': {
            'Steps': [
                {
                    'Expiry': {
                        'DurationInSeconds': 123,
                        'ExpiryTimestamp': datetime(2015, 1, 1)
                    },
                    'Expression': {
                        'AttributeCondition': {
                            'Name': 'string',
                            'Value': 'string',
                            'ProficiencyLevel': ...,
                            'MatchCriteria': {
                                'AgentsCriteria': {
                                    'AgentIds': [
                                        'string',
                                    ]
                                }
                            },
                            'ComparisonOperator': 'string'
                        },
                        'AndExpression': [
                            {'... recursive ...'},
                        ],
                        'OrExpression': [
                            {'... recursive ...'},
                        ]
                    },
                    'Status': 'ACTIVE'|'INACTIVE'|'JOINED'|'EXPIRED'
                },
            ],
            'ActivationTimestamp': datetime(2015, 1, 1),
            'Index': 123
        },
        'Customer': {
            'DeviceInfo': {
                'PlatformName': 'string',
                'PlatformVersion': 'string',
                'OperatingSystem': 'string'
            },
            'Capabilities': {
                'Video': 'SEND',
                'ScreenShare': 'SEND'
            }
        },
        'Campaign': {
            'CampaignId': 'string'
        },
        'AnsweringMachineDetectionStatus': 'ANSWERED'|'UNDETECTED'|'ERROR'|'HUMAN_ANSWERED'|'SIT_TONE_DETECTED'|'SIT_TONE_BUSY'|'SIT_TONE_INVALID_NUMBER'|'FAX_MACHINE_DETECTED'|'VOICEMAIL_BEEP'|'VOICEMAIL_NO_BEEP'|'AMD_UNRESOLVED'|'AMD_UNANSWERED'|'AMD_ERROR'|'AMD_NOT_APPLICABLE',
        'CustomerVoiceActivity': {
            'GreetingStartTimestamp': datetime(2015, 1, 1),
            'GreetingEndTimestamp': datetime(2015, 1, 1)
        },
        'QualityMetrics': {
            'Agent': {
                'Audio': {
                    'QualityScore': ...,
                    'PotentialQualityIssues': [
                        'string',
                    ]
                }
            },
            'Customer': {
                'Audio': {
                    'QualityScore': ...,
                    'PotentialQualityIssues': [
                        'string',
                    ]
                }
            }
        },
        'DisconnectDetails': {
            'PotentialDisconnectIssue': 'string'
        },
        'SegmentAttributes': {
            'string': {
                'ValueString': 'string'
            }
        }
    }
}

Response Structure

  • (dict) --

    • Contact (dict) --

      Information about the contact.

      • Arn (string) --

        The Amazon Resource Name (ARN) for the contact.

      • Id (string) --

        The identifier for the contact.

      • InitialContactId (string) --

        If this contact is related to other contacts, this is the ID of the initial contact.

      • PreviousContactId (string) --

        If this contact is not the first contact, this is the ID of the previous contact.

      • InitiationMethod (string) --

        Indicates how the contact was initiated.

      • Name (string) --

        The name of the contact.

      • Description (string) --

        The description of the contact.

      • Channel (string) --

        How the contact reached your contact center.

      • QueueInfo (dict) --

        If this contact was queued, this contains information about the queue.

        • Id (string) --

          The unique identifier for the queue.

        • EnqueueTimestamp (datetime) --

          The timestamp when the contact was added to the queue.

      • AgentInfo (dict) --

        Information about the agent who accepted the contact.

        • Id (string) --

          The identifier of the agent who accepted the contact.

        • ConnectedToAgentTimestamp (datetime) --

          The timestamp when the contact was connected to the agent.

        • AgentPauseDurationInSeconds (integer) --

          Agent pause duration for a contact in seconds.

        • HierarchyGroups (dict) --

          The agent hierarchy groups for the agent.

          • Level1 (dict) --

            The group at level one of the agent hierarchy.

            • Arn (string) --

              The Amazon Resource Name (ARN) of the group.

          • Level2 (dict) --

            The group at level two of the agent hierarchy.

            • Arn (string) --

              The Amazon Resource Name (ARN) of the group.

          • Level3 (dict) --

            The group at level three of the agent hierarchy.

            • Arn (string) --

              The Amazon Resource Name (ARN) of the group.

          • Level4 (dict) --

            The group at level four of the agent hierarchy.

            • Arn (string) --

              The Amazon Resource Name (ARN) of the group.

          • Level5 (dict) --

            The group at level five of the agent hierarchy.

            • Arn (string) --

              The Amazon Resource Name (ARN) of the group.

        • DeviceInfo (dict) --

          Information regarding Agent’s device.

          • PlatformName (string) --

            Name of the platform that the participant used for the call.

          • PlatformVersion (string) --

            Version of the platform that the participant used for the call.

          • OperatingSystem (string) --

            Operating system that the participant used for the call.

        • Capabilities (dict) --

          The configuration for the allowed video and screen sharing capabilities for participants present over the call. For more information, see Set up in-app, web, video calling, and screen sharing capabilities in the Amazon Connect Administrator Guide.

          • Video (string) --

            The configuration having the video and screen sharing capabilities for participants over the call.

          • ScreenShare (string) --

            The screen sharing capability that is enabled for the participant. SEND indicates the participant can share their screen.

      • InitiationTimestamp (datetime) --

        The date and time this contact was initiated, in UTC time. For INBOUND, this is when the contact arrived. For OUTBOUND, this is when the agent began dialing. For CALLBACK, this is when the callback contact was created. For TRANSFER and QUEUE_TRANSFER, this is when the transfer was initiated. For API, this is when the request arrived. For EXTERNAL_OUTBOUND, this is when the agent started dialing the external participant. For MONITOR, this is when the supervisor started listening to a contact.

      • DisconnectTimestamp (datetime) --

        The timestamp when the customer endpoint disconnected from Amazon Connect.

      • LastUpdateTimestamp (datetime) --

        The timestamp when contact was last updated.

      • LastPausedTimestamp (datetime) --

        The timestamp when the contact was last paused.

      • LastResumedTimestamp (datetime) --

        The timestamp when the contact was last resumed.

      • TotalPauseCount (integer) --

        Total pause count for a contact.

      • TotalPauseDurationInSeconds (integer) --

        Total pause duration for a contact in seconds.

      • ScheduledTimestamp (datetime) --

        The timestamp, in Unix epoch time format, at which to start running the inbound flow.

      • RelatedContactId (string) --

        The contactId that is related to this contact.

      • WisdomInfo (dict) --

        Information about Amazon Connect Wisdom.

        • SessionArn (string) --

          The Amazon Resource Name (ARN) of the Wisdom session.

      • QueueTimeAdjustmentSeconds (integer) --

        An integer that represents the queue time adjust to be applied to the contact, in seconds (longer / larger queue time are routed preferentially). Cannot be specified if the QueuePriority is specified. Must be statically defined and a valid integer value.

      • QueuePriority (integer) --

        An integer that represents the queue priority to be applied to the contact (lower priorities are routed preferentially). Cannot be specified if the QueueTimeAdjustmentSeconds is specified. Must be statically defined, must be larger than zero, and a valid integer value. Default Value is 5.

      • Tags (dict) --

        Tags associated with the contact. This contains both Amazon Web Services generated and user-defined tags.

        • (string) --

          • (string) --

      • ConnectedToSystemTimestamp (datetime) --

        The timestamp when customer endpoint connected to Amazon Connect.

      • RoutingCriteria (dict) --

        Latest routing criteria on the contact.

        • Steps (list) --

          List of routing steps. When Amazon Connect does not find an available agent meeting the requirements in a step for a given step duration, the routing criteria will move on to the next step sequentially until a join is completed with an agent. When all steps are exhausted, the contact will be offered to any agent in the queue.

          • (dict) --

            Step signifies the criteria to be used for routing to an agent

            • Expiry (dict) --

              An object to specify the expiration of a routing step.

              • DurationInSeconds (integer) --

                The number of seconds to wait before expiring the routing step.

              • ExpiryTimestamp (datetime) --

                The timestamp indicating when the routing step expires.

            • Expression (dict) --

              A tagged union to specify expression for a routing step.

              • AttributeCondition (dict) --

                An object to specify the predefined attribute condition.

                • Name (string) --

                  The name of predefined attribute.

                • Value (string) --

                  The value of predefined attribute.

                • ProficiencyLevel (float) --

                  The proficiency level of the condition.

                • MatchCriteria (dict) --

                  An object to define AgentsCriteria.

                  • AgentsCriteria (dict) --

                    An object to define agentIds.

                    • AgentIds (list) --

                      An object to specify a list of agents, by user ID.

                      • (string) --

                • ComparisonOperator (string) --

                  The operator of the condition.

              • AndExpression (list) --

                List of routing expressions which will be AND-ed together.

                • (dict) --

                  A tagged union to specify expression for a routing step.

              • OrExpression (list) --

                List of routing expressions which will be OR-ed together.

                • (dict) --

                  A tagged union to specify expression for a routing step.

            • Status (string) --

              Represents status of the Routing step.

        • ActivationTimestamp (datetime) --

          The timestamp indicating when the routing criteria is set to active. A routing criteria is activated when contact is transferred to a queue. ActivationTimestamp will be set on routing criteria for contacts in agent queue even though Routing criteria is never activated for contacts in agent queue.

        • Index (integer) --

          Information about the index of the routing criteria.

      • Customer (dict) --

        Information about the Customer on the contact.

        • DeviceInfo (dict) --

          Information regarding Customer’s device.

          • PlatformName (string) --

            Name of the platform that the participant used for the call.

          • PlatformVersion (string) --

            Version of the platform that the participant used for the call.

          • OperatingSystem (string) --

            Operating system that the participant used for the call.

        • Capabilities (dict) --

          The configuration for the allowed video and screen sharing capabilities for participants present over the call. For more information, see Set up in-app, web, video calling, and screen sharing capabilities in the Amazon Connect Administrator Guide.

          • Video (string) --

            The configuration having the video and screen sharing capabilities for participants over the call.

          • ScreenShare (string) --

            The screen sharing capability that is enabled for the participant. SEND indicates the participant can share their screen.

      • Campaign (dict) --

        Information associated with a campaign.

        • CampaignId (string) --

          A unique identifier for a campaign.

      • AnsweringMachineDetectionStatus (string) --

        Indicates how an outbound campaign call is actually disposed if the contact is connected to Amazon Connect.

      • CustomerVoiceActivity (dict) --

        Information about customer’s voice activity.

        • GreetingStartTimestamp (datetime) --

          Timestamp that measures the beginning of the customer greeting from an outbound voice call.

        • GreetingEndTimestamp (datetime) --

          Timestamp that measures the end of the customer greeting from an outbound voice call.

      • QualityMetrics (dict) --

        Information about the quality of the participant's media connection.

        • Agent (dict) --

          Information about the quality of Agent media connection.

          • Audio (dict) --

            Information about the audio quality of the Agent

            • QualityScore (float) --

              Number measuring the estimated quality of the media connection.

            • PotentialQualityIssues (list) --

              List of potential issues causing degradation of quality on a media connection. If the service did not detect any potential quality issues the list is empty.

              Valid values: HighPacketLoss | HighRoundTripTime | HighJitterBuffer

              • (string) --

        • Customer (dict) --

          Information about the quality of Customer media connection.

          • Audio (dict) --

            Information about the audio quality of the Customer

            • QualityScore (float) --

              Number measuring the estimated quality of the media connection.

            • PotentialQualityIssues (list) --

              List of potential issues causing degradation of quality on a media connection. If the service did not detect any potential quality issues the list is empty.

              Valid values: HighPacketLoss | HighRoundTripTime | HighJitterBuffer

              • (string) --

      • DisconnectDetails (dict) --

        Information about the call disconnect experience.

        • PotentialDisconnectIssue (string) --

          Indicates the potential disconnection issues for a call. This field is not populated if the service does not detect potential issues.

      • SegmentAttributes (dict) --

        A set of system defined key-value pairs stored on individual contact segments using an attribute map. The attributes are standard Amazon Connect attributes and can be accessed in flows. Attribute keys can include only alphanumeric, -, and _ characters. This field can be used to show channel subtype. For example, connect:Guide or connect:SMS.

        • (string) --

          • (dict) --

            A value for a segment attribute. This is structured as a map where the key is valueString and the value is a string.

            • ValueString (string) --

              The value of a segment attribute.

StartWebRTCContact (updated) Link ¶
Changes (request)
{'AllowedCapabilities': {'Agent': {'ScreenShare': 'SEND'},
                         'Customer': {'ScreenShare': 'SEND'}}}

Places an inbound in-app, web, or video call to a contact, and then initiates the flow. It performs the actions in the flow that are specified (in ContactFlowId) and present in the Amazon Connect instance (specified as InstanceId).

See also: AWS API Documentation

Request Syntax

client.start_web_rtc_contact(
    Attributes={
        'string': 'string'
    },
    ClientToken='string',
    ContactFlowId='string',
    InstanceId='string',
    AllowedCapabilities={
        'Customer': {
            'Video': 'SEND',
            'ScreenShare': 'SEND'
        },
        'Agent': {
            'Video': 'SEND',
            'ScreenShare': 'SEND'
        }
    },
    ParticipantDetails={
        'DisplayName': 'string'
    },
    RelatedContactId='string',
    References={
        'string': {
            'Value': 'string',
            'Type': 'URL'|'ATTACHMENT'|'NUMBER'|'STRING'|'DATE'|'EMAIL'
        }
    },
    Description='string'
)
type Attributes:

dict

param Attributes:

A custom key-value pair using an attribute map. The attributes are standard Amazon Connect attributes, and can be accessed in flows just like any other contact attributes.

There can be up to 32,768 UTF-8 bytes across all key-value pairs per contact. Attribute keys can include only alphanumeric, -, and _ characters.

  • (string) --

    • (string) --

type ClientToken:

string

param ClientToken:

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

The token is valid for 7 days after creation. If a contact is already started, the contact ID is returned.

This field is autopopulated if not provided.

type ContactFlowId:

string

param ContactFlowId:

[REQUIRED]

The identifier of the flow for the call. To see the ContactFlowId in the Amazon Connect admin website, on the navigation menu go to Routing, Flows. Choose the flow. On the flow page, under the name of the flow, choose Show additional flow information. The ContactFlowId is the last part of the ARN, shown here in bold:

arn:aws:connect:us-west-2:xxxxxxxxxxxx:instance/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/contact-flow/846ec553-a005-41c0-8341-xxxxxxxxxxxx

type InstanceId:

string

param InstanceId:

[REQUIRED]

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

type AllowedCapabilities:

dict

param AllowedCapabilities:

Information about the video sharing capabilities of the participants (customer, agent).

  • Customer (dict) --

    Information about the customer's video sharing capabilities.

    • Video (string) --

      The configuration having the video and screen sharing capabilities for participants over the call.

    • ScreenShare (string) --

      The screen sharing capability that is enabled for the participant. SEND indicates the participant can share their screen.

  • Agent (dict) --

    Information about the agent's video sharing capabilities.

    • Video (string) --

      The configuration having the video and screen sharing capabilities for participants over the call.

    • ScreenShare (string) --

      The screen sharing capability that is enabled for the participant. SEND indicates the participant can share their screen.

type ParticipantDetails:

dict

param ParticipantDetails:

[REQUIRED]

The customer's details.

  • DisplayName (string) -- [REQUIRED]

    Display name of the participant.

type RelatedContactId:

string

param RelatedContactId:

The unique identifier for an Amazon Connect contact. This identifier is related to the contact starting.

type References:

dict

param References:

A formatted URL that is shown to an agent in the Contact Control Panel (CCP). Tasks can have the following reference types at the time of creation: URL | NUMBER | STRING | DATE | EMAIL. ATTACHMENT is not a supported reference type during task creation.

  • (string) --

    • (dict) --

      Well-formed data on a contact, used by agents to complete a contact request. You can have up to 4,096 UTF-8 bytes across all references for a contact.

      • Value (string) -- [REQUIRED]

        A valid value for the reference. For example, for a URL reference, a formatted URL that is displayed to an agent in the Contact Control Panel (CCP).

      • Type (string) -- [REQUIRED]

        The type of the reference. DATE must be of type Epoch timestamp.

type Description:

string

param Description:

A description of the task that is shown to an agent in the Contact Control Panel (CCP).

rtype:

dict

returns:

Response Syntax

{
    'ConnectionData': {
        'Attendee': {
            'AttendeeId': 'string',
            'JoinToken': 'string'
        },
        'Meeting': {
            'MediaRegion': 'string',
            'MediaPlacement': {
                'AudioHostUrl': 'string',
                'AudioFallbackUrl': 'string',
                'SignalingUrl': 'string',
                'TurnControlUrl': 'string',
                'EventIngestionUrl': 'string'
            },
            'MeetingFeatures': {
                'Audio': {
                    'EchoReduction': 'AVAILABLE'|'UNAVAILABLE'
                }
            },
            'MeetingId': 'string'
        }
    },
    'ContactId': 'string',
    'ParticipantId': 'string',
    'ParticipantToken': 'string'
}

Response Structure

  • (dict) --

    • ConnectionData (dict) --

      Information required for the client application (mobile application or website) to connect to the call.

      • Attendee (dict) --

        The attendee information, including attendee ID and join token.

        • AttendeeId (string) --

          The Amazon Chime SDK attendee ID.

        • JoinToken (string) --

          The join token used by the Amazon Chime SDK attendee.

      • Meeting (dict) --

        A meeting created using the Amazon Chime SDK.

        • MediaRegion (string) --

          The Amazon Web Services Region in which you create the meeting.

        • MediaPlacement (dict) --

          The media placement for the meeting.

          • AudioHostUrl (string) --

            The audio host URL.

          • AudioFallbackUrl (string) --

            The audio fallback URL.

          • SignalingUrl (string) --

            The signaling URL.

          • TurnControlUrl (string) --

            The turn control URL.

          • EventIngestionUrl (string) --

            The event ingestion URL to which you send client meeting events.

        • MeetingFeatures (dict) --

          The configuration settings of the features available to a meeting.

          • Audio (dict) --

            The configuration settings for the audio features available to a meeting.

            • EchoReduction (string) --

              Makes echo reduction available to clients who connect to the meeting.

        • MeetingId (string) --

          The Amazon Chime SDK meeting ID.

    • ContactId (string) --

      The identifier of the contact in this instance of Amazon Connect.

    • ParticipantId (string) --

      The identifier for a contact participant. The ParticipantId for a contact participant is the same throughout the contact lifecycle.

    • ParticipantToken (string) --

      The token used by the contact participant to call the CreateParticipantConnection API. The participant token is valid for the lifetime of a contact participant.