milestone 0.1

This commit is contained in:
Oceania2018 2018-04-29 22:09:32 -05:00
parent bea94b9d49
commit d511d84226
22 changed files with 324 additions and 155 deletions

1
.gitignore vendored
View file

@ -290,3 +290,4 @@ __pycache__/
/Bot.WebStarter/App_Data/bot-rasa.db
/Bot.WebStarter/App_Data/DbInitializer/Agents/Dialogflow/VirtualAssistant
/BotSharp.WebStarter/App_Data/DbInitializer/Agents/Dialogflow/VirtualAssistant
/BotSharp.UnitTest/App_Data/DbInitializer/Agents

View file

@ -16,20 +16,24 @@ namespace BotSharp.Core.Agents
[MaxLength(64)]
public String Name { get; set; }
[MaxLength(256)]
public String Description { get; set; }
public Boolean Published { get; set; }
[MaxLength(3)]
public String Language { get; set; }
/// <summary>
/// Only access text/ audio rquest
/// </summary>
[StringLength(32)]
public String ClientAccessToken { get; set; }
/// <summary>
/// Developer can access more APIs
/// </summary>
[StringLength(32)]
public String DeveloperAccessToken { get; set; }
[ForeignKey("AgentId")]

View file

@ -14,6 +14,9 @@ using System.Text;
namespace BotSharp.Core.Engines
{
/// <summary>
/// Rasa nlu 0.11.x
/// </summary>
public class RasaAi
{
public Database dc { get; set; }

View file

@ -56,6 +56,13 @@ namespace BotSharp.Core.Engines
var result = CallRasa(rasa.agent.Id, request.Query.First(), rasa.agent.Id);
if (result.Data.IntentRanking == null)
{
result.Data.IntentRanking = new List<RasaResponseIntent>
{
result.Data.Intent
};
}
result.Data.IntentRanking = result.Data.IntentRanking.Where(x => intents.Select(i => i.Name).Contains(x.Name)).ToList();
result.Data.Intent = result.Data.IntentRanking.First();
response = result.Data;

View file

@ -17,7 +17,7 @@ namespace BotSharp.Core.Intents
[StringLength(36)]
public String AgentId { get; set; }
[MaxLength(32)]
[MaxLength(64)]
public String Name { get; set; }
[MaxLength(256)]

View file

@ -1,28 +0,0 @@
using Microsoft.EntityFrameworkCore;
using System;
using System.Linq;
using EntityFrameworkCore.BootKit;
using DotNetToolkit;
namespace BotSharp.Core.Loader
{
public class DbInitializer : IInitializationLoader
{
public int Priority => 1;
public void Initialize()
{
var dc = new DefaultDataContextLoader().GetDefaultDc();
var instances = TypeHelper.GetInstanceWithInterface<IHookDbInitializer>(Database.Assemblies).OrderBy(x => x.Priority).ToList();
for (int idx = 0; idx < instances.Count; idx++)
{
DateTime start = DateTime.UtcNow;
Console.WriteLine($"{instances[idx].ToString()} P:{instances[idx].Priority} started at {DateTime.UtcNow}");
int effected = dc.DbTran(() => instances[idx].Load(Database.Configuration, dc));
Console.WriteLine($"{instances[idx].ToString()} effected [{effected}] records in {(DateTime.UtcNow - start).TotalMilliseconds} ms");
}
}
}
}

View file

@ -1,27 +0,0 @@
using EntityFrameworkCore.BootKit;
using Microsoft.Extensions.Configuration;
using System;
using System.Collections.Generic;
using System.Text;
namespace BotSharp.Core.Loader
{
/// <summary>
/// Initialize data for modules
/// </summary>
public interface IHookDbInitializer
{
/// <summary>
/// value smaller is higher priority
/// </summary>
int Priority { get; }
/// <summary>
/// Load data
/// </summary>
/// <param name="config"></param>
/// <param name="dc"></param>
/// <returns></returns>
void Load(IConfiguration config, Database dc);
}
}

View file

@ -1,13 +0,0 @@
using System.Text;
namespace BotSharp.Core.Loader
{
/// <summary>
/// Implement a customzied loader
/// </summary>
public interface IInitializationLoader
{
int Priority { get; }
void Initialize();
}
}

View file

@ -1,34 +0,0 @@
using DotNetToolkit;
using EntityFrameworkCore.BootKit;
using Microsoft.Extensions.Configuration;
using System;
using System.Collections.Generic;
using System.Text;
namespace BotSharp.Core.Loader
{
public class InitializationLoader
{
public void Load()
{
DateTime startAll = DateTime.UtcNow;
Console.WriteLine();
Console.WriteLine($"*** *** *** *** InitializationLoader running *** *** *** ***");
Console.WriteLine();
var coreLoaders = TypeHelper.GetInstanceWithInterface<IInitializationLoader>(Database.Assemblies);
coreLoaders.ForEach(loader =>
{
DateTime start = DateTime.UtcNow;
Console.WriteLine($"{loader.ToString()} P:{loader.Priority}...");
loader.Initialize();
Console.WriteLine($"{loader.ToString()} completed in {(DateTime.UtcNow - start).TotalSeconds} s.");
Console.WriteLine();
});
Console.WriteLine($"*** *** *** *** InitializationLoader completed in {(DateTime.UtcNow - startAll).TotalSeconds} s. *** *** *** ***");
Console.WriteLine();
}
}
}

View file

@ -1,26 +0,0 @@
using BotSharp.Core.Agents;
using BotSharp.Core.Intents;
using Microsoft.AspNetCore.Mvc;
using System;
using System.Collections.Generic;
using System.Text;
namespace BotSharp.Core.RestApi
{
public class IntentController : EssentialController
{
/// <summary>
/// User intent, a intent is connected to a dialog flow.
/// </summary>
/// <param name="agentId"></param>
/// <param name="intent"></param>
/// <returns></returns>
[HttpPost("{agentId}")]
public string CreateIntent([FromRoute] String agentId, [FromBody] Intent intent)
{
var agent = dc.Agent(agentId);
return intent.Id;
}
}
}

View file

@ -14,7 +14,7 @@ namespace BotSharp.UnitTest
public class AgentTest : TestEssential
{
[TestMethod]
public void CreateAgentTes()
public void CreateAgentTest()
{
var agent = new Agent
{
@ -63,7 +63,9 @@ namespace BotSharp.UnitTest
var rasa = new RasaAi(dc, config);
rasa.agent = rasa.LoadAgent();
rasa.Train(dc);
string msg = rasa.Train(dc);
Assert.IsTrue(!String.IsNullOrEmpty(msg));
}
}
}

View file

@ -6,6 +6,232 @@
<IsPackable>false</IsPackable>
</PropertyGroup>
<ItemGroup>
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\agent.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\entities\Affiliate.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\entities\Affiliate_entries_en.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\entities\CallerPosition.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\entities\CallerPosition_entries_en.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\entities\Client.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\entities\Client_entries_en.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\entities\ServiceCategory.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\entities\ServiceCategory_entries_en.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\entities\ServiceCode.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\entities\ServiceCode_entries_en.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\entities\ServiceType.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\entities\ServiceType_entries_en.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\entities\UserName.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\entities\UserName_entries_en.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Affiliate Picked up - yes.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Affiliate Picked up - yes_usersays_en.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Affiliate Picked up.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Affiliate Picked up_usersays_en.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Affiliate Telling Available Time.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Affiliate Telling Available Time_usersays_en.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Confirm Service Type - no.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Confirm Service Type - no_usersays_en.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Confirm Service Type - yes.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Confirm Service Type - yes_usersays_en.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Create Work Order.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Create Work Order_usersays_en.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Default Fallback Intent.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Default Welcome Intent.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Start Schedule.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Start Schedule_usersays_en.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Caller Name.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Caller Name_usersays_en.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Caller Position.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Caller Position_usersays_en.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Service Category - no.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Service Category - no_usersays_en.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Service Category - yes.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Service Category - yes_usersays_en.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Service Category.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Service Category_usersays_en.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Store Number - no.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Store Number - no_usersays_en.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Store Number - yes.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Store Number - yes_usersays_en.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Store Number.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Store Number_usersays_en.json" />
<None Remove="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\package.json" />
<None Remove="App_Data\DbInitializer\Agents\Rasa\2b6a288e-d891-40c6-96ce-6a0cf324545c.json" />
<None Remove="Settings\settings.app.json" />
<None Remove="Settings\settings.auth.json" />
<None Remove="Settings\settings.aws.json" />
<None Remove="Settings\settings.bot.json" />
<None Remove="Settings\settings.db.json" />
<None Remove="Settings\settings.swagger.json" />
</ItemGroup>
<ItemGroup>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\agent.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\entities\Affiliate.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\entities\Affiliate_entries_en.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\entities\CallerPosition.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\entities\CallerPosition_entries_en.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\entities\Client.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\entities\Client_entries_en.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\entities\ServiceCategory.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\entities\ServiceCategory_entries_en.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\entities\ServiceCode.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\entities\ServiceCode_entries_en.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\entities\ServiceType.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\entities\ServiceType_entries_en.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\entities\UserName.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\entities\UserName_entries_en.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Affiliate Picked up - yes.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Affiliate Picked up - yes_usersays_en.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Affiliate Picked up.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Affiliate Picked up_usersays_en.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Affiliate Telling Available Time.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Affiliate Telling Available Time_usersays_en.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Confirm Service Type - no.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Confirm Service Type - no_usersays_en.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Confirm Service Type - yes.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Confirm Service Type - yes_usersays_en.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Create Work Order.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Create Work Order_usersays_en.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Default Fallback Intent.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Default Welcome Intent.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Start Schedule.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Start Schedule_usersays_en.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Caller Name.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Caller Name_usersays_en.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Caller Position.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Caller Position_usersays_en.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Service Category - no.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Service Category - no_usersays_en.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Service Category - yes.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Service Category - yes_usersays_en.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Service Category.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Service Category_usersays_en.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Store Number - no.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Store Number - no_usersays_en.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Store Number - yes.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Store Number - yes_usersays_en.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Store Number.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\intents\Telling Store Number_usersays_en.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Dialogflow\VirtualAssistant\package.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="App_Data\DbInitializer\Agents\Rasa\2b6a288e-d891-40c6-96ce-6a0cf324545c.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="Settings\settings.app.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="Settings\settings.auth.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="Settings\settings.aws.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="Settings\settings.bot.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="Settings\settings.db.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
<Content Include="Settings\settings.swagger.json">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</Content>
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.Extensions.Configuration" Version="2.0.1" />
<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="2.0.1" />
@ -22,4 +248,8 @@
<Service Include="{82a7f48d-3b50-4b1e-b82e-3ada8210c358}" />
</ItemGroup>
<ItemGroup>
<Folder Include="App_Data\DbInitializer\Agents\Dialogflow\Voicebot\" />
</ItemGroup>
</Project>

View file

@ -17,9 +17,6 @@ namespace BotSharp.UnitTest
config.SessionId = Guid.NewGuid().ToString();
var rasa = new RasaAi(dc, config);
var response = rasa.TextRequest(new AIRequest { Query = new String[] { "Hello" } });
Assert.IsTrue(response.Result.Metadata.IntentName == "greeting");
}
}
}

View file

@ -0,0 +1,15 @@
{
"Logging": {
"IncludeScopes": false,
"Debug": {
"LogLevel": {
"Default": "Warning"
}
},
"Console": {
"LogLevel": {
"Default": "Warning"
}
}
}
}

View file

@ -0,0 +1,11 @@
{
"TokenAuthentication": {
"SecretKey": "QEMYOjgkNEq/krV1Ouzz8w==",
"Subject": "OpenBotKit",
"Issuer": "Haiping Chen",
"Audience": "Haiping Chen",
"TokenPath": "/token",
"CookieName": "token",
"LoginPath": "/login"
}
}

View file

@ -0,0 +1,10 @@
{
"AWS": {
"AWSRegionEndPoint": "us-east-1",
"AWSSecretKey": "",
"AWSAccessKey": "",
"AWSEncoding": "utf-8",
"SESVerifiedEmail": "",
"AWSBucketPrefix": ""
}
}

View file

@ -0,0 +1,5 @@
{
"Rasa": {
"Host": "http://rasa.local:5000"
}
}

View file

@ -0,0 +1,10 @@
{
"Database": {
"Default": "SqlServer",
"ConnectionStrings": {
"InMemory": "DataSource=:memory:",
"Sqlite": "Data Source=|DataDirectory|BotSharp.db;",
"SqlServer": "Data Source=(localdb)\\MSSQLLocalDB;Initial Catalog=BotSharp;Integrated Security=True;Connect Timeout=15;Encrypt=False;TrustServerCertificate=True;ApplicationIntent=ReadWrite;MultiSubnetFailover=False"
}
}
}

View file

@ -0,0 +1,12 @@
{
"Swagger": {
"Version": "v1",
"Title": "Open Chatbot Kit",
"Description": "OpenBotKit API",
"TermsOfService": "MIT",
"Contact": {
"Name": "Haiping Chen",
"Email": "haiping008@gmail.com"
}
}
}

View file

@ -10,17 +10,17 @@ namespace BotSharp.UnitTest
{
public abstract class TestEssential
{
public static String BOT_ID = "2b6a288e-d891-40c6-96ce-6a0cf324545c";
public static String BOT_ID = "fd9f1b29-fed8-4c68-8fda-69ab463da126";
public static String BOT_CLIENT_TOKEN = "23a53c46d6244840bbb10c89c171d299";
public static String BOT_DEVELOPER_TOKEN = "d86103f446d049ff8d5f506e8dfe5f3f";
public static String BOT_NAME = "VirtualAssistant";
public static String BOT_NAME = "Voicebot";
protected Database dc { get; set; }
protected string contentRoot;
public TestEssential()
{
contentRoot = $"{Directory.GetCurrentDirectory()}\\..\\..\\..\\..\\Bot.WebStarter";
contentRoot = $"{Directory.GetCurrentDirectory()}\\..\\..\\..\\";
ConfigurationBuilder configurationBuilder = new ConfigurationBuilder();
var settings = Directory.GetFiles(contentRoot + "/Settings/", "*.json");

View file

@ -14,17 +14,13 @@
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.All" Version="2.0.6" />
<PackageReference Include="Swashbuckle.AspNetCore.Swagger" Version="2.3.0" />
<PackageReference Include="Swashbuckle.AspNetCore.SwaggerGen" Version="2.3.0" />
<PackageReference Include="Swashbuckle.AspNetCore.SwaggerUI" Version="2.3.0" />
<PackageReference Include="Swashbuckle.AspNetCore.Swagger" Version="2.4.0" />
<PackageReference Include="Swashbuckle.AspNetCore.SwaggerGen" Version="2.4.0" />
<PackageReference Include="Swashbuckle.AspNetCore.SwaggerUI" Version="2.4.0" />
</ItemGroup>
<ItemGroup>
<DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="2.0.1" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\BotSharp.RestApi\BotSharp.RestApi.csproj" />
</ItemGroup>
</Project>

View file

@ -7,9 +7,7 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BotSharp.UnitTest", "BotSha
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BotSharp.Core", "BotSharp.Core\BotSharp.Core.csproj", "{95780673-2A1A-4953-962F-C46CBFDD07FF}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BotSharp.RestApi", "BotSharp.RestApi\BotSharp.RestApi.csproj", "{A1DDFCE9-10A1-45AF-8F1C-DE0A9145BA48}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BotSharp.WebStarter", "BotSharp.WebStarter\BotSharp.WebStarter.csproj", "{C1B91383-D548-4906-BEB8-FED7E320731B}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DotNetToolkit", "..\DotNetToolkit\DotNetToolkit\DotNetToolkit.csproj", "{AF20AEA3-8922-4CDC-B0E3-4DD085B9954C}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@ -25,14 +23,10 @@ Global
{95780673-2A1A-4953-962F-C46CBFDD07FF}.Debug|Any CPU.Build.0 = Debug|Any CPU
{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
{A1DDFCE9-10A1-45AF-8F1C-DE0A9145BA48}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{A1DDFCE9-10A1-45AF-8F1C-DE0A9145BA48}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A1DDFCE9-10A1-45AF-8F1C-DE0A9145BA48}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A1DDFCE9-10A1-45AF-8F1C-DE0A9145BA48}.Release|Any CPU.Build.0 = Release|Any CPU
{C1B91383-D548-4906-BEB8-FED7E320731B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C1B91383-D548-4906-BEB8-FED7E320731B}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C1B91383-D548-4906-BEB8-FED7E320731B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C1B91383-D548-4906-BEB8-FED7E320731B}.Release|Any CPU.Build.0 = Release|Any CPU
{AF20AEA3-8922-4CDC-B0E3-4DD085B9954C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{AF20AEA3-8922-4CDC-B0E3-4DD085B9954C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{AF20AEA3-8922-4CDC-B0E3-4DD085B9954C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{AF20AEA3-8922-4CDC-B0E3-4DD085B9954C}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE