1: Add NAudio library to handle audio stream. 2: Change Settings location. 3: Organize docker files.
This commit is contained in:
parent
6898d851f7
commit
1dad8be2be
|
|
@ -51,7 +51,8 @@ namespace BotSharp.Core.UnitTest
|
|||
|
||||
agents.ForEach(agentHeader => {
|
||||
var bot = new BotSharpAi();
|
||||
bot.RestoreAgent<AgentImporterInDialogflow>(dataPath);
|
||||
bot.LoadAgentFromFile(dataPath);
|
||||
bot.SaveAgentToDb();
|
||||
});
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -81,6 +81,7 @@
|
|||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\BotSharp.Core\BotSharp.Core.csproj" />
|
||||
<ProjectReference Include="..\BotSharp.Voice\BotSharp.Voice.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
|
|
|
|||
18
BotSharp.RestApi/Voice/WakeupWordController.cs
Normal file
18
BotSharp.RestApi/Voice/WakeupWordController.cs
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
using BotSharp.Voice;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace BotSharp.RestApi.Voice
|
||||
{
|
||||
[Route("[controller]/[action]")]
|
||||
public class WakeupWordController : ControllerBase
|
||||
{
|
||||
[HttpGet]
|
||||
public void Record()
|
||||
{
|
||||
new AudioCapture().Start();
|
||||
}
|
||||
}
|
||||
}
|
||||
14
BotSharp.Voice.UnitTest/AudioCaptureTest.cs
Normal file
14
BotSharp.Voice.UnitTest/AudioCaptureTest.cs
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
|
||||
namespace BotSharp.Voice.UnitTest
|
||||
{
|
||||
[TestClass]
|
||||
public class AudioCaptureTest
|
||||
{
|
||||
[TestMethod]
|
||||
public void TestMethod1()
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
21
BotSharp.Voice.UnitTest/BotSharp.Voice.UnitTest.csproj
Normal file
21
BotSharp.Voice.UnitTest/BotSharp.Voice.UnitTest.csproj
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
|
||||
<IsPackable>false</IsPackable>
|
||||
|
||||
<Configurations>Debug;Release;DIALOGFLOW;RASA</Configurations>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.8.0" />
|
||||
<PackageReference Include="MSTest.TestAdapter" Version="1.3.2" />
|
||||
<PackageReference Include="MSTest.TestFramework" Version="1.3.2" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\BotSharp.Voice\BotSharp.Voice.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
49
BotSharp.Voice/AudioCapture.cs
Normal file
49
BotSharp.Voice/AudioCapture.cs
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
using NAudio.Wave;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BotSharp.Voice
|
||||
{
|
||||
public class AudioCapture
|
||||
{
|
||||
public async void Start()
|
||||
{
|
||||
List<byte> bytes = new List<byte>();
|
||||
|
||||
object writeLock = new object();
|
||||
bool writeMore = true;
|
||||
var waveIn = new WaveInEvent();
|
||||
waveIn.DeviceNumber = 0;
|
||||
waveIn.WaveFormat = new WaveFormat(16000, 1);
|
||||
waveIn.DataAvailable +=
|
||||
(object sender, WaveInEventArgs args) =>
|
||||
{
|
||||
bytes.AddRange(args.Buffer);
|
||||
|
||||
lock (writeLock)
|
||||
{
|
||||
if (!writeMore) return;
|
||||
|
||||
}
|
||||
};
|
||||
waveIn.StartRecording();
|
||||
Console.WriteLine("Speak now.");
|
||||
await Task.Delay(TimeSpan.FromSeconds(3));
|
||||
// Stop recording and shut down.
|
||||
waveIn.StopRecording();
|
||||
|
||||
Console.WriteLine("Capture stopped.");
|
||||
|
||||
byte[] buffer = bytes.ToArray();
|
||||
|
||||
for (int i = 0; i < buffer.Length; i++)
|
||||
{
|
||||
|
||||
Console.WriteLine($"Buffer {i} ");
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -9,4 +9,13 @@
|
|||
<OutputPath>bin\RASA</OutputPath>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DIALOGFLOW|AnyCPU'">
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<Optimize>false</Optimize>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="NAudio" Version="1.8.4" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
|
|
|
|||
|
|
@ -27,11 +27,10 @@ namespace BotSharp.WebHost
|
|||
}
|
||||
|
||||
settingsFolder = Path.Combine(dir, "Settings");
|
||||
Console.WriteLine($"Settings folder: {settingsFolder}");
|
||||
Console.WriteLine($"Read settings from {settingsFolder}");
|
||||
var settings = Directory.GetFiles(settingsFolder, "*.json");
|
||||
settings.ToList().ForEach(setting =>
|
||||
{
|
||||
Console.WriteLine($"Read {setting}");
|
||||
config.AddJsonFile(setting, optional: false, reloadOnChange: true);
|
||||
});
|
||||
})
|
||||
|
|
|
|||
132
BotSharp.sln
132
BotSharp.sln
|
|
@ -23,70 +23,202 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BotSharp.Voice", "BotSharp.
|
|||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BotSharp.Vision", "BotSharp.Vision\BotSharp.Vision.csproj", "{75B02A7C-EDB3-4082-9C1F-471773E760C3}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BotSharp.Voice.UnitTest", "BotSharp.Voice.UnitTest\BotSharp.Voice.UnitTest.csproj", "{3F0CAAD4-564B-43FF-90BF-26AC47C9D677}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BotSharp.Algorithm.UnitTest", "BotSharp.Algorithm.UnitTest\BotSharp.Algorithm.UnitTest.csproj", "{3C702980-826B-4F7D-8D5A-C9F1C811AAE2}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BotSharp.NLP.UnitTest", "BotSharp.NLP.UnitTest\BotSharp.NLP.UnitTest.csproj", "{8A1F6277-FFCB-4CCD-B798-876D8BE525A9}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BotSharp.Core.UnitTest", "BotSharp.Core.UnitTest\BotSharp.Core.UnitTest.csproj", "{30F80E7D-951A-4E8F-9C3C-2C866528EABD}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Debug|x64 = Debug|x64
|
||||
DIALOGFLOW|Any CPU = DIALOGFLOW|Any CPU
|
||||
DIALOGFLOW|x64 = DIALOGFLOW|x64
|
||||
RASA|Any CPU = RASA|Any CPU
|
||||
RASA|x64 = RASA|x64
|
||||
Release|Any CPU = Release|Any CPU
|
||||
Release|x64 = Release|x64
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{95780673-2A1A-4953-962F-C46CBFDD07FF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{95780673-2A1A-4953-962F-C46CBFDD07FF}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{95780673-2A1A-4953-962F-C46CBFDD07FF}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{95780673-2A1A-4953-962F-C46CBFDD07FF}.Debug|x64.Build.0 = Debug|x64
|
||||
{95780673-2A1A-4953-962F-C46CBFDD07FF}.DIALOGFLOW|Any CPU.ActiveCfg = DIALOGFLOW|Any CPU
|
||||
{95780673-2A1A-4953-962F-C46CBFDD07FF}.DIALOGFLOW|Any CPU.Build.0 = DIALOGFLOW|Any CPU
|
||||
{95780673-2A1A-4953-962F-C46CBFDD07FF}.DIALOGFLOW|x64.ActiveCfg = DIALOGFLOW|x64
|
||||
{95780673-2A1A-4953-962F-C46CBFDD07FF}.DIALOGFLOW|x64.Build.0 = DIALOGFLOW|x64
|
||||
{95780673-2A1A-4953-962F-C46CBFDD07FF}.RASA|Any CPU.ActiveCfg = RASA|Any CPU
|
||||
{95780673-2A1A-4953-962F-C46CBFDD07FF}.RASA|Any CPU.Build.0 = RASA|Any CPU
|
||||
{95780673-2A1A-4953-962F-C46CBFDD07FF}.RASA|x64.ActiveCfg = RASA|x64
|
||||
{95780673-2A1A-4953-962F-C46CBFDD07FF}.RASA|x64.Build.0 = RASA|x64
|
||||
{95780673-2A1A-4953-962F-C46CBFDD07FF}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{95780673-2A1A-4953-962F-C46CBFDD07FF}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{95780673-2A1A-4953-962F-C46CBFDD07FF}.Release|x64.ActiveCfg = Release|x64
|
||||
{95780673-2A1A-4953-962F-C46CBFDD07FF}.Release|x64.Build.0 = Release|x64
|
||||
{80DDAA05-69BC-49DD-96A4-37345E7A2E20}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{80DDAA05-69BC-49DD-96A4-37345E7A2E20}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{80DDAA05-69BC-49DD-96A4-37345E7A2E20}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{80DDAA05-69BC-49DD-96A4-37345E7A2E20}.Debug|x64.Build.0 = Debug|x64
|
||||
{80DDAA05-69BC-49DD-96A4-37345E7A2E20}.DIALOGFLOW|Any CPU.ActiveCfg = DIALOGFLOW|Any CPU
|
||||
{80DDAA05-69BC-49DD-96A4-37345E7A2E20}.DIALOGFLOW|Any CPU.Build.0 = DIALOGFLOW|Any CPU
|
||||
{80DDAA05-69BC-49DD-96A4-37345E7A2E20}.DIALOGFLOW|x64.ActiveCfg = DIALOGFLOW|x64
|
||||
{80DDAA05-69BC-49DD-96A4-37345E7A2E20}.DIALOGFLOW|x64.Build.0 = DIALOGFLOW|x64
|
||||
{80DDAA05-69BC-49DD-96A4-37345E7A2E20}.RASA|Any CPU.ActiveCfg = RASA|Any CPU
|
||||
{80DDAA05-69BC-49DD-96A4-37345E7A2E20}.RASA|Any CPU.Build.0 = RASA|Any CPU
|
||||
{80DDAA05-69BC-49DD-96A4-37345E7A2E20}.RASA|x64.ActiveCfg = RASA|x64
|
||||
{80DDAA05-69BC-49DD-96A4-37345E7A2E20}.RASA|x64.Build.0 = RASA|x64
|
||||
{80DDAA05-69BC-49DD-96A4-37345E7A2E20}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{80DDAA05-69BC-49DD-96A4-37345E7A2E20}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{80DDAA05-69BC-49DD-96A4-37345E7A2E20}.Release|x64.ActiveCfg = Release|x64
|
||||
{80DDAA05-69BC-49DD-96A4-37345E7A2E20}.Release|x64.Build.0 = Release|x64
|
||||
{03DCA427-327A-4FC9-9A2F-57D17F16708C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{03DCA427-327A-4FC9-9A2F-57D17F16708C}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{03DCA427-327A-4FC9-9A2F-57D17F16708C}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{03DCA427-327A-4FC9-9A2F-57D17F16708C}.Debug|x64.Build.0 = Debug|x64
|
||||
{03DCA427-327A-4FC9-9A2F-57D17F16708C}.DIALOGFLOW|Any CPU.ActiveCfg = DIALOGFLOW|Any CPU
|
||||
{03DCA427-327A-4FC9-9A2F-57D17F16708C}.DIALOGFLOW|Any CPU.Build.0 = DIALOGFLOW|Any CPU
|
||||
{03DCA427-327A-4FC9-9A2F-57D17F16708C}.DIALOGFLOW|x64.ActiveCfg = DIALOGFLOW|x64
|
||||
{03DCA427-327A-4FC9-9A2F-57D17F16708C}.DIALOGFLOW|x64.Build.0 = DIALOGFLOW|x64
|
||||
{03DCA427-327A-4FC9-9A2F-57D17F16708C}.RASA|Any CPU.ActiveCfg = RASA|Any CPU
|
||||
{03DCA427-327A-4FC9-9A2F-57D17F16708C}.RASA|Any CPU.Build.0 = RASA|Any CPU
|
||||
{03DCA427-327A-4FC9-9A2F-57D17F16708C}.RASA|x64.ActiveCfg = RASA|x64
|
||||
{03DCA427-327A-4FC9-9A2F-57D17F16708C}.RASA|x64.Build.0 = RASA|x64
|
||||
{03DCA427-327A-4FC9-9A2F-57D17F16708C}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{03DCA427-327A-4FC9-9A2F-57D17F16708C}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{03DCA427-327A-4FC9-9A2F-57D17F16708C}.Release|x64.ActiveCfg = Release|x64
|
||||
{03DCA427-327A-4FC9-9A2F-57D17F16708C}.Release|x64.Build.0 = Release|x64
|
||||
{BE1A033F-AC14-4654-95C3-4B33AF8F6BBF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{BE1A033F-AC14-4654-95C3-4B33AF8F6BBF}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{BE1A033F-AC14-4654-95C3-4B33AF8F6BBF}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{BE1A033F-AC14-4654-95C3-4B33AF8F6BBF}.Debug|x64.Build.0 = Debug|x64
|
||||
{BE1A033F-AC14-4654-95C3-4B33AF8F6BBF}.DIALOGFLOW|Any CPU.ActiveCfg = DIALOGFLOW|Any CPU
|
||||
{BE1A033F-AC14-4654-95C3-4B33AF8F6BBF}.DIALOGFLOW|Any CPU.Build.0 = DIALOGFLOW|Any CPU
|
||||
{BE1A033F-AC14-4654-95C3-4B33AF8F6BBF}.DIALOGFLOW|x64.ActiveCfg = DIALOGFLOW|x64
|
||||
{BE1A033F-AC14-4654-95C3-4B33AF8F6BBF}.DIALOGFLOW|x64.Build.0 = DIALOGFLOW|x64
|
||||
{BE1A033F-AC14-4654-95C3-4B33AF8F6BBF}.RASA|Any CPU.ActiveCfg = RASA|Any CPU
|
||||
{BE1A033F-AC14-4654-95C3-4B33AF8F6BBF}.RASA|Any CPU.Build.0 = RASA|Any CPU
|
||||
{BE1A033F-AC14-4654-95C3-4B33AF8F6BBF}.RASA|x64.ActiveCfg = RASA|x64
|
||||
{BE1A033F-AC14-4654-95C3-4B33AF8F6BBF}.RASA|x64.Build.0 = RASA|x64
|
||||
{BE1A033F-AC14-4654-95C3-4B33AF8F6BBF}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{BE1A033F-AC14-4654-95C3-4B33AF8F6BBF}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{BE1A033F-AC14-4654-95C3-4B33AF8F6BBF}.Release|x64.ActiveCfg = Release|x64
|
||||
{BE1A033F-AC14-4654-95C3-4B33AF8F6BBF}.Release|x64.Build.0 = Release|x64
|
||||
{C2FDC855-BD88-4041-B0FF-3AA8A1C11A22}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{C2FDC855-BD88-4041-B0FF-3AA8A1C11A22}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{C2FDC855-BD88-4041-B0FF-3AA8A1C11A22}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{C2FDC855-BD88-4041-B0FF-3AA8A1C11A22}.Debug|x64.Build.0 = Debug|x64
|
||||
{C2FDC855-BD88-4041-B0FF-3AA8A1C11A22}.DIALOGFLOW|Any CPU.ActiveCfg = DIALOGFLOW|Any CPU
|
||||
{C2FDC855-BD88-4041-B0FF-3AA8A1C11A22}.DIALOGFLOW|Any CPU.Build.0 = DIALOGFLOW|Any CPU
|
||||
{C2FDC855-BD88-4041-B0FF-3AA8A1C11A22}.DIALOGFLOW|x64.ActiveCfg = DIALOGFLOW|x64
|
||||
{C2FDC855-BD88-4041-B0FF-3AA8A1C11A22}.DIALOGFLOW|x64.Build.0 = DIALOGFLOW|x64
|
||||
{C2FDC855-BD88-4041-B0FF-3AA8A1C11A22}.RASA|Any CPU.ActiveCfg = RASA|Any CPU
|
||||
{C2FDC855-BD88-4041-B0FF-3AA8A1C11A22}.RASA|Any CPU.Build.0 = RASA|Any CPU
|
||||
{C2FDC855-BD88-4041-B0FF-3AA8A1C11A22}.RASA|x64.ActiveCfg = RASA|x64
|
||||
{C2FDC855-BD88-4041-B0FF-3AA8A1C11A22}.RASA|x64.Build.0 = RASA|x64
|
||||
{C2FDC855-BD88-4041-B0FF-3AA8A1C11A22}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{C2FDC855-BD88-4041-B0FF-3AA8A1C11A22}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{C2FDC855-BD88-4041-B0FF-3AA8A1C11A22}.Release|x64.ActiveCfg = Release|x64
|
||||
{C2FDC855-BD88-4041-B0FF-3AA8A1C11A22}.Release|x64.Build.0 = Release|x64
|
||||
{184F8B93-68C2-4849-9625-4023C4360990}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{184F8B93-68C2-4849-9625-4023C4360990}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{184F8B93-68C2-4849-9625-4023C4360990}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{184F8B93-68C2-4849-9625-4023C4360990}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{184F8B93-68C2-4849-9625-4023C4360990}.DIALOGFLOW|Any CPU.ActiveCfg = DIALOGFLOW|Any CPU
|
||||
{184F8B93-68C2-4849-9625-4023C4360990}.DIALOGFLOW|Any CPU.Build.0 = DIALOGFLOW|Any CPU
|
||||
{184F8B93-68C2-4849-9625-4023C4360990}.DIALOGFLOW|x64.ActiveCfg = DIALOGFLOW|Any CPU
|
||||
{184F8B93-68C2-4849-9625-4023C4360990}.DIALOGFLOW|x64.Build.0 = DIALOGFLOW|Any CPU
|
||||
{184F8B93-68C2-4849-9625-4023C4360990}.RASA|Any CPU.ActiveCfg = RASA|Any CPU
|
||||
{184F8B93-68C2-4849-9625-4023C4360990}.RASA|Any CPU.Build.0 = RASA|Any CPU
|
||||
{184F8B93-68C2-4849-9625-4023C4360990}.RASA|x64.ActiveCfg = RASA|Any CPU
|
||||
{184F8B93-68C2-4849-9625-4023C4360990}.RASA|x64.Build.0 = RASA|Any CPU
|
||||
{184F8B93-68C2-4849-9625-4023C4360990}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{184F8B93-68C2-4849-9625-4023C4360990}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{184F8B93-68C2-4849-9625-4023C4360990}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{184F8B93-68C2-4849-9625-4023C4360990}.Release|x64.Build.0 = Release|Any CPU
|
||||
{75B02A7C-EDB3-4082-9C1F-471773E760C3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{75B02A7C-EDB3-4082-9C1F-471773E760C3}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{75B02A7C-EDB3-4082-9C1F-471773E760C3}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{75B02A7C-EDB3-4082-9C1F-471773E760C3}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{75B02A7C-EDB3-4082-9C1F-471773E760C3}.DIALOGFLOW|Any CPU.ActiveCfg = DIALOGFLOW|Any CPU
|
||||
{75B02A7C-EDB3-4082-9C1F-471773E760C3}.DIALOGFLOW|Any CPU.Build.0 = DIALOGFLOW|Any CPU
|
||||
{75B02A7C-EDB3-4082-9C1F-471773E760C3}.DIALOGFLOW|x64.ActiveCfg = DIALOGFLOW|Any CPU
|
||||
{75B02A7C-EDB3-4082-9C1F-471773E760C3}.DIALOGFLOW|x64.Build.0 = DIALOGFLOW|Any CPU
|
||||
{75B02A7C-EDB3-4082-9C1F-471773E760C3}.RASA|Any CPU.ActiveCfg = RASA|Any CPU
|
||||
{75B02A7C-EDB3-4082-9C1F-471773E760C3}.RASA|Any CPU.Build.0 = RASA|Any CPU
|
||||
{75B02A7C-EDB3-4082-9C1F-471773E760C3}.RASA|x64.ActiveCfg = RASA|Any CPU
|
||||
{75B02A7C-EDB3-4082-9C1F-471773E760C3}.RASA|x64.Build.0 = RASA|Any CPU
|
||||
{75B02A7C-EDB3-4082-9C1F-471773E760C3}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{75B02A7C-EDB3-4082-9C1F-471773E760C3}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{75B02A7C-EDB3-4082-9C1F-471773E760C3}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{75B02A7C-EDB3-4082-9C1F-471773E760C3}.Release|x64.Build.0 = Release|Any CPU
|
||||
{3F0CAAD4-564B-43FF-90BF-26AC47C9D677}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{3F0CAAD4-564B-43FF-90BF-26AC47C9D677}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{3F0CAAD4-564B-43FF-90BF-26AC47C9D677}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{3F0CAAD4-564B-43FF-90BF-26AC47C9D677}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{3F0CAAD4-564B-43FF-90BF-26AC47C9D677}.DIALOGFLOW|Any CPU.ActiveCfg = DIALOGFLOW|Any CPU
|
||||
{3F0CAAD4-564B-43FF-90BF-26AC47C9D677}.DIALOGFLOW|Any CPU.Build.0 = DIALOGFLOW|Any CPU
|
||||
{3F0CAAD4-564B-43FF-90BF-26AC47C9D677}.DIALOGFLOW|x64.ActiveCfg = Debug|Any CPU
|
||||
{3F0CAAD4-564B-43FF-90BF-26AC47C9D677}.DIALOGFLOW|x64.Build.0 = Debug|Any CPU
|
||||
{3F0CAAD4-564B-43FF-90BF-26AC47C9D677}.RASA|Any CPU.ActiveCfg = RASA|Any CPU
|
||||
{3F0CAAD4-564B-43FF-90BF-26AC47C9D677}.RASA|Any CPU.Build.0 = RASA|Any CPU
|
||||
{3F0CAAD4-564B-43FF-90BF-26AC47C9D677}.RASA|x64.ActiveCfg = Release|Any CPU
|
||||
{3F0CAAD4-564B-43FF-90BF-26AC47C9D677}.RASA|x64.Build.0 = Release|Any CPU
|
||||
{3F0CAAD4-564B-43FF-90BF-26AC47C9D677}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{3F0CAAD4-564B-43FF-90BF-26AC47C9D677}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{3F0CAAD4-564B-43FF-90BF-26AC47C9D677}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{3F0CAAD4-564B-43FF-90BF-26AC47C9D677}.Release|x64.Build.0 = Release|Any CPU
|
||||
{3C702980-826B-4F7D-8D5A-C9F1C811AAE2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{3C702980-826B-4F7D-8D5A-C9F1C811AAE2}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{3C702980-826B-4F7D-8D5A-C9F1C811AAE2}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{3C702980-826B-4F7D-8D5A-C9F1C811AAE2}.Debug|x64.Build.0 = Debug|x64
|
||||
{3C702980-826B-4F7D-8D5A-C9F1C811AAE2}.DIALOGFLOW|Any CPU.ActiveCfg = DIALOGFLOW|Any CPU
|
||||
{3C702980-826B-4F7D-8D5A-C9F1C811AAE2}.DIALOGFLOW|Any CPU.Build.0 = DIALOGFLOW|Any CPU
|
||||
{3C702980-826B-4F7D-8D5A-C9F1C811AAE2}.DIALOGFLOW|x64.ActiveCfg = DIALOGFLOW|x64
|
||||
{3C702980-826B-4F7D-8D5A-C9F1C811AAE2}.DIALOGFLOW|x64.Build.0 = DIALOGFLOW|x64
|
||||
{3C702980-826B-4F7D-8D5A-C9F1C811AAE2}.RASA|Any CPU.ActiveCfg = RASA|Any CPU
|
||||
{3C702980-826B-4F7D-8D5A-C9F1C811AAE2}.RASA|Any CPU.Build.0 = RASA|Any CPU
|
||||
{3C702980-826B-4F7D-8D5A-C9F1C811AAE2}.RASA|x64.ActiveCfg = RASA|x64
|
||||
{3C702980-826B-4F7D-8D5A-C9F1C811AAE2}.RASA|x64.Build.0 = RASA|x64
|
||||
{3C702980-826B-4F7D-8D5A-C9F1C811AAE2}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{3C702980-826B-4F7D-8D5A-C9F1C811AAE2}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{3C702980-826B-4F7D-8D5A-C9F1C811AAE2}.Release|x64.ActiveCfg = Release|x64
|
||||
{3C702980-826B-4F7D-8D5A-C9F1C811AAE2}.Release|x64.Build.0 = Release|x64
|
||||
{8A1F6277-FFCB-4CCD-B798-876D8BE525A9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{8A1F6277-FFCB-4CCD-B798-876D8BE525A9}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{8A1F6277-FFCB-4CCD-B798-876D8BE525A9}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{8A1F6277-FFCB-4CCD-B798-876D8BE525A9}.Debug|x64.Build.0 = Debug|x64
|
||||
{8A1F6277-FFCB-4CCD-B798-876D8BE525A9}.DIALOGFLOW|Any CPU.ActiveCfg = DIALOGFLOW|Any CPU
|
||||
{8A1F6277-FFCB-4CCD-B798-876D8BE525A9}.DIALOGFLOW|Any CPU.Build.0 = DIALOGFLOW|Any CPU
|
||||
{8A1F6277-FFCB-4CCD-B798-876D8BE525A9}.DIALOGFLOW|x64.ActiveCfg = DIALOGFLOW|x64
|
||||
{8A1F6277-FFCB-4CCD-B798-876D8BE525A9}.DIALOGFLOW|x64.Build.0 = DIALOGFLOW|x64
|
||||
{8A1F6277-FFCB-4CCD-B798-876D8BE525A9}.RASA|Any CPU.ActiveCfg = RASA|Any CPU
|
||||
{8A1F6277-FFCB-4CCD-B798-876D8BE525A9}.RASA|Any CPU.Build.0 = RASA|Any CPU
|
||||
{8A1F6277-FFCB-4CCD-B798-876D8BE525A9}.RASA|x64.ActiveCfg = RASA|x64
|
||||
{8A1F6277-FFCB-4CCD-B798-876D8BE525A9}.RASA|x64.Build.0 = RASA|x64
|
||||
{8A1F6277-FFCB-4CCD-B798-876D8BE525A9}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{8A1F6277-FFCB-4CCD-B798-876D8BE525A9}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{8A1F6277-FFCB-4CCD-B798-876D8BE525A9}.Release|x64.ActiveCfg = Release|x64
|
||||
{8A1F6277-FFCB-4CCD-B798-876D8BE525A9}.Release|x64.Build.0 = Release|x64
|
||||
{30F80E7D-951A-4E8F-9C3C-2C866528EABD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{30F80E7D-951A-4E8F-9C3C-2C866528EABD}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{30F80E7D-951A-4E8F-9C3C-2C866528EABD}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{30F80E7D-951A-4E8F-9C3C-2C866528EABD}.Debug|x64.Build.0 = Debug|x64
|
||||
{30F80E7D-951A-4E8F-9C3C-2C866528EABD}.DIALOGFLOW|Any CPU.ActiveCfg = DIALOGFLOW|Any CPU
|
||||
{30F80E7D-951A-4E8F-9C3C-2C866528EABD}.DIALOGFLOW|Any CPU.Build.0 = DIALOGFLOW|Any CPU
|
||||
{30F80E7D-951A-4E8F-9C3C-2C866528EABD}.DIALOGFLOW|x64.ActiveCfg = DIALOGFLOW|x64
|
||||
{30F80E7D-951A-4E8F-9C3C-2C866528EABD}.DIALOGFLOW|x64.Build.0 = DIALOGFLOW|x64
|
||||
{30F80E7D-951A-4E8F-9C3C-2C866528EABD}.RASA|Any CPU.ActiveCfg = RASA|Any CPU
|
||||
{30F80E7D-951A-4E8F-9C3C-2C866528EABD}.RASA|Any CPU.Build.0 = RASA|Any CPU
|
||||
{30F80E7D-951A-4E8F-9C3C-2C866528EABD}.RASA|x64.ActiveCfg = RASA|x64
|
||||
{30F80E7D-951A-4E8F-9C3C-2C866528EABD}.RASA|x64.Build.0 = RASA|x64
|
||||
{30F80E7D-951A-4E8F-9C3C-2C866528EABD}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{30F80E7D-951A-4E8F-9C3C-2C866528EABD}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{30F80E7D-951A-4E8F-9C3C-2C866528EABD}.Release|x64.ActiveCfg = Release|x64
|
||||
{30F80E7D-951A-4E8F-9C3C-2C866528EABD}.Release|x64.Build.0 = Release|x64
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
|
|
|||
|
|
@ -57,7 +57,7 @@ You can use docker compose to run BotSharp quickly, make sure you've got `Docker
|
|||
|
||||
PS D:\> git clone https://github.com/Oceania2018/BotSharp
|
||||
PS D:\> cd BotSharp
|
||||
PS D:\BotSharp\> docker-compose -f docker-compose-articulateui.yml up
|
||||
PS D:\BotSharp\> docker-compose -f dockerfiles/docker-compose-articulateui.yml up
|
||||
|
||||
Point your web browser at http://localhost:3000 and enjoy BotSharp with Articulate-UI.
|
||||
|
||||
|
|
|
|||
|
|
@ -4,12 +4,12 @@ WORKDIR /source
|
|||
|
||||
# copies the rest of your code
|
||||
COPY . .
|
||||
|
||||
# RUN dotnet build
|
||||
RUN dotnet publish BotSharp.WebHost/BotSharp.WebHost.csproj --configuration DIALOGFLOW --output /app
|
||||
|
||||
# copy Settings folder
|
||||
WORKDIR /app
|
||||
COPY Settings Settings
|
||||
RUN mkdir App_Data/Projects
|
||||
|
||||
# stage 2: run
|
||||
16
dockerfiles/RASA.Dockerfile
Normal file
16
dockerfiles/RASA.Dockerfile
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
# stage 1: build
|
||||
FROM microsoft/dotnet AS botsharp
|
||||
WORKDIR /source
|
||||
|
||||
# copies the rest of your code
|
||||
COPY . .
|
||||
|
||||
# RUN dotnet build
|
||||
RUN dotnet publish BotSharp.WebHost/BotSharp.WebHost.csproj --configuration RASA --output /app
|
||||
|
||||
# copy Settings folder
|
||||
WORKDIR /app
|
||||
RUN mkdir App_Data/Projects
|
||||
|
||||
# stage 2: run
|
||||
ENTRYPOINT [ "dotnet", "BotSharp.WebHost.dll" ]
|
||||
|
|
@ -1,37 +1,37 @@
|
|||
version: '3.0'
|
||||
|
||||
services:
|
||||
api:
|
||||
image: samtecspg/articulate-api:0.12.1
|
||||
ports: ['0.0.0.0:7500:7500']
|
||||
networks: ['botsharp-network']
|
||||
entrypoint: ['node', 'start.js']
|
||||
environment:
|
||||
- SWAGGER_BASE_PATH
|
||||
|
||||
ui:
|
||||
image: samtecspg/articulate-ui:0.12.1
|
||||
ports: ['0.0.0.0:3000:3000']
|
||||
networks: ['botsharp-network']
|
||||
environment:
|
||||
- rasanluendpoint=http://rasa:5000
|
||||
- API_URL
|
||||
|
||||
rasa:
|
||||
image: botsharpdocker/botsharp:latest
|
||||
ports: ['0.0.0.0:5000:5000']
|
||||
networks: ['botsharp-network']
|
||||
|
||||
duckling:
|
||||
image: samtecspg/duckling:0.1.6.0
|
||||
ports: ['0.0.0.0:8000:8000']
|
||||
networks: ['botsharp-network']
|
||||
|
||||
redis:
|
||||
image: redis:4.0.6-alpine
|
||||
ports: ['0.0.0.0:6379:6379']
|
||||
networks: ['botsharp-network']
|
||||
command: redis-server --appendonly yes
|
||||
|
||||
|
||||
networks: {botsharp-network: {}}
|
||||
version: '3.0'
|
||||
|
||||
services:
|
||||
api:
|
||||
image: samtecspg/articulate-api:0.12.1
|
||||
ports: ['0.0.0.0:7500:7500']
|
||||
networks: ['botsharp-network']
|
||||
entrypoint: ['node', 'start.js']
|
||||
environment:
|
||||
- SWAGGER_BASE_PATH
|
||||
|
||||
ui:
|
||||
image: samtecspg/articulate-ui:0.12.1
|
||||
ports: ['0.0.0.0:3000:3000']
|
||||
networks: ['botsharp-network']
|
||||
environment:
|
||||
- rasanluendpoint=http://rasa:5000
|
||||
- API_URL
|
||||
|
||||
rasa:
|
||||
image: botsharpdocker/botsharp:latest
|
||||
ports: ['0.0.0.0:5000:5000']
|
||||
networks: ['botsharp-network']
|
||||
|
||||
duckling:
|
||||
image: samtecspg/duckling:0.1.6.0
|
||||
ports: ['0.0.0.0:8000:8000']
|
||||
networks: ['botsharp-network']
|
||||
|
||||
redis:
|
||||
image: redis:4.0.6-alpine
|
||||
ports: ['0.0.0.0:6379:6379']
|
||||
networks: ['botsharp-network']
|
||||
command: redis-server --appendonly yes
|
||||
|
||||
|
||||
networks: {botsharp-network: {}}
|
||||
|
|
@ -1,17 +1,17 @@
|
|||
version: '3.0'
|
||||
|
||||
services:
|
||||
ui:
|
||||
image: botsharpdocker/botsharp-rasaui:latest
|
||||
ports: ['0.0.0.0:5001:5001']
|
||||
networks: ['botsharp-network']
|
||||
environment:
|
||||
- rasanluendpoint=http://botsharp:5000
|
||||
|
||||
botsharp:
|
||||
image: botsharpdocker/botsharp:latest
|
||||
ports: ['0.0.0.0:5000:5000']
|
||||
networks: ['botsharp-network']
|
||||
|
||||
|
||||
networks: {botsharp-network: {}}
|
||||
version: '3.0'
|
||||
|
||||
services:
|
||||
ui:
|
||||
image: botsharpdocker/botsharp-rasaui:latest
|
||||
ports: ['0.0.0.0:5001:5001']
|
||||
networks: ['botsharp-network']
|
||||
environment:
|
||||
- rasanluendpoint=http://botsharp:5000
|
||||
|
||||
botsharp:
|
||||
image: botsharpdocker/botsharp:latest
|
||||
ports: ['0.0.0.0:5000:5000']
|
||||
networks: ['botsharp-network']
|
||||
|
||||
|
||||
networks: {botsharp-network: {}}
|
||||
|
|
@ -12,8 +12,11 @@ You can use docker compose to run, make sure you've got `Docker`_ installed.
|
|||
|
||||
PS D:\> git clone https://github.com/Oceania2018/BotSharp
|
||||
PS D:\> cd BotSharp
|
||||
|
||||
1. Integrate with `Articulate UI`_
|
||||
|
||||
1. Integrate with `Botpress`_
|
||||
|
||||
|
||||
2. Integrate with `Articulate UI`_
|
||||
|
||||
::
|
||||
|
||||
|
|
@ -22,17 +25,17 @@ You can use docker compose to run, make sure you've got `Docker`_ installed.
|
|||
Point your web browser at http://localhost:3000 and enjoy Articulate-UI with BotSharp.
|
||||
|ArticulateHomeScreenshot|
|
||||
|
||||
2. Integrate with `Rasa UI`_, you can use docker compose to run.
|
||||
3. Integrate with `Rasa UI`_, you can use docker compose to run.
|
||||
|
||||
::
|
||||
|
||||
PS D:\BotSharp\> docker-compose -f docker-compose-rasaui.yml up
|
||||
PS D:\BotSharp\> docker-compose -f dockerfiles/docker-compose-rasaui.yml up
|
||||
|
||||
Point your web browser at http://localhost:5001 and enjoy Rasa-UI with BotSharp.
|
||||
|
||||
|RasaUIHomeScreenshot|
|
||||
|
||||
3. Integrate with `Rasa Talk`_
|
||||
4. Integrate with `Rasa Talk`_
|
||||
|
||||
|
||||
Building BotSharp
|
||||
|
|
@ -61,7 +64,7 @@ Build docker image:
|
|||
|
||||
::
|
||||
|
||||
PS D:\BotSharp\> docker build -t botsharp .
|
||||
PS D:\BotSharp\> docker build -f dockerfiles/DIALOGFLOW.Dockerfile -t botsharp .
|
||||
|
||||
Start a container:
|
||||
|
||||
|
|
@ -95,7 +98,7 @@ Use BotSharp.NLP as a natural language processing toolkit alone.
|
|||
|
||||
PM> Install-Package BotSharp.NLP
|
||||
|
||||
|
||||
.. _Botpress: https://github.com/botpress/botpress
|
||||
.. _Rasa UI: https://github.com/paschmann/rasa-ui
|
||||
.. _Articulate UI: https://spg.ai/projects/articulate
|
||||
.. _Rasa Talk: https://github.com/jackdh/RasaTalk
|
||||
|
|
|
|||
Loading…
Reference in a new issue