How to configure OpenText Intelligent Viewing in D2-SmartView?


I'm trying to use the "OpenText Intelligent Viewing" widget to view the files in D2-SmartView.
When I click a document, the blue circle remains rotating forever in the center of the white screen and I don't see any errors in the logs.

First of all, is it necessary to login to D2-Smartview via OTDS user or SSO?.
In the "OpenText Viewing Details" form of D2-Config, what is the URL of the Highlight service? I mean, Markup runs on port 3352 by default, Publication on 3356 and Viewer on 3358, but there is no Highlight service in the "C:\Program Files\OpenText\Intelligent Viewing" folder.
Furthermore, which "OTDS Client ID" should be used? In the D2 Admin Guide it says "Note: You can find information about the next two settings in the .env and env.conf files for each respective service", so it follows that any of the OAuth Clients created by Intelligent Viewing: iv-metis, iv_plubication, iv-publisher or iv_search, but later OTDS requires scopes that don't have and I haven't seen documented anywhere: create_publications view_publications view_any_publication delete_publications write_any_markups read_any_markups.

Do I have to do any extra configuration in the OTDS, D2 or Intelligent Viewing?

Thanks for your time


  • jfernandezf
    edited June 12, 2023 #2

    I've made some progress and now it finish with a red circle.

    It seems that when querying the license it returns empty.

    In otds.log:

    2023-06-12 19:36:49.750|DEBUG |[http-nio-8080-exec-1]|OTDSExceptionMapper||Error from REST API for [POST /otdsws/rest/licensemanagement/licenses/usage/cn%3DViewing%C2%B92c3b62ee-de4c-4f8c-b41c-40fb7b539596%2Cou%3DLicenses%2Cdc%3Didentity%2Cdc%3Dopentext%2Cdc%3Dnet]. HTTP status 204 null

    Dump of d2_brava_i_viewer (OTDS and Intelligent Viewer in the same server):
    brava_pub_service_url : http://10.0.0.****:3356
    brava_markup_service_url : http://10.0.0.****:3352
    brava_highlight_service_url : http://10.0.0.****:3357
    brava_viewer_service_url : http://10.0.0.****:3358
    brava_pub_cache_size : 500
    brava_pub_cache_size_thresh : 90
    brava_pub_cache_del_limit : 25
    otds_service_url : http://10.0.0.****:8080
    otds_client_id : iv-publisher → I tried with iv-metis and a custom OAuth with required scopes
    otds_client_secret : k1V4T[…]53aW

  • Kyle Pettit
    Kyle Pettit E Community Moderator

    You can use iv-metis, or create your own. IV-metis is/will be deprecated itself. I too had used iv-metis in my earlier test vm. Here is a pic of my setup, but I aim to create my own user. But it should work if iv-metis is there in the version you are working on.

    It appears you found the ports ok. My setup is below.

    Do you have redirect setup in otds oauth?
    Can you access the the IV sdk page http://<server>:3353/webapp

    Once logged into D2, and OTDS is configured, it should have sso to IV. Of course, you need to be logged into SV using an OTDS user. I am guessing that is not the case w your issue.

    The OTDS error insinuates licensing issue. if you haven't yet, try toggle otds, and dctm and d2.

    Under License Keys in OTDS, you should have a key there for intelligent viewing. confirm expiry date and that there are licenses available.

    If none of this works, please submit a support ticket - maybe you already did that.

    Kyle Pettit
    Documentum D2 Product manager

  • jfernandezf
    edited June 16, 2023 #4

    Thank you, Kyle.

    I am using the trial license that comes with IV, valid until November 1, 2023, which only has two seats for FULLTIME_USERS_REGULAR, I hope that is not a limitation

    I understand that SSO is required. To do SSO, in I have:****:8080/otdsws/login?response_type=token&client_id=D2_SmartView&client_secret=****

    Is there anything else that needs to be done for IV to use SSO?

  • Kyle Pettit
    Kyle Pettit E Community Moderator

    Yep, SSO is required, regardless if using free/paid account. Does it work if the user is FULLTIME_USERS_BASIC (free account)

    You can see counter/usage under License Keys

    my is similar. looks like below (I need to change it from iv-metis… I just haven't yet)

    Does it work with the free license designation (FULLTIME_USERS_BASIC)? I am pretty sure, if no license is configured too, it defaults to free account. Also, Atleast in the test machine I am looking at, when I assign the license, and come back after allocating, it clears the UI as if I didn't assign it. I believe it still has it allocated correctly, and that is a bug in OTDS.

    You might search .env files under intelligent viewing install directory to see if they look right.


    Kyle Pettit
    Documentum D2 Product manager

  • Thanks for your time, Kyle.

    The POST request that returns HTTP 204 as an error in otds.log:

    POST: /otdsws/rest/licensemanagement/licenses/usage/cn%3DViewing%C2%B92c3b62ee-de4c-4f8c-b41c-40fb7b539596%2Cou%3DLicenses%2Cdc%3Didentity%2Cdc%3Dopentext%2Cdc%3Dnet

    It doesn't matter if you put the partition in the user name (@...) or not.

    (With a non-existent user it returns HTTP 500)

    I don't know if it's a configuration error or the REST web service (OTDS 23.2).

  • Kyle Pettit
    Kyle Pettit E Community Moderator

    Sorry, I am not sure. You might consider doing a support case.

    Kyle Pettit
    Documentum D2 Product manager

  • If you ever get the solution, please, share with us. I have the same issue but since I'm only playing around with OTIV, I don;t really have time to investigate it as I'm pulled on other stuff…

    Thanks in advance

  • Kyle Pettit
    Kyle Pettit E Community Moderator

    did some more digging… hoping this helps. Its just a dump of a peers notes. I will paste them here in hopes something in it useful or for others in case it helps….

    BTW, its not apparent… but this forum ( is more focused on development, not install/admin stuff. You might get better responses in the forums. I can't move this thread there, as I don't have permissions to do so.

    Install IV

    login to metis web application or The demo web application is available at:

    config OTDS

    login to OTDS URl generated at the time of deployment and configure otds and D2-Smartview and updating rest-api properties file and in respective places

    Add  attributes  in System config in otds configuration.   none and  

    directory.auth.EnforceSSL   false 

    Allocate license to user (basic or regular license to user)

    Add permissions to iv metis client or any oauth_client if we created our own oauth client.(by default create_publications and view_publications will present).

    view_any_publication, delete_any_publication, delete_publications in both permissible and default scope.

    Note: If you are using OTIV 23.1.0 and above, you need to add two additional scopes (i.e., write_any_markups, read_any_markups) along with the above ones.

    All proper scopes like "create_publications delete_publications delete_any_publication view_publications view_any_publication" etc. needs to be added to the OTDS client to get access for CRUD operations on publications.

    Add Redirect URI  in iv metis client, eg http://.../D2-Smartview

    Also verifiy below user is present by default in DA or else create the user in DA.
    iv-publisher, iv-publisher@OAuthClients

    configure some of the steps in D2-Config with IV viewer.

    1. A new OpenTextIntelligentViewerWidget is created to configure the user context level viewer configuration.
    2. A new intelligent viewing services page is created for IV services and publication cleanUp job configuration.
    3. This viewer is also used based on it's widget availability in user's context.
    4. Landing Page must be configured to use this OTIV widget in smartview.
    5. The viewer is supported in In-place viewing, full viewing and mini viewing modes in Smartview like other CSR/Brava! Enterprise viewers.

    Configure SV landing page:

    After configuring everything, deploy latest D2 build in VM, updated the file in D2-Smartview- classes folder for IV and OTDS integartion with D2-Smartview.

    Other extra:

    Let's say we want to disable the "publish for printing" feature for users as shown below:

    To do this, I need to remove the below component from the json and upload the json in IViewerWidget and refresh d2-Config cache.

     Let's say we have to remove the "Publish to PDF" option on the toolbar, we can remove the below component,

    Similarly we can do for other components shown in above screenshot for "publish to tiff", "Zoom-in", "zoom-out", "fit-extent", "fit-width", "Toggle Pan mode", "Download Document", "toggle zoom rectabgle", "save button", "Rotate button" etc..

    you can also disable the features like below by removing these components which are self explanatory:

    Let's say, we want to disable few options in the left panel shown below:

    We can do that by removing the individual component in the leftTabContainer in json as shown below:


    Licensing for user are controlled using OTDS based license and can be applied to user using OTDS admin.

    License categories:

    INTELLIGENT_VIEWING  - base license container, all the below licenses will be children of this container.

     INTELLIGENT_VIEWING.FULLTIME_USERS_BASIC – free OpenText Viewing Services license; this currently enables the viewing all but CAD documents, enables print, enables search, etc;

    INTELLIGENT_VIEWING.FULLTIME_USERS_REGULAR – full featured Intelligent Viewing license; this enables all the same features as the FULLTIME_USERS_BASIC plus markup (will be broken out into advanced markup like redaction when we pull basic annotations into the free license) along with publishing and the more advanced viewer features like text comparison client. 


    Kyle Pettit
    Documentum D2 Product manager

  • Looks quite good Kyle, I'll give it a shot next week (Hopefully, I should have a few hours to spare….)