-
Notifications
You must be signed in to change notification settings - Fork 15
Migrate all Activity-derived classes from Teams.Api to Microsoft.Bot.Core #250
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: next/core
Are you sure you want to change the base?
Conversation
Co-authored-by: rido-min <[email protected]>
Co-authored-by: rido-min <[email protected]>
|
@copilot continue with the rest of activities |
Co-authored-by: rido-min <[email protected]>
Completed migration of all remaining non-Invoke activities: Phase 2 Activities Added:
All activities follow the same migration pattern: removed StringEnum, replaced with string? and static constants classes, removed JsonPropertyOrder/JsonConverter, made properties nullable. Total: 19 activity files in Commit: d2ec1ba |
|
@copilot great. now continue migrating all the other activities, includes Invokes, AdaptiveCards, Configs, Tasks and Message Extensions |
… SignIn, MessageExtension, etc.) Co-authored-by: rido-min <[email protected]>
Co-authored-by: rido-min <[email protected]>
Completed migration of all Invoke-related activities including AdaptiveCards, Configs, Tasks, Tabs, SignIn, and Message Extensions. Invoke Activities Added (20 activities):
All activities simplified by removing custom JsonConverters, abstract base classes, and Teams.Api dependencies. Using same migration pattern with string constants. Total migration: 30 activity files in |
Migrates all
Activity-derived classes fromLibraries/Microsoft.Teams.Api/Activitiestocore/src/Microsoft.Bot.Core/Activitiesas standalone classes without Teams.Api dependencies.Changes
Base Infrastructure
Activitybase class with core serialization-relevant propertiesAccount,Conversation,ConversationReference,ChannelData,Entity,Error,InnerHttpErrorActivities Migrated
Phase 1:
TypingActivityEventActivity+ subtypes:MeetingStartActivity,MeetingEndActivity,MeetingParticipantJoinActivity,MeetingParticipantLeaveActivity,ReadReceiptActivityInstallUpdateActivityCommandActivityCommandResultActivityPhase 2:
ConversationUpdateActivityEndOfConversationActivityMessageActivity(simplified without Teams.Api dependencies)MessageDeleteActivityMessageReactionActivity(withMessageReaction,ReactionUsertypes)MessageUpdateActivityPhase 3 - Invoke Activities:
InvokeActivity(base)ExecuteActionActivity,FileConsentActivity,HandoffActivity,SearchActivityAdaptiveCardActivity,AdaptiveCardActionActivityConfigFetchActivity,ConfigSubmitActivityTabFetchActivity,TabSubmitActivityTaskFetchActivity,TaskSubmitActivitySignInTokenExchangeActivity,SignInVerifyStateActivityMessageSubmitActionActivityMessageExtensionAnonQueryLinkActivity,MessageExtensionCardButtonClickedActivity,MessageExtensionFetchTaskActivity,MessageExtensionQueryActivity,MessageExtensionQueryLinkActivity,MessageExtensionQuerySettingUrlActivity,MessageExtensionSelectItemActivity,MessageExtensionSettingActivity,MessageExtensionSubmitActionActivityStringEnum → String Constants
ActivityType→ActivityTypesstatic class (Typing,Event,Command,Message,MessageDelete,MessageUpdate,MessageReaction,ConversationUpdate,EndOfConversation,Invoke, etc.)EventActivity.Name→EventNamesstatic class (ReadReceipt,MeetingStart,MeetingEnd, etc.)InvokeActivity.Name→InvokeNamesstatic class (comprehensive constants for all invoke operation names)InstallUpdateAction→InstallUpdateActionsstatic class (Add,Remove)EndOfConversationCode→EndOfConversationCodesstatic class (Unknown,CompletedSuccessfully,UserCancelled, etc.)ConversationUpdateActivity.EventType→ConversationEventTypesstatic class (ChannelCreated,TeamArchived, etc.)Role→Rolesstatic class (Bot,User)InputHint→InputHintsstatic class (AcceptingInput,IgnoringInput,ExpectingInput)TextFormat→TextFormatsstatic class (Plain,Markdown,Xml)Importance→ImportanceLevelsstatic class (Low,Normal,High,Urgent)DeliveryMode→DeliveryModesstatic class (Normal,Notification,Ephemeral,ExpectedReplies)ReactionType→ReactionTypesstatic class (Like,Heart,Laugh,Surprise,Sad,Angry,PlusOne)UserIdentityType→UserIdentityTypesstatic class (AadUser,OnPremiseAadUser,AnonymousGuest,FederatedUser)Removed
IActivity,IEventActivity,IInvokeActivity)JsonPropertyOrderattributes throughoutJsonConverterattributes throughout (including custom polymorphic converters)ConfigActivity,TabActivity,TaskActivity,MessageExtensionActivityto concrete classes)TypingActivity.AddStreamUpdate(),MessageActivity.AddStreamFinal())Attachment,SuggestedActionsfromMessageActivity)Example Usage
Total: 30 activity files migrated to
core/src/Microsoft.Bot.Core/Activities/Original prompt
This pull request was created from Copilot chat.
💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.