BotRequest and BotResponse Objects

The properties of the objects BotRequest and BotResponse are part of the communication protocol used by botlets and services.

These object details are described in the tables below.

BotRequest

Name Runtime Type C# Type Description
integration_type string string The channel the user is coming from e.g., Cortana.
user_id String object Service specific ID of the user. Can be used for instance as key for a user specific state.
session any string Service specific session ID. Essentially an ID tied to a specific chat. Can be used as key for a session specific state
method string string Name of the method to invoke
data mst.map Map: Dictionary<string,string> Parameters for the method being invoked
context mst.map Map: Dictionary<string,string> Not too well defined yet. But essentially things like the user’s locale or time zone.
id string string The id of the request. I should be copied into the response.
trace_id string string For tracking logs of a “turn” across servers/services. A “turn” is a single request from a channel. It is essentially the handling of a single user input.

BotResponse

Name Runtime Type C# Type Description
user_id string string Service specific ID of the user. Can be used for instance as key for a user specific state.
trace_id string string For tracking logs of a “turn” across servers/services. A “turn” is a single request from a channel. It is essentially the handling of a single user input.
result mst.map Map: Dictionary<string,string> Result(s) of the invoked method
error mst.error error  

Error

Name Runtime Type C# Type Description
code string string Custom id to identify the error
text string string Message of the error
debug string string  
trace list<string> IList<string>