10Alternative Implementation Options

This chapter contains the following:

Implement Your Digital Customer Service Experience with REST APIs

Overview of the Digital Customer Service Experience with REST APIs

This chapter describes how to implement and configure your Oracle Digital Customer Service experience using REST APIs. You will get to know the details on how to develop, configure, manage, and administer an Oracle JET-based customer service application. Also, you will learn how to set up and work with the additional features in Oracle Engagement Cloud. For more information about Oracle Engagement Cloud, refer to the Related Topics.

A significant part of implementing your Digital Customer Service experience using REST APIs relies on Oracle JavaScript Extension Toolkit (Oracle JET). Oracle JET is a collection of JavaScript libraries and functions used to develop client based applications. Your implementation will leverage Oracle JET libraries and development best practices to provide service lifecycle, knowledge management, and products association with service requests and user management request and approvals. For more information about Oracle JET, refer to the Related Topics.

The topics in this chapter describe how to build an application purely based on JavaScript using Oracle JET, consuming data from Oracle Engagement Cloud using REST APIs.

Get Started with the Digital Customer Service Experience with REST APIs

Implementing the Digital Customer Service experience with REST APIs requires the JavaScript reference implementation that was developed using Oracle JET and Oracle's JavaScript framework and toolkit, including third-party dependent software.

Installation Prerequisites

You must download all of the dependent software for use on the computer where the Digital Customer Service experience is being implemented with REST APIs.

Note: The versions of the prerequisite software listed in the following table were used in development. Later versions might also work with your deployment.
Software or Package Name Tested Version

Java Development Kit

1.8.0_181

Node.js

7.10.1

NPM

6.4.1

Oracle JET

5.1.0

Oracle Identity Cloud Service

18.4.2

Add Self-Service Registration

Users require a user name and password to access the customer service application that is developed on Oracle JET. If the user is not self-registered, the user must provide a first name, last name, and user name on the Self-Registration page in the customer service application developed on Oracle JET.

Once the required information is provided, the self-service registration process will inform the administrator by sending an email notification. The administrator can then sign in to the application and approve or reject the request. The self-service registration process creates an account in Oracle Engagement Cloud and assigns appropriate roles. For more information about approving and rejecting self-service registration requests, refer to the Manage Registration Requests in the Related Topics.

Set Up Oracle Identity Cloud Service Applications

Overview of Oracle Identity Cloud Service Applications

Your Oracle JET application will access Oracle Engagement Cloud REST API resources. Within this model, your Oracle JET application performs actions on behalf of an Oracle JET application user. For authentication to work, the Oracle Identity Cloud Service or other identity provider must support OAuth2-based authentication. Irrespective of the identity provider used, applications should be defined in the identity provider representing the Oracle JET application. The following topics describe how to create the necessary applications in Oracle Identity Cloud Service.

Follow the instructions in these topics in the order in which they appear:

  1. Create an Oracle Engagement Cloud Resource Application.

  2. Create an Application for OAuth Implicit Flow.

  3. Create an Application for JSON Web Token Assertion.

Create an Oracle Engagement Cloud Resource Application

This topic describes how to create a confidential resource application for Oracle Engagement Cloud in Oracle Identity Cloud Service.

For detailed instructions on creating confidential applications in Oracle Identity Cloud Service, refer to the in the Adding a Confidential Application link in the Related Topics.

To create a confidential resource application for Oracle Engagement Cloud in Oracle Identity Cloud Service:

  1. Sign in to your Oracle Identity Cloud Service administration console.

  2. Expand the Navigation Drawer, and then click Applications.

  3. Click Add.

    The Add Application page appears.

  4. Click Confidential Application.

  5. In the App Details pane of the Add Confidential Application window, specify a name for the application in the Name field.

  6. Click Next to proceed.

    A confirmation message indicates that the application has been added in a deactivated state.

  7. You will be prompted to configure authorization information for your application now. Do not configure now, instead, click Skip for later.

  8. Click Next.

  9. Click Configure this application as a resource server now, and configure these fields as follows:

    • Access Token Expiration. Leave at the default value.

    • Refresh Token Expiration. Leave at the default value.

    • Primary Audience. Specify the Oracle Engagement Cloud instance that is used to perform resource invocation.

    • Add (Allowed Scopes). Click Add next to Allowed Scopes:

      1. In the Add Scope dialog enter the following for Scope:

        / 
      2. Select Requires consent.

      3. Click Add.

  10. Click Next.

  11. Skip the Web Tier Policy prompt by clicking Skip for later.

  12. Click Next.

  13. Click Finish.

Create an Application for OAuth Implicit Flow

This topic describes how to create a mobile application for OAuth implicit flow in Oracle Identity Cloud Service.

Note: You must create a confidential resource application for Oracle Engagement Cloud in Oracle Identity Cloud Service before following the instructions in this topic. For more information, refer to the Create an Oracle Engagement Cloud Resource Application topic

For detailed instructions on creating mobile applications in Oracle Identity Cloud Service, refer to the Adding a Mobile Application link in the Related Topics.

To create a mobile application for OAuth implicit flow in Oracle Identity Cloud Service:

  1. Sign in to your Oracle Identity Cloud Service administration console.

  2. Expand the Navigation Drawer, and then click Applications.

  3. Click Add.

    The Add Application page appears.

  4. Click Mobile Application.

  5. In the App Details pane of the Add Mobile Application window, specify a name for the application in the Name field.

  6. Click Next to proceed.

    A message confirms that the application has been added in a deactivated state.

  7. In the Authorization and Accessing APIs from Other Application sections of the Add Mobile Application page, configure the these fields as follows:

    • Authorization Code. Select this check box.

    • Implicit. Select this check box.

    • Allow non-HTTPS URLs. Select this check box, and specify the redirect URL.

      Note: If the Oracle JET reference implementation is used, this application already has a callback resource that can be used. For example, the redirect URL would be similar to the following: http://OracleJETApplicationHost:port/?root=callback . If the Oracle JET application is not deployed or developed yet, then this field can be left empty temporarily. Once the application is up and running this setting should be updated before using the Oracle JET application for accessing Oracle Engagement Cloud resources.
  8. In the Allowed Scopes section, click Add.

  9. Select the Oracle Engagement Cloud instance.

  10. Click Next.

  11. Click Finish.

Create an Application for JSON Web Token Assertion

This topic describes how to create a confidential application for JSON Web Token Assertion in Oracle Identity Cloud Service.

Note: You must create a confidential resource application for Oracle Engagement Cloud, and create a mobile application for OAuth implicit flow in Oracle Identity Cloud Service before following the instructions in this topic. For more information, refer to the Create an Oracle Engagement Cloud Resource Application and Create an Application for OAuth Implicit Flow topics.

For detailed instructions on creating confidential applications in Oracle Identity Cloud Service, refer to the in the Adding a Confidential Application link in the Related Topics.

To create a confidential application for JSON Web Token Assertion in Oracle Identity Cloud Service:

  1. Sign in to your Oracle Identity Cloud Service administration console.

  2. Expand the Navigation Drawer, and then click Applications.

  3. Click Add.

    The Add Application page appears.

  4. Click Confidential Application.

  5. In the App Details pane of the Add Confidential Application window, specify a name for the application in the Name field.

  6. Click Next to proceed.

    A confirmation message indicates that the application has been added in a deactivated state.

  7. Click Configure this application as a client now, and configure the these fields as follows:

    • Client Credentials. Select this option.

    • JWT Assertion. Select this option.

    • In the Client Type section follow these steps:

      1. Click Trusted.

      2. Click Import.

      3. Specify the public certificate file that you want to import for use with Oracle JET.

    • In the Allowed Scopes section, follow these steps: .

      1. click Add.

      2. Select the Oracle Engagement Cloud instance.

  8. Click Next.

  9. Click Finish.

Set Up the JSON Web Token Application

Overview of JSON Web Token Applications

OAuth JSON web tokens can be used to exchange Oracle Identity Cloud Service access tokens. This is a standalone JSON web tokens Java application that returns JSON web tokens which can be used by the Oracle JET application to fetch access token from Oracle Identity Cloud Service. This is a Java application that runs inside a jetty container exposing a REST API service. This REST API service is deployed on port 8080 and supports the following assertion models:

  • User Assertion. In this model a non-null JSON web token is returned for user JSON web token and a null value for client (Oracle JET application) JSON web tokens token.

  • Client Assertion. In this model , a non-null JSON web token is returned for both user and client JSON web tokens.

Prerequisites for Running JSON Web Token Applications

Before downloading and running the JSON web token application, Maven and Java Development Kit must be installed on the computer on which the application is deployed. The application was developed using the following versions:

  • Maven 3.5.4

  • Java Development Kit 1.8.0_221

Note: After installing the prerequisite software, they must be added to the path.

Compile and Start the JSON Web Token Application

This topic describes how to compile and start the JSON web token application.

After downloading the JSON web token application software run the following commands on the command line, in the stated order:

  1. mvn clean

    This command cleans the project.

  2. mvn install

    This command compiles the code and creates a jar file in the target directory.

  3. java -jar target/JWTAssertionTokens-1.0.jar

    This command starts the jetty server to run on port 8080 with the application deployed.

Test the JSON Web Token Application

This topic describes how to test your JSON web token application.

Once your JSON web token application is running you should verify that it is deployed properly and is in working order by testing some URLs.

Note: Alternatively, you can verify the URL using Postman, a free third-party software desktop tool, or any other API testing tool of your choice.
Verify the Output for Client Assertion

Type the following URL into a browser:

http://hostname:8080/jwttokens?userId=username@oracle.com&clientId=ee7323169a7743fa929d94a117b131bb&assertionType=clientAssertion

Output similar to the following should be returned for the previously mentioned URL:

{
  "userJWTToken" : "eyJ4NXQjUzI1NiI6InBMQzNBWGE3b1oxVEpJU2JjcVNvX1BxTVM3cDRsV0VBLVBCZGhydVBHZFkiLCJ4NXQiOiIwRDVLV0pSVVl3NUM5UThvV3BmYXo4VHJRSkkiLCJraWQiOiJ0cnVzdGVkLWNsaWVudC1jZXJ0IiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiJuaWtpdGEuYS5hZ3Jhd2FsQG9yYWNsZS5jb20iLCJhdWQiOiJodHRwczpcL1wvaWRlbnRpdHkub3JhY2xlY2xvdWQuY29tXC8iLCJuYmYiOjE1Mzg0Mzg3MTQsInVzZXJfbG9naW5pZCI6Im5pa2l0YS5hLmFncmF3YWxAb3JhY2xlLmNvbSIsImlzcyI6ImVlNzMyMzE2OWE3NzQzZmE5MjlkOTRhMTE3YjEzMWJiIiwiZXhwIjoxNTM4Nzk4NzE0LCJpYXQiOjE1Mzg0Mzg3MTQsImp0aSI6IjI3YjU4MDkwLWE0NmMtNDFhNi05YTJiLTczOTI2MTdmNTA3YyJ9.atftw96_O2qsjOLYRxI0LxC6WGX0QP4qfDtH9UBA__8d4k_tsB-pSvA_nNC0nH7zgWPel2HQEbTKu7N8BqxnfhbsH8BStFgXq8ctJHT90M-HvOt0MZkLqb0c6HNQkVMgrL16by7Xxd35rHEjVXe6HnAKQY3b3vmtXgxJRpTCYBhTyOMFmjda4E7xuY8Z2m9H3bkXFGTRbqfWbrgH-_4VNJK4gWuURpm8a8JhPJtXzH3CifUEP26Wd5AIJFlUlOZs8thQEQgkmas-2WSIZCy4rHtnRjSu3H56GFJ6Fh9Ho1vlPFKznByuFYL_58d1IMI7pW8DJfDprNzxxkRE7xM4pA",
  "clientJWTToken" : "eyJ4NXQjUzI1NiI6InBMQzNBWGE3b1oxVEpJU2JjcVNvX1BxTVM3cDRsV0VBLVBCZGhydVBHZFkiLCJ4NXQiOiIwRDVLV0pSVVl3NUM5UThvV3BmYXo4VHJRSkkiLCJraWQiOiJ0cnVzdGVkLWNsaWVudC1jZXJ0IiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiJlZTczMjMxNjlhNzc0M2ZhOTI5ZDk0YTExN2IxMzFiYiIsImF1ZCI6Imh0dHBzOlwvXC9pZGVudGl0eS5vcmFjbGVjbG91ZC5jb21cLyIsIm5iZiI6MTUzODQzODcxNCwidXNlcl9sb2dpbmlkIjoiZWU3MzIzMTY5YTc3NDNmYTkyOWQ5NGExMTdiMTMxYmIiLCJpc3MiOiJlZTczMjMxNjlhNzc0M2ZhOTI5ZDk0YTExN2IxMzFiYiIsImV4cCI6MTUzODc5ODcxNCwiaWF0IjoxNTM4NDM4NzE0LCJqdGkiOiI0NjE4OTc5My01Yjc3LTQ3MTgtOWM2MC04ZTRhNWI4YWFjNDQifQ.TWiOKfzQRKBbG_6-18RdS-PdqM46ihSi-rHD3ZBJ4jz5p3e1U2AsqS5jeZrqM6SUw5O_Qrgv3DH-Ii9RGvFynrP9qEiOl5_UrHjLm6IyTS_DV5AEJ9hEXVmN3H1oMnpgmCqLKPJJfKmpLIASM_QYXywucJRB8RhjZy-nPD8UKWjuPNmctFmgLsjl2jRv8rRtU9g48A-Fp55QGRlguRziFhR3YGD2FEPiDjkfw5Cq3gVe5chAhsbxytatKiB5xitwCt4BQRFpTUkfLRUwlXMLP2a7RGHUyfLG9ErgJEB3O6064d_sHo1o5KlxOtDBV_HBvr3smxZwuzxxY287dpZ3Bg"
}
Verify the Output for User Assertion

Type the following URL into a browser:

http://hostname:8080/jwttokens?userId=username@oracle.com&clientId=ee7323169a7743fa929d94a117b131bb&assertionType=userAssertion

Output similar to the following should be returned for the previously mentioned URL:

{
  "userJWTToken" : "eyJ4NXQjUzI1NiI6InBMQzNBWGE3b1oxVEpJU2JjcVNvX1BxTVM3cDRsV0VBLVBCZGhydVBHZFkiLCJ4NXQiOiIwRDVLV0pSVVl3NUM5UThvV3BmYXo4VHJRSkkiLCJraWQiOiJ0cnVzdGVkLWNsaWVudC1jZXJ0IiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiJuaWtpdGEuYS5hZ3Jhd2FsQG9yYWNsZS5jb20iLCJhdWQiOiJodHRwczpcL1wvaWRlbnRpdHkub3JhY2xlY2xvdWQuY29tXC8iLCJuYmYiOjE1Mzg0MzkwNDIsInVzZXJfbG9naW5pZCI6Im5pa2l0YS5hLmFncmF3YWxAb3JhY2xlLmNvbSIsImlzcyI6ImVlNzMyMzE2OWE3NzQzZmE5MjlkOTRhMTE3YjEzMWJiIiwiZXhwIjoxNTM4Nzk5MDQyLCJpYXQiOjE1Mzg0MzkwNDIsImp0aSI6IjdlMzY0Zjk4LWUwMjctNDVmNy1hMThjLWJmNmI5ZTZjNTMxMSJ9.AMA8BqGnqGHMKSTxev19A2gxlm1UPiZF2ER_o37IfqERm8CvPahqKw2dDfSE--6PAW0O8wG_I0Bh4heSh2QIf80dz-F_KMnCZcsSH2uhu7rc0_i5-NYnzV_wKgjjIWazVOxSZoU_QJq-4mhCY2cNMkA8YYScNIFzggCFd9ZSrAf1z18Uy6cFeR9-Z04p2rsCU89SXkAOnN4lHDDD3njWOWmJLFImG8udms2aNA8e2wUFdS_VI3QXkGhFYAz19BDq16lKKyqOmokocHdJapQdy1tTvNGorBDH5KdvkPRYQ_bSxqs7g7paf66_zWPWfa6q8pTWbJ7yd2qcLcJzQu6bIA",
  "clientJWTToken" : null
}

Referenced Third-Party Libraries

This topic lists the reference third-party libraries.

The following table lists the referenced third-party libraries for JSON web tokens.

JAR File Name Description

com.nimbusds:nimbus-jose-jwt:jar version 6.7

Java library for Javascript Object Signing and Encryption (JOSE) and JSON Web Tokens (JWT).

commons-codec:commons-codec:jar version 1.11

org.apache.commons:commons-lang3:jar version 3.9

Simple encoder and decoders for various formats such as Base64 and Hexadecimal.

Apache Commons Lang, a package of Java utility classes for the classes that are in the java.lang hierarchy.

org.junit.jupiter:junit-jupiter-engine.jar version 5.4.2

For unit tests.

com.fasterxml.jackson.core:jackson-databind.jar version 2.9.9

Jackson is a high-performance JSON processor (parser, generator).

org.eclipse.jetty:apache-jsp:jar:9.4.15.v20190215 org.eclipse.jetty:jetty-annotations:jar:9.4.15.v20190215 org.eclipse.jetty:jetty-continuation:jar:9.4.15.v20190215 org.eclipse.jetty:jetty-http:jar:9.4.15.v20190215 org.eclipse.jetty:jetty-io:jar:9.4.15.v20190215 org.eclipse.jetty:jetty-jndi:jar:9.4.15.v20190215 org.eclipse.jetty:jetty-plus:jar:9.4.15.v20190215 org.eclipse.jetty:jetty-security:jar:9.4.15.v20190215 org.eclipse.jetty:jetty-server:jar:9.4.15.v20190215 org.eclipse.jetty:jetty-servlet:jar:9.4.15.v20190215 org.eclipse.jetty:jetty-webapp:jar:9.4.15.v20190215 org.eclipse.jetty:jetty-xml:jar:9.4.15.v20190215 org.eclipse.jetty:jetty-util:jar:9.4.15.v20190215 org.eclipse.jetty.toolchain:jetty-schemas:jar:3.1

All versions 9.4.15.v20190215

Jetty-embedded server to serve REST endpoint.

org.glassfish.jersey.core - jersey-server org.glassfish.jersey.inject - jersey-hk2 org.glassfish.jersey.containers - jersey-container-servlet-core org.glassfish.jersey.containers - jersey-container-jetty-http org.glassfish.jersey.media - jersey-media-moxy

All versions 2.28

Open source framework for developing RESTful Web Services in Java.

Run the Oracle JET Application

This topic describes how to run the Oracle JET application.

Once configured, your Oracle JET application it is ready for use. We can now build and deploy the Oracle JET application.

To build and deploy the Oracle JET application, run these command in the stated order:

  1. npm install

    This command installs all npm packages that are necessary for running the Oracle JET application. Run this command whenever there are changes to the packages used by the application

  2. ojet build

    This command builds the Oracle JET application

  3. ojet serve

    This command deploys the Oracle JET application on port 8000.

    Note: You can deploy your Oracle JET application to a different port by using the command with the following parameter: --server-port=<port#>. Where <port#> is the port number.

Configure the Oracle JET Application

This topic describes how to configure your Oracle JET application.

After downloading the Oracle JET application, you must configure the javascript file to include site-specific values. The javascript file can be found in the installed directory, at the following path:

../src/js/config/siteConfig.js

The configuration file is seeded with default values that represent the authentication scheme chosen to connect to Oracle Engagement Cloud resources, application endpoints, and timeout values. The following table provides an overview of the configuration parameters that require modifications.

Property Name Description

adminUserForRegn

The user name used by self-signed user registration in conjunction with adminUserPswdForRegn, the password to sign in to Oracle Engagement Cloud.

For example:

firstname.lastname@yourdomain.com

Note: This property is used exclusively for self-service registration.

adminUserPswdForRegn

The password used by self-signed user registration in conjunction with adminUserForRegn, for the user name to sign in to Oracle Engagement Cloud.

Note: This property is used exclusively for self-service registration.

faInstance

The URL for Oracle Engagement Cloud.

loginType

A string that represents how your Oracle JET application connects to Oracle Engagement Cloud. These are possible values:

  • Basic When the user attempts to login, the user name and password are required.

  • Implicit Uses the OAuth Implicit grant type flow. This method is browser-based, where a user is redirected to the identity provider to sign in. With this method, the user consents to allowing Oracle Engagement Cloud to access resources on their behalf.

  • UserAssertion Uses JSON web tokens provided by a jetty-based server application. The JSON web tokens are used as user information. The client ID and client secret are used to represent the application.

  • ClientAssertion - Uses JSON web tokens provided by a jetty-based server application. JSON web tokens are used for the user and client.

authzEndpoint

The URL for the Oracle Identity Cloud Service authorize endpoint.

For example:

https://IDCSservice/oauth2/v1/authorize

Note: This property is used only when loginType is set to Implicit.

idcsTokenEndpoint

The URL for the Oracle Identity Cloud Service token endpoint.

For example:

https://IDCSservice/oauth2/v1/token/

redirectUri

The URL for the Oracle JET application callback endpoint.

For example:

http://OJETApplication:portnumber/?root=callback

clientId

The string representing the Oracle Identity Cloud Service application ID.

For example:

8dab63f5fc204a3582c80fc76ccba1e3

scope

The URL representing the Oracle Engagement Cloud instance.

assertionClientId

The string representing the Oracle Identity Cloud Service application ID of a confidential application.

For example:

he7323169a7743fa929d94a117b138bb

clientSecret

The string representing the Oracle Identity Cloud Service application client secret.

For example:

64f25f01-b7d7-4a50-9b30-9ea9c8967c8b

jwtToken

The URL for the Oracle JET application endpoint.

For example:

http://JWTTokensAppHost:portnumber/jwttokens

Note: This property can be left blank when loginType is set to Implicit or Basic.

serviceRequestResource

The path for service request resources.

For example:

/crmRestApi/resources/11.13.17.11/serviceRequests/

useApiGatewayService

If autonomous API Gateway service is used then set this property to True, if not, set it to False.

Possible values are True or False.

apiGatewayEndpoint

The URL endpoint for the autonomous API Gateway service.

For example:

http://APIGatewayServiceHost:8001

Implement Chat Inlay

Configure Chat Inlay

This topic describes how to configure the Chat inlay for Digital Customer Service.

Chat inlays are syndicated widgets that you can deploy on any web page. The Chat inlay is a chat session that occurs between a chat agent and an end user. It can be initiated from a chat offering such as a Conditional Chat link or a Proactive Chat as well as being simply placed on a page.

For additional information about Chat inlay, refer to the Related Topics. The cross-references in the Related Topics refer to Oracle Service Cloud documentation. Clicking on the links will redirect you to the Oracle Service Cloud Customer Portal.

Note: In order to use Chat inlays in Oracle Engagement Cloud, the following profile options must be enabled: SVC_CHAT_INLAYS_ACCESS_ENABLED, SVC_CHAT_WAIT_TIME_ENABLED.

To configure the Chat inlay for Digital Customer Service:

  1. Add markup to the page on which the Chat Inlay will reside. An example of the markup is as follows:

    <inlay-oracle-chat-embedded id="chatInlay" class="inlay"
    	site-url="your_engagement_cloud_deployment.yourcompanydomain.com"
    	site-type="ec"></inlay-oracle-chat-embedded>
    Note: For the Chat inlay to work with Oracle Engagement Cloud, you must set the site-type to "ec" .
  2. Add a script tag on the page that you configured in step 1. Use the following script tag as an model:

    <script id="oit-loader"
             src="http://static-XX.custhelp.com/s/oit/latest/common/v0/libs/oit/loader.js" async></script>

    Replace the XX in the script tag with data center location code that is geographically closest to you.

    Data Center Location Data Center Location Code

    Chicago

    mw

    Washington DC

    va

    Phoenix

    px

    Toronto

    tr

    Calgary

    cg

    Brazil

    br

    Amsterdam

    am

    Germany

    de

    London

    gb

    Japan

    jp

    Australia

    sy

    Singapore

    sg

  3. Configure Oracle Engagement Cloud profile options, by following these steps:

    1. Login to Oracle Engagement Cloud as an administrator.

    2. In the Setup and Maintenance work area, search for the following task:

      • Manage Applications Core Administrator Profile Values

    3. Click the Manage Applications Core Administrator Profile Values task.

    4. In the Profile Display Name text box, enter the following string:

      CORS

    5. Click Search.

    6. Click the CORS_ACCESS_CONTROL_ALLOW_CREDENTIALS profile option.

    7. Select True from the menu in the the Profile Value column.

    8. Click Save.

    9. Click the CORS_ACCESS_CONTROL_ALLOW_HEADERS profile option.

    10. In the Profile Value field, add the following value at the beginning of the string:

      Authorization,

      Note: You must include the comma and space before the subsequent value.
    11. Click Save.

    12. In the Profile Display Name text box, enter the following string:

      Allowed Domains

    13. Click Search.

    14. Click the ORACLE.ADF.VIEW.ALLOWED_ORIGINS profile option.

    15. Click the + icon (New).

    16. Select Site from the Profile Level menu.

    17. In the Profile Value field, enter the fully qualified domain name of the referring web page, from which the inlay will be called.

      For example if you place the inlay code onto www.oracle.com, you will want to enter that domain in the Profile Value field. Then, you must add any other additional domains that are also using inlays. Oracle does not recommend entering a wildcard in this field, because it allows the potential for a third party to use your chat services on their web page.

    18. Click Save and Close.