com.genesyslab.wfm7.API.service.performance761

## Interface WFMPerformanceService761Soap

- All Superinterfaces:
    java.rmi.Remote

      public interface WFMPerformanceService761Soap
      extends java.rmi.Remote

  Performance data includes actual Call Center performance, anticipated performance, and planned performance data. Performance service processes performance data and provides it to the user on request. The service extracts actual performance information from the WFM Database for each time step. Information going to the Database is written by WFM Data Aggregator. Information can be requested for different levels. Levels are: Activity, Multi-site Activity (aggregated all involved Activities), Site, Business Unit, and Enterprise. Because performance information items are stored for activities, values are aggregated when a different level is selected. When there are no values for actual performance information in the future (to be recorded as it actually happens), Performance service provides anticipated values of performance information for all actual data types except Working Agents. Anticipated values are calculated based on previous actual and forecasted values. Performance service extracts forecasted and scheduled information from the WFM DB for each time step for the requested activity(ies). Forecasted information is published to the DB by `WFM Forecast service`. The WFM Schedule component creates/modifies and publishes to the DB scheduled information. Performance service interprets this data as planned performance related information and uses it for internal calculations, e.g. anticipated values. It also supplies this information to clients on request. Performance service uses objectives and parameters to calculate some anticipated, scheduled, and required values. Service Objectives and parameters are used to build forecast data. Performance service calculates Services Objectives achieved after forecast data is built as well. Requested and achieved Service Objectives can (and will) differ, because the WFM Staffing Library tries to satisfy all specified Objectives, so they will be as requested or better. Objectives and parameters are set for each activity for every time step (in some cases for a period of time). Independently, based on Performance data, Performance service can estimate basic Call Center Objectives for a given Activity and parameters. Performance service calculates scenario values for: Service Factor, Abandoned Interactions Percentage, Average Speed of Answer, and Staffing. Performance service provides an interface to read/edit/save minimum and maximum deviation settings of alert. Deviation settings are applied for different levels: Activity, Multi-site Activity, Site; Business Unit, and Enterprise. Performance service allows for modification of alert settings. Settings are for the following performance information types: Interaction Volume, Average Handling Time, Abandoned Interactions Volume, Service Factor, Average Speed of Answer, and Working Agents. Each item has a minimum deviation % setting, and a maximum deviation % setting. When the deviation is set to 0%, the alert is switched off. Service will also indicate which of the provided performance information values has reached alert value. The client should issue a request for alerts when requesting performance information.

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `SPerfAlertSettings[]` | `getAlertsSettings(int target, int targetId)` Returns alert deviation settings for the specified level.
    `SPerfItemDataAndTotal[]` | `getPerformanceData(int target, int targetID, double start, double end, double current, int granularity, int timeZoneOption, int timeZoneID, int sourceSchScenarioID, int sourceFrcScenarioID, int[] requestedItems, int branch)` Returns an array of values for each time interval (with specified granularity) in the requested period for the requested performance items at the specified target level, involves aggregation (totals, averages) for target more than Activity level and granularity bigger than 15 min.
    `java.lang.String` | `getPerformanceDataAsync(int target, int targetID, double start, double end, double current, int[] granularity, int timeZoneOption, int timeZoneID, int sourceSchScenarioID, int sourceFrcScenarioID, int[] requestedItems, int branch)` Start an asynchronous operation to retrieve performance data for the requested period for the requested performance items at the specified target level.
    `SPerfItemDataAndTotal[]` | `getPerformanceDataFromSnapshot(java.lang.String schSnapshotID, SchAgentDay[] agentDayArray, int target, int targetID, double start, double end, int granularity, int[] requestedItems, int branch)` Returns an array of values for each time interval (with specified granularity) in the requested period for the requested performance items at the specified target level, involves aggregation (totals, averages) for target more than Activity level and granularity bigger than 15 min.
    `SPerfItemDataAndTotal[]` | `getPerformanceInformation(int target, int targetID, double start, double end, double current, int[] granularity, int timeZoneOption, int timeZoneID, int sourceSchScenarioID, int sourceFrcScenarioID, int[] requestedItems, int branch, int option)` Returns an array of values for each time interval (with specified granularity) in the requested period for the requested performance items at the specified target level, involves aggregation (totals, averages) for target more than Activity level and multiple granularities.
    `SPerfItemDataAndTotal[]` | `getPerformanceRequestData(java.lang.String asyncRequestID)` Method used to get result of a previously made asyncronous call.
    `void` | `setAlertsSettings(int target, int targetId, SPerfAlertSettings[] settings)` Modifies alert deviation settings for the specified level.
    `java.lang.String` | `setPerformanceDataAsync(SPerformanceItemData[] data, boolean overwrite)` Start an asynchronous operation to record supplied performance data for the requested performance items and specified target.
    `SPerfFactors` | `whatIfScenarioFactors(int IV, double AHT, int serviceTime, int abandonTime, double IOT, int staffing)` Calculates and returns the value of Service Factor, Abandoned Interactions Factor, and Average Speed of Answer.
    `int` | `whatIfScenarioStaffing(int IV, double AHT, int serviceTime, int abandonTime, double IOT, double maxOccupancyPCT, SPerfFactors factors)` Calculates and returns the value of Staffing.

- - ### Method Detail

    - #### getPerformanceDataAsync

          java.lang.String getPerformanceDataAsync(int target,
                                                 int targetID,
                                                 double start,
                                                 double end,
                                                 double current,
                                                 int[] granularity,
                                                 int timeZoneOption,
                                                 int timeZoneID,
                                                 int sourceSchScenarioID,
                                                 int sourceFrcScenarioID,
                                                 int[] requestedItems,
                                                 int branch)
                                                   throws java.rmi.RemoteException

      Start an asynchronous operation to retrieve performance data for the requested period for the requested performance items at the specified target level.
      Parameters:
        `target` - Target level
        `targetID` - Target identifier
        `start` - Period start date and time
        `end` - Period end date and time
        `current` - Current time interval from which Anticipated values are calculated (default 0 - no Anticipated values)
        `granularity` - Granularity value, in minutes (default value - 15 min): 0 - returns one value for the entire period (total) for the selected target and data types. Special values: 0 - for total value; -1 - calendar month; -10 - calendar week starts Sunday; -11 - calendar week starts Mon.; -12 - calendar week starts Tue.; -13 - calendar week starts Wed.; -14 - calendar week starts Thu.; -15 - calendar week starts Fri.; -16 - calendar week starts Sat.
        `timeZoneOption` - Start and end (and current): date/times are interpreted according to the time zone option. When the local time zone option is used, user must specify the client time zone using the Config service SetLocalTimeZone method.
        `timeZoneID` - Used together with User Time zone Option (value=1) and specifies user time zone ID. If 0 is specified, configured (WFM Config Utility) user timezone is used
        `sourceSchScenarioID` - Schedule scenario identifier for schedule data (0 - master (default)): all calculations are also made based on data in the scenario
        `sourceFrcScenarioID` - Forecast scenario identifier for forecast data (0 - master (default)): all calculations are also made based on data in the scenario
        `requestedItems` - Array of item types
        `branch` - Data access option allows choice of Site->Activity branch or Multi-Site Activity->Activity branch when MSAs are used.
      Returns:
        Async request ID
      Throws:
        `java.rmi.RemoteException`
      See Also:
        `WFMConfigService761Soap.setLocalTimezone(com.genesyslab.wfm7.API.service.config761.CfgTimezone)`

    - #### getPerformanceRequestData

          SPerfItemDataAndTotal[] getPerformanceRequestData(java.lang.String asyncRequestID)
                                                            throws java.rmi.RemoteException

      Method used to get result of a previously made asyncronous call. Returns array of values for each time interval (with specified granularity) in the requested period for the requested performance items at the specified target level. This involves aggregation (totals, averages) for target more than Activity level and granularity larger than 15 min. If requested, this also indicates alerts for those items and time periods, where alert value is reached. Also returns total value of the period for each requested item.
      Parameters:
        `asyncRequestID` - Async request ID
      Returns:
        Performance data for requested items and requested period. This contains total value of the period for each item. Negative values indicate that no value is available (empty = -1, null = -2) or that the value cannot be calculated for the given target with the given parameters.
      Throws:
        `java.rmi.RemoteException`

    - #### getPerformanceDataFromSnapshot

          SPerfItemDataAndTotal[] getPerformanceDataFromSnapshot(java.lang.String schSnapshotID,
                                                               SchAgentDay[] agentDayArray,
                                                               int target,
                                                               int targetID,
                                                               double start,
                                                               double end,
                                                               int granularity,
                                                               int[] requestedItems,
                                                               int branch)
                                                                 throws java.rmi.RemoteException

      Returns an array of values for each time interval (with specified granularity) in the requested period for the requested performance items at the specified target level, involves aggregation (totals, averages) for target more than Activity level and granularity bigger than 15 min. If requested, indicates alerts for those items and time periods where the alert value is reached. Also returns the total value of the period for each requested item. All performance calculations are performed based on the provided existing schedule snapshot. It also allows for passing a modified schedule that is not yet saved to the database, but that should be overlapped with a schedule as a snapshot for performance calculations. The performance data is always returned in the time zone of site for which the schedule snapshot is created. This function is used to display performance values associated with a schedule snapshot. It should be called right after the snapshot is opened, as well as every time the schedule is modified. This permits viewing changes in performance values. After a schedule is modified, it is a good practice to call this function only for the period that has been modified, and then only for those statistics that may have changed due to the schedule modifications. For instance, you might view coverage, headcount, and service level, but not for staffing, commits, IV, etc.
      Parameters:
        `schSnapshotID` - Schedule snapshot ID representing the schedule snapshot that should be used for performance calculations
        `agentDayArray` - An array of Agent Schedule Day structures. This represents a modified schedule that is not yet saved to the database, but which should be taken into account when calculating performance values. See WFM Schedule service document.
        `target` - Target level
        `targetID` - Target identifier
        `start` - Period start date and time. This should not exceed the date range schedule snapshot
        `end` - Period end date and time. This should not exceed the date range of the schedule snapshot
        `granularity` - Granularity value, in minutes (default value - 15 min): 0 - returns one value for the entire period (total) for the selected target and data types. Special values: 0 - for total value; -1 - calendar month; -10 - calendar week starts Sunday; -11 - calendar week starts Mon.; -12 - calendar week starts Tue.; -13 - calendar week starts Wed.; -14 - calendar week starts Thu.; -15 - calendar week starts Fri.; -16 - calendar week starts Sat.
        `requestedItems` - Array of item types
        `branch` - Data access option which allows for a choice of Site->Activity branch or Multi-Site Activity->Activity branch when MSAs are used
      Returns:
        Performance data for requested items and requested period: contains total value of the period for each item. Negative values indicate that no value is available (empty = -1, null = -2) or that the value cannot be calculated for the given target with the given parameters.
      Throws:
        `java.rmi.RemoteException`
      See Also:
        `EPerfTargets`, `EPerfInfoItems`, `EFrcActivitySelectionBranch`

    - #### getPerformanceData

          SPerfItemDataAndTotal[] getPerformanceData(int target,
                                                   int targetID,
                                                   double start,
                                                   double end,
                                                   double current,
                                                   int granularity,
                                                   int timeZoneOption,
                                                   int timeZoneID,
                                                   int sourceSchScenarioID,
                                                   int sourceFrcScenarioID,
                                                   int[] requestedItems,
                                                   int branch)
                                                     throws java.rmi.RemoteException

      Returns an array of values for each time interval (with specified granularity) in the requested period for the requested performance items at the specified target level, involves aggregation (totals, averages) for target more than Activity level and granularity bigger than 15 min. If requested, this indicates alerts for those items and time periods, where the alert value has been reached. This also returns the total value of the period for each requested item.
      Parameters:
        `target` - Target level
        `targetID` - Target identifier
        `start` - Period start date and time
        `end` - Period end date and time
        `current` - Current time interval from which Anticipated values are calculated (default 0 - no Anticipated values)
        `granularity` - Granularity value, in minutes (default value - 15 min): 0 - returns one value for the entire period (total) for the selected target and data types. Special values: 0 - for total value; -1 - calendar month; -10 - calendar week starts Sunday; -11 - calendar week starts Mon.; -12 - calendar week starts Tue.; -13 - calendar week starts Wed.; -14 - calendar week starts Thu.; -15 - calendar week starts Fri.; -16 - calendar week starts Sat.
        `timeZoneOption` - Start and end (and current): date/times are interpreted according to the time zone option. When the local time zone option is used, the user must specify the client time zone using the Config service SetLocalTimeZone method.
        `timeZoneID` - Used together with the User Time zone Option (value=1) to specify the user time zone ID. If 0 is specified, the configured (WFM Config Utility) user timezone is used
        `sourceSchScenarioID` - Schedule scenario identifier for schedule data (0 - master (default)): all calculations are also made based on data in the scenario
        `sourceFrcScenarioID` - Forecast scenario identifier for forecast data (0 - master (default)), all calculations are also made based on data in the scenario
        `requestedItems` - Array of item types
        `branch` - Data access option allows for choice of Site->Activity branch or Multi-Site Activity->Activity branch when MSAs are used
      Returns:
        Performance data for requested items and requested period: contains total value of the period for each item. Negative values indicate that no value is available (empty = -1, null = -2) or that a value cannot be calculated for the given target with the given parameters.
      Throws:
        `java.rmi.RemoteException`
      See Also:
        `WFMConfigService761Soap.setLocalTimezone(com.genesyslab.wfm7.API.service.config761.CfgTimezone)`, `EPerfTargets`, `EPerfInfoItems`, `EPerfTimeZoneOptions`, `EFrcActivitySelectionBranch`

    - #### getPerformanceInformation

          SPerfItemDataAndTotal[] getPerformanceInformation(int target,
                                                          int targetID,
                                                          double start,
                                                          double end,
                                                          double current,
                                                          int[] granularity,
                                                          int timeZoneOption,
                                                          int timeZoneID,
                                                          int sourceSchScenarioID,
                                                          int sourceFrcScenarioID,
                                                          int[] requestedItems,
                                                          int branch,
                                                          int option)
                                                            throws java.rmi.RemoteException

      Returns an array of values for each time interval (with specified granularity) in the requested period for the requested performance items at the specified target level, involves aggregation (totals, averages) for target more than Activity level and multiple granularities. If requested, this indicates alerts for those items and time periods, where the alert value has been reached. This also returns the total value of the period for each requested item. option parameter allows to turn on special functionality in Performance service.
      Parameters:
        `target` - Target level
        `targetID` - Target identifier
        `start` - Period start date and time
        `end` - Period end date and time
        `current` - Current time interval from which Anticipated values are calculated (default 0 - no Anticipated values)
        `granularity` - Granularity values, in minutes (default value - 15 min): 0 - returns one value for the entire period (total) for the selected target and data types. Special values: 0 - for total value; -1 - calendar month; -10 - calendar week starts Sunday; -11 - calendar week starts Mon.; -12 - calendar week starts Tue.; -13 - calendar week starts Wed.; -14 - calendar week starts Thu.; -15 - calendar week starts Fri.; -16 - calendar week starts Sat.
        `timeZoneOption` - Start and end (and current): date/times are interpreted according to the time zone option. When the local time zone option is used, the user must specify the client time zone using the Config service SetLocalTimeZone method.
        `timeZoneID` - Used together with the User Time zone Option (value=1) to specify the user time zone ID. If 0 is specified, the configured (WFM Config Utility) user timezone is used
        `sourceSchScenarioID` - Schedule scenario identifier for schedule data (0 - master (default)): all calculations are also made based on data in the scenario
        `sourceFrcScenarioID` - Forecast scenario identifier for forecast data (0 - master (default)), all calculations are also made based on data in the scenario
        `requestedItems` - Array of item types
        `branch` - Data access option allows for choice of Site->Activity branch or Multi-Site Activity->Activity branch when MSAs are used
        `option` - 0 - no special functionality, 1 - special handling for Actual and Forecast Volume totals (aggregated till current time only)
      Returns:
        Performance data for requested items and requested period: contains total value of the period for each item. Negative values indicate that no value is available (empty = -1, null = -2) or that a value cannot be calculated for the given target with the given parameters.
      Throws:
        `java.rmi.RemoteException`
      See Also:
        `WFMConfigService761Soap.setLocalTimezone(com.genesyslab.wfm7.API.service.config761.CfgTimezone)`, `EPerfTargets`, `EPerfInfoItems`, `EPerfTimeZoneOptions`, `EFrcActivitySelectionBranch`, `EPerfFunctionalityOptions`

    - #### whatIfScenarioFactors

          SPerfFactors whatIfScenarioFactors(int IV,
                                           double AHT,
                                           int serviceTime,
                                           int abandonTime,
                                           double IOT,
                                           int staffing)
                                             throws java.rmi.RemoteException

      Calculates and returns the value of Service Factor, Abandoned Interactions Factor, and Average Speed of Answer. For a "What-If Scenario" the calculation of some Factors and Activity Coverage (suitability) is also used. Factors are Service Time, Abandon Time, and Indirectly Occupied Time.
      Parameters:
        `IV` - Interaction Volume value
        `AHT` - Average Handle Time value
        `serviceTime` - Service time
        `abandonTime` - Time to abandon
        `IOT` - Indirectly Occupied Time percentage
        `staffing` - Number of agents
      Returns:
        Structure contains calculated factors
      Throws:
        `java.rmi.RemoteException`

    - #### whatIfScenarioStaffing

          int whatIfScenarioStaffing(int IV,
                                   double AHT,
                                   int serviceTime,
                                   int abandonTime,
                                   double IOT,
                                   double maxOccupancyPCT,
                                   SPerfFactors factors)
                                     throws java.rmi.RemoteException

      Calculates and returns the value of Staffing. To calculate Staffing, values for Abandoned IV Factor and/or Service Factor and/or ASA, and IV (mandatory), AHT (mandatory) must be set. For a "What-If Scenario" the calculation of some Factors and Activity Coverage (suitability) is also used. Factors are Abandon Time, Indirectly Occupied Time, and Maximum Occupancy Percentage.
      Parameters:
        `IV` - Interaction Volume value
        `AHT` - Average Handle Time value
        `serviceTime` - Service time
        `abandonTime` - Time to abandon
        `IOT` - Indirectly Occupied Time percentage
        `maxOccupancyPCT` - Maximum Occupancy percentage
        `factors` - Contains factor values
      Returns:
        Calculated number of agents
      Throws:
        `java.rmi.RemoteException`

    - #### getAlertsSettings

          SPerfAlertSettings[] getAlertsSettings(int target,
                                               int targetId)
                                                 throws java.rmi.RemoteException

      Returns alert deviation settings for the specified level.
      Parameters:
        `target` - Target level
        `targetId` - Target identifier
      Returns:
        Contains alert settings for the supported types at the target level
      Throws:
        `java.rmi.RemoteException`
      See Also:
        `EPerfTargets`, `EPerfAlertItems`

    - #### setAlertsSettings

          void setAlertsSettings(int target,
                               int targetId,
                               SPerfAlertSettings[] settings)
                                 throws java.rmi.RemoteException

      Modifies alert deviation settings for the specified level.
      Parameters:
        `target` - Target level
        `targetId` - Target identifier
        `settings` - Contains alert settings for the supported types at the target level
      Throws:
        `java.rmi.RemoteException`
      See Also:
        `EPerfTargets`, `EPerfAlertItems`

    - #### setPerformanceDataAsync

          java.lang.String setPerformanceDataAsync(SPerformanceItemData[] data,
                                                 boolean overwrite)
                                                   throws java.rmi.RemoteException

      Start an asynchronous operation to record supplied performance data for the requested performance items and specified target.
      Parameters:
        `data` - Performance data array may contain multiple Activities Actual Interaction Volume and Average Handle Time information for the specific time periods.
        `overwrite` - Specified whether existing the performace data should be overwritten (overwrite=true). When this option is in force, the data for the supplied period and the specified type will be deleted from the DB and replaced with the provided data, e.g. when setting AHT data, only AHT data for the period which is covered by the provided data will be overwritten.
      Returns:
        Async request ID
      Throws:
        `java.rmi.RemoteException`

Copyright © 2005-2016 Genesys Telecommunications Labs, Inc. All Rights Reserved.