Microsoft.Bot.Builder.Calling.ObjectModel.Contracts Namespace

Classes

ActionBase

Base class for various actions

ActionConverter

By default Json.net doesn't know how to deserialize JSON data into Interfaces or abstract classes. This custom Converter helps deserialize "actions" specified in JSON into respective concrete "action" classes.

AgentContactNotification

Message type for notifying agents that a user has added or removed them.

Answer

This is the action which customers can specify to indicate that the server call agent should accept the call. The media is hosted by the server call agent

AnswerOutcome

This is the outcome of the "answer" action. This is conveyed to the customer as POST to the customer CallBack Url.

BaseMessage

Base message wrapper for all API messages. The format is: { type: (type-of-message), to: (to-user-MRI), from: (from-user-MRI), (optional additional-message-specific-properties), (optional additional-message-specific-properties), (optional additional-message-specific-properties), }

CallbackLink

Links for callbacks to the bot. For IVR calling only Callback has to be specified. For more advanced scenarios like real-time media calling Notification has to be included.

ChoiceOutcome

This is a part of the "recognize" action outcome. This is specified if the customer had specified any recognition options.

CollectDigits

This is part of the "recognize" action. If the customer wants to collect digits - this needs to be specified. Ex: enter 5 digit zip code followed by pound sign.

CollectDigitsOutcome

This is a part of the "recognize" action outcome. This is specified if the customer had specified any collectDigits operation.

Conversation

This defines the set of the properties that define a conversation. A conversation includes participants, modalities etc.

This object is specified in the body of the OnIncomingCall request sent to the client. This object is used to represent both incoming and outgoing conversations.

ConversationBase

This base class defines a subset of properties which define a conversation. Conversation class derives from this and adds more properties - they are passed in OnIncomingCall ConversationResultBase class derives from this and adds more properties - they are passed in POST to callback Url to list operation outcomes

ConversationResult

Once we have peformed the "actions" requested by the customer, we POST back to customer callback Url with this "result" object.

Hangup

This is the action which customers can specify to indicate that the server call agent should hangup the call.

HangupOutcome

This is the outcome of the "hangup" action. This is conveyed to the customer as POST to the customer CallBack Url (if specified).

OperationOutcomeBase

Base class for various "action(s)" outcome(s)

OperationOutcomeConverter

By default Json.net doesn't know how to deserialize JSON data into Interfaces or abstract classes. This custom Converter helps deserialize "operationOutcomes" specified in JSON into respective concrete "OperationOutcome" classes.

Participant

This class describes a participant. This can be a participant in any modality in a 2 or multi-party conversation

PlayPrompt

This is the action which customers can specify to indicate that the server call agent should play/tts out prompt(s).

PlayPromptOutcome

This is the outcome of the "playPrompt" action. This is conveyed to the customer as POST to the customer CallBack Url.

Prompt

This class represents a single prompt

RecognitionOption

This is part of the "recognize" action. If the customer wants to speech/dtmf choice based recognition - this needs to be specified. Ex: say "Sales" or enter 1 for Sales department

Recognize

This is the action which customers can specify to indicate that the server call agent should perform speech or dtmf recognition.

RecognizeOutcome

This is the outcome of the "recognize" action. This is conveyed to the customer as POST to the customer CallBack Url.

Record

This is the action which customers can specify to indicate that the server call agent should start recording user speech.

RecordOutcome

This is the outcome of the "record" action. This is conveyed to the customer as POST to the customer CallBack Url.

Reject

This is the action which customers can specify to indicate that the server call agent should reject the call.

RejectOutcome

This is the outcome of the "reject" action. This is conveyed to the customer as POST to the customer CallBack Url (if specified).

ValidActions

This is a helper class for validating actions specified by customers

ValidDtmfs

This is a helper class for validating dtmfs specified in strings

ValidOutcomes

This is a helper class for validating outcomes. This can be used by customers or by us (before we send the outcome on the wire)

Workflow

This class contains the workflow the customer sent for the OnInComingCall POST or any subsequent POST to their callback url. Basically this workflow defines the set of actions, the customer wants us to perform and then callback to them.

WorkflowValidationOutcome

If the customer's "response" fails validation, this is the outcome conveyed to the customer as POST to the customer CallBack Url.