'Get a response to a user\'s input.
Send a user\'s message and receive a response.
:param workspace_id: Unique identifier of the workspace.
:param message_input: An input object that includes the input text.
:param alternate_intents: Whether to return more than one intent.
Set to `true` to return all matching intents.
:param context: State information for the conversation. Continue a
conversation by including the context object from the previous
response.
:param entities: Include the entities from the previous response when
they do not need to change and to prevent Watson from trying to
identify them.
:param intents: An array of name-confidence pairs for the user input.
Include the intents from the previous response when they do not
need to change and to prevent Watson from trying to identify them.
:param output: System output. Include the output from the request
when you have several requests within the same Dialog turn to
pass back in the intermediate information.'

def message(self, workspace_id, message_input, alternate_intents=None, context=None, entities=None, intents=None, output=None):

    params = {'version': self.version}
    data = {'input': message_input, 'alternate_intents': alternate_intents, 'context': context, 'entities': entities, 'intents': intents, 'output': output}
    return self.request(method='POST', url='/v1/workspaces/{0}/message'.format(workspace_id), params=params, json=data, accept_json=True)
