microsoft/teams.net

Public

mirrored from https://github.com/microsoft/teams.netAvailable

CodeCommitsIssuesPull requestsActionsInsightsSecurity
76f9c3e2fc76f80fa2e75413c4da17c25d90a155

Branches

Tags

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

Clone

HTTPS

Download ZIP

Samples/Samples.Echo/Program.cs

50lines · modecode

1using Microsoft.Teams.Api.Activities;
2using Microsoft.Teams.Apps;
3using Microsoft.Teams.Apps.Annotations;
4using Microsoft.Teams.Apps.Extensions;
5using Microsoft.Teams.Apps.Routing;
6using Microsoft.Teams.Plugins.AspNetCore.DevTools.Extensions;
7using Microsoft.Teams.Plugins.AspNetCore.Extensions;
8
9namespace Samples.Echo;
10
11public static partial class Program
12{
13 public static void Main(string[] args)
14 {
15 var builder = WebApplication.CreateBuilder(args);
16 builder.Services.AddOpenApi();
17 builder.Services.AddTransient<Controller>();
18 builder.AddTeams().AddTeamsDevTools();
19
20 var app = builder.Build();
21
22 if (app.Environment.IsDevelopment())
23 {
24 app.MapOpenApi();
25 }
26
27 app.UseHttpsRedirection();
28 app.UseTeams();
29 app.Run();
30 }
31
32 [ActivityController]
33 public class Controller
34 {
35 [Activity]
36 public async Task OnActivity(IContext<Activity> context, [Context] IContext.Next next)
37 {
38 context.Log.Info(context.AppId);
39 await next();
40 }
41
42 [Message]
43 public async Task OnMessage([Context] MessageActivity activity, [Context] IContext.Client client, [Context] Microsoft.Teams.Common.Logging.ILogger log)
44 {
45 log.Info("hit!");
46 await client.Typing();
47 await client.Send($"you said '{activity.Text}'");
48 }
49 }
50}