diff --git a/solutions/Virtual-Assistant/docs/virtualassistant-createvirtualassistant.md b/solutions/Virtual-Assistant/docs/virtualassistant-createvirtualassistant.md index 24660fda61..559ae8f8d6 100644 --- a/solutions/Virtual-Assistant/docs/virtualassistant-createvirtualassistant.md +++ b/solutions/Virtual-Assistant/docs/virtualassistant-createvirtualassistant.md @@ -49,13 +49,10 @@ Once the Solution has been cloned you will see the following folder structure. | - Assistant-WebTest | - Microsoft.Bot.Solutions | - VirtualAssistant.sln - | - Skills.sln ### Build the Solution -Once cloned the next step it to build the VirtualAssistant and Skills solutions within Visual Studio. The Virtual Assistant and Skills solutions are separated for clarity with the Skills solution pushing binaries into a shared output folder enabling easy referencing from the Virtual Assistant. - -> Build the Skills project before the Virtual Assistant project. +Once cloned the next step it to build the VirtualAssistant solution within Visual Studio. Deployment must have been completed before you can run the project due to this stage creating key dependencies in Azure along with your configured .bot file. ### Deployment @@ -133,11 +130,11 @@ If you wish to make use of the Calendar, Email and Task Skills you need to confi The [Add Authentication to your bot](https://docs.microsoft.com/en-us/azure/bot-service/bot-builder-tutorial-authentication?view=azure-bot-service-3.0) section in the Azure Bot Service documentation covers more detail on how to configure Authentication. However in this scenario, the automated deployment step has already created the Azure AD v2 Application for your Bot. Therefore you only need to perform the following steps from the above documentation page: -- Navigate to https://apps.dev.microsoft.com/ +- Navigate to https://apps.dev.microsoft.com/ and find the application created in the previous step which should match your Bot name. - Under Platforms, click Add Platform. - In the Add Platform pop-up, click Web. - Leave Allow Implicit Flow checked. - - For Redirect URL, enter https://token.botframework.com/.auth/web/redirect. + - For Redirect URL, enter https://token.botframework.com/.auth/web/redirect - Leave Logout URL blank. - Under Microsoft Graph Permissions, you can need to add additional *delegated* permissions. - Each of the Skills require a specific set of Scopes, refer to the documentation for each skill or use the following list of Scopes that contain the scopes needed for all skills. @@ -150,13 +147,13 @@ The commands shown below assume you have used the deployment process and your re ```shell msbot get production --secret YOUR_SECRET -az bot authsetting create --resource-group YOUR_BOT_NAME --name YOUR_BOT_NAME --setting-name YOU_AUTH_CONNECTION_NAME --client-id YOUR_APPLICATION_ID --client-secret YOUR_APPLICATION_PASSWORD --provider-scope-string "Calendars.ReadWrite Mail.Read Mail.Send Notes.ReadWrite People.Read User.Read" --service Aadv2 +az bot authsetting create --resource-group YOUR_BOT_NAME --name YOUR_BOT_NAME --setting-name "YOUR_AUTH_CONNECTION_NAME" --client-id "YOUR_APPLICATION_ID" --client-secret "YOUR_APPLICATION_PASSWORD" --provider-scope-string "Calendars.ReadWrite Mail.Read Mail.Send Notes.ReadWrite People.Read User.Read" --service Aadv2 ``` The final step is to update your .bot file and associated Skills (in appSettings.config) with the Authentication connection name, this is used by the Assistant to enable Authentication prompts or use of Linked Accounts. ```shell -msbot connect generic --name "Authentication" --keys "{\"Azure Active Directory v2\":\"YOUR_AUTH_CONNECTION_NAME\"}" --secret "YOUR_BOT_SECRET" --url "portal.azure.net" +msbot connect generic --name "Authentication" --keys "{\"Azure Active Directory v2\":\"YOUR_AUTH_CONNECTION_NAME\"}" --bot YOURBOTFILE.bot --secret "YOUR_BOT_SECRET" --url "portal.azure.net" ``` Then in the appSettings.config updated the `authConnectionName` for each skill as appropriate. diff --git a/solutions/Virtual-Assistant/src/csharp/Skills.sln b/solutions/Virtual-Assistant/src/csharp/Skills.sln deleted file mode 100644 index f910a9aa9f..0000000000 --- a/solutions/Virtual-Assistant/src/csharp/Skills.sln +++ /dev/null @@ -1,55 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 15 -VisualStudioVersion = 15.0.28010.2003 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CalendarSkill", "Skills\CalendarSkill\CalendarSkill.csproj", "{DD13E87A-BE59-4E59-9CB7-5A92641A5977}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "EmailSkill", "Skills\EmailSkill\EmailSkill.csproj", "{900B7A0F-88F1-45C2-BB9A-5061501A5D7F}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ToDoSkill", "Skills\ToDoSkill\ToDoSkill.csproj", "{CA3D9482-5D48-4370-8BEA-B287CCD82B13}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DemoSkill", "Skills\DemoSkill\DemoSkill.csproj", "{3D0D36DC-92DF-4C48-984E-0B9049204FAC}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PointOfInterestSkill", "Skills\PointOfInterestSkill\PointOfInterestSkill.csproj", "{9942A6A1-4744-483C-813B-A81775D6E9F2}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Bot.Solutions", "Microsoft.Bot.Solutions\Microsoft.Bot.Solutions.csproj", "{103DCD18-460F-4BEE-ACA1-AAD99A346D62}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {DD13E87A-BE59-4E59-9CB7-5A92641A5977}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {DD13E87A-BE59-4E59-9CB7-5A92641A5977}.Debug|Any CPU.Build.0 = Debug|Any CPU - {DD13E87A-BE59-4E59-9CB7-5A92641A5977}.Release|Any CPU.ActiveCfg = Release|Any CPU - {DD13E87A-BE59-4E59-9CB7-5A92641A5977}.Release|Any CPU.Build.0 = Release|Any CPU - {900B7A0F-88F1-45C2-BB9A-5061501A5D7F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {900B7A0F-88F1-45C2-BB9A-5061501A5D7F}.Debug|Any CPU.Build.0 = Debug|Any CPU - {900B7A0F-88F1-45C2-BB9A-5061501A5D7F}.Release|Any CPU.ActiveCfg = Release|Any CPU - {900B7A0F-88F1-45C2-BB9A-5061501A5D7F}.Release|Any CPU.Build.0 = Release|Any CPU - {CA3D9482-5D48-4370-8BEA-B287CCD82B13}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {CA3D9482-5D48-4370-8BEA-B287CCD82B13}.Debug|Any CPU.Build.0 = Debug|Any CPU - {CA3D9482-5D48-4370-8BEA-B287CCD82B13}.Release|Any CPU.ActiveCfg = Release|Any CPU - {CA3D9482-5D48-4370-8BEA-B287CCD82B13}.Release|Any CPU.Build.0 = Release|Any CPU - {3D0D36DC-92DF-4C48-984E-0B9049204FAC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {3D0D36DC-92DF-4C48-984E-0B9049204FAC}.Debug|Any CPU.Build.0 = Debug|Any CPU - {3D0D36DC-92DF-4C48-984E-0B9049204FAC}.Release|Any CPU.ActiveCfg = Release|Any CPU - {3D0D36DC-92DF-4C48-984E-0B9049204FAC}.Release|Any CPU.Build.0 = Release|Any CPU - {9942A6A1-4744-483C-813B-A81775D6E9F2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {9942A6A1-4744-483C-813B-A81775D6E9F2}.Debug|Any CPU.Build.0 = Debug|Any CPU - {9942A6A1-4744-483C-813B-A81775D6E9F2}.Release|Any CPU.ActiveCfg = Release|Any CPU - {9942A6A1-4744-483C-813B-A81775D6E9F2}.Release|Any CPU.Build.0 = Release|Any CPU - {103DCD18-460F-4BEE-ACA1-AAD99A346D62}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {103DCD18-460F-4BEE-ACA1-AAD99A346D62}.Debug|Any CPU.Build.0 = Debug|Any CPU - {103DCD18-460F-4BEE-ACA1-AAD99A346D62}.Release|Any CPU.ActiveCfg = Release|Any CPU - {103DCD18-460F-4BEE-ACA1-AAD99A346D62}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {4B49FC7B-8A53-476E-B437-9B7F815639E0} - EndGlobalSection -EndGlobal diff --git a/solutions/Virtual-Assistant/src/csharp/VirtualAssistant.sln b/solutions/Virtual-Assistant/src/csharp/VirtualAssistant.sln index 0089aa87d5..1fc4b303c5 100644 --- a/solutions/Virtual-Assistant/src/csharp/VirtualAssistant.sln +++ b/solutions/Virtual-Assistant/src/csharp/VirtualAssistant.sln @@ -4,9 +4,25 @@ Microsoft Visual Studio Solution File, Format Version 12.00 VisualStudioVersion = 15.0.28010.0 MinimumVisualStudioVersion = 10.0.40219.1 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "VirtualAssistant", "assistant\VirtualAssistant.csproj", "{D207238E-C1C2-4449-9984-1BE1F15B9B35}" + ProjectSection(ProjectDependencies) = postProject + {6BD03130-4931-410F-83EB-03E37E17E2B9} = {6BD03130-4931-410F-83EB-03E37E17E2B9} + {2DF1C042-7544-4885-AFE4-E7010369A519} = {2DF1C042-7544-4885-AFE4-E7010369A519} + {ACB52D46-6553-44EF-89AE-D3038406FA1E} = {ACB52D46-6553-44EF-89AE-D3038406FA1E} + {3DE6A4B2-9241-4605-9E8C-BD17A1F71502} = {3DE6A4B2-9241-4605-9E8C-BD17A1F71502} + EndProjectSection EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Bot.Solutions", "Microsoft.Bot.Solutions\Microsoft.Bot.Solutions.csproj", "{0106AD2E-C570-42DF-B54B-3ACA50D58D80}" EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CalendarSkill", "skills\calendarskill\CalendarSkill.csproj", "{2DF1C042-7544-4885-AFE4-E7010369A519}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "EmailSkill", "skills\emailskill\EmailSkill.csproj", "{ACB52D46-6553-44EF-89AE-D3038406FA1E}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PointOfInterestSkill", "skills\pointofinterestskill\PointOfInterestSkill.csproj", "{6BD03130-4931-410F-83EB-03E37E17E2B9}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ToDoSkill", "skills\ToDoSkill\ToDoSkill.csproj", "{3DE6A4B2-9241-4605-9E8C-BD17A1F71502}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Skills", "Skills", "{5613E456-DD6D-4A16-AB48-D2F51CAC0526}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -21,10 +37,32 @@ Global {0106AD2E-C570-42DF-B54B-3ACA50D58D80}.Debug|Any CPU.Build.0 = Debug|Any CPU {0106AD2E-C570-42DF-B54B-3ACA50D58D80}.Release|Any CPU.ActiveCfg = Release|Any CPU {0106AD2E-C570-42DF-B54B-3ACA50D58D80}.Release|Any CPU.Build.0 = Release|Any CPU + {2DF1C042-7544-4885-AFE4-E7010369A519}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {2DF1C042-7544-4885-AFE4-E7010369A519}.Debug|Any CPU.Build.0 = Debug|Any CPU + {2DF1C042-7544-4885-AFE4-E7010369A519}.Release|Any CPU.ActiveCfg = Release|Any CPU + {2DF1C042-7544-4885-AFE4-E7010369A519}.Release|Any CPU.Build.0 = Release|Any CPU + {ACB52D46-6553-44EF-89AE-D3038406FA1E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {ACB52D46-6553-44EF-89AE-D3038406FA1E}.Debug|Any CPU.Build.0 = Debug|Any CPU + {ACB52D46-6553-44EF-89AE-D3038406FA1E}.Release|Any CPU.ActiveCfg = Release|Any CPU + {ACB52D46-6553-44EF-89AE-D3038406FA1E}.Release|Any CPU.Build.0 = Release|Any CPU + {6BD03130-4931-410F-83EB-03E37E17E2B9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {6BD03130-4931-410F-83EB-03E37E17E2B9}.Debug|Any CPU.Build.0 = Debug|Any CPU + {6BD03130-4931-410F-83EB-03E37E17E2B9}.Release|Any CPU.ActiveCfg = Release|Any CPU + {6BD03130-4931-410F-83EB-03E37E17E2B9}.Release|Any CPU.Build.0 = Release|Any CPU + {3DE6A4B2-9241-4605-9E8C-BD17A1F71502}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3DE6A4B2-9241-4605-9E8C-BD17A1F71502}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3DE6A4B2-9241-4605-9E8C-BD17A1F71502}.Release|Any CPU.ActiveCfg = Release|Any CPU + {3DE6A4B2-9241-4605-9E8C-BD17A1F71502}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection + GlobalSection(NestedProjects) = preSolution + {2DF1C042-7544-4885-AFE4-E7010369A519} = {5613E456-DD6D-4A16-AB48-D2F51CAC0526} + {ACB52D46-6553-44EF-89AE-D3038406FA1E} = {5613E456-DD6D-4A16-AB48-D2F51CAC0526} + {6BD03130-4931-410F-83EB-03E37E17E2B9} = {5613E456-DD6D-4A16-AB48-D2F51CAC0526} + {3DE6A4B2-9241-4605-9E8C-BD17A1F71502} = {5613E456-DD6D-4A16-AB48-D2F51CAC0526} + EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {7569C2D0-1323-45B5-8CFF-3ECACD9E0B82} EndGlobalSection diff --git a/solutions/Virtual-Assistant/src/csharp/assistant/VirtualAssistant.csproj b/solutions/Virtual-Assistant/src/csharp/assistant/VirtualAssistant.csproj index 6a227139cb..fe59f20546 100644 --- a/solutions/Virtual-Assistant/src/csharp/assistant/VirtualAssistant.csproj +++ b/solutions/Virtual-Assistant/src/csharp/assistant/VirtualAssistant.csproj @@ -11,7 +11,7 @@ - + @@ -109,10 +109,16 @@ + + - + + + Always + +