Digital Assistant and Mobile

Get Involved. Join the Conversation.

Comments

  • Frank Nimphius

    I think I answered this question on the Oracle Mail list. So I leave it with that.

     

    Frank

  • Ameur Baccoucha

    Hi duha,

    to test your bot from another user you should make him in your App developer lis in the facbook developer platform,
    but if you want to upgrade your app to production you can find  aresponse here https://cloudcustomerconnect.oracle.com/posts/fb13beae5e

    wish this help 

  • Sharath Chandra Gavini

    Hi Duha,
    For you to be able to test your bot from facebook, you will have to: 
       1. Make your facebook app live (available to the public). For publishing the app, you will have to submit it to Facebook for review. For information on publishing a facebook app visit here.

       2. Add your personal account to the group of testers/developers of your facebook app.

    Best regards,
    Sharath Chandra Gavini,
     

  • Ravishankar Chandran

    "Is it the link which you obtained when the webview opened in the seperate tab?" - Yes Rohit..

     

    Kindly find the reply to point#1 below:

      calendarWidgetForStartDate:
        component: "System.Webview"
        properties:
          service: "datewidget"
          sourceVariableList: ""
          variable: "calendarResponse"
          prompt: "Calendar launches in browser"
          linkLabel: "Open Calendar"
          cancelLabel: "Cancel"      
        transitions:
          next: "checkStartDateSuccess"
          #navigate back to the beginning
          actions:
            cancel: "askForStartDate"
            textReceived: "askForStartDate"

     

    Reply to point#2 below:

    No, I`m not in a public domain. 

  • Rohit Dhamija

    Hi Ravi,

    I am sorry, but I could not understand what this link is pointing to? Is it the link which you obtained when the webview opened in the seperate tab?

    1. can you please share the BotML code section where you have used System.WebView component?

    2. Is your instance on public network?

    Rohit

  • Ravishankar Chandran

    Thank you Rohit. tgz upload worked fine with the details you provided above.

    But, on clicking open calender menu item(as in the above screenshot) from ODA, its opening the browser but the web application is not visible. "Page cannot be found" error is getting displayed. 

    Note:I`m in Oracle corporate VPN network.

    Link below:

    http://bots-connectors:8000/connectors/v1/chatbot-tenant/webviews/BAC9D3A4-99A3-4BC4-AEB3-447527BDAC05/index.html?appInstanceId=510e66af-8db1-43e8-8eef-6c43a0a0808d

  • Frank Nimphius

    Hi,

    QnA answers are rendered as cards, they are not stores as cards. So there is no such thing then a direct access to answers. I once wrote a sample that actually would do what you want. I never released the sample because its hard to ensure that the correct results are shown . s you will see, this only works because pressing a menu item actually sets a text message that then is read by the QnA component. So this does not bypass the QnA search. 

    context:
      variables:
        iResult: "nlpresult"
        userMessage: "string"
        qnaMinimumMatch: "string"

    states:

      menu:
        component: "System.CommonResponse"
        properties:
          processUserMessage: true
          keepTurn: false
          variable: 
          nlpResultVariable:       
          maxPrompts: 
          autoNumberPostbackActions:
          translate:
          metadata: 
            responseItems:         
            - type: "text"  
              text: "What do you want to do?"  

             #when button is pressed, send the word "card" as a user message. "card here is a synonym for "credit card" related questions
              actions: 
              - label: "Browse QnA"
                type: "postback"
                keyword: "qna, browse"
                payload: 
                  action: "qna"  
                  variables: 
                    userMessage: "card" 
                    qnaMinimumMatch: "0%"
              - label: "Ask a question"
                type: "postback"
                keyword: "q, question"
                payload: 
                  action: "intent"  
                  variables:  
                    qnaMinimumMatch: "50%,25%"                
        transitions: 
          actions: 
            qna: "selectQnA"
            intent: "intentMessage"

    #when user presses ask a question, then navigation is to the intent engine. This way the bot functionality is retained. If the user clicks the browser button then 
    #only QnA with "card" related answers are displayed

     intentMessage:
        component: "System.Output"
        properties:
          text: "So, what do you want to do or like to know? (E.g., you can ask \"How long does it take to get a new card\")"
          keepTurn: false
        transitions:
          next: "intentWithQnA"

    Notice that when the user wanted to browse  QnA a variable qnaMinimumMatch was set to 0 so that QnA always rules when the request goes to System.Intent. This way I can bypass the intent resolution in favor of QnA though still use QnA and intents when no button is pressed

     intentWithQnA:
        component: "System.Intent"
        properties:
          variable: "iResult"
          optionsPrompt: "Do you want to"      
          qnaEnable: true
          qnaSkipIfIntentFound: true
          optionsQnaLabel: "Questions"
          qnaMinimumMatch: "${qnaMinimumMatch.value}"      
        transitions:
          next: "unresolved"
          actions:
            Request Card: "requestCard"
            qna: "startQnA"
            unresolvedIntent: "unresolved"

    #if the user did not use the menu ti set "card" as the user message, then the user message variable is
    #set to the message the user sends by typing a message

      startQnA:
        component: "System.SetVariable"
        properties:
          value: "${system.message.messagePayload.text}"
          variable: "userMessage"
        transitions: 
          next: "selectQnA"

    From here, the request goes to the QnA component. Notice that the QnA component uses its "sourceVariable" property to read from the userMessage variable

      selectQnA:
        component: "System.QnA"
        properties:
          sourceVariable: "userMessage"
          matchListLimit: 5
          minimumMatch: "50%,25%"      
          viewAnswerLabel: "View"
          moreAnswersLabel: "More Answers"
          answersLabel: "Answers"
          categoriesLabel: "Categories"
        transitions:
          next: "intentWithQnA"
          actions:
            none: "intentWithQnA"

    So the way this works is:

    - you use a menu item to set a text phrase that finds a perfect match within a set of questions and answers. So carefully select a text string that only is contained in the set of questions & answers that match to a specific category. This is the tricky part, of course because the text you choose needs to be part of the question and answer. 

     

    Frank

  • Rohit Dhamija

    Hi Ravishankar,

    Thank-you for contacting!

    1. Can you please try running the code provided in this blog:

    https://blogs.oracle.com/mobile/techexchange%3a-using-the-local-webview-container-to-add-a-date-selector-widget-to-an-oracle-digital-assistant-chatbot-conversation

    Seemed to be working fine on my instance version 19.1.5

    2. can you please share the screen shot of the error?

    Thanks

  • Ravishankar Chandran

    Hi,

    I`m using 19.1.5-599 version of ODA. I`m also facing an issue in uploading the .tgz file into the ODA for testing webview component. 

    I had followed the below tutorial:

    https://cloudcustomerconnect.oracle.com/posts/ae90a7facc

    Finally, on trying to upload the tgz, in "webview" section, the upload is just aborting without any error messages. Tried from different browsers, and its the same.

    Kindly help.

    warm Regards,

    Ravishankar.

  • Vikhil Khobragade

    Hi Hasain,

    the first post about android SDK but solution not provided.

    Regards,

    VIkhil

  • Hasain Sab
    Hi Vikhil, See the first reply to the post, it's about Android SDK only.
  • Vikhil Khobragade

    Hi Hasain,

    I am talking about the android SDK not javascript web SDk.

    Regards,

    Vikhil

  • Patrick Keegan

    The official docs are now updated with info on incorporating Adaptive Cards in ODA skills: https://docs.oracle.com/en/cloud/paas/digital-assistant/use-chatbot/microsoft-teams.html#GUID-4D992EA3-1092-4EAA-A741-DE4B34372F46

  • Patrick Keegan

    The official docs are now updated with info on incorporating Adaptive Cards in ODA skills: https://docs.oracle.com/en/cloud/paas/digital-assistant/use-chatbot/microsoft-teams.html#GUID-4D992EA3-1092-4EAA-A741-DE4B34372F46

  • Hasain Sab