Skip to content
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

[AzureDeploy] Enable deploy button on newer samples #137

Merged
merged 30 commits into from
Jul 10, 2017
Merged
Changes from 1 commit
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
c9c347a
Renames
pcostantini May 19, 2017
4b59ae3
Link Node samples
pcostantini May 19, 2017
e36bbe8
Fix typo
pcostantini May 19, 2017
dfd7117
Link C# samples
pcostantini May 19, 2017
d43ea92
Fix lint issues
pcostantini May 22, 2017
ba3b6e1
Update to support Azure Deploy button
pcostantini May 22, 2017
4bab45f
Update to support Azure Deploy button
pcostantini May 22, 2017
1439c55
Update to support Azure Deploy button
pcostantini May 22, 2017
3b08400
Update to support Azure Deploy button
pcostantini May 22, 2017
4464636
Update to support Azure Deploy button
pcostantini May 22, 2017
873167a
Update to support Azure Deploy button
pcostantini May 22, 2017
15083a7
Merge remote-tracking branch 'remotes/origin/sample-payments-readmes'…
pcostantini May 23, 2017
8fec898
Update to support Azure Deploy button
pcostantini May 23, 2017
8a8ca9a
Merge remote-tracking branch 'remotes/origin/sample-payments-readmes'…
pcostantini May 23, 2017
8e8239d
Update to support Azure Deploy button
pcostantini May 23, 2017
38d700a
Update to support Azure Deploy button
pcostantini May 23, 2017
9bf9bbf
Update to support Azure Deploy button
pcostantini May 23, 2017
e948000
Update to support Azure Deploy button
pcostantini May 23, 2017
ff8a301
Update to support Azure Deploy button
pcostantini May 23, 2017
6358565
Update to support Azure Deploy button
pcostantini May 23, 2017
62ce826
Update to support Azure Deploy button
pcostantini May 23, 2017
0d346e4
Update to support Azure Deploy button
pcostantini May 23, 2017
af143b3
Merge remote-tracking branch 'origin/rollerskill-readmes' into azured…
pcostantini May 23, 2017
1e24191
Update to support Azure Deploy button
pcostantini May 23, 2017
64f80fd
Update to support Azure Deploy button
pcostantini May 23, 2017
b0bcb21
Update to support Azure Deploy button
pcostantini May 23, 2017
ad1c7c9
Update to support Azure Deploy button
pcostantini May 23, 2017
e210a8a
Merge branch 'master' into azuredeploy-updates
pcostantini Jun 23, 2017
f9def6d
Add default port
pcostantini Jun 23, 2017
6140d4e
Merge branch 'azuredeploy-updates'
pcostantini Jun 23, 2017
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Update to support Azure Deploy button
pcostantini committed May 23, 2017
commit 62ce826e53628c0087a12d4908f2433b77d06808
Original file line number Diff line number Diff line change
@@ -39,13 +39,16 @@
},
"Project": {
"type": "string",
"defaultValue": "CSharp/cards-RichCards"
"defaultValue": "CSharp/demo-CardsAttachments/public-TestBot"
},
"MicrosoftAppId": {
"type": "string"
},
"MicrosoftAppPassword": {
"type": "string"
},
"DirectLineSecret": {
"type": "string"
}
},
"resources": [
@@ -97,6 +100,10 @@
{
"name": "MicrosoftAppPassword",
"value": "[parameters('MicrosoftAppPassword')]"
},
{
"name": "DirectLineSecret",
"value": "[parameters('DirectLineSecret')]"
}
]
}
22 changes: 13 additions & 9 deletions CSharp/demo-CardsAttachments/public-TestBot/Assets/CSharpCode.xml
Original file line number Diff line number Diff line change
@@ -19,7 +19,8 @@
}
}.ToAttachment()
};
]]></command>
}
]]></command>
<command type="AudioCardScorable"><![CDATA[message.Attachments = new List<Attachment>
{
new AudioCard
@@ -58,15 +59,15 @@
Subtitle = "Your bots — wherever your users are talking",
Text = "Build and connect intelligent bots to interact with your users naturally wherever they are, from text/sms to Skype, Slack, Office 365 mail and other popular services.",
Images = new List<CardImage> { new CardImage("https://sec.ch9.ms/ch9/7ff5/e07cfef0-aa3b-40bb-9baa-7c9ef8ff7ff5/buildreactionbotframework_960.jpg") },
Buttons = new List<CardAction> { new CardAction(ActionTypes.OpenUrl, "Get Started", value: "https://docs.microsoft.com/bot-framework/") }
Buttons = new List<CardAction> { new CardAction(ActionTypes.OpenUrl, "Get Started", value: "https://docs.microsoft.com/bot-framework") }
}.ToAttachment(),
new ThumbnailCard
{
Title = "BotFramework Thumbnail Card",
Subtitle = "Your bots — wherever your users are talking",
Text = "Build and connect intelligent bots to interact with your users naturally wherever they are, from text/sms to Skype, Slack, Office 365 mail and other popular services.",
Images = new List<CardImage> { new CardImage("https://sec.ch9.ms/ch9/7ff5/e07cfef0-aa3b-40bb-9baa-7c9ef8ff7ff5/buildreactionbotframework_960.jpg") },
Buttons = new List<CardAction> { new CardAction(ActionTypes.OpenUrl, "Get Started", value: "https://docs.microsoft.com/bot-framework/") }
Buttons = new List<CardAction> { new CardAction(ActionTypes.OpenUrl, "Get Started", value: "https://docs.microsoft.com/bot-framework") }
}.ToAttachment(),
new AnimationCard
{
@@ -111,7 +112,8 @@
}
}.ToAttachment()
};
]]></command>
}
]]></command>
<command type="HeroCardScorable"><![CDATA[message.Attachments = new List<Attachment>
{
new HeroCard
@@ -120,10 +122,11 @@
Subtitle = "Your bots — wherever your users are talking",
Text = "Build and connect intelligent bots to interact with your users naturally wherever they are, from text/sms to Skype, Slack, Office 365 mail and other popular services.",
Images = new List<CardImage> { new CardImage("https://sec.ch9.ms/ch9/7ff5/e07cfef0-aa3b-40bb-9baa-7c9ef8ff7ff5/buildreactionbotframework_960.jpg") },
Buttons = new List<CardAction> { new CardAction(ActionTypes.OpenUrl, "Get Started", value: "https://docs.microsoft.com/bot-framework/") }
Buttons = new List<CardAction> { new CardAction(ActionTypes.OpenUrl, "Get Started", value: "https://docs.microsoft.com/bot-framework") }
}.ToAttachment()
};
]]></command>
}
]]></command>
<command type="ReceiptCardScorable"><![CDATA[message.Attachments = new List<Attachment>
{
new ReceiptCard
@@ -165,10 +168,11 @@
Subtitle = "Your bots — wherever your users are talking",
Text = "Build and connect intelligent bots to interact with your users naturally wherever they are, from text/sms to Skype, Slack, Office 365 mail and other popular services.",
Images = new List<CardImage> { new CardImage("https://sec.ch9.ms/ch9/7ff5/e07cfef0-aa3b-40bb-9baa-7c9ef8ff7ff5/buildreactionbotframework_960.jpg") },
Buttons = new List<CardAction> { new CardAction(ActionTypes.OpenUrl, "Get Started", value: "https://docs.microsoft.com/bot-framework/") }
Buttons = new List<CardAction> { new CardAction(ActionTypes.OpenUrl, "Get Started", value: "https://docs.microsoft.com/bot-framework") }
}.ToAttachment()
};
]]></command>
}
]]></command>
<command type="VideoCardScorable"><![CDATA[message.Attachments = new List<Attachment>
{
new VideoCard
@@ -199,4 +203,4 @@
}.ToAttachment()
};
]]></command>
</code>
</code>
48 changes: 26 additions & 22 deletions CSharp/demo-CardsAttachments/public-TestBot/TestBot.csproj
Original file line number Diff line number Diff line change
@@ -43,55 +43,55 @@
</PropertyGroup>
<ItemGroup>
<Reference Include="Autofac, Version=4.3.0.0, Culture=neutral, PublicKeyToken=17863af14b0044da, processorArchitecture=MSIL">
<HintPath>..\packages\Autofac.4.3.0\lib\net45\Autofac.dll</HintPath>
<HintPath>packages\Autofac.4.3.0\lib\net45\Autofac.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Chronic, Version=0.3.2.0, Culture=neutral, PublicKeyToken=3bd1f1ef638b0d3c, processorArchitecture=MSIL">
<HintPath>..\packages\Chronic.Signed.0.3.2\lib\net40\Chronic.dll</HintPath>
<HintPath>packages\Chronic.Signed.0.3.2\lib\net40\Chronic.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.Bot.Builder, Version=3.8.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Bot.Builder.3.8.0\lib\net46\Microsoft.Bot.Builder.dll</HintPath>
<HintPath>packages\Microsoft.Bot.Builder.3.8.0\lib\net46\Microsoft.Bot.Builder.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.Bot.Builder.Autofac, Version=3.8.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Bot.Builder.3.8.0\lib\net46\Microsoft.Bot.Builder.Autofac.dll</HintPath>
<HintPath>packages\Microsoft.Bot.Builder.3.8.0\lib\net46\Microsoft.Bot.Builder.Autofac.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.Bot.Connector, Version=3.8.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Bot.Builder.3.8.0\lib\net46\Microsoft.Bot.Connector.dll</HintPath>
<HintPath>packages\Microsoft.Bot.Builder.3.8.0\lib\net46\Microsoft.Bot.Connector.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="Microsoft.IdentityModel.Protocol.Extensions, Version=1.0.40306.1554, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.IdentityModel.Protocol.Extensions.1.0.4.403061554\lib\net45\Microsoft.IdentityModel.Protocol.Extensions.dll</HintPath>
<HintPath>packages\Microsoft.IdentityModel.Protocol.Extensions.1.0.4.403061554\lib\net45\Microsoft.IdentityModel.Protocol.Extensions.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.Rest.ClientRuntime, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Rest.ClientRuntime.2.3.4\lib\net45\Microsoft.Rest.ClientRuntime.dll</HintPath>
<HintPath>packages\Microsoft.Rest.ClientRuntime.2.3.4\lib\net45\Microsoft.Rest.ClientRuntime.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.Web.Infrastructure, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Web.Infrastructure.1.0.0.0\lib\net40\Microsoft.Web.Infrastructure.dll</HintPath>
<HintPath>packages\Microsoft.Web.Infrastructure.1.0.0.0\lib\net40\Microsoft.Web.Infrastructure.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.WindowsAzure.Configuration, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.WindowsAzure.ConfigurationManager.3.2.3\lib\net40\Microsoft.WindowsAzure.Configuration.dll</HintPath>
<HintPath>packages\Microsoft.WindowsAzure.ConfigurationManager.3.2.3\lib\net40\Microsoft.WindowsAzure.Configuration.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Newtonsoft.Json, Version=9.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<HintPath>..\packages\Newtonsoft.Json.9.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
<HintPath>packages\Newtonsoft.Json.9.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="System.IdentityModel.Tokens.Jwt, Version=4.0.40306.1554, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\System.IdentityModel.Tokens.Jwt.4.0.4.403061554\lib\net45\System.IdentityModel.Tokens.Jwt.dll</HintPath>
<HintPath>packages\System.IdentityModel.Tokens.Jwt.4.0.4.403061554\lib\net45\System.IdentityModel.Tokens.Jwt.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System.Net" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Net.Http.Formatting, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.WebApi.Client.5.2.3\lib\net45\System.Net.Http.Formatting.dll</HintPath>
<HintPath>packages\Microsoft.AspNet.WebApi.Client.5.2.3\lib\net45\System.Net.Http.Formatting.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System.Net.Http.WebRequest" />
@@ -106,35 +106,35 @@
<Reference Include="System.Drawing" />
<Reference Include="System.Web" />
<Reference Include="System.Web.Helpers, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.WebPages.3.2.3\lib\net45\System.Web.Helpers.dll</HintPath>
<HintPath>packages\Microsoft.AspNet.WebPages.3.2.3\lib\net45\System.Web.Helpers.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System.Web.Http, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.WebApi.Core.5.2.3\lib\net45\System.Web.Http.dll</HintPath>
<HintPath>packages\Microsoft.AspNet.WebApi.Core.5.2.3\lib\net45\System.Web.Http.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System.Web.Http.WebHost, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.WebApi.WebHost.5.2.3\lib\net45\System.Web.Http.WebHost.dll</HintPath>
<HintPath>packages\Microsoft.AspNet.WebApi.WebHost.5.2.3\lib\net45\System.Web.Http.WebHost.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System.Web.Mvc, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.Mvc.5.2.3\lib\net45\System.Web.Mvc.dll</HintPath>
<HintPath>packages\Microsoft.AspNet.Mvc.5.2.3\lib\net45\System.Web.Mvc.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System.Web.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.Razor.3.2.3\lib\net45\System.Web.Razor.dll</HintPath>
<HintPath>packages\Microsoft.AspNet.Razor.3.2.3\lib\net45\System.Web.Razor.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System.Web.WebPages, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.WebPages.3.2.3\lib\net45\System.Web.WebPages.dll</HintPath>
<HintPath>packages\Microsoft.AspNet.WebPages.3.2.3\lib\net45\System.Web.WebPages.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System.Web.WebPages.Deployment, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.WebPages.3.2.3\lib\net45\System.Web.WebPages.Deployment.dll</HintPath>
<HintPath>packages\Microsoft.AspNet.WebPages.3.2.3\lib\net45\System.Web.WebPages.Deployment.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.WebPages.3.2.3\lib\net45\System.Web.WebPages.Razor.dll</HintPath>
<HintPath>packages\Microsoft.AspNet.WebPages.3.2.3\lib\net45\System.Web.WebPages.Razor.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System.Xml" />
@@ -181,7 +181,9 @@
<Compile Include="Scorables\RichCards\VideoCardScorable.cs" />
</ItemGroup>
<ItemGroup>
<Content Include="packages.config" />
<Content Include="packages.config">
<SubType>Designer</SubType>
</Content>
<Content Include="Views\Chat\Index.cshtml" />
<Content Include="Views\Shared\Error.cshtml" />
<Content Include="Views\Shared\_Layout.cshtml" />
@@ -225,7 +227,9 @@
</VisualStudio>
</ProjectExtensions>
<PropertyGroup>
<PreBuildEvent>$(SolutionDir)\SourceTool\$(OutDir)\$(ConfigurationName)\SourceTool.exe $(ProjectDir)\Scorables $(ProjectDir)\Assets</PreBuildEvent>
<PreBuildEvent>if '$(WEBSITE_SITE_NAME)' == '' (
$(SolutionDir)\..\SourceTool\$(OutDir)\$(ConfigurationName)\SourceTool.exe $(ProjectDir)\Scorables $(ProjectDir)\Assets
)</PreBuildEvent>
</PropertyGroup>
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 14
VisualStudioVersion = 14.0.25420.1
# Visual Studio 15
VisualStudioVersion = 15.0.26403.7
MinimumVisualStudioVersion = 10.0.40219.1
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "README", "README", "{A53B6F49-13CC-4391-99BA-70BA466C744E}"
ProjectSection(SolutionItems) = preProject
README.md = README.md
..\README.md = ..\README.md
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TestBot", "public-TestBot\TestBot.csproj", "{A8BA1066-5695-4D71-ABB4-65E5A5E0C3D4}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TestBot", "TestBot.csproj", "{A8BA1066-5695-4D71-ABB4-65E5A5E0C3D4}"
ProjectSection(ProjectDependencies) = postProject
{CFDD8A1D-23A7-4C61-9C10-E3753436D3C4} = {CFDD8A1D-23A7-4C61-9C10-E3753436D3C4}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SourceTool", "SourceTool\SourceTool.csproj", "{CFDD8A1D-23A7-4C61-9C10-E3753436D3C4}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SourceTool", "..\SourceTool\SourceTool.csproj", "{CFDD8A1D-23A7-4C61-9C10-E3753436D3C4}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
5 changes: 3 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -37,7 +37,7 @@ Sample | Description | C# | Node
------------ | ------------- | :-----------: | :-----------:
Rich Cards | A sample bot to renders several types of cards as attachments. | [View Sample](/CSharp/cards-RichCards)[![Deploy to Azure][Deploy Button]][Deploy CSharp/RichCards] | [View Sample](/Node/cards-RichCards)[![Deploy to Azure][Deploy Button]][Deploy Node/RichCards]
Carousel of Cards | A sample bot that sends multiple rich card attachments in a single message using the Carousel layout. | [View Sample](/CSharp/cards-CarouselCards)[![Deploy to Azure][Deploy Button]][Deploy CSharp/CarouselCards] | [View Sample](/Node/cards-CarouselCards)[![Deploy to Azure][Deploy Button]][Deploy Node/CarouselCards]
Cards as Attachments | A sample bot that renders several types of cards as attachments, while also showing the generated JSON for each one of these cards at the message's payload. | [View Sample](/CSharp/demo-CardsAttachments) |
Cards as Attachments | A sample bot that renders several types of cards as attachments, while also showing the generated JSON for each one of these cards at the message's payload. | [View Sample](/CSharp/demo-CardsAttachments)[![Deploy to Azure][Deploy Button]][Deploy CSharp/DemoCardAttachements] |

## Intelligence
Build bots with powerful algorithms using Bing & Microsoft Cognitive Services APIs.
@@ -116,4 +116,5 @@ Skype Calling | A sample bot showing how to use the Skype Bot Plaform for Callin
[Deploy CSharp/GlobalMessageHandlers]: https://azuredeploy.net?repository=https://github.com/microsoft/BotBuilder-Samples/tree/master/CSharp/core-GlobalMessageHandlers
[Deploy CSharp/SimpleTaskAutomation]: https://azuredeploy.net?repository=https://github.com/microsoft/BotBuilder-Samples/tree/master/CSharp/capability-SimpleTaskAutomation
[Deploy CSharp/BlogCustomChannelData]: https://azuredeploy.net/?repository=https://github.com/microsoft/BotBuilder-Samples/tree/master/CSharp/Blog-CustomChannelData
[Deploy CSharp/MiddlewareLogging]: https://azuredeploy.net?repository=https://github.com/microsoft/BotBuilder-Samples/tree/master/CSharp/core-Middleware
[Deploy CSharp/MiddlewareLogging]: https://azuredeploy.net?repository=https://github.com/microsoft/BotBuilder-Samples/tree/master/CSharp/core-Middleware
[Deploy CSharp/DemoCardAttachements]: https://azuredeploy.net?repository=https://github.com/microsoft/BotBuilder-Samples/tree/master/CSharp/demo-CardsAttachments