Skip to content

Interface: DeliverTurnOptions

Everything deliverTurn needs to answer one inbound activity.

activity: object

The validated inbound activity.

[key: string]: unknown

optional attachments?: object[]

optional conversation?: object

id: string

optional from?: object

id: string

optional name?: string

optional id?: string

optional recipient?: object

id: string

optional name?: string

optional text?: string

optional timestamp?: string

type: "message" | "conversationUpdate" | "typing"


agent: CardAgentLike

The agent that composes the card.


optional createRequestContext?: CardContextFactory

Builds the agent’s per-turn request context, so the delivered turn has the same tool reach (Genie and every other user-scoped tool) as a chat turn.


credentials: BotCredentials

Bot credentials used to fetch the outbound Connector token.


serviceUrl: string

Reply destination, already validated against the inbound token. Passing this explicitly (rather than reading activity.serviceUrl) keeps the security decision in the caller, where the token is in scope.


optional signal?: AbortSignal

Cancels the turn (process shutdown, or a test tearing down).