How to give personalised greeting in Watson Conversation?

前端 未结 3 1078
名媛妹妹
名媛妹妹 2021-01-20 00:36

While Defining the Dialog in the Watson Conversation I\'m not able to greet user with his/her name or I\'m not able to detect contact number sent by the user and rephrase it

3条回答
  •  离开以前
    2021-01-20 01:19

    Although Mitch's response is correct, here is an example of doing a personalised response.

    1. Set your conversation_start node text to "Hello ".

    2. In your code you would do something like this (Python).

    import json
    from watson_developer_cloud import ConversationV1
    
    conversation = ConversationV1(
        username='SERVICE_USERNAME',
        password='SERVICE_PASSWORD',
        version='2016-07-11')
    
    workspace_id = 'WORKSPACE_ID_CONVERSATION'
    
    response = conversation.message(workspace_id=workspace_id, context= {'username':'Simon'})
    
    print json.dumps(response)
    

    3. When you run this, it should output the following, with the "text" part being what the user sees.

    {
      "entities":[],
      "intents":[],
      "output":{
        "log_messages":[],
        "nodes_visited":["node_1_1472298724972],
        "text":["Hello Simon"]
      },
      "context":{
        "username":"Simon",
        "conversation_id":"9dc1501b-ac53-4b51-a299-37f5314ebf89",
        "system":{
          "dialog_turn_counter":1,
          "dialog_stack":["root"],
          "dialog_request_counter":1
        }
      },
      "input":{}
    }
    

    One thing to be aware is that, the context object is used to maintain the state of the conversation. So if you plan to use just REST API's then you need to merge your context variables into the preceding context object before sending it. You do only need to do this at points where you do know the conversation needs that context.

提交回复
热议问题