microsoft/teams.net

Public

mirrored fromhttps://github.com/microsoft/teams.netAvailable

CodeCommitsIssuesPull requestsActionsInsightsSecurity
aamirj/StackOverflowTest

Branches

Tags

  • No tags available.
0Branches0Tags
Go to file
Add file
Code

Clone

HTTPS

Download ZIP

Samples/Samples.McpClient/Controller.cs

26lines · modecode

1using Microsoft.Teams.AI.Models.OpenAI;
2using Microsoft.Teams.Api.Activities;
3using Microsoft.Teams.Apps;
4using Microsoft.Teams.Apps.Activities;
5using Microsoft.Teams.Apps.Annotations;
6
7namespace Samples.McpClient;
8
9[TeamsController]
10public class Controller(IHttpContextAccessor httpContextAccessor)
11{
12 private readonly IHttpContextAccessor _httpContextAccessor = httpContextAccessor;
13
14 [Message]
15 public async Task OnMessage(IContext<MessageActivity> context)
16 {
17 var httpContext = _httpContextAccessor.HttpContext
18 ?? throw new InvalidOperationException("No active HttpContext. Cannot resolve OpenAIChatPrompt.");
19
20 var prompt = httpContext.RequestServices.GetRequiredService<OpenAIChatPrompt>();
21 await prompt.Send(context.Activity.Text, new(), (chunk) => Task.Run(() =>
22 {
23 context.Stream.Emit(chunk);
24 }), context.CancellationToken);
25 }
26}