microsoft/teams.net

Public

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

CodeCommitsIssuesPull requestsActionsInsightsSecurity
8e11e5e231765b6fbeae91b4033a354e2340d0af

Branches

Tags

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

Clone

HTTPS

Download ZIP

Samples/Samples.Lights/State.cs

33lines · modecode

1using Microsoft.Teams.AI;
2using Microsoft.Teams.Api.Activities;
3using Microsoft.Teams.Apps;
4
5namespace Samples.Lights;
6
7public class State
8{
9 public bool Status = false;
10 public IList<IMessage> Messages = [];
11
12 public static State From(IContext<IActivity> context)
13 {
14 return From<IActivity>(context);
15 }
16
17 public static State From<TActivity>(IContext<TActivity> context) where TActivity : IActivity
18 {
19 var key = $"{context.Activity.Conversation.Id}.{context.Activity.From.Id}";
20 return (State?)context.Storage.Get(key) ?? new();
21 }
22
23 public void Save(IContext<IActivity> context)
24 {
25 Save<IActivity>(context);
26 }
27
28 public void Save<TActivity>(IContext<TActivity> context) where TActivity : IActivity
29 {
30 var key = $"{context.Activity.Conversation.Id}.{context.Activity.From.Id}";
31 context.Storage.Set(key, this);
32 }
33}