# StandIn > Put your AI agent into a Microsoft Teams call. One SDK in Python and TypeScript, framework plugins, and runnable examples. - [StandIn](https://docs.komaa.com/index.md): Put your AI agent into a Microsoft Teams call. One SDK in Python and TypeScript, framework plugins, and runnable examples. - [Quickstart](https://docs.komaa.com/quickstart.md): Answer a real Microsoft Teams call with the StandIn SDK: install the package, expose one port, register the agent voice URL, and hear yourself back. - [Microsoft Teams setup overview](https://docs.komaa.com/teams/overview.md): What you need to connect your agent to Microsoft Teams: an Azure bot identity, the StandIn app package, and a one-time upload to Microsoft Teams. - [Connection modes](https://docs.komaa.com/teams/connection-modes.md): Two ways to put your agent in Microsoft Teams: the StandIn AI Teammate app from the Microsoft Teams Store, or your own Azure bot. - [Create the Azure bot](https://docs.komaa.com/teams/azure-bot.md): Register a Microsoft Entra app, create the Azure Bot resource, enable Microsoft Teams calling, and grant the Graph permissions StandIn needs. - [Get the Microsoft Teams app package](https://docs.komaa.com/teams/app-package.md): Download the generated Microsoft Teams app package (manifest zip) from StandIn, or build it yourself from the example manifest. - [Upload to Microsoft Teams and go live](https://docs.komaa.com/teams/publish.md): Upload the app package as a custom app or publish it to your organization, register your agent in StandIn, and place the first call. - [Architecture](https://docs.komaa.com/concepts/architecture.md): What the StandIn service owns, what the SDK owns, and what your plugin owns: the handler seam, the session, the two lanes, and the wire facts. - [Dialogue modes](https://docs.komaa.com/concepts/modes.md): Realtime speech-to-speech or a streaming STT, agent, TTS pipeline: how much of each the SDK carries, how to choose, and which mode every shipped plugin drives. - [What the SDK gives you](https://docs.komaa.com/concepts/features.md): The capabilities the StandIn SDK actually exposes: the call seam, audio, vision and the avatar, recap, outbound calling, the chat lane, signatures and capacity, and what it deliberately does not do. - [Tiers and what each gives you](https://docs.komaa.com/tiers.md): The two ways to connect an agent to StandIn: a Free identity on your own Azure bot, and the StandIn AI Teammate app. How to tell which one you are on, what each gives you, and what each costs you. - [Expose your agent](https://docs.komaa.com/expose.md): StandIn dials your worker from the internet. The one path to publish, the mount commands, and the probes that tell a real fault from a fake one. - [Troubleshooting](https://docs.komaa.com/troubleshooting.md): The failures a StandIn worker actually produces: a silent HMAC mismatch, an unreachable worker, a probe that lies, a bot that answers every turn of a meeting, an agent that answers itself, and the five timers that end a call. - [Python SDK](https://docs.komaa.com/python-sdk/overview.md): Put your AI agent into a Microsoft Teams call. The shared core every StandIn Python plugin builds on. - [Quickstart](https://docs.komaa.com/python-sdk/quickstart.md): Install the StandIn Python SDK, answer a real Microsoft Teams call, and hear your own voice back. - [CallServer](https://docs.komaa.com/python-sdk/call-server.md): Every CallServer constructor option in the StandIn Python SDK, and the failure each one defends against. - [Call handler](https://docs.komaa.com/python-sdk/call-handler.md): The five optional methods a StandIn Python plugin implements, the CallSession surface, and barge-in with cancel_playback. - [Audio](https://docs.komaa.com/python-sdk/audio.md): resample_pcm16 and FrameAligner in the StandIn Python SDK: the 16 kHz wire, 24 kHz realtime models, and why the remainder matters. - [Turn-taking](https://docs.komaa.com/python-sdk/voice.md): VoiceLane, utterance segmentation, WAV handling and paced playback for an agent that is not a realtime model, in the StandIn Python SDK. - [Realtime providers](https://docs.komaa.com/python-sdk/realtime-providers.md): StartupBuffer and EchoGuard for a speech-to-speech agent: what arrives before you are ready, and why the agent answers itself, in the StandIn Python SDK. - [Group calls](https://docs.komaa.com/python-sdk/group-calls.md): GroupGate, wake phrases, the follow-up window and verbal interrupts for an agent in a Microsoft Teams meeting, in the StandIn Python SDK. - [Vision and the avatar](https://docs.komaa.com/python-sdk/vision.md): What the caller shows your agent, what your agent shows back, and the face the caller sees, in the StandIn Python SDK. - [The avatar](https://docs.komaa.com/python-sdk/avatar.md): Expressions, the viseme timeline that drives lip-sync, and putting your own video on the bot's tile, in the StandIn Python SDK. - [Call tools](https://docs.komaa.com/python-sdk/call-tools.md): One set of call capabilities, declared in every provider's own JSON, in the StandIn Python SDK. - [Consulting and background work](https://docs.komaa.com/python-sdk/consulting.md): Delegate real work from a live call without stalling it, and keep a promise to deliver later, in the StandIn Python SDK. - [Meeting recap](https://docs.komaa.com/python-sdk/minutes.md): Minutes of the call, including what was shown on screen, with a Word document, in the StandIn Python SDK. - [Chat](https://docs.komaa.com/python-sdk/chat.md): Answer Microsoft Teams messages with ChatChannel in the StandIn Python SDK: dialed out, no listener, no bot credential. - [Attachments in chat](https://docs.komaa.com/python-sdk/chat-attachments.md): Turning a pasted screenshot, a dragged-in file or a voice note into one ChatTurn your agent can answer, in the StandIn Python SDK. - [Sending a picture](https://docs.komaa.com/python-sdk/sending-pictures.md): Attach a picture to a Microsoft Teams message as checked bytes, and turn an agent's MEDIA: marker into one, in the StandIn Python SDK. - [Reaching people](https://docs.komaa.com/python-sdk/reaching-people.md): Speak into a call that is already up, otherwise ring somebody back and park the line until they answer, in the StandIn Python SDK. - [Configuration](https://docs.komaa.com/python-sdk/configuration.md): Every STANDIN_ variable the SDK reads, the helpers for reading your own, and what a missing extra looks like, in the StandIn Python SDK. - [Checking the install](https://docs.komaa.com/python-sdk/checking-the-install.md): Ring this worker's own handler on loopback and prove audio made the round trip, without a provider bill, a public tunnel or a Microsoft tenant, in the StandIn Python SDK. - [Security](https://docs.komaa.com/python-sdk/security.md): HMAC v1 and v2 in the StandIn Python SDK: the handshake lane, the body lane, the replay windows, and what the SDK refuses. - [ElevenLabs plugin](https://docs.komaa.com/python-sdk/plugins/elevenlabs.md): Answer Microsoft Teams calls with an ElevenLabs agent, using the StandIn Python SDK. - [Deepgram plugin](https://docs.komaa.com/python-sdk/plugins/deepgram.md): Answer Microsoft Teams calls with a Deepgram Voice Agent, using the StandIn Python SDK. - [Cartesia plugin](https://docs.komaa.com/python-sdk/plugins/cartesia.md): Answer Microsoft Teams calls with a Cartesia Line agent, using the StandIn Python SDK. - [LiveKit plugin](https://docs.komaa.com/python-sdk/plugins/livekit.md): Answer Microsoft Teams calls with a LiveKit Agent using standin-sdk[livekit]: two lines, CallInfo, and the two data topics. - [Hermes Agent](https://docs.komaa.com/python-sdk/plugins/hermes-agent.md): Answer Microsoft Teams calls with your Hermes Agent using standin-sdk[hermes-agent]: realtime speech-to-speech, in-process loading, and the tool boundary. - [Echo plugin](https://docs.komaa.com/python-sdk/plugins/echo.md): The smallest StandIn Python plugin that answers a real Microsoft Teams call, and how to copy it into your own. - [TypeScript SDK](https://docs.komaa.com/typescript-sdk/overview.md): Put your AI agent into a Microsoft Teams call from Node.js. The shared core every StandIn TypeScript plugin builds on. - [Quickstart](https://docs.komaa.com/typescript-sdk/quickstart.md): From one npm install to a Microsoft Teams call your Node.js worker answers. - [Call server](https://docs.komaa.com/typescript-sdk/call-server.md): CallServer options, watchdogs, capacity, draining and teardown in the StandIn TypeScript SDK. - [Call handler](https://docs.komaa.com/typescript-sdk/call-handler.md): The seven optional methods a StandIn TypeScript plugin implements, and the CallSession it is handed. - [Audio](https://docs.komaa.com/typescript-sdk/audio.md): Sample rates, the 640-byte frame, resamplePcm16 and FrameAligner in the StandIn TypeScript SDK. - [Turn-taking](https://docs.komaa.com/typescript-sdk/voice.md): VoiceLane, utterance segmentation, WAV handling and paced playback for an agent that is not a realtime model, in the StandIn TypeScript SDK. - [Realtime providers](https://docs.komaa.com/typescript-sdk/realtime-providers.md): StartupBuffer and the echo guard for a speech-to-speech agent: what arrives before you are ready, and why the agent answers itself, in the StandIn TypeScript SDK. - [Group calls](https://docs.komaa.com/typescript-sdk/group-calls.md): GroupGate, wake phrases, the follow-up window and verbal interrupts for an agent in a Microsoft Teams meeting, in the StandIn TypeScript SDK. - [Vision and the avatar](https://docs.komaa.com/typescript-sdk/vision.md): What the caller shows your agent, what your agent shows back, and the face the caller sees, in the StandIn TypeScript SDK. - [The avatar](https://docs.komaa.com/typescript-sdk/avatar.md): Expressions, the viseme timeline that drives lip-sync, and putting your own video on the bot's tile, in the StandIn TypeScript SDK. - [Call tools](https://docs.komaa.com/typescript-sdk/call-tools.md): One set of call capabilities, declared in every provider's own JSON, in the StandIn TypeScript SDK. - [Consulting and background work](https://docs.komaa.com/typescript-sdk/consulting.md): Delegate real work from a live call without stalling it, and keep a promise to deliver later, in the StandIn TypeScript SDK. - [Meeting recap](https://docs.komaa.com/typescript-sdk/minutes.md): Minutes of the call, including what was shown on screen, with a Word document, in the StandIn TypeScript SDK. - [Chat](https://docs.komaa.com/typescript-sdk/chat.md): Answer Microsoft Teams messages from your Node.js agent with ChatChannel, without holding a Bot Framework credential. - [Attachments in chat](https://docs.komaa.com/typescript-sdk/chat-attachments.md): Turning a pasted screenshot, a dragged-in file or a voice note into one ChatTurn your agent can answer, in the StandIn TypeScript SDK. - [Sending a picture](https://docs.komaa.com/typescript-sdk/sending-pictures.md): Attach a checked image to a chat reply, and turn a MEDIA: marker into bytes worth sending, in the StandIn TypeScript SDK. - [Reaching people](https://docs.komaa.com/typescript-sdk/reaching-people.md): Speak into a call that is already up, otherwise ring somebody back and park the line until they answer, in the StandIn TypeScript SDK. - [Configuration](https://docs.komaa.com/typescript-sdk/configuration.md): Every STANDIN_ variable the SDK reads, the helpers for reading your own, and how a missing optional peer surfaces, in the StandIn TypeScript SDK. - [Checking the install](https://docs.komaa.com/typescript-sdk/checking-the-install.md): Ring this worker's own handler on loopback and prove audio made the round trip, without a provider bill, a public tunnel or a Microsoft tenant, in the StandIn TypeScript SDK. - [Security](https://docs.komaa.com/typescript-sdk/security.md): The two StandIn HMAC lanes, their replay windows, who may call the agent, and how the TypeScript SDK fails closed. - [ElevenLabs plugin](https://docs.komaa.com/typescript-sdk/plugins/elevenlabs.md): Answer Microsoft Teams calls with an ElevenLabs agent, using the StandIn TypeScript SDK. - [Deepgram plugin](https://docs.komaa.com/typescript-sdk/plugins/deepgram.md): Answer Microsoft Teams calls with a Deepgram Voice Agent, using the StandIn TypeScript SDK. - [Cartesia plugin](https://docs.komaa.com/typescript-sdk/plugins/cartesia.md): Answer Microsoft Teams calls with a Cartesia Line agent, using the StandIn TypeScript SDK. - [OpenAI Realtime plugin](https://docs.komaa.com/typescript-sdk/plugins/openai.md): Answer Microsoft Teams calls with an OpenAI Realtime model, using the StandIn TypeScript SDK. - [LiveKit plugin](https://docs.komaa.com/typescript-sdk/plugins/livekit.md): Answer Microsoft Teams calls with a LiveKit agent, using the StandIn TypeScript SDK. - [OpenClaw plugin](https://docs.komaa.com/typescript-sdk/plugins/openclaw.md): Connect the realtime voice provider configured in OpenClaw to Microsoft Teams calls through StandIn. - [Echo plugin](https://docs.komaa.com/typescript-sdk/plugins/echo.md): The smallest StandIn plugin that answers a real Microsoft Teams call. Copy it to start your own. This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.