Git Product home page Git Product logo

botv3v4migration's People

Contributors

scheyal avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

ericdahlvang

botv3v4migration's Issues

Add Migration Estimation Worksheet to docs (C#)

S.NO Command /details V3 V4 Detected Occurrences Complexity T-Shirt Size*
1 To get the incoming activity IDialogContext.Activity ITurnContext.Activity count Simple  
2 To create and send an activity to the user activity.CreateReply(“text”) IDialogContext.PostAsync MessageFactory.Text(“text”) ITurnContext.SendActivityAsync count Simple  
3 State management UserData, ConversationData, and PrivateConversationData context.UserData.SetValue context.UserData.TryGetValue botDataStore.LoadAsyn UserState, ConversationState, and PrivateConversationState  With property accessors context.UserData.SetValue - count context.UserData.TryGetValue - count botDataStore.LoadAsyn - count Medium to Large (User State solution available)  
4 Handle the start of your dialog Implement IDialog.StartAsync Make this the first step of a waterfall dialog. <count Simple  
5 Send an activity IDialogContext.PostAsync. Call ITurnContext.SendActivityAsync. count Simple  
6 Wait for a user's response Use an IAwaitableparameter and call IDialogContext.Wait Return await ITurnContext.PromptAsync to begin a prompt dialog. Then retrieve the result in the next step of the waterfall. count Medium (depends on flow)  
7 Handle continuation of your dialog IDialogContext.Wait Add additional steps to a waterfall dialog, or implement Dialog.ContinueDialogAsync count Large  
8 Signal the end of processing until the user's next message IDialogContext.Wait Return Dialog.EndOfTurn. count Medium  
9 Begin a child dialog IDialogContext.Call Return await the step context's BeginDialogAsyncmethod. If the child dialog returns a value, that value is available in the next step of the waterfall via the step context's Resultproperty. count Medium  
10 Replace the current dialog with a new dialog IDialogContext.Forward Return await ITurnContext.ReplaceDialogAsync. count Large  
11 Signal that the current dialog has completed IDialogContext.Done Return await the step context's EndDialogAsync method. count Medium  
12 Fail out of a dialog. IDialogContext.Fail Throw an exception to be caught at another level of the bot, end the step with a status of Cancelled, or call the step or dialog context's CancelAllDialogsAsync. count Simple  

#28

Add Estimation worksheet to documentation

Something like:

NO Command /details V3 V4 Detected Occurrences Complexity T-Shirt Size*
1 To get the incoming activity IDialogContext.Activity ITurnContext.Activity Simple  
2 To create and send an activity to the user Iactivity.CreateReply(“text”) IDialogContext.PostAsync MessageFactory.Text(“text”) ITurnContext.SendActivityAsync Simple  
3 State management UserData, ConversationData, and PrivateConversationData  context.UserData.SetValue  context.UserData.TryGetValue  botDataStore.LoadAsync UserState, ConversationState, and PrivateConversationState  With property accessors context.UserData.SetValue -   context.UserData.TryGetValue -   botDataStore.LoadAsyn - Medium to Large (User State solution available)  
4 Handle the start of your dialog Implement IDialog.StartAsync Make this the first step of a waterfall dialog. <count Simple  
5 Send an activity Call IDialogContext.PostAsync. Call ITurnContext.SendActivityAsync. Simple  
6 Wait for a user's response Use an IAwaitableparameter and call IDialogContext.Wait Return await ITurnContext.PromptAsync to begin a prompt dialog. Then retrieve the result in the next step of the waterfall. Medium (depends on flow)  
7 Handle continuation of your dialog Call IDialogContext.Wait. Add additional steps to a waterfall dialog, or implement Dialog.ContinueDialogAsync Large  
8 Signal the end of processing until the user's next message Call IDialogContext.Wait or IDialogContext.Done Return Dialog.EndOfTurn. Medium  
9 Begin a child dialog Call IDialogContext.Call. Return await the step context's BeginDialogAsync method.  If the child dialog returns a value, that value is available in the next step of the waterfall via the step context's Resultproperty. Medium  
10 Replace the current dialog with a new dialog Call IDialogContext.Forward. Return await ITurnContext.ReplaceDialogAsync. Large  
11 Signal that the current dialog has completed Call IDialogContext.Done. return await the step context's EndDialogAsync method. Medium  
12 Fail out of a dialog. Call IDialogContext.Fail. Throw an exception to be caught at another level of the bot, end the step with a status of Cancelled, or call the step or dialog context's CancelAllDialogsAsync. Simple  

Create V3 Skill sample + docs

Maybe a natural extension would be to add a V3 skill head to the V3V4 contoso migration example?

So it’ll roughly look like this:
• Upgrade the example to V4.8 (private for now)
o Contains: install app, reset password, local admin…
• Add Skill head
• Add a V4 front-end
• Add V4 only functionality:
o Contains: view system settings, reboot, virus scan, patch with windows update…
• Add PVA
o Contains: add / remove computer to monitored group, view monitored computers, call V4 skill for specific computer
• (all operations are fake)
• (we can start with the C#)

Additional benefit:
• We get a sample and migration docs (including PVA!).

If agree, do you have an estimate?

Thanks.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.