Use when evaluating or extending conversational / Flux-style streaming STT support in this C# SDK. The repo has a latest WebSocket listen client under `Deepgram.Models.Listen.v2.WebSocket`, but it does not currently expose Flux-specific request params or turn-aware response types like `TurnInfo`. Use this skill to document that gap honestly and to guide work on the closest supported surface.
80
70%
Does it follow best practices?
Impact
96%
1.06xAverage score across 3 eval scenarios
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./.agents/skills/deepgram-dotnet-conversational-stt/SKILL.mdThis repo does not currently expose a dedicated Flux / conversational STT API surface comparable to the Python SDK's listen.v2.connect(...) + TurnInfo flow.
/v2/listen support in the .NET SDK.Listen.v2.WebSocket client is sufficient for the task.Use a different skill when:
ResultResponse, SpeechStartedResponse, and UtteranceEndResponse → deepgram-dotnet-speech-to-text.deepgram-dotnet-voice-agent.What exists:
ClientFactory.CreateListenWebSocketClient() returns the latest WebSocket listen client.Deepgram.Models.Listen.v2.WebSocket.LiveSchema.OpenResponse, MetadataResponse, ResultResponse, SpeechStartedResponse, UtteranceEndResponse, CloseResponse, ErrorResponse, UnhandledResponse.SendKeepAlive(), SendFinalize(), SendClose(), Send(...).What is not present in the current repo search:
flux model constants or examples.TurnInfo / turn-aware event models.language_hint, eager_eot_threshold, eot_threshold, or similar Flux request properties.dotnet add package Deepgramusing Deepgram;
Library.Initialize();
var client = ClientFactory.CreateListenWebSocketClient();ClientFactory reads credentials from the DEEPGRAM_API_KEY (or DEEPGRAM_ACCESS_TOKEN) environment variable by default. To pass them explicitly: ClientFactory.CreateListenWebSocketClient(apiKey: "...", options: ...). DeepgramWsClientOptions throws if neither the env var nor an explicit credential is provided.
using Deepgram.Models.Listen.v2.WebSocket;
var liveClient = ClientFactory.CreateListenWebSocketClient();
await liveClient.Subscribe(new EventHandler<ResultResponse>((sender, e) =>
{
var transcript = e.Channel.Alternatives[0].Transcript;
if (!string.IsNullOrWhiteSpace(transcript))
{
Console.WriteLine(transcript);
}
}));
await liveClient.Subscribe(new EventHandler<UtteranceEndResponse>((sender, e) =>
{
Console.WriteLine(e.Type);
}));
await liveClient.Connect(new LiveSchema()
{
Model = "nova-3",
Encoding = "linear16",
SampleRate = 16000,
InterimResults = true,
UtteranceEnd = "1000",
VadEvents = true,
});Treat this as standard live STT, not true Flux parity.
On LiveSchema: Model, Encoding, SampleRate, InterimResults, UtteranceEnd, VadEvents, Endpointing, NoDelay, Punctuate, SmartFormat, Keywords, Keyterm, Diarize, Redact.
Deepgram/ClientFactory.csDeepgram/Clients/Listen/v2/WebSocket/Client.csDeepgram/Models/Listen/v2/WebSocket/LiveSchema.csDeepgram/Models/Listen/v2/WebSocket/*.cshttps://context7.com/deepgram/deepgram-dotnet-sdk/llmstxt/developers_deepgram_llms_txtTurnInfo-style .NET models or ConnectFluxAsync(...) helpers.Listen.v2.WebSocket naming is misleading if you expect Python parity. It is the newest streaming client, but not a full conversational surface.DeepgramWsClientOptions defaults APIVersion to v1, so inspect connection URIs before assuming /v2/listen behavior.examples/speech-to-text/websocket/file/Program.csexamples/speech-to-text/websocket/http/Program.csexamples/speech-to-text/websocket/microphone/Program.csFor cross-language Deepgram product knowledge — the consolidated API reference, documentation finder, focused runnable recipes, third-party integration examples, and MCP setup — install the central skills:
npx skills add deepgram/skillsThis SDK ships language-idiomatic code skills; deepgram/skills ships cross-language product knowledge (see api, docs, recipes, examples, starters, setup-mcp).
d0d6fee
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.