The ICH service is a SfB application which is responsible for answering service related conversations. It’s an active – active component and should be installed on all LUCS machines.

Installation

  1. Run the ICH.Setup.msi
  2. On the Luware-LUCS-ICH Configuration Settings screen of the setup make sure you fill the
    1. Instance Name
    2. Port number
    3. SfB Server Version
    4. Configure Certificate Security
  3. For security reason LUCS provides possibility to use certificate-based encryption and verification during the components communication. To configure certificate based authentication, select ‘Configure Certificate Security’ check box and press ‘Next’ button to open a page with server certificate settings

    The example of filled LUCS ICH Configuration Settings screen
  4. If ‘Configure Certificate Security’ check box was set to true, configure the server and client certificate settings as the next steps. The client settings specify which settings ICH will use while connecting to PS. The server settings are used to validate another services when they try to connect to ICH. When you want to work with a certificate thumbprint, make sure to have one available as described in LUCS System Components.

    The example of filled Luware-LUCS-ICH Client Certificate Settings screen
SettingsDescriptionValue
ModeTransfer security modes offered by WCF to ensure a secured communication between a client and a server.
  • None : This mode ensures that no security is applied while communication between server and client.
  • Transport: As the name suggests, it is concerned with security of communication between a client and a service over a network protocol. It guarantees the confidentiality and integrity of messages at transport level since transport security secures the entire communication channel.
Validation ModeThe mode that specifies how incoming certificate is validated and how trust is determined .
  • None: In this mode no validation is perfomed.
  • ChainTrust: : In this mode WCF simply validates the certificate against the issuer of a certificate known as a root authority (the expiration time is checked too).
  • PeerTrust: In this mode WCF simply checks if the incoming certificate is installed in the Trusted People folder in the certificate store (the expiration time is checked too).
  • PeerOrChainTrust: Mixed mode.


Is DedicatedThe flag that defins which certificate is used for encryption.False: Encryption is done with default certificate. It means that certificate with the hostname of the machinefrom the Personal Store is used on server side.

True: Encryption is done with a dedicated certificate. It means there is  possibility to configure identifier (thumbprint) of the certificate.


ThumbprintThe thumbprint is a hash value computed over the complete certificate, which includes all its fields, including the signature.



See Prepare Certificate Thumbprint

Note: The system reports all errors related to  connection or certificate issues to a log file ‘C:\Program Files\Luware AG\LUCS-ICH\log \connectionIssues.log’.

  • Open Services and start the installed service.
  • Check that service is successfully started without any errors in Event Viewer or in the log file
    c:\Program Files\Luware AG\LUCS-ICH\log\regularLog.txt

Configuration

In the Luware-LUCS-Configurator application:

  1. Open LUCS Configurator -> Topology -> Components (Server)
  2. Add ICH component as it is shown in the example (select the ICH Server Type, System Instance, Activity Order and fill the service’s Settings according to the table below):

    WebConfigurator - ICH Component Configuration
    Key Description
    Announcement PathAll WMA files in the specified path will be loaded into ICH and can be used in Workflows.


    Example: C:\Program Files\Luware AG\LUCS-ICH\Resources\Announcements

    Conference.Check Warmup Conferences IntervalTime interval to check available conferences. ICH will try to keep configured amount of conferences per service. (‘Warmup Conferences Count’ parameter is responsible for this in each service).


    Default value: 00:01:00

    Recommended values: should be defined based on particular system load and Lync configuration.

    Conference.Create Conference Max TimeFor each service on the LUCS Configurator -> Services -> Services tab, admin sets the ‘Warmup Conferences Count’ and for new conversations the ICH uses one of the available warmed up conferences. If warmed up conferences are not available, the ICH tries to make a new conference. ICH tries it during the specified in this setting time.


    If ICH was not able to create a new conference during the specified in this setting period, the conversation ends after the period exceeds and the system is not loaded any more with this conversation.

    The information about such conversations is present in log file.

    Default value: 00:00:10

    If the value of the setting is 00:00:00, this means that the setting is off and ICH tries to make a new conference until the conference creation succeeds.

    Recommended values: should be defined based on particular system load and Lync configuration.

    Conference.Conference Health Manager Reset IntervalThe ‘Conference Health Manager Reset Interval’ is an interval when ICH resets all errors that happened during conference management process (such errors as conferences per timeframe were reached, conference creation time were more than expected, any Lync error occurred during conference creation).


    During this interval, ICH will decline all incoming calls, in order to give Lync some time to recover. After it, ICH will start again to create additional conferences.

    Default value: 00:00:00

    If the value of the setting is 00:00:00, this means that the setting is off and ICH starts new conference creation as soon as it is needed.

    Recommended values: should be defined based on particular system load and Lync configuration.

    Conference.Track Conferences Time FrameThe ‘Track Conferences Time Frame’ setting is used together with ‘Max Conferences Within Tracking Time Frame’.


    Allowable interval to create conferences, specified in ‘Conference.MaxConferencesWithingTrackingTimeFrame’

    Default value: 00:00:00

    If the value of the setting is 00:00:00, this means that ICH will not prevent creation of new conferences and parameter Conference.MaxConferencesWithingTrackingTimeFrame will be ignored.

    Example: 100 conferences may be created within 1 minute with the following settings:

    Conference.MaxConferencesWithinTrackingTimeFrame = 100

    Conference.TrackTimeFrame = 00:01:00

    Recommended values: should be defined based on particular system load and Lync configuration.

    Conference.Max Conferences Within Tracking Time FrameThe ‘Max Conferences Within Tracking Time Frame’ setting is used together with ‘Track Conferences Time Frame’.


    The setting determines the number of conferences, which can be created within ‘TrackConferencesTimeFrame’. More conferences will not be created within the specified period.

    After the ‘Track Conferences Time Frame’ and ‘Max Conferences Within Tracking Time Frame’ limits are reached, the system executes the ‘Conference Health Manager Reset Interval’.

    Default value: 25

    Example: 100 conferences may be created within 1 minute with the following settings:

    Conference.MaxConferencesWithinTrackingTimeFrame = 100

    Conference.TrackTimeFrame = 00:01:00

    Recommended values: should be defined based on particular system load and Lync configuration.

    ConnectionLivenessIntervalEnter the interval time in seconds between the keep alive pings.
    ConnectionLivenessTimeoutEnter the amount of seconds how long the component will wait for a keep alive response.
    ConnectionReconnectIntervalEnter the amount of seconds between the retries to reestablish the connection to the service.
    ConnectorApplicationURNIdentifies the registered SfB connector application. To get the required value


    1. run Get-CsTrustedApplication command in SfB Server Management Shell

    2. search for right component by application port number or name

    3. copy ApplicationId

    Example: urn:application:lucs-connector0

    ConnectorApplicationURN1Identifies the registered SfB connector application. To get the required value


    1. run Get-CsTrustedApplication command in SfB Server Management Shell

    2. search for the right component by application port number or name

    3. copy ApplicationId

    Example: urn:application:lucs-connector1

    ConnectorApplicationURN2Identifies the registered SfB connector application. To get the required value


    1. run Get-CsTrustedApplication command in SfB Server Management Shell

    2. search for the right component by application port number or name

    3. copy ApplicationId

    Example: urn:application:lucs-connector2

    ConnectorApplicationURN3Identifies the registered SfB connector application. To get the required value


    1. run Get-CsTrustedApplication command in SfB Server Management Shell

    2. search for the right component by application port number or name

    3. copy ApplicationId

    Example: urn:application:lucs-connector3

    ConnectorApplicationURN4Identifies the registered SfB connector application. To get the required value


    1. run Get-CsTrustedApplication command in SfB Server Management Shell

    2. search for the right component by application port number or name

    3. copy ApplicationId

    Example: urn:application:lucs-connector4

    ConnectorEndThe system starts searching for additional connectors starting from this number. Default value: 0
    ConnectorPrefixThe system starts searching for additional connectors up to this number. Default value: “”
    ConnectorStartThe system starts searching for additional connectors using the prefix as a template.Default value: 0
    Default AA contextDeprecated: Will be removed in future releases.
    DefaultEndpointSipAddressUnique  sip adress that was created for each TrustedApplicationPool. It is used during pool failover.


    TrustedApplicationEndpoint for DefaultEndpointSipAddress must be created by before:

    New-CsTrustedApplicationEndpoint -ApplicationId lucs_defaultendpoint -TrustedApplicationPoolFqdn lucs.dev.local -SipAddress sip:lucs_defaultendpoint@dev.local

    LUCS ConferencingPolicy must be assigned manually to the DefaultEndpointSipAddress after the endpoint was created:

    Get-CsTrustedApplicationEndpoint -Identity sip:lucs_defaultendpoint@dev.local | Grant-CsConferencingPolicy -PolicyName “Tag:LUCSService”

    DialogMaster.AssignAgentTaskTimeoutTimeout until the task will be in a queue, waiting for an agent.
    DialogMaster.IsAutoTerminationEnabledDetermine if agent’s session should be terminated automatically after audio call termination.
    Default Value : true
    DialogMaster.PollingintervalEnter the amount of time between the retries to assign tasks to the agent in DialogMaster.
    Default Value : 00:01:00
    DialogMaster.ServiceURIUri for integration service with DialogMaster service.
    Example:
    http://dialogmaster.dev.local/AgentDesktop/LUCS/LucsOutboundWS.asmx
    ExternalWebRequestBasicAccountAccount that will be used in authorization header of a request
    ExternalWebRequestBasicAccountPwPassword that will be used in authorization header of a request.
    ExternalWebRequestTimeoutInSecDefine if the system has to wait in case of connection problems. If the value is set to 0, Workflow has to wait. If the value is more than 0, the system waits the defined time in second and continue in the Workflow.
    GruuPrefixThis value is used to identify service related conversations on SMD. This value depends on the machine where the component is installed. To get the required value


    1. run Get-CsTrustedApplication command in SfB Server Management Shell

    2. search for application port number

    3. in the ComputerGruus string copy the sip address of the machine

    Example: sip:lucs01.dev.local@dev.local

    MaxReconnectDeprecated: Will be removed in future releases.
    MusicInQueueFilePathEnter the file path to the music that will be played while the call will be in queue or


    leave the default value and put the files to the folder.

    Example: C:\Program Files\Luware AG\LUCS-ICH\Resources\MusikInQueue

    MusicOnHoldFilePathEnter the file path to the music that will be played while the call will be on hold or


    leave the default value and put the files to the folder.

    Example: C:\Program Files\Luware AG\LUCS-ICH\Resources\MusicOnHold

    PresencePublicationDelayInMsIt’s used in a formula to calculate PresencePublicitation of a service (Endpoint) in ICH and adds the following delay: ([Component ActivityOrder – 1) * PresencePublicitationDelayInMs]


    Default Value: 0 msec (disabled)
    Allowed range: 0 – 2000 msec

    Example: PresencePublicitationDelay = 200ms:
    ICH with ActivityOrder 1 –> No delay
    ICH with ActivityOrder 2 –> 1 * 200ms = 200ms delay
    ICH with ActivityOrder 3 –> 2 * 200ms = 400ms delay


    ReconnectTimeoutEnter the amount of seconds after which the component will try to reconnect a service after connection loss.
    RessourcesPathEnter the file path to the resources folder or leave the default value and use the folder. ICH will store there a local copy of the WMA files from the db.


    Example: C:\Program Files\Luware AG\LUCS-ICH\Resources\

    SiebelTimeoutInSIf 0, just wait
    If >0, just wait the defined time in second and continue in the WF
    SnowAccountthe username (of appropriate https://dev*service-now.com/)
    SnowAccountPwthe password for the user
    SnowApiTableUrlthe url is in the form: https://{snowinstance url}/api/now/table/
    SnowRequestTimeoutInSechow long we wait in the workflow until we move on without completing the requests
    UseDefaultConversationContextDeprecated: Will be removed in future releases.
    ZendeskAccountExisting Zendesk account that is required to login to Zendesk site.
    ZendeskAccountPwPassword to verify Zendesk account.
    ZendeskApiTokenAPI tokens that is generated in Zendesk and used to as part of 2-factor authentication for integrations.
    ZendeskApiUrlUrl to your Zendesk site.
    ZendeskLocaleLocale that is used for your Zendesk site.
    ZendeskOAuthTokenOAuth Token that is generated by Zendesk during registing your application. OAuth Token  authenticates all your application’s API requests to Zendesk.
    ZendeskTimeoutInSecIf 0, just wait
    If >0, just wait the defined time in second and continue in the WF

    When using Zendesk

    Your Workflow, Parameters and Settings need further configuration when using Zendesk. Please read the related chapters: