/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include namespace Aws { namespace Connect { namespace Model { /** */ class GetCurrentMetricDataRequest : public ConnectRequest { public: AWS_CONNECT_API GetCurrentMetricDataRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "GetCurrentMetricData"; } AWS_CONNECT_API Aws::String SerializePayload() const override; /** *

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

*/ inline const Aws::String& GetInstanceId() const{ return m_instanceId; } /** *

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

*/ inline bool InstanceIdHasBeenSet() const { return m_instanceIdHasBeenSet; } /** *

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

*/ inline void SetInstanceId(const Aws::String& value) { m_instanceIdHasBeenSet = true; m_instanceId = value; } /** *

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

*/ inline void SetInstanceId(Aws::String&& value) { m_instanceIdHasBeenSet = true; m_instanceId = std::move(value); } /** *

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

*/ inline void SetInstanceId(const char* value) { m_instanceIdHasBeenSet = true; m_instanceId.assign(value); } /** *

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

*/ inline GetCurrentMetricDataRequest& WithInstanceId(const Aws::String& value) { SetInstanceId(value); return *this;} /** *

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

*/ inline GetCurrentMetricDataRequest& WithInstanceId(Aws::String&& value) { SetInstanceId(std::move(value)); return *this;} /** *

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

*/ inline GetCurrentMetricDataRequest& WithInstanceId(const char* value) { SetInstanceId(value); return *this;} /** *

The filters to apply to returned metrics. You can filter up to the following * limits:

  • Queues: 100

  • Routing profiles: 100

    *
  • Channels: 3 (VOICE, CHAT, and TASK channels are supported.)

    *

Metric data is retrieved only for the resources associated with * the queues or routing profiles, and by any channels included in the filter. (You * cannot filter by both queue AND routing profile.) You can include both resource * IDs and resource ARNs in the same request.

Currently tagging is only * supported on the resources that are passed in the filter.

*/ inline const Filters& GetFilters() const{ return m_filters; } /** *

The filters to apply to returned metrics. You can filter up to the following * limits:

  • Queues: 100

  • Routing profiles: 100

    *
  • Channels: 3 (VOICE, CHAT, and TASK channels are supported.)

    *

Metric data is retrieved only for the resources associated with * the queues or routing profiles, and by any channels included in the filter. (You * cannot filter by both queue AND routing profile.) You can include both resource * IDs and resource ARNs in the same request.

Currently tagging is only * supported on the resources that are passed in the filter.

*/ inline bool FiltersHasBeenSet() const { return m_filtersHasBeenSet; } /** *

The filters to apply to returned metrics. You can filter up to the following * limits:

  • Queues: 100

  • Routing profiles: 100

    *
  • Channels: 3 (VOICE, CHAT, and TASK channels are supported.)

    *

Metric data is retrieved only for the resources associated with * the queues or routing profiles, and by any channels included in the filter. (You * cannot filter by both queue AND routing profile.) You can include both resource * IDs and resource ARNs in the same request.

Currently tagging is only * supported on the resources that are passed in the filter.

*/ inline void SetFilters(const Filters& value) { m_filtersHasBeenSet = true; m_filters = value; } /** *

The filters to apply to returned metrics. You can filter up to the following * limits:

  • Queues: 100

  • Routing profiles: 100

    *
  • Channels: 3 (VOICE, CHAT, and TASK channels are supported.)

    *

Metric data is retrieved only for the resources associated with * the queues or routing profiles, and by any channels included in the filter. (You * cannot filter by both queue AND routing profile.) You can include both resource * IDs and resource ARNs in the same request.

Currently tagging is only * supported on the resources that are passed in the filter.

*/ inline void SetFilters(Filters&& value) { m_filtersHasBeenSet = true; m_filters = std::move(value); } /** *

The filters to apply to returned metrics. You can filter up to the following * limits:

  • Queues: 100

  • Routing profiles: 100

    *
  • Channels: 3 (VOICE, CHAT, and TASK channels are supported.)

    *

Metric data is retrieved only for the resources associated with * the queues or routing profiles, and by any channels included in the filter. (You * cannot filter by both queue AND routing profile.) You can include both resource * IDs and resource ARNs in the same request.

Currently tagging is only * supported on the resources that are passed in the filter.

*/ inline GetCurrentMetricDataRequest& WithFilters(const Filters& value) { SetFilters(value); return *this;} /** *

The filters to apply to returned metrics. You can filter up to the following * limits:

  • Queues: 100

  • Routing profiles: 100

    *
  • Channels: 3 (VOICE, CHAT, and TASK channels are supported.)

    *

Metric data is retrieved only for the resources associated with * the queues or routing profiles, and by any channels included in the filter. (You * cannot filter by both queue AND routing profile.) You can include both resource * IDs and resource ARNs in the same request.

Currently tagging is only * supported on the resources that are passed in the filter.

*/ inline GetCurrentMetricDataRequest& WithFilters(Filters&& value) { SetFilters(std::move(value)); return *this;} /** *

The grouping applied to the metrics returned. For example, when grouped by * QUEUE, the metrics returned apply to each queue rather than * aggregated for all queues.

  • If you group by * CHANNEL, you should include a Channels filter. VOICE, CHAT, and * TASK channels are supported.

  • If you group by * ROUTING_PROFILE, you must include either a queue or routing profile * filter. In addition, a routing profile filter is required for metrics * CONTACTS_SCHEDULED, CONTACTS_IN_QUEUE, and * OLDEST_CONTACT_AGE.

  • If no Grouping is * included in the request, a summary of metrics is returned.

*/ inline const Aws::Vector& GetGroupings() const{ return m_groupings; } /** *

The grouping applied to the metrics returned. For example, when grouped by * QUEUE, the metrics returned apply to each queue rather than * aggregated for all queues.

  • If you group by * CHANNEL, you should include a Channels filter. VOICE, CHAT, and * TASK channels are supported.

  • If you group by * ROUTING_PROFILE, you must include either a queue or routing profile * filter. In addition, a routing profile filter is required for metrics * CONTACTS_SCHEDULED, CONTACTS_IN_QUEUE, and * OLDEST_CONTACT_AGE.

  • If no Grouping is * included in the request, a summary of metrics is returned.

*/ inline bool GroupingsHasBeenSet() const { return m_groupingsHasBeenSet; } /** *

The grouping applied to the metrics returned. For example, when grouped by * QUEUE, the metrics returned apply to each queue rather than * aggregated for all queues.

  • If you group by * CHANNEL, you should include a Channels filter. VOICE, CHAT, and * TASK channels are supported.

  • If you group by * ROUTING_PROFILE, you must include either a queue or routing profile * filter. In addition, a routing profile filter is required for metrics * CONTACTS_SCHEDULED, CONTACTS_IN_QUEUE, and * OLDEST_CONTACT_AGE.

  • If no Grouping is * included in the request, a summary of metrics is returned.

*/ inline void SetGroupings(const Aws::Vector& value) { m_groupingsHasBeenSet = true; m_groupings = value; } /** *

The grouping applied to the metrics returned. For example, when grouped by * QUEUE, the metrics returned apply to each queue rather than * aggregated for all queues.

  • If you group by * CHANNEL, you should include a Channels filter. VOICE, CHAT, and * TASK channels are supported.

  • If you group by * ROUTING_PROFILE, you must include either a queue or routing profile * filter. In addition, a routing profile filter is required for metrics * CONTACTS_SCHEDULED, CONTACTS_IN_QUEUE, and * OLDEST_CONTACT_AGE.

  • If no Grouping is * included in the request, a summary of metrics is returned.

*/ inline void SetGroupings(Aws::Vector&& value) { m_groupingsHasBeenSet = true; m_groupings = std::move(value); } /** *

The grouping applied to the metrics returned. For example, when grouped by * QUEUE, the metrics returned apply to each queue rather than * aggregated for all queues.

  • If you group by * CHANNEL, you should include a Channels filter. VOICE, CHAT, and * TASK channels are supported.

  • If you group by * ROUTING_PROFILE, you must include either a queue or routing profile * filter. In addition, a routing profile filter is required for metrics * CONTACTS_SCHEDULED, CONTACTS_IN_QUEUE, and * OLDEST_CONTACT_AGE.

  • If no Grouping is * included in the request, a summary of metrics is returned.

*/ inline GetCurrentMetricDataRequest& WithGroupings(const Aws::Vector& value) { SetGroupings(value); return *this;} /** *

The grouping applied to the metrics returned. For example, when grouped by * QUEUE, the metrics returned apply to each queue rather than * aggregated for all queues.

  • If you group by * CHANNEL, you should include a Channels filter. VOICE, CHAT, and * TASK channels are supported.

  • If you group by * ROUTING_PROFILE, you must include either a queue or routing profile * filter. In addition, a routing profile filter is required for metrics * CONTACTS_SCHEDULED, CONTACTS_IN_QUEUE, and * OLDEST_CONTACT_AGE.

  • If no Grouping is * included in the request, a summary of metrics is returned.

*/ inline GetCurrentMetricDataRequest& WithGroupings(Aws::Vector&& value) { SetGroupings(std::move(value)); return *this;} /** *

The grouping applied to the metrics returned. For example, when grouped by * QUEUE, the metrics returned apply to each queue rather than * aggregated for all queues.

  • If you group by * CHANNEL, you should include a Channels filter. VOICE, CHAT, and * TASK channels are supported.

  • If you group by * ROUTING_PROFILE, you must include either a queue or routing profile * filter. In addition, a routing profile filter is required for metrics * CONTACTS_SCHEDULED, CONTACTS_IN_QUEUE, and * OLDEST_CONTACT_AGE.

  • If no Grouping is * included in the request, a summary of metrics is returned.

*/ inline GetCurrentMetricDataRequest& AddGroupings(const Grouping& value) { m_groupingsHasBeenSet = true; m_groupings.push_back(value); return *this; } /** *

The grouping applied to the metrics returned. For example, when grouped by * QUEUE, the metrics returned apply to each queue rather than * aggregated for all queues.

  • If you group by * CHANNEL, you should include a Channels filter. VOICE, CHAT, and * TASK channels are supported.

  • If you group by * ROUTING_PROFILE, you must include either a queue or routing profile * filter. In addition, a routing profile filter is required for metrics * CONTACTS_SCHEDULED, CONTACTS_IN_QUEUE, and * OLDEST_CONTACT_AGE.

  • If no Grouping is * included in the request, a summary of metrics is returned.

*/ inline GetCurrentMetricDataRequest& AddGroupings(Grouping&& value) { m_groupingsHasBeenSet = true; m_groupings.push_back(std::move(value)); return *this; } /** *

The metrics to retrieve. Specify the name and unit for each metric. The * following metrics are available. For a description of all the metrics, see Real-time * Metrics Definitions in the Amazon Connect Administrator Guide.

*
AGENTS_AFTER_CONTACT_WORK

Unit: COUNT

Name in * real-time metrics report: ACW *

AGENTS_AVAILABLE

Unit: COUNT

Name in * real-time metrics report: Available *

AGENTS_ERROR

Unit: COUNT

Name in real-time * metrics report: Error *

AGENTS_NON_PRODUCTIVE

Unit: COUNT

Name in * real-time metrics report: NPT * (Non-Productive Time)

AGENTS_ON_CALL

Unit: * COUNT

Name in real-time metrics report: On * contact

AGENTS_ON_CONTACT

Unit: COUNT

*

Name in real-time metrics report: On * contact

AGENTS_ONLINE

Unit: COUNT

Name in * real-time metrics report: Online *

AGENTS_STAFFED

Unit: COUNT

Name in real-time * metrics report: Staffed *

CONTACTS_IN_QUEUE

Unit: COUNT

Name in * real-time metrics report: In * queue

CONTACTS_SCHEDULED

Unit: COUNT

Name * in real-time metrics report: Scheduled *

OLDEST_CONTACT_AGE

Unit: SECONDS

When you use * groupings, Unit says SECONDS and the Value is returned in SECONDS.

When * you do not use groupings, Unit says SECONDS but the Value is returned in * MILLISECONDS. For example, if you get a response like this:

{ * "Metric": { "Name": "OLDEST_CONTACT_AGE", "Unit": "SECONDS" }, "Value": 24113.0 * }

The actual OLDEST_CONTACT_AGE is 24 seconds.

Name in * real-time metrics report: Oldest *

SLOTS_ACTIVE

Unit: COUNT

Name in real-time * metrics report: Active *

SLOTS_AVAILABLE

Unit: COUNT

Name in real-time * metrics report: Availability *

*/ inline const Aws::Vector& GetCurrentMetrics() const{ return m_currentMetrics; } /** *

The metrics to retrieve. Specify the name and unit for each metric. The * following metrics are available. For a description of all the metrics, see Real-time * Metrics Definitions in the Amazon Connect Administrator Guide.

*
AGENTS_AFTER_CONTACT_WORK

Unit: COUNT

Name in * real-time metrics report: ACW *

AGENTS_AVAILABLE

Unit: COUNT

Name in * real-time metrics report: Available *

AGENTS_ERROR

Unit: COUNT

Name in real-time * metrics report: Error *

AGENTS_NON_PRODUCTIVE

Unit: COUNT

Name in * real-time metrics report: NPT * (Non-Productive Time)

AGENTS_ON_CALL

Unit: * COUNT

Name in real-time metrics report: On * contact

AGENTS_ON_CONTACT

Unit: COUNT

*

Name in real-time metrics report: On * contact

AGENTS_ONLINE

Unit: COUNT

Name in * real-time metrics report: Online *

AGENTS_STAFFED

Unit: COUNT

Name in real-time * metrics report: Staffed *

CONTACTS_IN_QUEUE

Unit: COUNT

Name in * real-time metrics report: In * queue

CONTACTS_SCHEDULED

Unit: COUNT

Name * in real-time metrics report: Scheduled *

OLDEST_CONTACT_AGE

Unit: SECONDS

When you use * groupings, Unit says SECONDS and the Value is returned in SECONDS.

When * you do not use groupings, Unit says SECONDS but the Value is returned in * MILLISECONDS. For example, if you get a response like this:

{ * "Metric": { "Name": "OLDEST_CONTACT_AGE", "Unit": "SECONDS" }, "Value": 24113.0 * }

The actual OLDEST_CONTACT_AGE is 24 seconds.

Name in * real-time metrics report: Oldest *

SLOTS_ACTIVE

Unit: COUNT

Name in real-time * metrics report: Active *

SLOTS_AVAILABLE

Unit: COUNT

Name in real-time * metrics report: Availability *

*/ inline bool CurrentMetricsHasBeenSet() const { return m_currentMetricsHasBeenSet; } /** *

The metrics to retrieve. Specify the name and unit for each metric. The * following metrics are available. For a description of all the metrics, see Real-time * Metrics Definitions in the Amazon Connect Administrator Guide.

*
AGENTS_AFTER_CONTACT_WORK

Unit: COUNT

Name in * real-time metrics report: ACW *

AGENTS_AVAILABLE

Unit: COUNT

Name in * real-time metrics report: Available *

AGENTS_ERROR

Unit: COUNT

Name in real-time * metrics report: Error *

AGENTS_NON_PRODUCTIVE

Unit: COUNT

Name in * real-time metrics report: NPT * (Non-Productive Time)

AGENTS_ON_CALL

Unit: * COUNT

Name in real-time metrics report: On * contact

AGENTS_ON_CONTACT

Unit: COUNT

*

Name in real-time metrics report: On * contact

AGENTS_ONLINE

Unit: COUNT

Name in * real-time metrics report: Online *

AGENTS_STAFFED

Unit: COUNT

Name in real-time * metrics report: Staffed *

CONTACTS_IN_QUEUE

Unit: COUNT

Name in * real-time metrics report: In * queue

CONTACTS_SCHEDULED

Unit: COUNT

Name * in real-time metrics report: Scheduled *

OLDEST_CONTACT_AGE

Unit: SECONDS

When you use * groupings, Unit says SECONDS and the Value is returned in SECONDS.

When * you do not use groupings, Unit says SECONDS but the Value is returned in * MILLISECONDS. For example, if you get a response like this:

{ * "Metric": { "Name": "OLDEST_CONTACT_AGE", "Unit": "SECONDS" }, "Value": 24113.0 * }

The actual OLDEST_CONTACT_AGE is 24 seconds.

Name in * real-time metrics report: Oldest *

SLOTS_ACTIVE

Unit: COUNT

Name in real-time * metrics report: Active *

SLOTS_AVAILABLE

Unit: COUNT

Name in real-time * metrics report: Availability *

*/ inline void SetCurrentMetrics(const Aws::Vector& value) { m_currentMetricsHasBeenSet = true; m_currentMetrics = value; } /** *

The metrics to retrieve. Specify the name and unit for each metric. The * following metrics are available. For a description of all the metrics, see Real-time * Metrics Definitions in the Amazon Connect Administrator Guide.

*
AGENTS_AFTER_CONTACT_WORK

Unit: COUNT

Name in * real-time metrics report: ACW *

AGENTS_AVAILABLE

Unit: COUNT

Name in * real-time metrics report: Available *

AGENTS_ERROR

Unit: COUNT

Name in real-time * metrics report: Error *

AGENTS_NON_PRODUCTIVE

Unit: COUNT

Name in * real-time metrics report: NPT * (Non-Productive Time)

AGENTS_ON_CALL

Unit: * COUNT

Name in real-time metrics report: On * contact

AGENTS_ON_CONTACT

Unit: COUNT

*

Name in real-time metrics report: On * contact

AGENTS_ONLINE

Unit: COUNT

Name in * real-time metrics report: Online *

AGENTS_STAFFED

Unit: COUNT

Name in real-time * metrics report: Staffed *

CONTACTS_IN_QUEUE

Unit: COUNT

Name in * real-time metrics report: In * queue

CONTACTS_SCHEDULED

Unit: COUNT

Name * in real-time metrics report: Scheduled *

OLDEST_CONTACT_AGE

Unit: SECONDS

When you use * groupings, Unit says SECONDS and the Value is returned in SECONDS.

When * you do not use groupings, Unit says SECONDS but the Value is returned in * MILLISECONDS. For example, if you get a response like this:

{ * "Metric": { "Name": "OLDEST_CONTACT_AGE", "Unit": "SECONDS" }, "Value": 24113.0 * }

The actual OLDEST_CONTACT_AGE is 24 seconds.

Name in * real-time metrics report: Oldest *

SLOTS_ACTIVE

Unit: COUNT

Name in real-time * metrics report: Active *

SLOTS_AVAILABLE

Unit: COUNT

Name in real-time * metrics report: Availability *

*/ inline void SetCurrentMetrics(Aws::Vector&& value) { m_currentMetricsHasBeenSet = true; m_currentMetrics = std::move(value); } /** *

The metrics to retrieve. Specify the name and unit for each metric. The * following metrics are available. For a description of all the metrics, see Real-time * Metrics Definitions in the Amazon Connect Administrator Guide.

*
AGENTS_AFTER_CONTACT_WORK

Unit: COUNT

Name in * real-time metrics report: ACW *

AGENTS_AVAILABLE

Unit: COUNT

Name in * real-time metrics report: Available *

AGENTS_ERROR

Unit: COUNT

Name in real-time * metrics report: Error *

AGENTS_NON_PRODUCTIVE

Unit: COUNT

Name in * real-time metrics report: NPT * (Non-Productive Time)

AGENTS_ON_CALL

Unit: * COUNT

Name in real-time metrics report: On * contact

AGENTS_ON_CONTACT

Unit: COUNT

*

Name in real-time metrics report: On * contact

AGENTS_ONLINE

Unit: COUNT

Name in * real-time metrics report: Online *

AGENTS_STAFFED

Unit: COUNT

Name in real-time * metrics report: Staffed *

CONTACTS_IN_QUEUE

Unit: COUNT

Name in * real-time metrics report: In * queue

CONTACTS_SCHEDULED

Unit: COUNT

Name * in real-time metrics report: Scheduled *

OLDEST_CONTACT_AGE

Unit: SECONDS

When you use * groupings, Unit says SECONDS and the Value is returned in SECONDS.

When * you do not use groupings, Unit says SECONDS but the Value is returned in * MILLISECONDS. For example, if you get a response like this:

{ * "Metric": { "Name": "OLDEST_CONTACT_AGE", "Unit": "SECONDS" }, "Value": 24113.0 * }

The actual OLDEST_CONTACT_AGE is 24 seconds.

Name in * real-time metrics report: Oldest *

SLOTS_ACTIVE

Unit: COUNT

Name in real-time * metrics report: Active *

SLOTS_AVAILABLE

Unit: COUNT

Name in real-time * metrics report: Availability *

*/ inline GetCurrentMetricDataRequest& WithCurrentMetrics(const Aws::Vector& value) { SetCurrentMetrics(value); return *this;} /** *

The metrics to retrieve. Specify the name and unit for each metric. The * following metrics are available. For a description of all the metrics, see Real-time * Metrics Definitions in the Amazon Connect Administrator Guide.

*
AGENTS_AFTER_CONTACT_WORK

Unit: COUNT

Name in * real-time metrics report: ACW *

AGENTS_AVAILABLE

Unit: COUNT

Name in * real-time metrics report: Available *

AGENTS_ERROR

Unit: COUNT

Name in real-time * metrics report: Error *

AGENTS_NON_PRODUCTIVE

Unit: COUNT

Name in * real-time metrics report: NPT * (Non-Productive Time)

AGENTS_ON_CALL

Unit: * COUNT

Name in real-time metrics report: On * contact

AGENTS_ON_CONTACT

Unit: COUNT

*

Name in real-time metrics report: On * contact

AGENTS_ONLINE

Unit: COUNT

Name in * real-time metrics report: Online *

AGENTS_STAFFED

Unit: COUNT

Name in real-time * metrics report: Staffed *

CONTACTS_IN_QUEUE

Unit: COUNT

Name in * real-time metrics report: In * queue

CONTACTS_SCHEDULED

Unit: COUNT

Name * in real-time metrics report: Scheduled *

OLDEST_CONTACT_AGE

Unit: SECONDS

When you use * groupings, Unit says SECONDS and the Value is returned in SECONDS.

When * you do not use groupings, Unit says SECONDS but the Value is returned in * MILLISECONDS. For example, if you get a response like this:

{ * "Metric": { "Name": "OLDEST_CONTACT_AGE", "Unit": "SECONDS" }, "Value": 24113.0 * }

The actual OLDEST_CONTACT_AGE is 24 seconds.

Name in * real-time metrics report: Oldest *

SLOTS_ACTIVE

Unit: COUNT

Name in real-time * metrics report: Active *

SLOTS_AVAILABLE

Unit: COUNT

Name in real-time * metrics report: Availability *

*/ inline GetCurrentMetricDataRequest& WithCurrentMetrics(Aws::Vector&& value) { SetCurrentMetrics(std::move(value)); return *this;} /** *

The metrics to retrieve. Specify the name and unit for each metric. The * following metrics are available. For a description of all the metrics, see Real-time * Metrics Definitions in the Amazon Connect Administrator Guide.

*
AGENTS_AFTER_CONTACT_WORK

Unit: COUNT

Name in * real-time metrics report: ACW *

AGENTS_AVAILABLE

Unit: COUNT

Name in * real-time metrics report: Available *

AGENTS_ERROR

Unit: COUNT

Name in real-time * metrics report: Error *

AGENTS_NON_PRODUCTIVE

Unit: COUNT

Name in * real-time metrics report: NPT * (Non-Productive Time)

AGENTS_ON_CALL

Unit: * COUNT

Name in real-time metrics report: On * contact

AGENTS_ON_CONTACT

Unit: COUNT

*

Name in real-time metrics report: On * contact

AGENTS_ONLINE

Unit: COUNT

Name in * real-time metrics report: Online *

AGENTS_STAFFED

Unit: COUNT

Name in real-time * metrics report: Staffed *

CONTACTS_IN_QUEUE

Unit: COUNT

Name in * real-time metrics report: In * queue

CONTACTS_SCHEDULED

Unit: COUNT

Name * in real-time metrics report: Scheduled *

OLDEST_CONTACT_AGE

Unit: SECONDS

When you use * groupings, Unit says SECONDS and the Value is returned in SECONDS.

When * you do not use groupings, Unit says SECONDS but the Value is returned in * MILLISECONDS. For example, if you get a response like this:

{ * "Metric": { "Name": "OLDEST_CONTACT_AGE", "Unit": "SECONDS" }, "Value": 24113.0 * }

The actual OLDEST_CONTACT_AGE is 24 seconds.

Name in * real-time metrics report: Oldest *

SLOTS_ACTIVE

Unit: COUNT

Name in real-time * metrics report: Active *

SLOTS_AVAILABLE

Unit: COUNT

Name in real-time * metrics report: Availability *

*/ inline GetCurrentMetricDataRequest& AddCurrentMetrics(const CurrentMetric& value) { m_currentMetricsHasBeenSet = true; m_currentMetrics.push_back(value); return *this; } /** *

The metrics to retrieve. Specify the name and unit for each metric. The * following metrics are available. For a description of all the metrics, see Real-time * Metrics Definitions in the Amazon Connect Administrator Guide.

*
AGENTS_AFTER_CONTACT_WORK

Unit: COUNT

Name in * real-time metrics report: ACW *

AGENTS_AVAILABLE

Unit: COUNT

Name in * real-time metrics report: Available *

AGENTS_ERROR

Unit: COUNT

Name in real-time * metrics report: Error *

AGENTS_NON_PRODUCTIVE

Unit: COUNT

Name in * real-time metrics report: NPT * (Non-Productive Time)

AGENTS_ON_CALL

Unit: * COUNT

Name in real-time metrics report: On * contact

AGENTS_ON_CONTACT

Unit: COUNT

*

Name in real-time metrics report: On * contact

AGENTS_ONLINE

Unit: COUNT

Name in * real-time metrics report: Online *

AGENTS_STAFFED

Unit: COUNT

Name in real-time * metrics report: Staffed *

CONTACTS_IN_QUEUE

Unit: COUNT

Name in * real-time metrics report: In * queue

CONTACTS_SCHEDULED

Unit: COUNT

Name * in real-time metrics report: Scheduled *

OLDEST_CONTACT_AGE

Unit: SECONDS

When you use * groupings, Unit says SECONDS and the Value is returned in SECONDS.

When * you do not use groupings, Unit says SECONDS but the Value is returned in * MILLISECONDS. For example, if you get a response like this:

{ * "Metric": { "Name": "OLDEST_CONTACT_AGE", "Unit": "SECONDS" }, "Value": 24113.0 * }

The actual OLDEST_CONTACT_AGE is 24 seconds.

Name in * real-time metrics report: Oldest *

SLOTS_ACTIVE

Unit: COUNT

Name in real-time * metrics report: Active *

SLOTS_AVAILABLE

Unit: COUNT

Name in real-time * metrics report: Availability *

*/ inline GetCurrentMetricDataRequest& AddCurrentMetrics(CurrentMetric&& value) { m_currentMetricsHasBeenSet = true; m_currentMetrics.push_back(std::move(value)); return *this; } /** *

The token for the next set of results. Use the value returned in the previous * response in the next request to retrieve the next set of results.

The * token expires after 5 minutes from the time it is created. Subsequent requests * that use the token must use the same request parameters as the request that * generated the token.

*/ inline const Aws::String& GetNextToken() const{ return m_nextToken; } /** *

The token for the next set of results. Use the value returned in the previous * response in the next request to retrieve the next set of results.

The * token expires after 5 minutes from the time it is created. Subsequent requests * that use the token must use the same request parameters as the request that * generated the token.

*/ inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; } /** *

The token for the next set of results. Use the value returned in the previous * response in the next request to retrieve the next set of results.

The * token expires after 5 minutes from the time it is created. Subsequent requests * that use the token must use the same request parameters as the request that * generated the token.

*/ inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; } /** *

The token for the next set of results. Use the value returned in the previous * response in the next request to retrieve the next set of results.

The * token expires after 5 minutes from the time it is created. Subsequent requests * that use the token must use the same request parameters as the request that * generated the token.

*/ inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); } /** *

The token for the next set of results. Use the value returned in the previous * response in the next request to retrieve the next set of results.

The * token expires after 5 minutes from the time it is created. Subsequent requests * that use the token must use the same request parameters as the request that * generated the token.

*/ inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); } /** *

The token for the next set of results. Use the value returned in the previous * response in the next request to retrieve the next set of results.

The * token expires after 5 minutes from the time it is created. Subsequent requests * that use the token must use the same request parameters as the request that * generated the token.

*/ inline GetCurrentMetricDataRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;} /** *

The token for the next set of results. Use the value returned in the previous * response in the next request to retrieve the next set of results.

The * token expires after 5 minutes from the time it is created. Subsequent requests * that use the token must use the same request parameters as the request that * generated the token.

*/ inline GetCurrentMetricDataRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;} /** *

The token for the next set of results. Use the value returned in the previous * response in the next request to retrieve the next set of results.

The * token expires after 5 minutes from the time it is created. Subsequent requests * that use the token must use the same request parameters as the request that * generated the token.

*/ inline GetCurrentMetricDataRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;} /** *

The maximum number of results to return per page.

*/ inline int GetMaxResults() const{ return m_maxResults; } /** *

The maximum number of results to return per page.

*/ inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; } /** *

The maximum number of results to return per page.

*/ inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; } /** *

The maximum number of results to return per page.

*/ inline GetCurrentMetricDataRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;} /** *

The way to sort the resulting response based on metrics. You can enter one * sort criteria. By default resources are sorted based on * AGENTS_ONLINE, DESCENDING. The metric collection is * sorted based on the input metrics.

Note the following:

  • *

    Sorting on SLOTS_ACTIVE and SLOTS_AVAILABLE is not * supported.

*/ inline const Aws::Vector& GetSortCriteria() const{ return m_sortCriteria; } /** *

The way to sort the resulting response based on metrics. You can enter one * sort criteria. By default resources are sorted based on * AGENTS_ONLINE, DESCENDING. The metric collection is * sorted based on the input metrics.

Note the following:

  • *

    Sorting on SLOTS_ACTIVE and SLOTS_AVAILABLE is not * supported.

*/ inline bool SortCriteriaHasBeenSet() const { return m_sortCriteriaHasBeenSet; } /** *

The way to sort the resulting response based on metrics. You can enter one * sort criteria. By default resources are sorted based on * AGENTS_ONLINE, DESCENDING. The metric collection is * sorted based on the input metrics.

Note the following:

  • *

    Sorting on SLOTS_ACTIVE and SLOTS_AVAILABLE is not * supported.

*/ inline void SetSortCriteria(const Aws::Vector& value) { m_sortCriteriaHasBeenSet = true; m_sortCriteria = value; } /** *

The way to sort the resulting response based on metrics. You can enter one * sort criteria. By default resources are sorted based on * AGENTS_ONLINE, DESCENDING. The metric collection is * sorted based on the input metrics.

Note the following:

  • *

    Sorting on SLOTS_ACTIVE and SLOTS_AVAILABLE is not * supported.

*/ inline void SetSortCriteria(Aws::Vector&& value) { m_sortCriteriaHasBeenSet = true; m_sortCriteria = std::move(value); } /** *

The way to sort the resulting response based on metrics. You can enter one * sort criteria. By default resources are sorted based on * AGENTS_ONLINE, DESCENDING. The metric collection is * sorted based on the input metrics.

Note the following:

  • *

    Sorting on SLOTS_ACTIVE and SLOTS_AVAILABLE is not * supported.

*/ inline GetCurrentMetricDataRequest& WithSortCriteria(const Aws::Vector& value) { SetSortCriteria(value); return *this;} /** *

The way to sort the resulting response based on metrics. You can enter one * sort criteria. By default resources are sorted based on * AGENTS_ONLINE, DESCENDING. The metric collection is * sorted based on the input metrics.

Note the following:

  • *

    Sorting on SLOTS_ACTIVE and SLOTS_AVAILABLE is not * supported.

*/ inline GetCurrentMetricDataRequest& WithSortCriteria(Aws::Vector&& value) { SetSortCriteria(std::move(value)); return *this;} /** *

The way to sort the resulting response based on metrics. You can enter one * sort criteria. By default resources are sorted based on * AGENTS_ONLINE, DESCENDING. The metric collection is * sorted based on the input metrics.

Note the following:

  • *

    Sorting on SLOTS_ACTIVE and SLOTS_AVAILABLE is not * supported.

*/ inline GetCurrentMetricDataRequest& AddSortCriteria(const CurrentMetricSortCriteria& value) { m_sortCriteriaHasBeenSet = true; m_sortCriteria.push_back(value); return *this; } /** *

The way to sort the resulting response based on metrics. You can enter one * sort criteria. By default resources are sorted based on * AGENTS_ONLINE, DESCENDING. The metric collection is * sorted based on the input metrics.

Note the following:

  • *

    Sorting on SLOTS_ACTIVE and SLOTS_AVAILABLE is not * supported.

*/ inline GetCurrentMetricDataRequest& AddSortCriteria(CurrentMetricSortCriteria&& value) { m_sortCriteriaHasBeenSet = true; m_sortCriteria.push_back(std::move(value)); return *this; } private: Aws::String m_instanceId; bool m_instanceIdHasBeenSet = false; Filters m_filters; bool m_filtersHasBeenSet = false; Aws::Vector m_groupings; bool m_groupingsHasBeenSet = false; Aws::Vector m_currentMetrics; bool m_currentMetricsHasBeenSet = false; Aws::String m_nextToken; bool m_nextTokenHasBeenSet = false; int m_maxResults; bool m_maxResultsHasBeenSet = false; Aws::Vector m_sortCriteria; bool m_sortCriteriaHasBeenSet = false; }; } // namespace Model } // namespace Connect } // namespace Aws