Agent Desktop

Get Involved. Join the Conversation.

Topic

    mikewaldron
    Is Screen Pop Supported or Supportable In BUI?Answered
    Topic posted December 26, 2018 by mikewaldron Red Ribbon: 250+ Points, tagged Browser UI 
    188 Views, 10 Comments
    Title:
    Is Screen Pop Supported or Supportable In BUI?
    Summary:
    Is Screen Pop Supported or Support-able In BUI?
    Content:

    I have a client who's running the .NET Agent Console, and is thinking about moving to Agent Browser UI (BUI). However, they're also using screen pop, and they may not be able to make the move unless BUI supports screen pop.

    Experimentation on a test site has shown that screen pop doesn't work in BUI. It's possible I'm overlooking some configuration, but it occurs to me that listening for and responding to requests on a localhost port would be kind of a strange thing for Javascript-in-the-browser to do. I've spent some time searching for ways to do this and come up with nothing, so it's not looking good at the moment. If this isn't possible with browser Javascript, that would pretty well put the kibosh on screen pop for out-of-the-box BUI and a custom browser extension.

    Unfortunately, Javascript and I are still getting to know each other and I am no wizard in this area. If anyone knows something I don't around screen pop and BUI, please clue me in.

    Best Comment

    Sebastiaan Draaisma

    Hi Luuk.

    Opening records or reports can be done as you described (bookmark URL).
    But how would you pass a filter value? This would then require a customization right?

    I have for exampe an IVR integration through screenpop where the phone numer is passed as a url parameter into a filter value.
    http://localhost:1432/screenpop?t=report&id=100040&contacts.ph_office= + CONTACTPHONE

    Comment

     

    • Sebastiaan Draaisma

      Hi Mike.

      While it is not mentioned here: What features are supported by the Browser User Interface?

      It is not yet supported (I have asked Oracle to update the list to include screenpop).
      Unfortunately I'm no wizzard myself in js. I did find the following (old) post

      BUI screen pop or bookmark url to pass filter parameters for a report

      You can try to use JS (window.location.hash) and send param via URL hash. Here you go an example passing contact id.

      ORACLE_SERVICE_CLOUD.extension_loader.load("CUSTOM_APP_ID" , "1")
      .then(function(extensionProvider)
      {
      if (window.location.hash.substring(1) != null)
      {
      extensionProvider.registerWorkspaceExtension(function(WorkspaceRecord)
      {
      var ContactId = window.location.hash.substring(1);
       
      if (ContactId == "000000")
      {
      WorkspaceRecord.createWorkspaceRecord('Contact',callbackFunction);
      }
      else
      {
      WorkspaceRecord.editWorkspaceRecord('Contact',ContactId,callbackFunction); 
      }
      }
      );
      }
      }
      );
      function callbackFunction(CloseHandler)
      {
      // Perform some operation after opening the workspace record.
      }
      • mikewaldron

        Thank you, Sebastiaan! Like you, I noticed the screenpop wasn't included in answer 8173. Hopefully someone sees fit to include it in the future.

    • Luuk

      It IS supported.

      You can open an incident by using https://<<interface>>.custhelp.com/AgentWeb/#/Incident/<<incidentid>>

      Change <<interface>> to your interfacename and <<incident>> to the incidentid you would like to open.

      This also works for contacts.

      • mikewaldron

        That works...if I send the GET request from the same browser that's running BUI. If I send it from e.g. Postman, nothing happens. This makes sense to me because the request is going to the server, and with a bunch of BUIs running at the same time on different machines/browsers...which one should pop the Incident?

        This doesn't seem very useful. frown

        • Sebastiaan Draaisma

          This is why I do not consider the bookmark url (which is great for otherthings) to be the same as screenpop. The only way to have a semi working function would be when allowed to pass filter values and creating new objects through URL parameters but this would still open a new tab in your browser. Maybe a custom (Oracle) browser addin for say FireFox would allow some form of identification.

    • Sebastiaan Draaisma

      Hi Luuk.

      Opening records or reports can be done as you described (bookmark URL).
      But how would you pass a filter value? This would then require a customization right?

      I have for exampe an IVR integration through screenpop where the phone numer is passed as a url parameter into a filter value.
      http://localhost:1432/screenpop?t=report&id=100040&contacts.ph_office= + CONTACTPHONE

      • Luuk

        Filterering is indeed not yet supported.

        Only the basic screenpop functionality is in there.

    • Sebastiaan Draaisma

      Yeah, than it's maybe how you define screenpop :-)
      I personally do not concider the bookmark url to be the same as screenpop but I guess it will work for some basic operations.

    • mikewaldron

      Bummer. My client's using screen pop to open a report, and they do need the filtering capability. It's interesting to me that the screenpop URL for BUI goes to the server rather than localhost. The native .NET console can function as a server whereas I don't believe that a browser app can...but assuming I'm correct, this also means I can't build a BUI extension to do this for them. Time to agitate for expansion of this feature, I suppose.

      Thank you, gentlemen.

    • Kenneth Salmon

      We were able to get around this with the way we developed our screen pop. We create an incident for the agent instead of opening a report filtered to the phone number. Our phone system calls a custom PHP script hosted in OSC with parameters, the script grabs the parameters (phone #) and finds the contact. A new incident is created, assigned to this contact, and the bookmark URL for BUI is called with the incident ID that was created. We got really granular with our phone # to contact lookup, but this will be different with each organization. We check how many contacts exist with the phone #, and if more than 1 we grab the contact with the most incidents associated. This isn't a 100% accurate solution, but it works almost all the time.