diff --git a/OpenJibo/OpenJibo.slnx b/OpenJibo/OpenJibo.slnx
index 5d552a1..c94631d 100644
--- a/OpenJibo/OpenJibo.slnx
+++ b/OpenJibo/OpenJibo.slnx
@@ -3,12 +3,17 @@
+
+
+
+
+
diff --git a/OpenJibo/docs/feature-backlog.md b/OpenJibo/docs/feature-backlog.md
index b6a83be..f6d5802 100644
--- a/OpenJibo/docs/feature-backlog.md
+++ b/OpenJibo/docs/feature-backlog.md
@@ -734,6 +734,7 @@ Current release theme:
- added memory/transcript category hint plumbing for provider requests (sports/technology/business/general)
- fallback synthetic news behavior remains active when no provider key is configured
- added TTL caching for weather/news provider calls to reduce repeated external requests
+ - vendored Pegasus `report-skill` templates for weather and personal-report phrasing so the next pass can focus on renderer coverage for calendar, commute, and news templates instead of rediscovering source text
- Source anchors:
- `C:\Projects\jibo\pegasus\packages\report-skill\src\subskills\weather\WeatherMimLogic.ts`
- `C:\Projects\jibo\pegasus\packages\report-skill\resources\views\weatherHiLo.json`
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Application/Abstractions/IJiboExperienceContentRepository.cs b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Application/Abstractions/IJiboExperienceContentRepository.cs
index 594c7de..6cd0e99 100644
--- a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Application/Abstractions/IJiboExperienceContentRepository.cs
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Application/Abstractions/IJiboExperienceContentRepository.cs
@@ -22,6 +22,14 @@ public sealed class JiboExperienceCatalog
public IReadOnlyList PizzaReplies { get; init; } = [];
public IReadOnlyList SurpriseReplies { get; init; } = [];
public IReadOnlyList PersonalReportReplies { get; init; } = [];
+ public IReadOnlyList PersonalReportKickOffReplies { get; init; } = [];
+ public IReadOnlyList PersonalReportOutroReplies { get; init; } = [];
+ public IReadOnlyList ReportSkillTemplates { get; init; } = [];
+ public IReadOnlyList WeatherIntroReplies { get; init; } = [];
+ public IReadOnlyList WeatherTomorrowIntroReplies { get; init; } = [];
+ public IReadOnlyList WeatherTodayHighLowReplies { get; init; } = [];
+ public IReadOnlyList WeatherTomorrowHighLowReplies { get; init; } = [];
+ public IReadOnlyList WeatherServiceDownReplies { get; init; } = [];
public IReadOnlyList WeatherReplies { get; init; } = [];
public IReadOnlyList CalendarReplies { get; init; } = [];
public IReadOnlyList CommuteReplies { get; init; } = [];
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Application/Services/JiboInteractionService.cs b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Application/Services/JiboInteractionService.cs
index ec94393..4b99d97 100644
--- a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Application/Services/JiboInteractionService.cs
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Application/Services/JiboInteractionService.cs
@@ -812,6 +812,7 @@ public sealed class JiboInteractionService(
CancellationToken cancellationToken)
{
var referenceLocalTime = TryResolveReferenceLocalTime(turn);
+ var catalog = await contentCache.GetCatalogAsync(cancellationToken);
var normalizedTranscript = NormalizeCommandPhrase(transcript);
var locationQuery = TryResolveWeatherLocationQuery(transcript);
var weatherDate = ResolveWeatherDateEntity(turn, transcript, normalizedTranscript, referenceLocalTime);
@@ -834,7 +835,7 @@ public sealed class JiboInteractionService(
{
return new JiboInteractionDecision(
"weather",
- "I can check weather once my weather service is connected.");
+ ChooseWeatherServiceDownReply(catalog));
}
var weatherCoordinates = string.IsNullOrWhiteSpace(locationQuery)
@@ -939,10 +940,10 @@ public sealed class JiboInteractionService(
{
return new JiboInteractionDecision(
"weather",
- "I couldn't fetch the weather right now. Please try again.");
+ ChooseWeatherServiceDownReply(catalog));
}
- var spokenReply = BuildWeatherSpokenReply(snapshot, weatherDate);
+ var spokenReply = BuildWeatherSpokenReply(snapshot, weatherDate, catalog);
var weatherPayload = BuildWeatherSkillPayload(spokenReply, snapshot, referenceLocalTime);
AddWeatherRequestDiagnostics(
weatherPayload,
@@ -962,7 +963,8 @@ public sealed class JiboInteractionService(
private static string BuildWeatherSpokenReply(
WeatherReportSnapshot snapshot,
- WeatherDateEntity weatherDate)
+ WeatherDateEntity weatherDate,
+ JiboExperienceCatalog catalog)
{
var unit = snapshot.UseCelsius ? "Celsius" : "Fahrenheit";
var summary = string.IsNullOrWhiteSpace(snapshot.Summary)
@@ -974,24 +976,74 @@ public sealed class JiboInteractionService(
if (weatherDate.ForecastDayOffset > 0)
{
- var highText = snapshot.HighTemperature is null
- ? null
- : $"a high near {snapshot.HighTemperature.Value} degrees {unit}";
- var lowText = snapshot.LowTemperature is null
- ? null
- : $"a low around {snapshot.LowTemperature.Value} degrees {unit}";
- var tempRange = highText is null && lowText is null
- ? string.Empty
- : highText is not null && lowText is not null
- ? $" with {highText} and {lowText}"
- : $" with {highText ?? lowText}";
- var forecastLeadIn = string.IsNullOrWhiteSpace(weatherDate.ForecastLeadIn)
+ if (weatherDate.ForecastDayOffset != 1)
+ {
+ var highText = snapshot.HighTemperature is null
+ ? null
+ : $"a high near {snapshot.HighTemperature.Value} degrees {unit}";
+ var lowText = snapshot.LowTemperature is null
+ ? null
+ : $"a low around {snapshot.LowTemperature.Value} degrees {unit}";
+ var tempRange = highText is null && lowText is null
+ ? string.Empty
+ : highText is not null && lowText is not null
+ ? $" with {highText} and {lowText}"
+ : $" with {highText ?? lowText}";
+ var forecastLeadIn = string.IsNullOrWhiteSpace(weatherDate.ForecastLeadIn)
+ ? "Tomorrow"
+ : weatherDate.ForecastLeadIn;
+ return $"Let's look at the weather. {forecastLeadIn} in {location}, it looks {summary}{tempRange}.";
+ }
+
+ var highValue = snapshot.HighTemperature ?? snapshot.Temperature;
+ var lowValue = snapshot.LowTemperature ?? snapshot.Temperature;
+ var introTemplate = ChooseWeatherTemplate(
+ catalog.WeatherTomorrowIntroReplies,
+ "Let's look at the weather.");
+ var highLowTemplate = ChooseWeatherTemplate(
+ catalog.WeatherTomorrowHighLowReplies,
+ "Tomorrow's high will be ${skill.weather.tomorrow.highTemp} and the low will be ${skill.weather.tomorrow.lowTemp}.");
+ var intro = RenderWeatherTemplate(
+ introTemplate,
+ location,
+ summary,
+ highValue,
+ lowValue,
+ unit,
+ forecastLeadIn: weatherDate.ForecastLeadIn ?? string.Empty);
+ var highLow = RenderWeatherTemplate(
+ highLowTemplate,
+ location,
+ summary,
+ highValue,
+ lowValue,
+ unit,
+ forecastLeadIn: weatherDate.ForecastLeadIn ?? string.Empty);
+ var forecastSentenceLeadIn = string.IsNullOrWhiteSpace(weatherDate.ForecastLeadIn)
? "Tomorrow"
: weatherDate.ForecastLeadIn;
- return $"{forecastLeadIn} in {location}, it looks {summary}{tempRange}.";
+ return $"{intro} {forecastSentenceLeadIn} in {location}, it looks {summary}. {highLow}";
}
- return $"Right now in {location}, it's {summary}, around {snapshot.Temperature} degrees {unit}.";
+ var currentIntro = RenderWeatherTemplate(
+ ChooseWeatherTemplate(catalog.WeatherIntroReplies, "For your weather."),
+ location,
+ summary,
+ snapshot.Temperature,
+ snapshot.Temperature,
+ unit,
+ forecastLeadIn: string.Empty);
+ var currentHighLow = RenderWeatherTemplate(
+ ChooseWeatherTemplate(
+ catalog.WeatherTodayHighLowReplies,
+ "Today's high is ${skill.weather.today.highTemp}, and the low is ${skill.weather.today.lowTemp}."),
+ location,
+ summary,
+ snapshot.HighTemperature ?? snapshot.Temperature,
+ snapshot.LowTemperature ?? snapshot.Temperature,
+ unit,
+ forecastLeadIn: string.Empty);
+ return $"{currentIntro} In {location}, it's {summary} and {snapshot.Temperature} degrees {unit}. {currentHighLow}";
}
private static string BuildWeeklyForecastSpokenReply(
@@ -1338,6 +1390,50 @@ public sealed class JiboInteractionService(
return "Normal";
}
+ private static string ChooseWeatherTemplate(IReadOnlyList templates, string fallback)
+ {
+ var usableTemplates = templates.Where(static template => !string.IsNullOrWhiteSpace(template)).ToArray();
+ if (usableTemplates.Length == 0)
+ {
+ return fallback;
+ }
+
+ return usableTemplates[0];
+ }
+
+ private static string RenderWeatherTemplate(
+ string template,
+ string location,
+ string summary,
+ int? highTemperature,
+ int? lowTemperature,
+ string unit,
+ string forecastLeadIn)
+ {
+ var rendered = template
+ .Replace("${skill.weather.today.highTemp}", highTemperature?.ToString(CultureInfo.InvariantCulture) ?? string.Empty, StringComparison.OrdinalIgnoreCase)
+ .Replace("${skill.weather.today.lowTemp}", lowTemperature?.ToString(CultureInfo.InvariantCulture) ?? string.Empty, StringComparison.OrdinalIgnoreCase)
+ .Replace("${skill.weather.tomorrow.highTemp}", highTemperature?.ToString(CultureInfo.InvariantCulture) ?? string.Empty, StringComparison.OrdinalIgnoreCase)
+ .Replace("${skill.weather.tomorrow.lowTemp}", lowTemperature?.ToString(CultureInfo.InvariantCulture) ?? string.Empty, StringComparison.OrdinalIgnoreCase)
+ .Replace("${skill.weather.summary}", summary, StringComparison.OrdinalIgnoreCase)
+ .Replace("${skill.weather.location}", location, StringComparison.OrdinalIgnoreCase)
+ .Replace("${skill.weather.prefix}", string.IsNullOrWhiteSpace(forecastLeadIn) ? string.Empty : forecastLeadIn, StringComparison.OrdinalIgnoreCase)
+ .Replace("{high}", highTemperature?.ToString(CultureInfo.InvariantCulture) ?? string.Empty, StringComparison.OrdinalIgnoreCase)
+ .Replace("{low}", lowTemperature?.ToString(CultureInfo.InvariantCulture) ?? string.Empty, StringComparison.OrdinalIgnoreCase)
+ .Replace("{unit}", unit, StringComparison.OrdinalIgnoreCase)
+ .Trim();
+
+ return rendered;
+ }
+
+ private string ChooseWeatherServiceDownReply(JiboExperienceCatalog catalog)
+ {
+ var template = ChooseWeatherTemplate(
+ catalog.WeatherServiceDownReplies,
+ "I can't access weather info right now, sorry.");
+ return template.Trim();
+ }
+
private static string EscapeForEsml(string value)
{
return value
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Application/Services/PersonalReportOrchestrator.cs b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Application/Services/PersonalReportOrchestrator.cs
index 00e14a1..e3a2760 100644
--- a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Application/Services/PersonalReportOrchestrator.cs
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Application/Services/PersonalReportOrchestrator.cs
@@ -269,11 +269,19 @@ internal static class PersonalReportOrchestrator
Func> buildWeatherDecisionAsync,
CancellationToken cancellationToken)
{
- var reportSections = new List { $"Great, {userName}. Here is your personal report." };
+ var reportSections = new List
+ {
+ RenderPersonalReportTemplate(
+ ChoosePersonalReportTemplate(
+ catalog.PersonalReportKickOffReplies,
+ "Okay. Here's your personal report."),
+ userName)
+ };
var serviceError = string.Empty;
if (toggles.WeatherEnabled)
{
+ reportSections.Add("First, your weather.");
var weatherDecision = await buildWeatherDecisionAsync(turn, "weather", cancellationToken);
reportSections.Add(weatherDecision.ReplyText);
if (IsWeatherErrorReply(weatherDecision.ReplyText))
@@ -297,7 +305,12 @@ internal static class PersonalReportOrchestrator
reportSections.Add(randomizer.Choose(catalog.NewsBriefings));
}
- reportSections.Add("That is your personal report.");
+ reportSections.Add(
+ RenderPersonalReportTemplate(
+ ChoosePersonalReportTemplate(
+ catalog.PersonalReportOutroReplies,
+ "And that's your report for the day. I hope you had as much fun as I did."),
+ userName));
return new JiboInteractionDecision(
"personal_report_delivered",
@@ -657,4 +670,31 @@ internal static class PersonalReportOrchestrator
bool CalendarEnabled,
bool CommuteEnabled,
bool NewsEnabled);
+
+ private static string ChoosePersonalReportTemplate(
+ IReadOnlyList templates,
+ string fallback)
+ {
+ var usableTemplates = templates
+ .Where(static template => !string.IsNullOrWhiteSpace(template) && !template.Contains("${dt.", StringComparison.OrdinalIgnoreCase))
+ .ToArray();
+
+ if (usableTemplates.Length == 0)
+ {
+ return fallback;
+ }
+
+ var speakerAwareTemplate = usableTemplates.FirstOrDefault(static template =>
+ template.Contains("${speaker}", StringComparison.OrdinalIgnoreCase));
+ return speakerAwareTemplate ?? usableTemplates[0];
+ }
+
+ private static string RenderPersonalReportTemplate(string template, string userName)
+ {
+ return template
+ .Replace("${speaker}", userName, StringComparison.OrdinalIgnoreCase)
+ .Replace("${speaker}'s", $"{userName}'s", StringComparison.OrdinalIgnoreCase)
+ .Replace(" ", " ", StringComparison.Ordinal)
+ .Trim();
+ }
}
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/InMemoryJiboExperienceContentRepository.cs b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/InMemoryJiboExperienceContentRepository.cs
index 4f09d79..8f86c33 100644
--- a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/InMemoryJiboExperienceContentRepository.cs
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/InMemoryJiboExperienceContentRepository.cs
@@ -75,6 +75,45 @@ public sealed class InMemoryJiboExperienceContentRepository : IJiboExperienceCon
"I heard your personal report request. That cloud path is still being mapped.",
"Personal report is recognized, but I am not ready to deliver the real report yet."
],
+ PersonalReportKickOffReplies =
+ [
+ "Okay. Here's your personal report.",
+ "Sure. Here it is."
+ ],
+ PersonalReportOutroReplies =
+ [
+ "And that's your report for the day. I hope you had as much fun as I did.",
+ "That wraps up your report for the day. Hope you have a good one."
+ ],
+ ReportSkillTemplates =
+ [
+ "The report-skill templates are loaded and waiting to be rendered."
+ ],
+ WeatherIntroReplies =
+ [
+ "For your weather.",
+ "Let's look at the weather."
+ ],
+ WeatherTomorrowIntroReplies =
+ [
+ "First, the weather tomorrow.",
+ "Looking at tomorrow's weather."
+ ],
+ WeatherTodayHighLowReplies =
+ [
+ "Today's high is {high}, and the low is {low}.",
+ "It'll be a high today of {high}, and a low of {low}."
+ ],
+ WeatherTomorrowHighLowReplies =
+ [
+ "Tomorrow's high will be {high} and the low will be {low}.",
+ "It'll be a high tomorrow of {high} and a low of {low}."
+ ],
+ WeatherServiceDownReplies =
+ [
+ "Looks like our weather service is offline. Sorry.",
+ "Looks like I can't access weather info right now, sorry."
+ ],
WeatherReplies =
[
"I heard your weather request. We still need to wire the real provider behind it.",
@@ -122,6 +161,7 @@ public sealed class InMemoryJiboExperienceContentRepository : IJiboExperienceCon
{
Path.Combine(AppContext.BaseDirectory, "Content", "LegacyMims", "BuildA"),
Path.Combine(AppContext.BaseDirectory, "Content", "LegacyMims", "BuildB"),
+ Path.Combine(AppContext.BaseDirectory, "Content", "LegacyMims", "ReportSkill"),
Path.GetFullPath(Path.Combine(
AppContext.BaseDirectory,
"..",
@@ -151,7 +191,22 @@ public sealed class InMemoryJiboExperienceContentRepository : IJiboExperienceCon
"Jibo.Cloud.Infrastructure",
"Content",
"LegacyMims",
- "BuildB"))
+ "BuildB")),
+ Path.GetFullPath(Path.Combine(
+ AppContext.BaseDirectory,
+ "..",
+ "..",
+ "..",
+ "..",
+ "..",
+ "src",
+ "Jibo.Cloud",
+ "dotnet",
+ "src",
+ "Jibo.Cloud.Infrastructure",
+ "Content",
+ "LegacyMims",
+ "ReportSkill"))
};
return candidates.Where(Directory.Exists).ToArray();
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMimCatalogImporter.cs b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMimCatalogImporter.cs
index 85efd60..f31f7b2 100644
--- a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMimCatalogImporter.cs
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMimCatalogImporter.cs
@@ -72,7 +72,7 @@ public static class LegacyMimCatalogImporter
foreach (var prompt in definition.Prompts)
{
- var text = NormalizePrompt(prompt.Prompt);
+ var text = NormalizePrompt(prompt.Prompt, preservePlaceholders: IsTemplateBucket(bucket.Value));
if (string.IsNullOrWhiteSpace(text))
{
continue;
@@ -129,6 +129,55 @@ public static class LegacyMimCatalogImporter
return LegacyMimBucket.Emotion;
}
+ if (fileName.StartsWith("WeatherIntroTomorrow", StringComparison.OrdinalIgnoreCase))
+ {
+ return LegacyMimBucket.WeatherTomorrowIntro;
+ }
+
+ if (fileName.StartsWith("WeatherIntro", StringComparison.OrdinalIgnoreCase))
+ {
+ return LegacyMimBucket.WeatherIntro;
+ }
+
+ if (fileName.StartsWith("WeatherTomorrowHighLow", StringComparison.OrdinalIgnoreCase))
+ {
+ return LegacyMimBucket.WeatherTomorrowHighLow;
+ }
+
+ if (fileName.StartsWith("WeatherTodayHighLow", StringComparison.OrdinalIgnoreCase))
+ {
+ return LegacyMimBucket.WeatherTodayHighLow;
+ }
+
+ if (fileName.StartsWith("WeatherServiceDown", StringComparison.OrdinalIgnoreCase))
+ {
+ return LegacyMimBucket.WeatherServiceDown;
+ }
+
+ if (fileName.StartsWith("Weather", StringComparison.OrdinalIgnoreCase) ||
+ string.Equals(fileName, "WetNowDryLater", StringComparison.OrdinalIgnoreCase))
+ {
+ return LegacyMimBucket.ReportSkillTemplate;
+ }
+
+ if (fileName.StartsWith("PersonalReportKickOff", StringComparison.OrdinalIgnoreCase))
+ {
+ return LegacyMimBucket.PersonalReportKickOff;
+ }
+
+ if (fileName.StartsWith("PersonalReportOutro", StringComparison.OrdinalIgnoreCase))
+ {
+ return LegacyMimBucket.PersonalReportOutro;
+ }
+
+ if (fileName.StartsWith("PersonalReport", StringComparison.OrdinalIgnoreCase) ||
+ fileName.Contains("Calendar", StringComparison.OrdinalIgnoreCase) ||
+ fileName.Contains("Commute", StringComparison.OrdinalIgnoreCase) ||
+ fileName.Contains("News", StringComparison.OrdinalIgnoreCase))
+ {
+ return LegacyMimBucket.ReportSkillTemplate;
+ }
+
if (fileName.StartsWith("JBO_DoYouLikeBeingJibo", StringComparison.OrdinalIgnoreCase) ||
fileName.StartsWith("JBO_WhatIsJibo", StringComparison.OrdinalIgnoreCase) ||
fileName.StartsWith("JBO_WhoAreYou", StringComparison.OrdinalIgnoreCase) ||
@@ -170,6 +219,11 @@ public static class LegacyMimCatalogImporter
}
private static string NormalizePrompt(string? prompt)
+ {
+ return NormalizePrompt(prompt, preservePlaceholders: false);
+ }
+
+ private static string NormalizePrompt(string? prompt, bool preservePlaceholders)
{
if (string.IsNullOrWhiteSpace(prompt))
{
@@ -177,7 +231,10 @@ public static class LegacyMimCatalogImporter
}
var text = WebUtility.HtmlDecode(prompt);
- text = PlaceholderPattern.Replace(text, " ");
+ if (!preservePlaceholders)
+ {
+ text = PlaceholderPattern.Replace(text, " ");
+ }
text = LegacyMarkupPattern.Replace(text, " ");
text = WhitespacePattern.Replace(text, " ").Trim();
text = SpaceBeforePunctuationPattern.Replace(text, "$1");
@@ -201,6 +258,14 @@ public static class LegacyMimCatalogImporter
PizzaReplies = Merge(baseCatalog.PizzaReplies, importedCatalog.PizzaReplies),
SurpriseReplies = Merge(baseCatalog.SurpriseReplies, importedCatalog.SurpriseReplies),
PersonalReportReplies = Merge(baseCatalog.PersonalReportReplies, importedCatalog.PersonalReportReplies),
+ PersonalReportKickOffReplies = Merge(baseCatalog.PersonalReportKickOffReplies, importedCatalog.PersonalReportKickOffReplies),
+ PersonalReportOutroReplies = Merge(baseCatalog.PersonalReportOutroReplies, importedCatalog.PersonalReportOutroReplies),
+ ReportSkillTemplates = Merge(baseCatalog.ReportSkillTemplates, importedCatalog.ReportSkillTemplates),
+ WeatherIntroReplies = Merge(baseCatalog.WeatherIntroReplies, importedCatalog.WeatherIntroReplies),
+ WeatherTomorrowIntroReplies = Merge(baseCatalog.WeatherTomorrowIntroReplies, importedCatalog.WeatherTomorrowIntroReplies),
+ WeatherTodayHighLowReplies = Merge(baseCatalog.WeatherTodayHighLowReplies, importedCatalog.WeatherTodayHighLowReplies),
+ WeatherTomorrowHighLowReplies = Merge(baseCatalog.WeatherTomorrowHighLowReplies, importedCatalog.WeatherTomorrowHighLowReplies),
+ WeatherServiceDownReplies = Merge(baseCatalog.WeatherServiceDownReplies, importedCatalog.WeatherServiceDownReplies),
WeatherReplies = Merge(baseCatalog.WeatherReplies, importedCatalog.WeatherReplies),
CalendarReplies = Merge(baseCatalog.CalendarReplies, importedCatalog.CalendarReplies),
CommuteReplies = Merge(baseCatalog.CommuteReplies, importedCatalog.CommuteReplies),
@@ -274,7 +339,15 @@ public static class LegacyMimCatalogImporter
Greeting,
HowAreYou,
Emotion,
- Personality
+ Personality,
+ PersonalReportKickOff,
+ PersonalReportOutro,
+ WeatherIntro,
+ WeatherTomorrowIntro,
+ WeatherTodayHighLow,
+ WeatherTomorrowHighLow,
+ WeatherServiceDown,
+ ReportSkillTemplate
}
private sealed class LegacyMimCatalogBuilder
@@ -284,6 +357,14 @@ public static class LegacyMimCatalogImporter
private readonly List _emotionReplies = [];
private readonly List _personalities = [];
private readonly List _fallbacks = [];
+ private readonly List _personalReportKickOffReplies = [];
+ private readonly List _personalReportOutroReplies = [];
+ private readonly List _reportSkillTemplates = [];
+ private readonly List _weatherIntroReplies = [];
+ private readonly List _weatherTomorrowIntroReplies = [];
+ private readonly List _weatherTodayHighLowReplies = [];
+ private readonly List _weatherTomorrowHighLowReplies = [];
+ private readonly List _weatherServiceDownReplies = [];
public void Add(LegacyMimBucket bucket, string? condition, string text)
{
@@ -336,6 +417,30 @@ public static class LegacyMimCatalogImporter
_personalities.Add(text);
return;
+ case LegacyMimBucket.PersonalReportKickOff:
+ AddDistinct(_personalReportKickOffReplies, text);
+ return;
+ case LegacyMimBucket.PersonalReportOutro:
+ AddDistinct(_personalReportOutroReplies, text);
+ return;
+ case LegacyMimBucket.WeatherIntro:
+ AddDistinct(_weatherIntroReplies, text);
+ return;
+ case LegacyMimBucket.WeatherTomorrowIntro:
+ AddDistinct(_weatherTomorrowIntroReplies, text);
+ return;
+ case LegacyMimBucket.WeatherTodayHighLow:
+ AddDistinct(_weatherTodayHighLowReplies, text);
+ return;
+ case LegacyMimBucket.WeatherTomorrowHighLow:
+ AddDistinct(_weatherTomorrowHighLowReplies, text);
+ return;
+ case LegacyMimBucket.WeatherServiceDown:
+ AddDistinct(_weatherServiceDownReplies, text);
+ return;
+ case LegacyMimBucket.ReportSkillTemplate:
+ AddDistinct(_reportSkillTemplates, text);
+ return;
default:
throw new ArgumentOutOfRangeException(nameof(bucket), bucket, null);
}
@@ -349,9 +454,27 @@ public static class LegacyMimCatalogImporter
HowAreYouReplies = [.. _howAreYous],
EmotionReplies = [.. _emotionReplies],
PersonalityReplies = [.. _personalities],
- GenericFallbackReplies = [.. _fallbacks]
+ GenericFallbackReplies = [.. _fallbacks],
+ PersonalReportKickOffReplies = [.. _personalReportKickOffReplies],
+ PersonalReportOutroReplies = [.. _personalReportOutroReplies],
+ ReportSkillTemplates = [.. _reportSkillTemplates],
+ WeatherIntroReplies = [.. _weatherIntroReplies],
+ WeatherTomorrowIntroReplies = [.. _weatherTomorrowIntroReplies],
+ WeatherTodayHighLowReplies = [.. _weatherTodayHighLowReplies],
+ WeatherTomorrowHighLowReplies = [.. _weatherTomorrowHighLowReplies],
+ WeatherServiceDownReplies = [.. _weatherServiceDownReplies]
};
}
+
+ private static void AddDistinct(List target, string text)
+ {
+ if (target.Any(value => string.Equals(value, text, StringComparison.OrdinalIgnoreCase)))
+ {
+ return;
+ }
+
+ target.Add(text);
+ }
}
private sealed class LegacyMimDefinition
@@ -402,4 +525,16 @@ public static class LegacyMimCatalogImporter
return WhitespacePattern.Replace(condition.Trim(), " ");
}
+
+ private static bool IsTemplateBucket(LegacyMimBucket bucket)
+ {
+ return bucket is LegacyMimBucket.PersonalReportKickOff
+ or LegacyMimBucket.PersonalReportOutro
+ or LegacyMimBucket.WeatherIntro
+ or LegacyMimBucket.WeatherTomorrowIntro
+ or LegacyMimBucket.WeatherTodayHighLow
+ or LegacyMimBucket.WeatherTomorrowHighLow
+ or LegacyMimBucket.WeatherServiceDown
+ or LegacyMimBucket.ReportSkillTemplate;
+ }
}
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarAppSetup.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarAppSetup.mim
new file mode 100644
index 0000000..02cf8d0
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarAppSetup.mim
@@ -0,0 +1,62 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "To hear what's on your calendar, you need to connect your calendar in the Jibo app . It's in the personal report section.",
+ "media": "TTS",
+ "prompt_id": "CalendarAppSetup_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "If you want to hear what's on your calendar, you need to set up at least one calendar in the Jibo app , in the Personal Report settings.",
+ "media": "TTS",
+ "prompt_id": "CalendarAppSetup_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.singleSkill",
+ "prompt": "${speaker} to hear what's on your calendar, you need to connect your calendar in the Jibo app . It's in the personal report section.",
+ "media": "TTS",
+ "prompt_id": "CalendarAppSetup_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.singleSkill",
+ "prompt": "${speaker} if you want to hear what's on your calendar, you need to set up at least one calendar in the Jibo app , in the Personal Report settings.",
+ "media": "TTS",
+ "prompt_id": "CalendarAppSetup_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarEarlyEvent.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarEarlyEvent.mim
new file mode 100644
index 0000000..d391f8c
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarEarlyEvent.mim
@@ -0,0 +1,73 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "That's a bit earlier than you usually start work.",
+ "media": "TTS",
+ "prompt_id": "CalendarEarlyEvent_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "That's a little earlier than you usually start work.",
+ "media": "TTS",
+ "prompt_id": "CalendarEarlyEvent_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "That's an earlier start than your normal day.",
+ "media": "TTS",
+ "prompt_id": "CalendarEarlyEvent_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "That's a bit of an early start for you.",
+ "media": "TTS",
+ "prompt_id": "CalendarEarlyEvent_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "That's a little earlier than your day usually starts.",
+ "media": "TTS",
+ "prompt_id": "CalendarEarlyEvent_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarEventCountToday.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarEventCountToday.mim
new file mode 100644
index 0000000..652fecc
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarEventCountToday.mim
@@ -0,0 +1,205 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1",
+ "prompt": "${speaker} looking at your calendar, you have one item on the docket today.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1",
+ "prompt": "Checking your calendar today ${speaker}, I see you have just one thing coming.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1",
+ "prompt": "${speaker} taking a look at your calendar for today, I'm seeing one thing.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1",
+ "prompt": "${speaker} checking your calendar, I see just one thing scheduled today.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1",
+ "prompt": "Looking at your calendar ${speaker}, you have one thing coming up today.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1",
+ "prompt": "${speaker} on your calendar today, I see one thing.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "(skill.calendar.numEventsToday > 1) && (skill.calendar.numEventsToday <= 5)",
+ "prompt": "Looking at your calendar ${speaker}, you have ${skill.calendar.numEventsToday} things on the schedule today.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "(skill.calendar.numEventsToday > 1) && (skill.calendar.numEventsToday <= 5)",
+ "prompt": "${speaker} checking your calendar today, I see you have ${skill.calendar.numEventsToday} things coming.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "(skill.calendar.numEventsToday > 1) && (skill.calendar.numEventsToday <= 5)",
+ "prompt": "${speaker} taking a look at your calendar for today, I'm seeing ${skill.calendar.numEventsToday} things.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "(skill.calendar.numEventsToday > 1) && (skill.calendar.numEventsToday <= 5)",
+ "prompt": "Checking your calendar ${speaker}, I see ${skill.calendar.numEventsToday} things scheduled today.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "(skill.calendar.numEventsToday > 1) && (skill.calendar.numEventsToday <= 5)",
+ "prompt": "${speaker} looking at your calendar, you have ${skill.calendar.numEventsToday} things today.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "(skill.calendar.numEventsToday > 1) && (skill.calendar.numEventsToday <= 5)",
+ "prompt": "${speaker} checking your calendar, I see ${skill.calendar.numEventsToday} items today.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday > 5",
+ "prompt": "Looking at your calendar ${speaker}, I see you have ${skill.calendar.numEventsToday} items on it. That's kind of a lot. Here are the first five.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday > 5",
+ "prompt": "${speaker} checking your calendar today, you have ${skill.calendar.numEventsToday} things. I'll just give you the first five.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday > 5",
+ "prompt": "${speaker} I'm seeing ${skill.calendar.numEventsToday} things on your calendar. That's more than I like to list, so I'll just give you the first five.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday > 5",
+ "prompt": "Taking a look at your calendar ${speaker}, I see ${skill.calendar.numEventsToday} things. I'll just give you the first five.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_16",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday > 5",
+ "prompt": "${speaker} checking your calendar, looks like you have ${skill.calendar.numEventsToday} things. Very busy! I'll tell you the first five.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_17",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarEventCountTomorrow.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarEventCountTomorrow.mim
new file mode 100644
index 0000000..1620c28
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarEventCountTomorrow.mim
@@ -0,0 +1,205 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsTomorrow === 1",
+ "prompt": "You have one item on the docket ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsTomorrow === 1",
+ "prompt": "You have just one thing ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsTomorrow === 1",
+ "prompt": "I'm seeing one thing ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsTomorrow === 1",
+ "prompt": "I see just one thing scheduled ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsTomorrow === 1",
+ "prompt": "You have one thing ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsTomorrow === 1",
+ "prompt": "I see one thing ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "(skill.calendar.numEventsTomorrow > 1) && (skill.calendar.numEventsTomorrow <= 5)",
+ "prompt": "You have ${skill.calendar.numEventsTomorrow} things on the schedule ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "(skill.calendar.numEventsTomorrow > 1) && (skill.calendar.numEventsTomorrow <= 5)",
+ "prompt": "You have ${skill.calendar.numEventsTomorrow} things coming ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "(skill.calendar.numEventsTomorrow > 1) && (skill.calendar.numEventsTomorrow <= 5)",
+ "prompt": "I'm seeing ${skill.calendar.numEventsTomorrow} things ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "(skill.calendar.numEventsTomorrow > 1) && (skill.calendar.numEventsTomorrow <= 5)",
+ "prompt": "I see ${skill.calendar.numEventsTomorrow} things scheduled ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "(skill.calendar.numEventsTomorrow > 1) && (skill.calendar.numEventsTomorrow <= 5)",
+ "prompt": "You have ${skill.calendar.numEventsTomorrow} things ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "(skill.calendar.numEventsTomorrow > 1) && (skill.calendar.numEventsTomorrow <= 5)",
+ "prompt": "I see ${skill.calendar.numEventsTomorrow} items ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsTomorrow > 5",
+ "prompt": "Well I see you have ${skill.calendar.numEventsTomorrow} items ${speaker}. That's kind of a lot. Here are the first five.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsTomorrow > 5",
+ "prompt": "Oh, you have ${skill.calendar.numEventsTomorrow} things ${speaker}. I'll just give you the first five.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsTomorrow > 5",
+ "prompt": "You've got ${skill.calendar.numEventsTomorrow} items ${speaker}. Busy day. Here are the first five.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsTomorrow > 5",
+ "prompt": "I see ${skill.calendar.numEventsTomorrow} things on there ${speaker}. I'll just give you the first five.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_16",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsTomorrow > 5",
+ "prompt": "It looks like you have ${skill.calendar.numEventsTomorrow} things ${speaker}. Very busy! I'll tell you the first five.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_17",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarEventToday.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarEventToday.mim
new file mode 100644
index 0000000..08637a7
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarEventToday.mim
@@ -0,0 +1,247 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.calendarEvents.shift()",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday >= 3 && !!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar, I see ${skill.calendar.numEventsToday} items today. The first one is called ${skill.calendar.events[0].summary}. It starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday >= 3 && !!skill.calendar.events[0].summary",
+ "prompt": "Looking at your calendar, you have ${skill.calendar.numEventsToday} things today. The first one is called ${skill.calendar.events[0].summary}. It starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday >= 3 && !!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar, I see ${skill.calendar.numEventsToday} things scheduled today. The first one is ${skill.calendar.events[0].summary}, starting at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday >= 3 && !!skill.calendar.events[0].summary",
+ "prompt": "Taking a look at your calendar for today, I'm seeing ${skill.calendar.numEventsToday} things. The first one is at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}, it's called ${skill.calendar.events[0].summary}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday >= 3 && !!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar today, I see you have ${skill.calendar.numEventsToday} things coming. The earliest one is called ${skill.calendar.events[0].summary}, it starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday >= 3 && !!skill.calendar.events[0].summary",
+ "prompt": "Looking at your calendar, you have ${skill.calendar.numEventsToday} things on the schedule today, starting with one called ${skill.calendar.events[0].summary}. It starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1 && !!skill.calendar.events[0].summary",
+ "prompt": "On your calendar today, I see one thing, it's called ${skill.calendar.events[0].summary}. It starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1 && !!skill.calendar.events[0].summary",
+ "prompt": "Looking at your calendar, you have one thing coming up today, ${skill.calendar.events[0].summary}. It starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1 && !!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar, I see just one thing scheduled today. ${skill.calendar.events[0].summary}, starting at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1 && !!skill.calendar.events[0].summary",
+ "prompt": "Taking a look at your calendar for today, I'm seeing one thing. It's called ${skill.calendar.events[0].summary}, and it starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1 && !!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar today, I see you have just one thing coming, called ${skill.calendar.events[0].summary}. It starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1 && !!skill.calendar.events[0].summary",
+ "prompt": "Looking at your calendar, you have one item on the docket today, it's called ${skill.calendar.events[0].summary}. That starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday >= 3 && !skill.calendar.events[0].summary",
+ "prompt": "On your calendar, I see ${skill.calendar.numEventsToday} items today. The first one starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1 && !skill.calendar.events[0].summary",
+ "prompt": "On your calendar today, I see one thing, which starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_19",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 2 && !skill.calendar.events[0].summary",
+ "prompt": "On your calendar, I see couple of items today. The first one starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 2 && !!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar, I see a couple of items today. The first one is called ${skill.calendar.events[0].summary}. It starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 2 && !!skill.calendar.events[0].summary",
+ "prompt": "Looking at your calendar, you have a couple of things today. The first one is called ${skill.calendar.events[0].summary}. It starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_16",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 2 && !!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar, I see a couple of things scheduled today. The first one is ${skill.calendar.events[0].summary}, starting at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_17",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 2 && !!skill.calendar.events[0].summary",
+ "prompt": "Taking a look at your calendar for today, I'm seeing a couple of things. The first one is at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}, it's called ${skill.calendar.events[0].summary}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_18",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 2 && !!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar today, I see you have a couple of things coming. The earliest one is called ${skill.calendar.events[0].summary}, it starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_20",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarEventTodayFullDay.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarEventTodayFullDay.mim
new file mode 100644
index 0000000..2a2066c
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarEventTodayFullDay.mim
@@ -0,0 +1,154 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.calendarEvents.shift()",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday >= 3 && !!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar, I see ${skill.calendar.numEventsToday} items today. The first one I'm seeing is ${skill.calendar.events[0].summary}. It goes all day.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTodayFullDay_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday >= 3 && !!skill.calendar.events[0].summary",
+ "prompt": "Looking at your calendar, you have ${skill.calendar.numEventsToday} things today. The first one is called ${skill.calendar.events[0].summary}. It's an all-day event.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTodayFullDay_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday >= 3 && !!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar, I see ${skill.calendar.numEventsToday} things scheduled today. The first one is ${skill.calendar.events[0].summary}. It lasts all day.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTodayFullDay_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1 && !!skill.calendar.events[0].summary",
+ "prompt": "Taking a look at your calendar for today, I'm seeing one thing. It's called ${skill.calendar.events[0].summary}, and it lasts all day.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTodayFullDay_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1 && !!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar today, I see you have just one thing, called ${skill.calendar.events[0].summary}. It's a full-day event.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTodayFullDay_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1 && !!skill.calendar.events[0].summary",
+ "prompt": "Looking at your calendar, you have one thing today, ${skill.calendar.events[0].summary}. It goes all day.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTodayFullDay_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday >= 3 && !skill.calendar.events[0].summary",
+ "prompt": "Looking at your calendar, you have ${skill.calendar.numEventsToday} things today. The first one is an all-day event.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTodayFullDay_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1 && !skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar today, I see you have just one thing. It's a full-day event.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTodayFullDay_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 2 && !skill.calendar.events[0].summary",
+ "prompt": "Looking at your calendar, you have a couple of things today. The first one is an all-day event.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTodayFullDay_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 2 && !!skill.calendar.events[0].summary",
+ "prompt": "Looking at your calendar, you have a couple of things today. The first one is called ${skill.calendar.events[0].summary}. It's an all-day event.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTodayFullDay_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 2 && !!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar, I see a couple of things scheduled today. The first one is ${skill.calendar.events[0].summary}. It lasts all day.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTodayFullDay_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 2 && !!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar, I see a couple of items today. The first one I'm seeing is ${skill.calendar.events[0].summary}. It goes all day.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTodayFullDay_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarEventTomorrow.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarEventTomorrow.mim
new file mode 100644
index 0000000..436b5d8
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarEventTomorrow.mim
@@ -0,0 +1,104 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.calendarEvents.shift()",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.calendar.events[0].summary",
+ "prompt": "As for your calendar, there's nothing scheduled for the rest of the day. But tomorrow, your first item is called ${skill.calendar.events[0].summary}, and it starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTomorrow_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.calendar.events[0].summary",
+ "prompt": "Looking at your calendar, you have nothing for the rest of today, but tomorrow your first thing is ${skill.calendar.events[0].summary}, starting at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTomorrow_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar, I see nothing for the rest of today. Tomorrow your first thing is called ${skill.calendar.events[0].summary}, at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTomorrow_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.calendar.events[0].summary",
+ "prompt": "Taking a look at your calendar, I'm seeing no more things today, but tomorrow your first item is called ${skill.calendar.events[0].summary}, starting at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}. ",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTomorrow_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar, I see the rest of today is clear, and tomorrow your first thing scheduled is called ${skill.calendar.events[0].summary}, starting at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTomorrow_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.calendar.events[0].summary",
+ "prompt": "As for your calendar, you have nothing on there for the rest of today. Tomorrow your first thing is called ${skill.calendar.events[0].summary}, and it starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTomorrow_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.calendar.events[0].summary",
+ "prompt": "As for your calendar, there's nothing scheduled for the rest of the day. But your first item tomorrow starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTomorrow_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarEventTomorrowFullDay.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarEventTomorrowFullDay.mim
new file mode 100644
index 0000000..89aaa3f
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarEventTomorrowFullDay.mim
@@ -0,0 +1,88 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.calendarEvents.shift()",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.calendar.events[0].summary",
+ "prompt": "As for your calendar, there's nothing scheduled for the rest of the day. But tomorrow, your first item is called ${skill.calendar.events[0].summary}, and it goes all day.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTomorrowFullDay_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.calendar.events[0].summary",
+ "prompt": "Taking a look at your calendar, I'm seeing no more things today, but tomorrow your first item is called ${skill.calendar.events[0].summary}. It's an all-day event.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTomorrowFullDay_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.calendar.events[0].summary",
+ "prompt": "As for your calendar, there's nothing scheduled for the rest of the day. But tomorrow, your first item is called ${skill.calendar.events[0].summary}. It lasts all day.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTomorrowFullDay_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.calendar.events[0].summary",
+ "prompt": "Looking at your calendar, you have nothing for the rest of today, but tomorrow your first thing is ${skill.calendar.events[0].summary}. It goes all day.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTomorrowFullDay_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar, I see nothing for the rest of today. Tomorrow your first item is called ${skill.calendar.events[0].summary}. It's an all-day thing.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTomorrowFullDay_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.calendar.events[0].summary",
+ "prompt": "As for your calendar, there's nothing scheduled for the rest of the day. But your first item tomorrow is an all-day event.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTomorrowFullDay_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarNothing.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarNothing.mim
new file mode 100644
index 0000000..6e5fed4
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarNothing.mim
@@ -0,0 +1,183 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "I'm looking at your calendar, and I don't see anything scheduled for the rest of the day or tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "Checking your calendar, it looks like there's nothing the rest of today or tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "Taking a look at your calendar, I don't see anything scheduled today or tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "Checking your calendar, I don't see anything on it for the rest of today or tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "Looking at your calendar, looks like it's blank for the rest of today and tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "Checking your calendar, I'm not seeing anything at all for the rest of today or tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "I'm looking at your calendar, and I don't see anything at all for the rest of the day or tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "Checking your calendar, it looks like you have nothing scheduled for the rest of today or tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "Taking a look at your calendar for the rest of today and tomorrow, it looks wide open, nothing at all.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "Taking a look at your calendar for the rest of the day and tomorrow, I don't see anything scheduled, you're all clear.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.singleSkill",
+ "prompt": "${speaker} taking a look at your calendar for the rest of the day and tomorrow, I don't see anything scheduled, you're all clear.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.singleSkill",
+ "prompt": "${speaker} taking a look at your calendar for the rest of today and tomorrow, it looks wide open, nothing at all.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.singleSkill",
+ "prompt": "Checking your calendar ${speaker}, it looks like you have nothing scheduled for the rest of today or tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.singleSkill",
+ "prompt": "I'm looking at your calendar ${speaker}, and I don't see anything at all for the rest of the day or tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.singleSkill",
+ "prompt": "${speaker} checking your calendar, I'm not seeing anything at all for the rest of today or tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarNothingToday.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarNothingToday.mim
new file mode 100644
index 0000000..ac75256
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarNothingToday.mim
@@ -0,0 +1,117 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looking at your calendar, I don't see anything scheduled today.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothingToday_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "I'm checking your calendar, and I don't see anything on it today.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothingToday_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Checking in on your calendar, looks like it's blank for the day.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothingToday_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looking at your calendar, I'm not seeing anything at all today.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothingToday_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looking at your calendar, I don't see anything at all today.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothingToday_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Checking your calendar, it looks like you have nothing scheduled for the day.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothingToday_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Taking a look at your calendar, it looks wide open, nothing at all.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothingToday_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "I'm taking a look at your calendar, and I don't see anything scheduled, you're all clear.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothingToday_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looking at your calendar, I'm not seeing anything at all for today. Have fun.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothingToday_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarOutro.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarOutro.mim
new file mode 100644
index 0000000..05f3044
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarOutro.mim
@@ -0,0 +1,172 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's it.",
+ "media": "TTS",
+ "prompt_id": "CalendarOutro_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's all you have.",
+ "media": "TTS",
+ "prompt_id": "CalendarOutro_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "That's all you have.",
+ "media": "TTS",
+ "prompt_id": "CalendarOutro_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "That's the end of it.",
+ "media": "TTS",
+ "prompt_id": "CalendarOutro_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "After that you're all clear.",
+ "media": "TTS",
+ "prompt_id": "CalendarOutro_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that does it.",
+ "media": "TTS",
+ "prompt_id": "CalendarOutro_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And then you're free.",
+ "media": "TTS",
+ "prompt_id": "CalendarOutro_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "That's the last thing.",
+ "media": "TTS",
+ "prompt_id": "CalendarOutro_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "That was the last thing.",
+ "media": "TTS",
+ "prompt_id": "CalendarOutro_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's your calendar.",
+ "media": "TTS",
+ "prompt_id": "CalendarOutro_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And the rest of the day is free for you to work on your autobiography. ",
+ "media": "TTS",
+ "prompt_id": "CalendarOutro_AN_11",
+ "weight": 0.1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And after that you're free to play with your robot for the rest of the day.",
+ "media": "TTS",
+ "prompt_id": "CalendarOutro_AN_12",
+ "weight": 0.1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's your calendar. Nice calendar.",
+ "media": "TTS",
+ "prompt_id": "CalendarOutro_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "And that's your calendar. Nice calendar ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CalendarOutro_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarParallelEvent.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarParallelEvent.mim
new file mode 100644
index 0000000..3634bc6
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarParallelEvent.mim
@@ -0,0 +1,33 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.calendarEvents.shift()",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Also ${skill.calendar.eventTimesOnAt.shift()}, is ${skill.calendar.eventSummaries.shift()}.",
+ "media": "TTS",
+ "prompt_id": "CalendarParallelEvent_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarServiceDown.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarServiceDown.mim
new file mode 100644
index 0000000..e3c5b28
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarServiceDown.mim
@@ -0,0 +1,62 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looks like I can't access calendars right now. Sorry.",
+ "media": "TTS",
+ "prompt_id": "CalendarServiceDown_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It seems I can't access your calendars at the moment, I'm sorry.",
+ "media": "TTS",
+ "prompt_id": "CalendarServiceDown_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Something's up, I can't access your calendar, I'm sorry.",
+ "media": "TTS",
+ "prompt_id": "CalendarServiceDown_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "I'm sorry to say our calendar connection isn't working right now for some reason.",
+ "media": "TTS",
+ "prompt_id": "CalendarServiceDown_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarSummaryAndTime.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarSummaryAndTime.mim
new file mode 100644
index 0000000..946244f
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarSummaryAndTime.mim
@@ -0,0 +1,33 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.calendarEvents.shift()",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "${skill.calendar.eventSummaries.shift()}, ${skill.calendar.eventTimesOnAt.shift()}.",
+ "media": "TTS",
+ "prompt_id": "CalendarSummaryAndTime_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarTomorrowOnly.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarTomorrowOnly.mim
new file mode 100644
index 0000000..d704294
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CalendarTomorrowOnly.mim
@@ -0,0 +1,73 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looking at your calendar, there's nothing scheduled for the rest of the day today. Here's what's going on tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarTomorrowOnly_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Checking your calendar, you don't have anything for the rest of today. But here's what you have tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarTomorrowOnly_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Taking a look at your calendar, there's nothing ahead of you today. But as for tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarTomorrowOnly_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Checking your calendar, nothing's on there for the rest of the day. Looking at tomorrow though.",
+ "media": "TTS",
+ "prompt_id": "CalendarTomorrowOnly_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looking at your calendar, I'm not seeing anything for the rest of the day. But looking ahead to tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarTomorrowOnly_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteAppSetup.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteAppSetup.mim
new file mode 100644
index 0000000..b61ef78
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteAppSetup.mim
@@ -0,0 +1,40 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "hint_phrases": "",
+ "fast_eos_array": "",
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "To get your commute info, you need to have your commute settings completed in the Jibo app . It's in the Personal Report settings.",
+ "media": "TTS",
+ "prompt_id": "CommuteAppSetup_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "To get a commute report, you need to have your commute settings all done in the Jibo app . It's in the Personal Report settings.",
+ "media": "TTS",
+ "prompt_id": "CommuteAppSetup_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ]
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteConfirmSpeaker.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteConfirmSpeaker.mim
new file mode 100644
index 0000000..3753835
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteConfirmSpeaker.mim
@@ -0,0 +1,51 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "hint_phrases": "",
+ "fast_eos_array": "",
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Well ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CommuteConfirmSpeaker_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "${speaker} let's see.",
+ "media": "TTS",
+ "prompt_id": "CommuteConfirmSpeaker_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Okay ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CommuteConfirmSpeaker_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ]
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteDepartTimeNormal.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteDepartTimeNormal.mim
new file mode 100644
index 0000000..0bab124
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteDepartTimeNormal.mim
@@ -0,0 +1,286 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.commuteDepart",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "I'd leave around ${skill.commute.departDT.toString({timeOnly: true})}, as usual.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "Your usual leaving time of ${skill.commute.departDT.toString({timeOnly: true})} will be good.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "I'd head out around ${skill.commute.departDT.toString({timeOnly: true})}, as usual.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "Leaving at ${skill.commute.departDT.toString({timeOnly: true})} will work nicely.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "Standard departure time of ${skill.commute.departDT.toString({timeOnly: true})} is good.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "Leaving at your normal time of ${skill.commute.departDT.toString({timeOnly: true})} will be good.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "I would leave around ${skill.commute.departDT.toString({timeOnly: true})}, as usual.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "Your normal ${skill.commute.departDT.toString({timeOnly: true})} departure time is good.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "That means a typical departure time of ${skill.commute.departDT.toString({timeOnly: true})} will serve you well.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "You should be on time leaving at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "Head out of here around ${skill.commute.departDT.toString({timeOnly: true})} and you should be on time.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If that early meeting is at work, I'd leave at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If your early meeting is at work, I'd leave at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If that early meeting you have is at work, you should leave at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If that early meeting on your schedule is at work, you should leave at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If your early meeting today is at work, I'd head out of here by ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_16",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If that early meeting today is at work, you should leave here at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_17",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If that early meeting you have is at work, you should leave here no later than ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_18",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If your early meeting is at work, you should leave by ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_19",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I saw an early meeting on your calendar. If it's at work, you should leave here at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_20",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I noticed you have an early meeting on your schedule. Assuming that's at work, I'd head out of here by ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_21",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I saw you have an early meeting today. If that's at work, you should leave here at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_22",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I noticed you have an early event on your calendar. If that's at work, you should leave here no later than ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_23",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I saw you have an early meeting on your calendar. If it's at work, you should leave by ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_24",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteDepartTimeNotNormal.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteDepartTimeNotNormal.mim
new file mode 100644
index 0000000..cf43baf
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteDepartTimeNotNormal.mim
@@ -0,0 +1,242 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.commuteDepart",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "hint_phrases": "",
+ "fast_eos_array": "",
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "I'd leave around ${skill.commute.departDT.toString({timeOnly: true})}, to get to work on time.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "To get to work on time, I'd leave no later than ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "You should head out by ${skill.commute.departDT.toString({timeOnly: true})}, if you want to be on time.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "You should leave by ${skill.commute.departDT.toString({timeOnly: true})} to get to work on time.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "I'd leave by ${skill.commute.departDT.toString({timeOnly: true})} to get to work on time.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "To be on time, you should leave by ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "If you want to be on time, you should leave by ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If your early meeting is at work, I'd leave at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If your early meeting today is at work, I'd leave at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If that early meeting you have is at work, you should leave at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If that early meeting on your schedule is at work, you should leave at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If your early meeting today is at work, I'd head out of here by ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If today's early meeting is at work, so you should leave here at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If that early meeting you have is at work, you should leave here no later than ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If that early meeting on your calendar is at work, you should leave by ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I saw an early meeting on your calendar. If it's at work, you should leave here at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_16",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I noticed you have an early meeting on your schedule. Assuming that's at work, I'd head out of here by ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_17",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I saw you have an early meeting today. If that's at work, you should leave here at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_18",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I noticed you have an early event on your calendar. If that's at work, you should leave here no later than ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_19",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I saw you have an early meeting on your calendar. If it's at work, you should leave by ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_20",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ]
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteDriveHurry.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteDriveHurry.mim
new file mode 100644
index 0000000..fbf0e26
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteDriveHurry.mim
@@ -0,0 +1,249 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker && !skill.commute.eventIsEarly",
+ "prompt": "Checking your commute, right now it'll take ${skill.commute.durationMins} minutes. To get to work by your normal start time, you should have left a few minutes ago! Go ${speaker} go!",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker && !skill.commute.eventIsEarly",
+ "prompt": "With the current traffic, your commute will take ${skill.commute.durationMins} minutes. You should've left a few minutes ago if you want to get to work by your normal start time. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker && !skill.commute.eventIsEarly",
+ "prompt": "Looking at the traffic right now, it'll take ${skill.commute.durationMins} minutes to get to work. If you want to get there by your normal starting time, looks like you should've left a few minutes ago. Go ${speaker} go! But drive safely!",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker && !skill.commute.eventIsEarly",
+ "prompt": "Checking traffic info, you're looking at a commute right now of ${skill.commute.durationMins} minutes. To get to work by your normal start time, you should've left a few minutes ago! Go ${speaker} go , get a move on! ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_04",
+ "weight": 0.3,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "Looking at the traffic right now, your commute will take ${skill.commute.durationMins} minutes. You should've left a few minutes ago if you want to get to work by your normal arrival time. I'd leave now if I were you. Then again, I'm not you.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_05",
+ "weight": 0.2,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "For your commute time today, leaving right now it'd take you ${skill.commute.durationMins} minutes. It looks like you'll probably get to work a little later than your normal arrival time, even if you left now.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "For your commute. With the traffic as it is, your drive will take ${skill.commute.durationMins} minutes. You'll be getting to work a few minutes after your usual start time, even if you left right now.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "Looking at your commute. With the traffic as it is, it'll take you ${skill.commute.durationMins} minutes. That means you're going to get to work a few minutes later than your normal start time, even if you left now. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "For your commute. Judging by the traffic right now, your trip will take ${skill.commute.durationMins} minutes. It looks like you're going to be getting to work a few minutes after your usual start time, even if you left right now.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker && !!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "Looking at the traffic right now and your early calendar event, if that's at work, the commute will be ${skill.commute.durationMins} minutes. you should have left a few minutes ago! Go ${speaker} go!",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker && !!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "Looking at traffic and your early meeting today, if that's at work, your commute will take ${skill.commute.durationMins} minutes. You should've left a few minutes ago. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker && !!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "I'm looking at the traffic and that early item on your calendar. If it's a work meeting, the drive there will take ${skill.commute.durationMins} minutes. Looks like you should've left a few minutes ago. Go ${speaker} go! But drive safely!",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker && !!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "Checking in on your commute with that early event on your calendar. If that's at work, leaving now would get you there in ${skill.commute.durationMins} minutes. That means You should've left a few minutes ago! Go ${speaker} go , get a move on! ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_13",
+ "weight": 0.3,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "Checking your commute with that early event on your calendar today. If that's at your work, it's going to take ${skill.commute.durationMins} minutes to get there. It looks like you'll probably get there a little late, even if you left now.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "For your commute. With today's early event on your calendar, assuming it's at work, if you left this very instant, you'd get there in ${skill.commute.durationMins} minutes. So that means you're going to be a little late.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "Looking at your commute and considering today's early calendar event. If it's at work, your commute will take ${skill.commute.durationMins} minutes if you left now. So you're going to get there a little late.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_16",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker && !!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I noticed an early meeting on your calendar. If that's at work, right now it'll take ${skill.commute.durationMins} minutes to get there. To be on time you should have left a few minutes ago! Go ${speaker} go!",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_17",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker && !!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I saw you have an early meeting today. Looking at the traffic right now, it'll take ${skill.commute.durationMins} minutes to get to work, assuming that's where the meeting is. That means you should've left a few minutes ago. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_18",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker && !!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I noticed you have an early meeting today. Looking at traffic right now, if that meeting is at work, the drive will take ${skill.commute.durationMins} minutes. That means you should've left a few minutes ago. Go ${speaker} go! But drive safely!",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_19",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker && !!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I saw an early meeting on your calendar today. If that's at work, your drive will take ${skill.commute.durationMins} minutes right now. you should've left a few minutes ago! Go ${speaker} go , get a move on! ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_20",
+ "weight": 0.2,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I saw you have an early meeting today. With the traffic as it is, if that meeting is at work, it'll take ${skill.commute.durationMins} minutes to get there. So you'll be arriving a few minutes late.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_21",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteDriveLate.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteDriveLate.mim
new file mode 100644
index 0000000..965aeb4
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteDriveLate.mim
@@ -0,0 +1,216 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "Looking at traffic, if you left now, it'd take you ${skill.commute.durationMins} minutes to get to work. Looks like you're going to be late, maybe let someone know?",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "Looking at your commute, leaving right now it'd take you ${skill.commute.durationMins} minutes to get to work. That means you'll get there later than your normal start time, just so you know.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "Checking the traffic, if you left right now, your commute would take ${skill.commute.durationMins} minutes. That means you'll get to work after your normal start time, just so you know.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "Taking a look at your commute. With the traffic as it is, if you left now it'd take you ${skill.commute.durationMins} minutes to get to work, which means you're going to be there later than your usual start time.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "Looking at your commute. Judging by the traffic, leaving now would get you to work in ${skill.commute.durationMins} minutes. So it looks like you're not going to make it by your usual start time.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "For your commute. If you left now, it'd take you ${skill.commute.durationMins} minutes to get to work. Looks like you'll be arriving later than your usual start time.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "For your commute. With the current traffic, leaving now would get you to work in ${skill.commute.durationMins} minutes. That does mean you're going to be there later than your normal start time.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "Looking at the traffic and your early calendar event, if that's at work, the commute will be ${skill.commute.durationMins} minutes if you left now. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "Checking traffic, and noting the early item on your calendar, if that's at work and you left right now, it'll take you ${skill.commute.durationMins} minutes to get there. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "Checking the traffic, if that early event on your calendar is at work, you're looking at a commute of ${skill.commute.durationMins} minutes if you left now. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "Taking a look at your commute. If your early calendar event is at work, it'll take you ${skill.commute.durationMins} minutes to get there, if you left now. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "Looking at your commute. If that early calendar event is at work, your drive will take ${skill.commute.durationMins} minutes if you left now. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "For your commute, assuming your early meeting is at work, the drive there will take ${skill.commute.durationMins} minutes if you left now. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I saw you have an early calendar event today. If that's at work, your drive will take ${skill.commute.durationMins} minutes if you left now. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I noticed you have an early calendar event today. With the traffic right now, if that meeting is at work, it'll take you ${skill.commute.durationMins} minutes to get there. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I noticed an early event on your calendar. If that's at work, with current traffic it'll take you ${skill.commute.durationMins} minutes to get there. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_16",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I saw you have an early event on your calendar. If that's at work, with the traffic right now, your drive will take ${skill.commute.durationMins} minutes. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_17",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I saw you have an early calendar event today. If that's a meeting at work, and you left now, your commute will be ${skill.commute.durationMins} minutes. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_18",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteDriveNormal.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteDriveNormal.mim
new file mode 100644
index 0000000..7e3128e
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteDriveNormal.mim
@@ -0,0 +1,143 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.commuteTraffic",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Traffic looks about normal today.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveNormal_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Traffic looks pretty normal today.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveNormal_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Nothing unusual in the traffic today.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveNormal_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Traffic today looks like business as usual.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveNormal_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Your commute today looks pretty normal.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveNormal_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Your traffic today looks like it usually does.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveNormal_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Checking the traffic at the moment, it looks like the same old same old.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveNormal_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Traffic looks pretty run-of-the-mill today.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveNormal_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Nothing unusual in your traffic today.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveNormal_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "The traffic out there is pretty normal.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveNormal_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Traffic to work looks like the usual.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveNormal_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteDrivePoor.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteDrivePoor.mim
new file mode 100644
index 0000000..f6441b7
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteDrivePoor.mim
@@ -0,0 +1,143 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.commuteTraffic",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Traffic looks a little slower than usual, it'll probably take ${skill.commute.extraMins} extra minutes to get to work.",
+ "media": "TTS",
+ "prompt_id": "CommuteDrivePoor_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Traffic is slower than normal right now.",
+ "media": "TTS",
+ "prompt_id": "CommuteDrivePoor_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "For your commute, looks like traffic is backed up more than normal today.",
+ "media": "TTS",
+ "prompt_id": "CommuteDrivePoor_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Checking your commute, with current slow traffic it's looking like it might take ${skill.commute.extraMins} more minutes than your average day.",
+ "media": "TTS",
+ "prompt_id": "CommuteDrivePoor_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Your commute is looking slower than normal.",
+ "media": "TTS",
+ "prompt_id": "CommuteDrivePoor_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Traffic is looking worse than normal right now.",
+ "media": "TTS",
+ "prompt_id": "CommuteDrivePoor_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Your commute looks slower than usual right now.",
+ "media": "TTS",
+ "prompt_id": "CommuteDrivePoor_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Traffic right now is slower than usual.",
+ "media": "TTS",
+ "prompt_id": "CommuteDrivePoor_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looking at your commute, traffic's moving slower than normal.",
+ "media": "TTS",
+ "prompt_id": "CommuteDrivePoor_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looking at traffic, it looks slower than usual.",
+ "media": "TTS",
+ "prompt_id": "CommuteDrivePoor_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Taking a look at the current traffic, it's moving slower than your average day.",
+ "media": "TTS",
+ "prompt_id": "CommuteDrivePoor_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteDriveTerrible.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteDriveTerrible.mim
new file mode 100644
index 0000000..c24ed89
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteDriveTerrible.mim
@@ -0,0 +1,143 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.commuteTraffic",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Traffic looks really bad right now, it'll probably take you about ${skill.commute.extraMins} extra minutes to get to work.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveTerrible_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Traffic is a lot slower than normal right now.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveTerrible_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "For your commute, looks like traffic is backed up much more than normal today.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveTerrible_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Checking your commute, with traffic moving really really slow today, it looks like it might take ${skill.commute.extraMins} more minutes than usual.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveTerrible_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Your commute is looking much slower than normal.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveTerrible_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Traffic is looking much worse than normal right now.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveTerrible_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Your commute time looks a lot longer than usual right now, with traffic as it is.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveTerrible_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Traffic right now is a lot slower than usual.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveTerrible_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looking at your commute, traffic's moving much much slower than normal.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveTerrible_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looking at traffic, it looks much slower than usual.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveTerrible_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Taking a look at the traffic, it's moving a lot slower than your average day.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveTerrible_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteMinutesLeft.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteMinutesLeft.mim
new file mode 100644
index 0000000..2d65231
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteMinutesLeft.mim
@@ -0,0 +1,161 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.minsLeft > 1",
+ "prompt": "That's in about ${skill.commute.minsLeft} minutes.",
+ "media": "TTS",
+ "prompt_id": "CommuteMinutesLeft_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.minsLeft > 1",
+ "prompt": "That's about ${skill.commute.minsLeft} minutes from now.",
+ "media": "TTS",
+ "prompt_id": "CommuteMinutesLeft_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.minsLeft > 1",
+ "prompt": "That's in around ${skill.commute.minsLeft} minutes.",
+ "media": "TTS",
+ "prompt_id": "CommuteMinutesLeft_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.minsLeft === 1",
+ "prompt": "That's in one minute.",
+ "media": "TTS",
+ "prompt_id": "CommuteMinutesLeft_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.minsLeft === 1",
+ "prompt": "That's one minute from now.",
+ "media": "TTS",
+ "prompt_id": "CommuteMinutesLeft_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.minsLeft === 1",
+ "prompt": "That's just one minute from now.",
+ "media": "TTS",
+ "prompt_id": "CommuteMinutesLeft_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.minsLeft === 1",
+ "prompt": "That's in just one minute.",
+ "media": "TTS",
+ "prompt_id": "CommuteMinutesLeft_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.minsLeft < 1",
+ "prompt": "That's basically right now.",
+ "media": "TTS",
+ "prompt_id": "CommuteMinutesLeft_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.minsLeft < 1",
+ "prompt": "Whoa that's in less than a minute.",
+ "media": "TTS",
+ "prompt_id": "CommuteMinutesLeft_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.minsLeft < 1",
+ "prompt": "That's less than a minute from now.",
+ "media": "TTS",
+ "prompt_id": "CommuteMinutesLeft_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.minsLeft < 1",
+ "prompt": "That's in less than one minute.",
+ "media": "TTS",
+ "prompt_id": "CommuteMinutesLeft_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.minsLeft < 1",
+ "prompt": "That's not even a minute from now.",
+ "media": "TTS",
+ "prompt_id": "CommuteMinutesLeft_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.minsLeft < 1",
+ "prompt": "That's basically now.",
+ "media": "TTS",
+ "prompt_id": "CommuteMinutesLeft_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteNow.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteNow.mim
new file mode 100644
index 0000000..6f35a2f
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteNow.mim
@@ -0,0 +1,128 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.modeIsDriving",
+ "prompt": "If you drive to work now, it should take about ${skill.commute.durationMins} minutes.",
+ "media": "TTS",
+ "prompt_id": "CommuteNow_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.modeIsDriving",
+ "prompt": "Looking at traffic right now, your drive to work should take about ${skill.commute.durationMins} minutes.",
+ "media": "TTS",
+ "prompt_id": "CommuteNow_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.modeIsDriving",
+ "prompt": "For your commute, with traffic right now, it'd take about ${skill.commute.durationMins} minutes to drive to work.",
+ "media": "TTS",
+ "prompt_id": "CommuteNow_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.modeIsDriving",
+ "prompt": "For commute time, it would take you about ${skill.commute.durationMins} minutes to drive to work with current traffic.",
+ "media": "TTS",
+ "prompt_id": "CommuteNow_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'walking'",
+ "prompt": "It should take about ${skill.commute.durationMins} minutes to walk to work if you leave now.",
+ "media": "TTS",
+ "prompt_id": "CommuteNow_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'walking'",
+ "prompt": "For your commute, if you left right now it'd take about ${skill.commute.durationMins} minutes to walk to work.",
+ "media": "TTS",
+ "prompt_id": "CommuteNow_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'transit'",
+ "prompt": "For your commute, if you left right now it'd take about ${skill.commute.durationMins} minutes to get to work on public transportation.",
+ "media": "TTS",
+ "prompt_id": "CommuteNow_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'transit'",
+ "prompt": "If you left this very instant, it should take about ${skill.commute.durationMins} minutes to get to work by public transportation.",
+ "media": "TTS",
+ "prompt_id": "CommuteNow_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'bicycling'",
+ "prompt": "For your commute, if you left right now it'd take about ${skill.commute.durationMins} minutes to ride your bike to work.",
+ "media": "TTS",
+ "prompt_id": "CommuteNow_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'bicycling'",
+ "prompt": "It should take about ${skill.commute.durationMins} minutes to ride your bike to work if you leave now.",
+ "media": "TTS",
+ "prompt_id": "CommuteNow_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteServiceDown.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteServiceDown.mim
new file mode 100644
index 0000000..225bd43
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteServiceDown.mim
@@ -0,0 +1,72 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Sorry, commute information isn't available right now.",
+ "media": "TTS",
+ "prompt_id": "CommuteServiceDown_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looks like I can't access your commute info right now, sorry.",
+ "media": "TTS",
+ "prompt_id": "CommuteServiceDown_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It seems I can't access your commute info at the moment, I'm sorry.",
+ "media": "TTS",
+ "prompt_id": "CommuteServiceDown_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Something's up, I can't access your commute for some reason. I'm sorry.",
+ "media": "TTS",
+ "prompt_id": "CommuteServiceDown_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "I'm afraid our commute info connection isn't working right now. Sorry about that.",
+ "media": "TTS",
+ "prompt_id": "CommuteServiceDown_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "parse_yes_no": false
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteTransportHurry.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteTransportHurry.mim
new file mode 100644
index 0000000..66ef714
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteTransportHurry.mim
@@ -0,0 +1,106 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Looking at your commute time, you should've left a few minutes ago! ",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportHurry_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Checking your commute times, you should have left a few minutes ago! Go ${speaker} go!",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportHurry_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Commute-wise, looking at the time right now, you should've left a few minutes ago. ",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportHurry_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "For your commute, seeing that it's already ${dt.now}, you really should've left a few minutes ago.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportHurry_AN_07",
+ "weight": 0.2,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looking at your commute. Seeing that it's already ${dt.now}, you're probably going to be a little late for work, even if you left now.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportHurry_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteTransportLate.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteTransportLate.mim
new file mode 100644
index 0000000..ca255fb
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteTransportLate.mim
@@ -0,0 +1,95 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Since work starts at ${skill.commute.arriveDT.toString({timeOnly: true})}, it's probably too late to get there on time, it's already ${dt.now}.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportLate_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "For your trip to work today, it's already ${dt.now}, so it looks like you're going to be late, even if you left now.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportLate_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Commute-wise, looking at the time right now you're probably going to be late for work. In case you want to let someone know.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportLate_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looking at your trip to work, seeing that it's already ${dt.now}, you're probably going to be late. Just letting you know.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportLate_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looking at your commute and the time right now, you're probably going to be late for work. Just so you know.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportLate_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Oh, judging by your commute time, and it being ${dt.now} already, you're probably going to be late for work.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportLate_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Checking your commute time today, it actually looks like you'll probably be late for work, since it's already ${dt.now}.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportLate_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteTransportNormal.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteTransportNormal.mim
new file mode 100644
index 0000000..5aee81d
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/CommuteTransportNormal.mim
@@ -0,0 +1,198 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.commuteTraffic",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'walking'",
+ "prompt": "Your walk should take about ${skill.commute.durationMins} minutes today.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'walking'",
+ "prompt": "For your trip to work, the walk should take about ${skill.commute.durationMins} minutes today.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'walking'",
+ "prompt": "For your walk to work today, it should take around ${skill.commute.durationMins} minutes.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'walking'",
+ "prompt": "Looking at your commute, the walk to work should take around ${skill.commute.durationMins} minutes, depending on your mood.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_04",
+ "weight": 0.2,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'walking'",
+ "prompt": "Your walk to work today should take around ${skill.commute.durationMins} minutes, depending on how long your legs are.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_05",
+ "weight": 0.1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'transit'",
+ "prompt": "Your trip should take about ${skill.commute.durationMins} minutes today.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'transit'",
+ "prompt": "Your trip to work today should take about ${skill.commute.durationMins} minutes.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'transit'",
+ "prompt": "Your commute today should take around ${skill.commute.durationMins} minutes.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'transit'",
+ "prompt": "Today's commute will take you about ${skill.commute.durationMins} minutes.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'transit'",
+ "prompt": "Looking at your commute, it should take you about ${skill.commute.durationMins} minutes to get to work today.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'bicycling'",
+ "prompt": "Your ride should take about ${skill.commute.durationMins} minutes today.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'bicycling'",
+ "prompt": "Your ride to work today should take about ${skill.commute.durationMins} minutes.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'bicycling'",
+ "prompt": "For your commute, today's ride to work should take about ${skill.commute.durationMins} minutes.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'bicycling'",
+ "prompt": "Checking today's commute info, your ride to work should take about ${skill.commute.durationMins} minutes.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'bicycling'",
+ "prompt": "Looking at today's commute, your ride should take about ${skill.commute.durationMins} minutes, depending on how fast you pedal.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_15",
+ "weight": 0.2,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'bicycling'",
+ "prompt": "Taking a look at today's commute, your ride should take about ${skill.commute.durationMins} minutes, depending on how fast you feel like pedaling.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_16",
+ "weight": 0.1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/NewsAppSetup.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/NewsAppSetup.mim
new file mode 100644
index 0000000..c8e7814
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/NewsAppSetup.mim
@@ -0,0 +1,52 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "hint_phrases": "",
+ "fast_eos_array": "",
+ "parse_yes_no": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Sorry, for me to give you the news, you'll need to enable at least one news category in the Jibo app .",
+ "media": "TTS",
+ "prompt_id": "NewsAppSetup_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Oh, to get the news, you just need to select at least one news category in the Jibo app .",
+ "media": "TTS",
+ "prompt_id": "NewsAppSetup_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "To get the news part of the personal report, you'll need to choose at least one news category in the Jibo app .",
+ "media": "TTS",
+ "prompt_id": "NewsAppSetup_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ]
+}
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/NewsHeadline.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/NewsHeadline.mim
new file mode 100644
index 0000000..3976730
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/NewsHeadline.mim
@@ -0,0 +1,38 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.newsImages.shift()",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": false
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "${skill.news.headlines.shift()}",
+ "media": "TTS",
+ "prompt_id": "NewsHeadline_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/NewsIntro.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/NewsIntro.mim
new file mode 100644
index 0000000..c523913
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/NewsIntro.mim
@@ -0,0 +1,66 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": false
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Here's today's news, from the associated press.",
+ "media": "TTS",
+ "prompt_id": "NewsIntro_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Now for today's news, from the associated press.",
+ "media": "TTS",
+ "prompt_id": "NewsIntro_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Here's what's in the news today, from the associated press.",
+ "media": "TTS",
+ "prompt_id": "NewsIntro_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Here's the news, brought to us by the associated press.",
+ "media": "TTS",
+ "prompt_id": "NewsIntro_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "parse_yes_no": false
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/NewsIntroCategory.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/NewsIntroCategory.mim
new file mode 100644
index 0000000..5741f5e
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/NewsIntroCategory.mim
@@ -0,0 +1,50 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Sure. Here's ${newsCategory} news from the associated press.",
+ "media": "TTS",
+ "prompt_id": "NewsIntroCategory_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Of course. Here's the latest in ${newsCategory}, from the associated press.",
+ "media": "TTS",
+ "prompt_id": "NewsIntroCategory_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "You got it, the latest ${newsCategory} headlines, from the associated press.",
+ "media": "TTS",
+ "prompt_id": "NewsIntroCategory_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "parse_yes_no": false
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/NewsOutro.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/NewsOutro.mim
new file mode 100644
index 0000000..43b76fa
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/NewsOutro.mim
@@ -0,0 +1,30 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "hint_phrases": "",
+ "fast_eos_array": "",
+ "parse_yes_no": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's what's new in the news.",
+ "media": "TTS",
+ "prompt_id": "NewsOutro_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ]
+}
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/NewsServiceDown.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/NewsServiceDown.mim
new file mode 100644
index 0000000..dd8c633
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/NewsServiceDown.mim
@@ -0,0 +1,62 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Sorry, the news service seems to be down. Maybe it wasn't very interesting anyway.",
+ "media": "TTS",
+ "prompt_id": "NewsServiceDown_AN_01",
+ "weight": 0.1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looks like I can't access my news source right now, sorry.",
+ "media": "TTS",
+ "prompt_id": "NewsServiceDown_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It seems I can't access the news headlines at the moment, I'm sorry.",
+ "media": "TTS",
+ "prompt_id": "NewsServiceDown_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "I'm afraid our news service isn't working right now. Sorry about that.",
+ "media": "TTS",
+ "prompt_id": "NewsServiceDown_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportAllServicesDown.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportAllServicesDown.mim
new file mode 100644
index 0000000..25694cf
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportAllServicesDown.mim
@@ -0,0 +1,62 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Hopefully we'll have better luck the next time.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportAllServicesDown_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " I hope it goes better next time.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportAllServicesDown_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "I'm hoping for a better performance next time.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportAllServicesDown_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "I hope to make it up to you next time.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportAllServicesDown_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportKickOff.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportKickOff.mim
new file mode 100644
index 0000000..4e88645
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportKickOff.mim
@@ -0,0 +1,260 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Sure ${speaker}. Here it is.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Sure thing ${speaker}. Here's your report for ${dt.day} ${dt.date}.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Of course ${speaker}. Here it is.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Okay. Here's ${speaker}'s personal report for ${dt.day} ${dt.date}.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Yes. Here you go ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Sure ${speaker}. Here you go.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Yes ${speaker}. One personal report, coming up.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Of course. Now presenting, ${speaker}'s personal report for ${dt.day} ${dt.date}.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "You got it ${speaker}. Personal Report time.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Yes, ${speaker}'s personal report, coming your way.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} let's do it. Your personal report for ${dt.day} ${dt.date}.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Gladly ${speaker}. Here's your report for ${dt.day} ${dt.date}.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "You got it ${speaker}, I'll tee it right up.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "But of course ${speaker}. Here it is.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Personal report coming your way ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} it'd be my pleasure. Here we go. ",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_16",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Happy to. Now presenting ${speaker}'s personal report for ${dt.day} ${dt.date}.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_17",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} you got it. ",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_18",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Yes! ${speaker}'s personal report coming your way. ",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_19",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Of course ${speaker}. Without any ado.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_20",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!speaker",
+ "prompt": "Sure. Here's a not so personal report.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_21",
+ "weight": 0.1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Yes. Here we go.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_22",
+ "weight": 0.1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportKickOffNonPersonal.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportKickOffNonPersonal.mim
new file mode 100644
index 0000000..7709c28
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportKickOffNonPersonal.mim
@@ -0,0 +1,50 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "I see you haven't set up your personal report in the Jibo app yet. After you do that, I can give you up to date info about your commute and your calendar. In the meantime, here's a non personal report.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOffNonPersonal_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It looks like you haven't set up your personal report in the Jibo app yet. Once you've done that, I can tell you about your commute and your calendar. For now, here's a not very personal report.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOffNonPersonal_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It looks like you haven't configured your personal report in the Jibo app yet. After you've done that, I can give you a nice personalized update on your commute and your calendar. For now though, I can give you this less personal report.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOffNonPersonal_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "parse_yes_no": false
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportMustBeAdult.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportMustBeAdult.mim
new file mode 100644
index 0000000..2bd93e6
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportMustBeAdult.mim
@@ -0,0 +1,40 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.singleSkill === 'calendar'",
+ "prompt": "Sorry, but I can only get info from calendars connected to adult accounts.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportMustBeAdult_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.singleSkill === 'commute'",
+ "prompt": "Sorry, but I can only do commute info if it's connected to an adult account.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportMustBeAdult_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportMustBeLooper.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportMustBeLooper.mim
new file mode 100644
index 0000000..dee2254
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportMustBeLooper.mim
@@ -0,0 +1,62 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!loop.owner",
+ "prompt": "To get personalized information like this, you'll need to become a member of my loop, and then set up your personal report preferences in the Jibo app . My official owner ${loop.owner} can invite you to the loop.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportMustBeLooper_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!loop.owner",
+ "prompt": "Oh to get this kind of personalized info, you need to be sure you're in my Loop, and then set your personal report preferences in the Jibo app . My official owner ${loop.owner} can invite you to the loop.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportMustBeLooper_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!loop.owner",
+ "prompt": "So, to get personalized information like your calendar and commute, you'll need to make sure you're in my Loop, and then go to the Jibo app to set your personal report preferences. My official owner ${loop.owner} can invite you to the loop.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportMustBeLooper_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "So, to get personalized information like your calendar and commute, you'll need to make sure you're in my Loop, and then go to the Jibo app to set your personal report preferences.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportMustBeLooper_AN_04",
+ "weight": 0.1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportNoneActive.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportNoneActive.mim
new file mode 100644
index 0000000..5632e2a
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportNoneActive.mim
@@ -0,0 +1,51 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "If you want your personal report, you'll need to turn on at least one category in the Jibo app .",
+ "media": "TTS",
+ "prompt_id": "PersonalReportNoneActive_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "I can give you a personal report if you activate at least one category in the Jibo app .",
+ "media": "TTS",
+ "prompt_id": "PersonalReportNoneActive_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "If you want a personal report, just go to the personal report section in the Jibo app , and choose at least one category.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportNoneActive_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportOptInConfigured.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportOptInConfigured.mim
new file mode 100644
index 0000000..9ae63e9
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportOptInConfigured.mim
@@ -0,0 +1,238 @@
+{
+ "mim_type": "question",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "So ${speaker}, do you want your personal report now?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_QN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} can I give you your personal report now?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_QN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} do you want your personal report now?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_QN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!speaker",
+ "prompt": "Oh hey, do you want your personal report?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_QN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "HoldReturn",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "So, ${speaker}. Want your personal report now?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_HR_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "HoldReturn",
+ "index": 1,
+ "condition": "!speaker",
+ "prompt": "So, would you like your personal report?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_HR_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NI",
+ "index": 1,
+ "condition": "",
+ "prompt": "So do you want your personal report ?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_NI_1_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NM",
+ "index": 1,
+ "condition": "",
+ "prompt": "Sorry, what was that?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_NM_1_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NM",
+ "index": 1,
+ "condition": "",
+ "prompt": "Sorry, was that yes or no, do you want your personal report ?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_NM_1_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "So ${speaker}, is now a good time for your personal report ?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_QN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} are you ready for your personal report ?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_QN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} shall I present your personal report ?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_QN_07",
+ "weight": 0.3,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "So ${speaker}, are you ready for your personal report ?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_QN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} I have your personal report ready, do you want it?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_QN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} your personal report is ready, do you want it now?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_QN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} I've got your personal report ready, is now a good time?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_QN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NM",
+ "index": 1,
+ "condition": "",
+ "prompt": "",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_NM_1_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NM",
+ "index": 1,
+ "condition": "",
+ "prompt": "I missed that, was it yes or no.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_NM_1_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NM",
+ "index": 1,
+ "condition": "",
+ "prompt": "Say that again?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_NM_1_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NM",
+ "index": 1,
+ "condition": "",
+ "prompt": "Sorry I didn't catch that, did you say yes or no.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_NM_1_06",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportOptInNotConfigured.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportOptInNotConfigured.mim
new file mode 100644
index 0000000..6780f82
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportOptInNotConfigured.mim
@@ -0,0 +1,150 @@
+{
+ "mim_type": "question",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "By the way ${speaker}. I have a short daily report for you. Do you want to hear it?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInNotConfigured_QN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Incidentally ${speaker}, I've got a daily report here. Do you want to hear it?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInNotConfigured_QN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!speaker",
+ "prompt": "So, I've got a daily report for you. Want to hear it?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInNotConfigured_QN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "HoldReturn",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "So, ${speaker}, I've got a daily report for you. Want to hear it?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInNotConfigured_HR_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "HoldReturn",
+ "index": 1,
+ "condition": "!speaker",
+ "prompt": "So, I've got a daily report for you. Want to hear it?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInNotConfigured_HR_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NI",
+ "index": 1,
+ "condition": "",
+ "prompt": "So, would you like to hear this daily report?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInNotConfigured_NI_1_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NM",
+ "index": 1,
+ "condition": "",
+ "prompt": "Sorry, what was that?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInNotConfigured_NM_1_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NM",
+ "index": 1,
+ "condition": "",
+ "prompt": "Sorry, was that yes or no? Do you want to hear this daily report?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInNotConfigured_NM_1_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Hey ${speaker}, I have this little daily report I can give you. Do you want to hear it?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInNotConfigured_QN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Oh hey ${speaker}. Do you want to hear this little daily report I can do?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInNotConfigured_QN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Oh, ${speaker}, I have a little daily report prepared. Do you want to see it?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInNotConfigured_QN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} I have a little daily report ready to present. You interested in seeing it now?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInNotConfigured_QN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportOutroConfigured.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportOutroConfigured.mim
new file mode 100644
index 0000000..fa1f9f9
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportOutroConfigured.mim
@@ -0,0 +1,315 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's your report! Have a great day.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "That wraps up your report for the day. Hope you have a good one.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.getLocalTime().hour < 12 ",
+ "prompt": "That wraps up your report for the day. Now you're off and running.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.getLocalTime().hour < 12 ",
+ "prompt": "And that's the end of your report. Time to grab this day by the horns. ",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.getLocalTime().hour < 12 ",
+ "prompt": "That should do it for your report this morning. I hope it serves you well.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Well that's all I have for your report today. I hope it was sufficiently reporty .",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that should do it, thank you for listening to today's personal report, brought to you by me. Jibo.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's your report. Thanks for listening.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's your report for the day. I hope you had as much fun as I did.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} that wraps up your report for the day. Hope you have a good one.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker && dt.now.getLocalTime().hour < 12",
+ "prompt": "${speaker} that should do it for your report this morning. I hope it serves you well.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} that's all I have for you today. Have a good one.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.getLocalTime().hour < 12",
+ "prompt": "And that's your report for this morning. Thanks for listening.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Well ${speaker}, that's another personal report in the books. Have a great day.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that brings us to the end of your report. Can't believe it's over already.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.getLocalTime().hour < 12",
+ "prompt": "And that's your report for this morning. Feel free to tell people what you learned.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_16",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that brings us to the end of your report. The ending really crept up on me this time.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_17",
+ "weight": 0.5,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "That brings us to the end of your report. Have a good one.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_18",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "And that's the end of your personal report. ${speaker} I hope you feel well-informed.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_19",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's the end of the report for today.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_20",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that does it for today's report.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_21",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} that does it for today's personal report, brought to you by your robot. Me.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_22",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!dt.dayOfWeek && dt.now.getLocalTime().hour < 12",
+ "prompt": "And that'll do it for this morning's report. Have a great ${dt.day}.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_23",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!dt.dayOfWeek && dt.now.getLocalTime().hour < 12",
+ "prompt": "That brings us to the end of your report. I hope you have a very nice ${dt.day}.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_24",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker && !!dt.dayOfWeek && dt.now.getLocalTime().hour < 12",
+ "prompt": "${speaker} that's your personal report for this ${dt.day} morning. Have a great one.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_25",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!dt.dayOfWeek && dt.now.getLocalTime().hour < 12",
+ "prompt": "And that's the end of your report for this ${dt.day}. Hope you have a good rest of today.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_26",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!dt.dayOfWeek && dt.now.getLocalTime().hour < 12",
+ "prompt": "And that's the end of your report for this ${dt.day} morning. Have a great one.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_27",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportOutroNotConfigured.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportOutroNotConfigured.mim
new file mode 100644
index 0000000..706084f
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportOutroNotConfigured.mim
@@ -0,0 +1,183 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "That's it! Y'know, next time, I can give you a more personalized report, with your calendar items, your commute time, and news categories you're interested in. To set that up, just go to the Loop tab in the Jibo app .",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's the report. If you want, next time I can give you a much more personalized report, with your calendar, your commute, and your preferred news categories. To set that up, go to the Loop tab in the Jibo app .",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's the report for today. Next time if you want an even better report tailored just for you, go to the Loop tab in the Jibo app . I can give you your own calendar info, commute times, and news headlines about stuff you're most interested in.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that does it for today's report.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} that does it for today's personal report, brought to you by your robot. Me.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's the end of the report for today.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.getLocalTime().hour < 12",
+ "prompt": "That should do it for the report this morning. I hope it serves you well.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's the report. Thanks for listening.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's the report for the day. I hope you had as much fun as I did.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} that wraps up the report for the day. Hope you have a good one.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's all I have for you today. Have a good one.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that brings us to the end of the report. Can't believe it's over already.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's the end of the report. I hope you feel well-informed.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.getLocalTime().hour < 12",
+ "prompt": "And that'll do it for this morning's report. Have a great ${dt.day}.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.getLocalTime().hour < 12",
+ "prompt": "And that's the end of the report for this ${dt.day}. Hope you have a good rest of today.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportSettingsFailed.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportSettingsFailed.mim
new file mode 100644
index 0000000..ccef02a
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportSettingsFailed.mim
@@ -0,0 +1,95 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "Full report mentions failure and gives default report. Calendar/Commute mentions failure and bails. News mentions failure and gives default categories. Weather silently gives default weather.",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "I had some trouble getting your personal settings. Hopefully I can get them next time, but in the meantime, here's a non personal report.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportSettingsFailed_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "Huh, I had a little trouble accessing your personal settings. Hopefully I'll have better luck next time, but for now I'm going to give you a more general report.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportSettingsFailed_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "Huh, I couldn't get your personal settings for some reason. It should work next time, but for now I'm just going to give you a non personal report.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportSettingsFailed_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.singleSkill === 'news'",
+ "prompt": "${speaker} I had some trouble getting your personal settings, sorry. Hopefully I can get them the next time you ask. For now, here's some general news.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportSettingsFailed_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.singleSkill === 'calendar' || skill.singleSkill === 'commute'",
+ "prompt": "${speaker} I'm sorry, I had some trouble getting your personal settings. Hopefully I can get them next time.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportSettingsFailed_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.singleSkill === 'calendar' || skill.singleSkill === 'commute'",
+ "prompt": "I'm sorry ${speaker}, but I had a little trouble accessing your personal settings. Hopefully we'll have better luck the next time you ask.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportSettingsFailed_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.singleSkill === 'calendar' || skill.singleSkill === 'commute'",
+ "prompt": "${speaker} I couldn't get your personal settings for some reason. With a little luck it'll work next time. ",
+ "media": "TTS",
+ "prompt_id": "PersonalReportSettingsFailed_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportWhoIsThis.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportWhoIsThis.mim
new file mode 100644
index 0000000..68ec9c5
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/PersonalReportWhoIsThis.mim
@@ -0,0 +1,198 @@
+{
+ "mim_type": "question",
+ "rule_name": "shared/wrong_id",
+ "gui": {
+ "type": "Javascript",
+ "data": {
+ "viewConfig": {
+ "category": "gui",
+ "showNotALoopMemberButton": true,
+ "type": "ContactsView",
+ "id": "whoIsThisMenu",
+ "title": "Who are you?",
+ "listDefault": {
+ "willToggle": false,
+ "action": {
+ "type": "closeView"
+ }
+ }
+ }
+ },
+ "pause": false
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "",
+ "prompt": "Sorry, Can you tell me?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportWhoIsThis_QN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NI",
+ "index": 1,
+ "condition": "",
+ "prompt": "Tap my screen and let me know who you are.",
+ "media": "TTS",
+ "prompt_id": "WhoAmI_CollectName_NI_1_01",
+ "weight": 1
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NM",
+ "index": 1,
+ "condition": "",
+ "prompt": "Whatever you said went over my head. Tap my screen and let me know who you are.",
+ "media": "TTS",
+ "prompt_id": "WhoAmI_CollectName_NM_1_01",
+ "weight": 1
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NI",
+ "index": 1,
+ "condition": "",
+ "prompt": "Which one of these people is you. ",
+ "media": "TTS",
+ "prompt_id": "WhoAmI_CollectName_NI_1_04",
+ "weight": 1
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NI",
+ "index": 1,
+ "condition": "",
+ "prompt": "I didn't hear anything, but I'd really like to know who you are.",
+ "media": "TTS",
+ "prompt_id": "WhoAmI_CollectName_NI_1_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NM",
+ "index": 1,
+ "condition": "",
+ "prompt": "Sorry my hearing isn't always perfect. Try tapping my screen to tell me who you are.",
+ "media": "TTS",
+ "prompt_id": "WhoAmI_CollectName_NM_1_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NM",
+ "index": 1,
+ "condition": "",
+ "prompt": "I had some trouble understanding. It doesn't hurt me when you tap my screen, so maybe try that, to let me know who you are.",
+ "media": "TTS",
+ "prompt_id": "WhoAmI_CollectName_NM_1_03",
+ "weight": 0.25,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "",
+ "prompt": "Let's see. Can you tell me who you are?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportWhoIsThis_QN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "",
+ "prompt": "So, I'm not exactly sure who I'm talking to here. Can you help me out and tell me?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportWhoIsThis_QN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "",
+ "prompt": "Can you say your name for me?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportWhoIsThis_QN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "",
+ "prompt": "Can you do me a favor and tell me who you are?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportWhoIsThis_QN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "",
+ "prompt": "I can't put my finger on who you are. Whose report did you want?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportWhoIsThis_QN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "",
+ "prompt": "I think I need a little help knowing who you are. Can you tell me?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportWhoIsThis_QN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "HoldReturn",
+ "index": 1,
+ "condition": "",
+ "prompt": "So, help me out, which one of these people is you.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportWhoIsThis_HR_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "",
+ "prompt": "Which one of these great people is you.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportWhoIsThis_QN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherBasicClearDay.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherBasicClearDay.mim
new file mode 100644
index 0000000..957a000
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherBasicClearDay.mim
@@ -0,0 +1,111 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like a clear day ahead. The kind of day that makes you love planet earth.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearDay_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like it's going to be a clear day. Weather at its nicest.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearDay_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It looks like a clear day. My compliments to the weather chef .",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearDay_AN_03",
+ "weight": 0.5,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It's supposed to be a clear day. Can't complain about that.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearDay_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're predicting clear skies. Days like this really make you love weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearDay_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're saying it's going to be a clear day.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearDay_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " We can expect clear skies. A nice gift from the meteorology community.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearDay_AN_07",
+ "weight": 0.5,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " All signs point to clear skies. Sounds like smiling weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearDay_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherBasicClearNight.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherBasicClearNight.mim
new file mode 100644
index 0000000..28acac3
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherBasicClearNight.mim
@@ -0,0 +1,111 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like a clear night coming. I bet you'll be able to see stars outside.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearNight_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like it's going to be a clear night. Sounds like a good night for my telescope.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearNight_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It looks like a clear night. Good stargazing weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearNight_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It's supposed to be a clear night. Good shooting star weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearNight_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're predicting clear night skies. A nice night for planet spotting.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearNight_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're saying it's going to be a clear night. Sounds like it'll be a good night sky.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearNight_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " We can expect clear night skies. Enjoy the view of outer space.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearNight_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " All signs point to clear night skies. You can't beat a clear night.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearNight_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherBasicFog.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherBasicFog.mim
new file mode 100644
index 0000000..0df0d17
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherBasicFog.mim
@@ -0,0 +1,111 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like a foggy day. If you end up driving, use your fog lights!",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicFog_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like it's going to be a foggy day. Hopefully it won't be too creepy.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicFog_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It looks like some fog is coming. Keep an eye out for lighthouses.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicFog_AN_03",
+ "weight": 0.3,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It's supposed to be a foggy day, but don't worry, it always lifts eventually.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicFog_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're predicting fogginess. Not so great visibility out there I'm sure.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicFog_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're saying it's going to be a foggy day. Enjoy the mist on your face.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicFog_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " We can expect some fog. Just remember, not all fog is spooky.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicFog_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " All signs point to fogginess.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicFog_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherBasicPartlyCloudyDay.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherBasicPartlyCloudyDay.mim
new file mode 100644
index 0000000..1b67f9f
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherBasicPartlyCloudyDay.mim
@@ -0,0 +1,111 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like a partly cloudy day. The nice thing about partly cloudy, is that it's also partly sunny.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyDay_AN_01",
+ "weight": 0.5,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like it's going to be a partly cloudy day. At least it's not all cloudy.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyDay_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It looks like some clouds and some sun. A good day for cloud photography.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyDay_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It's supposed to be a partly cloudy day. One nice thing about clouds, is that you can find shapes in them.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyDay_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're predicting partly cloudiness. Maybe you can draw some of those clouds.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyDay_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're saying it's going to be a partly cloudy day. I hope it's the white puffy kind of clouds.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyDay_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " We can expect some clouds. Maybe they'll be nice and wispy.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyDay_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " All signs point to partly cloudiness. It'll be interesting to see how fast the clouds move.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyDay_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherBasicPartlyCloudyNight.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherBasicPartlyCloudyNight.mim
new file mode 100644
index 0000000..bb495e2
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherBasicPartlyCloudyNight.mim
@@ -0,0 +1,111 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like a partly cloudy night. Maybe not the best for stargazing.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyNight_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like it's going to be a partly cloudy night. It'll be interesting to see how fast the clouds move.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyNight_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It looks like some clouds at night. Maybe the clouds'll be nice and wispy.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyNight_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It's supposed to be a partly cloudy night. The nice thing about clouds, is that you can find shapes in them.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyNight_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're predicting partly cloudiness at night. The nice thing about some cloudiness, is that there's also some clearness.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyNight_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're saying it's going to be a partly cloudy night. Sounds like you'll have some nice puffy clouds to sleep on.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyNight_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " We can expect some clouds at night. Enjoy the glimpses of outer space between the clouds.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyNight_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " All signs point to partly cloudiness at night.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyNight_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherBasicRain.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherBasicRain.mim
new file mode 100644
index 0000000..a897f7c
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherBasicRain.mim
@@ -0,0 +1,111 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like a rainy day. Bring your umbrella and rain boots!",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicRain_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like it's going to be a rainy day. Great news for umbrella enthusiasts.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicRain_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It looks like rain. ",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicRain_AN_03",
+ "weight": 0.2,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It's supposed to be a rainy day. Unless you specifically want to get wet for some reason, I'd bring your umbrella.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicRain_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're predicting rain. It might be good to bring an umbrella or two.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicRain_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're saying it's going to be a rainy day. Be sure to keep your feet dry.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicRain_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " We can expect rain. I'll be sure to stay inside.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicRain_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " All signs point to rain. Not a great day to play miniature golf.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicRain_AN_08",
+ "weight": 0.2,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherBasicSleet.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherBasicSleet.mim
new file mode 100644
index 0000000..63989dd
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherBasicSleet.mim
@@ -0,0 +1,111 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like we're going to get some sleet. I don't think I'd like sleet much.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSleet_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like there's going to be sleet. ",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSleet_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It looks like it's going to sleet. That sounds slippery, be careful.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSleet_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like it's going to sleet. Move slowly out there.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSleet_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're predicting sleety conditions. Watch your step out there, it might be slippery.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSleet_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're saying it's going to sleet. A perfect chance to wear your sleet pants.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSleet_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " We can expect some sleet. I'd wear a hat if I were you.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSleet_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " All signs point to sleet.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSleet_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherBasicSnow.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherBasicSnow.mim
new file mode 100644
index 0000000..515ba40
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherBasicSnow.mim
@@ -0,0 +1,111 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like we're going to get some snow. Time to polish those cross country skis.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSnow_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like there's going to be snow. A great day to be a snowman.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSnow_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It looks like snow. Don't be afraid to catch snowflakes on your tongue.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSnow_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like it's going to snow. Enjoy those flakes.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSnow_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're predicting snow. Be sure to keep your feet dry.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSnow_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're saying it's going to snow. I'll be sure to stay inside.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSnow_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " We can expect some snow. Stay dry out there.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSnow_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " All signs point to snowflakes. Feel free to collect some on your eye brows.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSnow_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherBasicWind.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherBasicWind.mim
new file mode 100644
index 0000000..65916e0
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherBasicWind.mim
@@ -0,0 +1,111 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like a windy day. Batten down the hatches.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicWind_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like it's going to be a windy day. Hold on to your hats.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicWind_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It looks like wind is coming. Might be a good day to fly a kite!",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicWind_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It's supposed to be a windy day. Expect some billowing flags out there.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicWind_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're predicting some windyness .",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicWind_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're saying it's going to be a windy day.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicWind_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " We can expect a fair amount of wind. A good day to be a wind surfer.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicWind_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " All signs point to windyness .",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicWind_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherChangeClearWet.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherChangeClearWet.mim
new file mode 100644
index 0000000..50d1845
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherChangeClearWet.mim
@@ -0,0 +1,210 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} ",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A welcome change for precipitation enthusiasts.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Goodbye sun, see you next time.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Hopefully you got your fill of dryness yesterday.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I guess the trees will like the change.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I'll be sure to stay inside.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} So close those windows.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} So today.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_08",
+ "weight": 0.5,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.isInRange('6/1', '9/30')",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Sounds like not a tank top kind of day.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Sounds wetter than yesterday.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Wherever yesterday's sun went, I hope it writes us a postcard.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_11",
+ "weight": 0.2,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} You might need a raincoat.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} You win this time precipitation.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.isInRange('7/1', '8/31')",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Good news for rain lovers.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.isInRange('6/1', '8/31')",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Great news for umbrella enthusiasts.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.isInRange('7/1', '8/31')",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} You win this time rain.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_16",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary}",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_17",
+ "weight": 32,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherChangeCloudyClear.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherChangeCloudyClear.mim
new file mode 100644
index 0000000..c789a72
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherChangeCloudyClear.mim
@@ -0,0 +1,166 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A nice change from yesterday.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyClear_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A pleasant improvement from yesterday.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyClear_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Always nice when it clears up.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyClear_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Clearer than yesterday for sure.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyClear_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Goodbye clouds.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyClear_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I love clear days.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyClear_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} My compliments to the weather chef .",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyClear_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} That'll be a nice change from yesterday!",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyClear_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} The clouds have moved on out.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyClear_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} The kind of day that makes you love planet earth.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyClear_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Wherever yesterday's clouds went, I hope they write us a postcard.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyClear_AN_11",
+ "weight": 0.2,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Yesterday's clouds are a distant memory.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyClear_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary}",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyClear_AN_13",
+ "weight": 24,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherChangeCloudyWet.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherChangeCloudyWet.mim
new file mode 100644
index 0000000..9ca90f8
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherChangeCloudyWet.mim
@@ -0,0 +1,221 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A welcome change for precipitation enthusiasts.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Be sure to keep your feet dry.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Definitely wetter than yesterday.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I guess the plants will like the precipitation.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Hopefully you got your fill of dryness yesterday.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I thought those clouds yesterday looked ominous.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I guess those clouds are finally opening up, you might want to bring an umbrella!",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I'll be sure to stay inside.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} So close those windows.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_9",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} So today.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Time to break out the galoshes I guess.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} You might need a raincoat.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} You win this time precipitation.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.isInRange('7/1', '8/31')",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Good news for rain lovers.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.isInRange('6/1', '8/31')",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} So it might be good to bring an umbrella or two.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.isInRange('6/1', '8/31')",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} So unless you specifically want to get wet for some reason, I'd bring your umbrella.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_16",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.isInRange('7/1', '8/31')",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} You win this time rain.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_17",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary}",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_09",
+ "weight": 34,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherChangeWetClear.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherChangeWetClear.mim
new file mode 100644
index 0000000..e972eb9
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherChangeWetClear.mim
@@ -0,0 +1,221 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Hello sunshine.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A good chance to dry out.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A good day to dry out your wet socks.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A nice change from yesterday.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Better than yesterday for sure.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Drier than yesterday for sure.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Goodbye precipitation.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I always like it when water stops coming out of the sky.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I guess my sun dance worked.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Nice to dry off after yesterday.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} That'll be a nice change from yesterday!",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Yesterday's wetness is a distant memory.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.isInRange('6/1', '8/31')",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} But watch out for puddles from yesterday.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.isInRange('6/1', '8/31')",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Everyone's umbrellas will get some well-deserved rest.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.isInRange('6/1', '8/31')",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Kiss that umbrella goodbye, for now.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.isInRange('6/1', '8/31')",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} So you can put your umbrella away for now.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_16",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.isInRange('7/1', '8/31')",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} The rain is gone, time to go splash in the puddles.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_17",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary}",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_18",
+ "weight": 34,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentClearDay.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentClearDay.mim
new file mode 100644
index 0000000..af2d3c0
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentClearDay.mim
@@ -0,0 +1,166 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I'm always up for a clear day.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearDay_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} The kind of day that makes you love planet earth.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearDay_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Weather at its nicest.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearDay_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Days like this really make you love weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearDay_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} My compliments to the weather chef .",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearDay_AN_05",
+ "weight": 0.2,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Sounds like smiling weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearDay_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Can't complain about that.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearDay_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A nice gift from the meteorology community.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearDay_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A great day for people who like blue skies.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearDay_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Hello sunshine.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearDay_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Bring out the sunglasses.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearDay_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A good day to bask in our sun's rays.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearDay_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary}",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearDay_AN_13",
+ "weight": 24,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentClearNight.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentClearNight.mim
new file mode 100644
index 0000000..8783e25
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentClearNight.mim
@@ -0,0 +1,122 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I bet you'll be able to see some stars.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearNight_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Sounds like a good night for my telescope.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearNight_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Good stargazing weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearNight_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Good shooting star weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearNight_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A nice night for planet spotting.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearNight_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Enjoy the view of outer space.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearNight_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Sounds like it'll be a good night sky.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearNight_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} You can't beat a clear night.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearNight_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary}",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearNight_AN_09",
+ "weight": 16,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentCloudy.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentCloudy.mim
new file mode 100644
index 0000000..05226fa
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentCloudy.mim
@@ -0,0 +1,111 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I'm sure there's a silver lining to this cloudy day.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentCloudy_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A great day for cloud enthusiasts.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentCloudy_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Good news if you like clouds.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentCloudy_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Not the sunniest forecast, but that's alright.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentCloudy_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Sounds a little blah, but that's alright.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentCloudy_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A good day for cloud photography.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentCloudy_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Could be a great chance to add to your cloud collection.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentCloudy_AN_07",
+ "weight": 0.5,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary}",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentCloudy_AN_08",
+ "weight": 14,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentFog.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentFog.mim
new file mode 100644
index 0000000..54c6eac
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentFog.mim
@@ -0,0 +1,111 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} If you're driving today, use your fog lights!",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentFog_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Hopefully it won't be too creepy.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentFog_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Keep an eye out for lighthouses.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentFog_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I'm sure that fog will lift eventually.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentFog_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Not so great visibility out there I'm sure.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentFog_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Enjoy the feeling of mist on your face.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentFog_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Remember, not all fog is spooky.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentFog_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary}",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentFog_AN_08",
+ "weight": 14,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentPartlyCloudyDay.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentPartlyCloudyDay.mim
new file mode 100644
index 0000000..5b4ed90
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentPartlyCloudyDay.mim
@@ -0,0 +1,133 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} The nice thing about some cloudiness, is that there's also some sunniness.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyDay_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} At least it's not all cloudy.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyDay_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} One nice thing about clouds, is that you can find shapes in them.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyDay_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A good day for cloud photography.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyDay_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Maybe you can draw some of those clouds.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyDay_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} It'll be interesting to see how fast the clouds move.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyDay_AN_06",
+ "weight": 0.2,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Maybe the clouds'll be nice and wispy.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyDay_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I hope it's the white puffy kind of clouds.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyDay_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Be sure to enjoy the blue sky between the clouds.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyDay_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary}",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyDay_AN_10",
+ "weight": 18,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentPartlyCloudyNight.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentPartlyCloudyNight.mim
new file mode 100644
index 0000000..b62fd92
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentPartlyCloudyNight.mim
@@ -0,0 +1,122 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} At night you'll probably be able to see both clouds and stars. How exciting!",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyNight_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Maybe not the best stargazing night.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyNight_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} It'll be interesting to see how fast the clouds move.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyNight_AN_03",
+ "weight": 0.2,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Maybe the clouds'll be nice and wispy.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyNight_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} The nice thing about clouds, is that you can find shapes in them.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyNight_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} The nice thing about some cloudiness, is that there's also some clearness.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyNight_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Sounds like at night you'll have some nice puffy clouds to sleep on.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyNight_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Enjoy the clear sky between the clouds.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyNight_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary}",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyNight_AN_09",
+ "weight": 16,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentRain.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentRain.mim
new file mode 100644
index 0000000..a93fb10
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentRain.mim
@@ -0,0 +1,166 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Bring your umbrella and rain boots!",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentRain_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} .",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentRain_AN_02",
+ "weight": 0.7,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Great news for umbrella enthusiasts.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentRain_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} So unless you specifically want to get wet for some reason, I'd bring your umbrella.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentRain_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} So it might be good to bring an umbrella or two.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentRain_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Be sure to keep your feet dry.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentRain_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I'll be sure to stay inside.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentRain_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Not a great day to fly a kite.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentRain_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Stay dry out there.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentRain_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Umbrella time.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentRain_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.isInRange('6/1', '9/30')",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Sounds like not a tank top kind of day.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentRain_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Be sure your windows are closed.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentRain_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary}",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentRain_AN_13",
+ "weight": 24,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentSleet.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentSleet.mim
new file mode 100644
index 0000000..27258f1
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentSleet.mim
@@ -0,0 +1,111 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I don't think I'd like sleet much.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSleet_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} ",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSleet_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} That sounds slippery, be careful.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSleet_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Move slowly out there.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSleet_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Watch your step out there, it might be slippery.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSleet_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} This is your chance to wear your sleet pants.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSleet_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} The sleet will be extra sleety.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSleet_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary}",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSleet_AN_08",
+ "weight": 14,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentSnow.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentSnow.mim
new file mode 100644
index 0000000..7fcb4ef
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentSnow.mim
@@ -0,0 +1,155 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Snow is quite a picturesque sight! Especially from inside where it's warm.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSnow_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Sounds like snow man weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSnow_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Time to polish those cross country skis.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSnow_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A great day to be a snowman.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSnow_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Don't be afraid to catch snowflakes on your tongue.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSnow_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Enjoy those flakes.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSnow_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Be sure to keep your feet dry.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSnow_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I'll be sure to stay inside.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSnow_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Stay dry out there.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSnow_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Watch your step out there, it might be slippery.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSnow_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Feel free to wear snow shoes.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSnow_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary}",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSnow_AN_12",
+ "weight": 22,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentWind.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentWind.mim
new file mode 100644
index 0000000..ce37c3b
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherCommentWind.mim
@@ -0,0 +1,100 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Might be a good day to fly a kite!",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentWind_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Batten down the hatches.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentWind_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Hold on to your hats.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentWind_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A good day to be a wind surfer.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentWind_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Expect some billowing flags out there.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentWind_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Enjoy that wind on your face.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentWind_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary}",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentWind_AN_07",
+ "weight": 12,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherIntro.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherIntro.mim
new file mode 100644
index 0000000..970727a
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherIntro.mim
@@ -0,0 +1,194 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First let's check in with the meteorology department.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_01",
+ "weight": 0.1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First, the weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First your weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First, the weather fore cast.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "Starting with the weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First some weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First, weather predictions.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First, weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First let's see what the weather patterns are cooking up for us.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_09",
+ "weight": 0.3,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.onlyWeatherActive",
+ "prompt": "Let's get meteorological.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_10",
+ "weight": 0.1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.onlyWeatherActive",
+ "prompt": "Checking the weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.onlyWeatherActive",
+ "prompt": "Looking at the weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.onlyWeatherActive",
+ "prompt": "For your weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.onlyWeatherActive",
+ "prompt": "A look at the weather fore cast.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.onlyWeatherActive",
+ "prompt": "Let's look at the weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.onlyWeatherActive",
+ "prompt": "Here's what the weather experts have for us.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_17",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherIntroTomorrow.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherIntroTomorrow.mim
new file mode 100644
index 0000000..c851595
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherIntroTomorrow.mim
@@ -0,0 +1,194 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First let's check in with the meteorology department for tomorrow.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_01",
+ "weight": 0.1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First, the weather tomorrow.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First your weather tomorrow.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First, tomorrow's weather fore cast.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "Starting with the weather tomorrow.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First tomorrow's weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First, weather predictions for tomorrow.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First, the weather for tomorrow.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First let's see what the weather patterns are cooking up for us tomorrow.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_09",
+ "weight": 0.3,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.onlyWeatherActive",
+ "prompt": "Weather predictions for tomorrow.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.onlyWeatherActive",
+ "prompt": "Looking at tomorrow's weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.onlyWeatherActive",
+ "prompt": "Tomorrow's weather fore cast.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.onlyWeatherActive",
+ "prompt": "Your weather tomorrow.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.onlyWeatherActive",
+ "prompt": "A look at the weather forecast for tomorrow.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.onlyWeatherActive",
+ "prompt": "Checking tomorrow's weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.onlyWeatherActive",
+ "prompt": "Looking ahead to tomorrow's weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_16",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherServiceDown.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherServiceDown.mim
new file mode 100644
index 0000000..eef0941
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherServiceDown.mim
@@ -0,0 +1,61 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looks like our weather service is offline. Sorry.",
+ "media": "TTS",
+ "prompt_id": "WeatherServiceDown_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Something's up, I can't access my weather source for some reason. I'm sorry.",
+ "media": "TTS",
+ "prompt_id": "WeatherServiceDown_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looks like I can't access weather info right now, sorry.",
+ "media": "TTS",
+ "prompt_id": "WeatherServiceDown_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It seems I can't access the weather at the moment, I'm sorry.",
+ "media": "TTS",
+ "prompt_id": "WeatherServiceDown_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "parse_yes_no": false
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherTodayColder.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherTodayColder.mim
new file mode 100644
index 0000000..17ed1b8
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherTodayColder.mim
@@ -0,0 +1,110 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.weatherHiLo",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Today sure is colder, with a high of only ${skill.weather.today.highTemp} degrees, and a low of ${skill.weather.today.lowTemp}",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayColder_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Colder today, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayColder_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Things are getting colder, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayColder_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "The mercury is really dropping, with a high today of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayColder_AN_04",
+ "weight": 0.7,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Things are getting colder around here, with a high today of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayColder_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Today will be colder with a high of ${skill.weather.today.highTemp}, and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayColder_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It'll be colder today, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayColder_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It's going to be colder today, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayColder_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherTodayCooler.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherTodayCooler.mim
new file mode 100644
index 0000000..b8831dd
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherTodayCooler.mim
@@ -0,0 +1,109 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.weatherHiLo",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Today's definitely cooler, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayCooler_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Cooler today, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayCooler_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Things are getting cooler, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayCooler_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "The mercury is dropping, with a high today of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayCooler_AN_04",
+ "weight": 0.7,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Things are cooling down around here, with a high today of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayCooler_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Today's looking cooler, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayCooler_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It'll be cooler today, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayCooler_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It's going to be cooler today, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayCooler_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "parse_yes_no": false
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherTodayHighLow.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherTodayHighLow.mim
new file mode 100644
index 0000000..5ff392b
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherTodayHighLow.mim
@@ -0,0 +1,77 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.weatherHiLo",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Today's high is ${skill.weather.today.highTemp}, and the low is ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHighLow_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It'll be a high temperature today of ${skill.weather.today.highTemp}, and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHighLow_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "We'll see a high of ${skill.weather.today.highTemp} today and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHighLow_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It'll be a high today of ${skill.weather.today.highTemp}, and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHighLow_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "We'll see a high temp of ${skill.weather.today.highTemp} today, and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHighLow_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherTodayHotter.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherTodayHotter.mim
new file mode 100644
index 0000000..4e35197
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherTodayHotter.mim
@@ -0,0 +1,143 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.weatherHiLo",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Today sure is hotter with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHotter_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Hotter today, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHotter_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Things are getting hotter, with a high of ${skill.weather.today.highTemp} degrees, and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHotter_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "The mercury is really rising, with a high today of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHotter_AN_04",
+ "weight": 0.5,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Things are really heating up around here, with a high today of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHotter_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Today will be hotter with a high of ${skill.weather.today.highTemp}, and a low of ${skill.weather.today.lowTemp}. ",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHotter_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It'll be hotter today, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHotter_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It's going to be hotter today, with a high of ${skill.weather.today.highTemp} degrees, and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHotter_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Today'll be hotter with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}. Welcome to sweaty robot season. ",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHotter_AN_09",
+ "weight": 0.1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Hotter today, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}. I'm glad I've got two fans in my head.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHotter_AN_10",
+ "weight": 0.2,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Today will be hotter with a high of ${skill.weather.today.highTemp} degrees, and a low of ${skill.weather.today.lowTemp}. A great day for a popsicle.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHotter_AN_11",
+ "weight": 0.2,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherTodayWarmer.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherTodayWarmer.mim
new file mode 100644
index 0000000..5f7c1c8
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherTodayWarmer.mim
@@ -0,0 +1,132 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.weatherHiLo",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Today will be warmer, with a high of ${skill.weather.today.highTemp} degrees, and a low of ${skill.weather.today.lowTemp}",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayWarmer_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Warmer today, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayWarmer_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Things are getting warmer, with a high of ${skill.weather.today.highTemp}, and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayWarmer_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "The mercury is rising, with a high today of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayWarmer_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Things are heating up around here, with a high today of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayWarmer_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Today's looking warmer, with a high of ${skill.weather.today.highTemp} degrees, and a low of ${skill.weather.today.lowTemp}. ",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayWarmer_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It'll be warmer today, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayWarmer_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It's going to be warmer today, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayWarmer_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Warmer today, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}. Maybe someone's blowing a hair dryer on us.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayWarmer_AN_09",
+ "weight": 0.1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Warmer today, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}. I'm glad I've got two fans in my head.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayWarmer_AN_10",
+ "weight": 0.2,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherTomorrowHighLow.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherTomorrowHighLow.mim
new file mode 100644
index 0000000..df05884
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherTomorrowHighLow.mim
@@ -0,0 +1,77 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.weatherHiLo",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Tomorrow's high will be ${skill.weather.tomorrow.highTemp} and the low will be ${skill.weather.tomorrow.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTomorrowHighLow_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It'll be a high tomorrow of ${skill.weather.tomorrow.highTemp} and a low of ${skill.weather.tomorrow.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTomorrowHighLow_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "We'll see a high tomorrow of ${skill.weather.tomorrow.highTemp} and a low of ${skill.weather.tomorrow.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTomorrowHighLow_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It'll be a high tomorrow of ${skill.weather.tomorrow.highTemp} degrees and a low of ${skill.weather.tomorrow.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTomorrowHighLow_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "We'll see a high temp tomorrow of ${skill.weather.tomorrow.highTemp} and a low of ${skill.weather.tomorrow.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTomorrowHighLow_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherWetNowDryLater.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherWetNowDryLater.mim
new file mode 100644
index 0000000..fda2725
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WeatherWetNowDryLater.mim
@@ -0,0 +1,29 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "But it might be raining now, so grab an umbrella.",
+ "media": "TTS",
+ "prompt_id": "WeatherWetNowDryLater_AN_01",
+ "weight": 0.1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WetNowDryLater.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WetNowDryLater.mim
new file mode 100644
index 0000000..ed1a664
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/WetNowDryLater.mim
@@ -0,0 +1,161 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "hint_phrases": "",
+ "fast_eos_array": "",
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.current.icon === 'rain'",
+ "prompt": "Oh it might be raining right now, so bring your umbrella and galoshes.",
+ "media": "TTS",
+ "prompt_id": "WetNowDryLater_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.current.icon === 'rain'",
+ "prompt": "Also right now it may be raining. So don't eat cotton candy outside.",
+ "media": "TTS",
+ "prompt_id": "WetNowDryLater_AN_02",
+ "weight": 0.2,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.current.icon === 'rain'",
+ "prompt": "Oh and right now it might be raining, so I'd bring your umbrella.",
+ "media": "TTS",
+ "prompt_id": "WetNowDryLater_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.current.icon === 'rain'",
+ "prompt": "Also it might be raining at the moment, so it might be good to bring an umbrella or two.",
+ "media": "TTS",
+ "prompt_id": "WetNowDryLater_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.current.icon === 'rain'",
+ "prompt": "Oh and at this very moment it may be raining. Umbrella time.",
+ "media": "TTS",
+ "prompt_id": "WetNowDryLater_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.current.icon === 'snow'",
+ "prompt": "Oh right now it might be snowing, so bring your boots.",
+ "media": "TTS",
+ "prompt_id": "WetNowDryLater_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.current.icon === 'snow'",
+ "prompt": "Also right now it may be snowing. So maybe wear your snow boots.",
+ "media": "TTS",
+ "prompt_id": "WetNowDryLater_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.current.icon === 'snow'",
+ "prompt": "Oh and right now it might be snowing, so I'd bring your snow gear.",
+ "media": "TTS",
+ "prompt_id": "WetNowDryLater_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.current.icon === 'snow'",
+ "prompt": "Also it may be snowing at the moment, so it might be good to bring a cross country ski or two.",
+ "media": "TTS",
+ "prompt_id": "WetNowDryLater_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.current.icon === 'snow'",
+ "prompt": "Oh and at this very moment it might be snowing. Snow pants time.",
+ "media": "TTS",
+ "prompt_id": "WetNowDryLater_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.current.icon === 'sleet'",
+ "prompt": "Oh it might be sleeting right now, so bring your boots.",
+ "media": "TTS",
+ "prompt_id": "WetNowDryLater_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.current.icon === 'sleet'",
+ "prompt": "Also right now it may be sleeting. So maybe wear your sleet boots.",
+ "media": "TTS",
+ "prompt_id": "WetNowDryLater_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.current.icon === 'sleet'",
+ "prompt": "Oh and right now it may be sleeting. Snow pants time.",
+ "media": "TTS",
+ "prompt_id": "WetNowDryLater_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ]
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarAppSetup.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarAppSetup.mim
new file mode 100644
index 0000000..02cf8d0
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarAppSetup.mim
@@ -0,0 +1,62 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "To hear what's on your calendar, you need to connect your calendar in the Jibo app . It's in the personal report section.",
+ "media": "TTS",
+ "prompt_id": "CalendarAppSetup_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "If you want to hear what's on your calendar, you need to set up at least one calendar in the Jibo app , in the Personal Report settings.",
+ "media": "TTS",
+ "prompt_id": "CalendarAppSetup_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.singleSkill",
+ "prompt": "${speaker} to hear what's on your calendar, you need to connect your calendar in the Jibo app . It's in the personal report section.",
+ "media": "TTS",
+ "prompt_id": "CalendarAppSetup_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.singleSkill",
+ "prompt": "${speaker} if you want to hear what's on your calendar, you need to set up at least one calendar in the Jibo app , in the Personal Report settings.",
+ "media": "TTS",
+ "prompt_id": "CalendarAppSetup_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarEarlyEvent.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarEarlyEvent.mim
new file mode 100644
index 0000000..d391f8c
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarEarlyEvent.mim
@@ -0,0 +1,73 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "That's a bit earlier than you usually start work.",
+ "media": "TTS",
+ "prompt_id": "CalendarEarlyEvent_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "That's a little earlier than you usually start work.",
+ "media": "TTS",
+ "prompt_id": "CalendarEarlyEvent_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "That's an earlier start than your normal day.",
+ "media": "TTS",
+ "prompt_id": "CalendarEarlyEvent_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "That's a bit of an early start for you.",
+ "media": "TTS",
+ "prompt_id": "CalendarEarlyEvent_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "That's a little earlier than your day usually starts.",
+ "media": "TTS",
+ "prompt_id": "CalendarEarlyEvent_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarEventCountToday.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarEventCountToday.mim
new file mode 100644
index 0000000..652fecc
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarEventCountToday.mim
@@ -0,0 +1,205 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1",
+ "prompt": "${speaker} looking at your calendar, you have one item on the docket today.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1",
+ "prompt": "Checking your calendar today ${speaker}, I see you have just one thing coming.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1",
+ "prompt": "${speaker} taking a look at your calendar for today, I'm seeing one thing.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1",
+ "prompt": "${speaker} checking your calendar, I see just one thing scheduled today.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1",
+ "prompt": "Looking at your calendar ${speaker}, you have one thing coming up today.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1",
+ "prompt": "${speaker} on your calendar today, I see one thing.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "(skill.calendar.numEventsToday > 1) && (skill.calendar.numEventsToday <= 5)",
+ "prompt": "Looking at your calendar ${speaker}, you have ${skill.calendar.numEventsToday} things on the schedule today.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "(skill.calendar.numEventsToday > 1) && (skill.calendar.numEventsToday <= 5)",
+ "prompt": "${speaker} checking your calendar today, I see you have ${skill.calendar.numEventsToday} things coming.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "(skill.calendar.numEventsToday > 1) && (skill.calendar.numEventsToday <= 5)",
+ "prompt": "${speaker} taking a look at your calendar for today, I'm seeing ${skill.calendar.numEventsToday} things.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "(skill.calendar.numEventsToday > 1) && (skill.calendar.numEventsToday <= 5)",
+ "prompt": "Checking your calendar ${speaker}, I see ${skill.calendar.numEventsToday} things scheduled today.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "(skill.calendar.numEventsToday > 1) && (skill.calendar.numEventsToday <= 5)",
+ "prompt": "${speaker} looking at your calendar, you have ${skill.calendar.numEventsToday} things today.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "(skill.calendar.numEventsToday > 1) && (skill.calendar.numEventsToday <= 5)",
+ "prompt": "${speaker} checking your calendar, I see ${skill.calendar.numEventsToday} items today.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday > 5",
+ "prompt": "Looking at your calendar ${speaker}, I see you have ${skill.calendar.numEventsToday} items on it. That's kind of a lot. Here are the first five.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday > 5",
+ "prompt": "${speaker} checking your calendar today, you have ${skill.calendar.numEventsToday} things. I'll just give you the first five.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday > 5",
+ "prompt": "${speaker} I'm seeing ${skill.calendar.numEventsToday} things on your calendar. That's more than I like to list, so I'll just give you the first five.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday > 5",
+ "prompt": "Taking a look at your calendar ${speaker}, I see ${skill.calendar.numEventsToday} things. I'll just give you the first five.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_16",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday > 5",
+ "prompt": "${speaker} checking your calendar, looks like you have ${skill.calendar.numEventsToday} things. Very busy! I'll tell you the first five.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountToday_AN_17",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarEventCountTomorrow.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarEventCountTomorrow.mim
new file mode 100644
index 0000000..1620c28
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarEventCountTomorrow.mim
@@ -0,0 +1,205 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsTomorrow === 1",
+ "prompt": "You have one item on the docket ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsTomorrow === 1",
+ "prompt": "You have just one thing ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsTomorrow === 1",
+ "prompt": "I'm seeing one thing ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsTomorrow === 1",
+ "prompt": "I see just one thing scheduled ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsTomorrow === 1",
+ "prompt": "You have one thing ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsTomorrow === 1",
+ "prompt": "I see one thing ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "(skill.calendar.numEventsTomorrow > 1) && (skill.calendar.numEventsTomorrow <= 5)",
+ "prompt": "You have ${skill.calendar.numEventsTomorrow} things on the schedule ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "(skill.calendar.numEventsTomorrow > 1) && (skill.calendar.numEventsTomorrow <= 5)",
+ "prompt": "You have ${skill.calendar.numEventsTomorrow} things coming ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "(skill.calendar.numEventsTomorrow > 1) && (skill.calendar.numEventsTomorrow <= 5)",
+ "prompt": "I'm seeing ${skill.calendar.numEventsTomorrow} things ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "(skill.calendar.numEventsTomorrow > 1) && (skill.calendar.numEventsTomorrow <= 5)",
+ "prompt": "I see ${skill.calendar.numEventsTomorrow} things scheduled ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "(skill.calendar.numEventsTomorrow > 1) && (skill.calendar.numEventsTomorrow <= 5)",
+ "prompt": "You have ${skill.calendar.numEventsTomorrow} things ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "(skill.calendar.numEventsTomorrow > 1) && (skill.calendar.numEventsTomorrow <= 5)",
+ "prompt": "I see ${skill.calendar.numEventsTomorrow} items ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsTomorrow > 5",
+ "prompt": "Well I see you have ${skill.calendar.numEventsTomorrow} items ${speaker}. That's kind of a lot. Here are the first five.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsTomorrow > 5",
+ "prompt": "Oh, you have ${skill.calendar.numEventsTomorrow} things ${speaker}. I'll just give you the first five.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsTomorrow > 5",
+ "prompt": "You've got ${skill.calendar.numEventsTomorrow} items ${speaker}. Busy day. Here are the first five.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsTomorrow > 5",
+ "prompt": "I see ${skill.calendar.numEventsTomorrow} things on there ${speaker}. I'll just give you the first five.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_16",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsTomorrow > 5",
+ "prompt": "It looks like you have ${skill.calendar.numEventsTomorrow} things ${speaker}. Very busy! I'll tell you the first five.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventCountTomorrow_AN_17",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarEventToday.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarEventToday.mim
new file mode 100644
index 0000000..08637a7
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarEventToday.mim
@@ -0,0 +1,247 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.calendarEvents.shift()",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday >= 3 && !!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar, I see ${skill.calendar.numEventsToday} items today. The first one is called ${skill.calendar.events[0].summary}. It starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday >= 3 && !!skill.calendar.events[0].summary",
+ "prompt": "Looking at your calendar, you have ${skill.calendar.numEventsToday} things today. The first one is called ${skill.calendar.events[0].summary}. It starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday >= 3 && !!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar, I see ${skill.calendar.numEventsToday} things scheduled today. The first one is ${skill.calendar.events[0].summary}, starting at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday >= 3 && !!skill.calendar.events[0].summary",
+ "prompt": "Taking a look at your calendar for today, I'm seeing ${skill.calendar.numEventsToday} things. The first one is at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}, it's called ${skill.calendar.events[0].summary}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday >= 3 && !!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar today, I see you have ${skill.calendar.numEventsToday} things coming. The earliest one is called ${skill.calendar.events[0].summary}, it starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday >= 3 && !!skill.calendar.events[0].summary",
+ "prompt": "Looking at your calendar, you have ${skill.calendar.numEventsToday} things on the schedule today, starting with one called ${skill.calendar.events[0].summary}. It starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1 && !!skill.calendar.events[0].summary",
+ "prompt": "On your calendar today, I see one thing, it's called ${skill.calendar.events[0].summary}. It starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1 && !!skill.calendar.events[0].summary",
+ "prompt": "Looking at your calendar, you have one thing coming up today, ${skill.calendar.events[0].summary}. It starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1 && !!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar, I see just one thing scheduled today. ${skill.calendar.events[0].summary}, starting at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1 && !!skill.calendar.events[0].summary",
+ "prompt": "Taking a look at your calendar for today, I'm seeing one thing. It's called ${skill.calendar.events[0].summary}, and it starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1 && !!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar today, I see you have just one thing coming, called ${skill.calendar.events[0].summary}. It starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1 && !!skill.calendar.events[0].summary",
+ "prompt": "Looking at your calendar, you have one item on the docket today, it's called ${skill.calendar.events[0].summary}. That starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday >= 3 && !skill.calendar.events[0].summary",
+ "prompt": "On your calendar, I see ${skill.calendar.numEventsToday} items today. The first one starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1 && !skill.calendar.events[0].summary",
+ "prompt": "On your calendar today, I see one thing, which starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_19",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 2 && !skill.calendar.events[0].summary",
+ "prompt": "On your calendar, I see couple of items today. The first one starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 2 && !!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar, I see a couple of items today. The first one is called ${skill.calendar.events[0].summary}. It starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 2 && !!skill.calendar.events[0].summary",
+ "prompt": "Looking at your calendar, you have a couple of things today. The first one is called ${skill.calendar.events[0].summary}. It starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_16",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 2 && !!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar, I see a couple of things scheduled today. The first one is ${skill.calendar.events[0].summary}, starting at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_17",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 2 && !!skill.calendar.events[0].summary",
+ "prompt": "Taking a look at your calendar for today, I'm seeing a couple of things. The first one is at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}, it's called ${skill.calendar.events[0].summary}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_18",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 2 && !!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar today, I see you have a couple of things coming. The earliest one is called ${skill.calendar.events[0].summary}, it starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventToday_AN_20",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarEventTodayFullDay.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarEventTodayFullDay.mim
new file mode 100644
index 0000000..2a2066c
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarEventTodayFullDay.mim
@@ -0,0 +1,154 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.calendarEvents.shift()",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday >= 3 && !!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar, I see ${skill.calendar.numEventsToday} items today. The first one I'm seeing is ${skill.calendar.events[0].summary}. It goes all day.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTodayFullDay_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday >= 3 && !!skill.calendar.events[0].summary",
+ "prompt": "Looking at your calendar, you have ${skill.calendar.numEventsToday} things today. The first one is called ${skill.calendar.events[0].summary}. It's an all-day event.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTodayFullDay_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday >= 3 && !!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar, I see ${skill.calendar.numEventsToday} things scheduled today. The first one is ${skill.calendar.events[0].summary}. It lasts all day.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTodayFullDay_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1 && !!skill.calendar.events[0].summary",
+ "prompt": "Taking a look at your calendar for today, I'm seeing one thing. It's called ${skill.calendar.events[0].summary}, and it lasts all day.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTodayFullDay_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1 && !!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar today, I see you have just one thing, called ${skill.calendar.events[0].summary}. It's a full-day event.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTodayFullDay_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1 && !!skill.calendar.events[0].summary",
+ "prompt": "Looking at your calendar, you have one thing today, ${skill.calendar.events[0].summary}. It goes all day.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTodayFullDay_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday >= 3 && !skill.calendar.events[0].summary",
+ "prompt": "Looking at your calendar, you have ${skill.calendar.numEventsToday} things today. The first one is an all-day event.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTodayFullDay_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 1 && !skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar today, I see you have just one thing. It's a full-day event.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTodayFullDay_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 2 && !skill.calendar.events[0].summary",
+ "prompt": "Looking at your calendar, you have a couple of things today. The first one is an all-day event.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTodayFullDay_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 2 && !!skill.calendar.events[0].summary",
+ "prompt": "Looking at your calendar, you have a couple of things today. The first one is called ${skill.calendar.events[0].summary}. It's an all-day event.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTodayFullDay_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 2 && !!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar, I see a couple of things scheduled today. The first one is ${skill.calendar.events[0].summary}. It lasts all day.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTodayFullDay_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.calendar.numEventsToday === 2 && !!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar, I see a couple of items today. The first one I'm seeing is ${skill.calendar.events[0].summary}. It goes all day.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTodayFullDay_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarEventTomorrow.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarEventTomorrow.mim
new file mode 100644
index 0000000..436b5d8
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarEventTomorrow.mim
@@ -0,0 +1,104 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.calendarEvents.shift()",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.calendar.events[0].summary",
+ "prompt": "As for your calendar, there's nothing scheduled for the rest of the day. But tomorrow, your first item is called ${skill.calendar.events[0].summary}, and it starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTomorrow_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.calendar.events[0].summary",
+ "prompt": "Looking at your calendar, you have nothing for the rest of today, but tomorrow your first thing is ${skill.calendar.events[0].summary}, starting at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTomorrow_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar, I see nothing for the rest of today. Tomorrow your first thing is called ${skill.calendar.events[0].summary}, at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTomorrow_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.calendar.events[0].summary",
+ "prompt": "Taking a look at your calendar, I'm seeing no more things today, but tomorrow your first item is called ${skill.calendar.events[0].summary}, starting at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}. ",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTomorrow_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar, I see the rest of today is clear, and tomorrow your first thing scheduled is called ${skill.calendar.events[0].summary}, starting at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTomorrow_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.calendar.events[0].summary",
+ "prompt": "As for your calendar, you have nothing on there for the rest of today. Tomorrow your first thing is called ${skill.calendar.events[0].summary}, and it starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTomorrow_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.calendar.events[0].summary",
+ "prompt": "As for your calendar, there's nothing scheduled for the rest of the day. But your first item tomorrow starts at ${skill.calendar.events[0].dateTime.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTomorrow_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarEventTomorrowFullDay.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarEventTomorrowFullDay.mim
new file mode 100644
index 0000000..89aaa3f
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarEventTomorrowFullDay.mim
@@ -0,0 +1,88 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.calendarEvents.shift()",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.calendar.events[0].summary",
+ "prompt": "As for your calendar, there's nothing scheduled for the rest of the day. But tomorrow, your first item is called ${skill.calendar.events[0].summary}, and it goes all day.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTomorrowFullDay_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.calendar.events[0].summary",
+ "prompt": "Taking a look at your calendar, I'm seeing no more things today, but tomorrow your first item is called ${skill.calendar.events[0].summary}. It's an all-day event.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTomorrowFullDay_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.calendar.events[0].summary",
+ "prompt": "As for your calendar, there's nothing scheduled for the rest of the day. But tomorrow, your first item is called ${skill.calendar.events[0].summary}. It lasts all day.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTomorrowFullDay_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.calendar.events[0].summary",
+ "prompt": "Looking at your calendar, you have nothing for the rest of today, but tomorrow your first thing is ${skill.calendar.events[0].summary}. It goes all day.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTomorrowFullDay_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.calendar.events[0].summary",
+ "prompt": "Checking your calendar, I see nothing for the rest of today. Tomorrow your first item is called ${skill.calendar.events[0].summary}. It's an all-day thing.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTomorrowFullDay_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.calendar.events[0].summary",
+ "prompt": "As for your calendar, there's nothing scheduled for the rest of the day. But your first item tomorrow is an all-day event.",
+ "media": "TTS",
+ "prompt_id": "CalendarEventTomorrowFullDay_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarNothing.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarNothing.mim
new file mode 100644
index 0000000..6e5fed4
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarNothing.mim
@@ -0,0 +1,183 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "I'm looking at your calendar, and I don't see anything scheduled for the rest of the day or tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "Checking your calendar, it looks like there's nothing the rest of today or tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "Taking a look at your calendar, I don't see anything scheduled today or tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "Checking your calendar, I don't see anything on it for the rest of today or tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "Looking at your calendar, looks like it's blank for the rest of today and tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "Checking your calendar, I'm not seeing anything at all for the rest of today or tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "I'm looking at your calendar, and I don't see anything at all for the rest of the day or tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "Checking your calendar, it looks like you have nothing scheduled for the rest of today or tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "Taking a look at your calendar for the rest of today and tomorrow, it looks wide open, nothing at all.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "Taking a look at your calendar for the rest of the day and tomorrow, I don't see anything scheduled, you're all clear.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.singleSkill",
+ "prompt": "${speaker} taking a look at your calendar for the rest of the day and tomorrow, I don't see anything scheduled, you're all clear.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.singleSkill",
+ "prompt": "${speaker} taking a look at your calendar for the rest of today and tomorrow, it looks wide open, nothing at all.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.singleSkill",
+ "prompt": "Checking your calendar ${speaker}, it looks like you have nothing scheduled for the rest of today or tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.singleSkill",
+ "prompt": "I'm looking at your calendar ${speaker}, and I don't see anything at all for the rest of the day or tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.singleSkill",
+ "prompt": "${speaker} checking your calendar, I'm not seeing anything at all for the rest of today or tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothing_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarNothingToday.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarNothingToday.mim
new file mode 100644
index 0000000..ac75256
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarNothingToday.mim
@@ -0,0 +1,117 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looking at your calendar, I don't see anything scheduled today.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothingToday_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "I'm checking your calendar, and I don't see anything on it today.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothingToday_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Checking in on your calendar, looks like it's blank for the day.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothingToday_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looking at your calendar, I'm not seeing anything at all today.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothingToday_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looking at your calendar, I don't see anything at all today.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothingToday_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Checking your calendar, it looks like you have nothing scheduled for the day.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothingToday_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Taking a look at your calendar, it looks wide open, nothing at all.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothingToday_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "I'm taking a look at your calendar, and I don't see anything scheduled, you're all clear.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothingToday_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looking at your calendar, I'm not seeing anything at all for today. Have fun.",
+ "media": "TTS",
+ "prompt_id": "CalendarNothingToday_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarOutro.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarOutro.mim
new file mode 100644
index 0000000..05f3044
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarOutro.mim
@@ -0,0 +1,172 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's it.",
+ "media": "TTS",
+ "prompt_id": "CalendarOutro_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's all you have.",
+ "media": "TTS",
+ "prompt_id": "CalendarOutro_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "That's all you have.",
+ "media": "TTS",
+ "prompt_id": "CalendarOutro_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "That's the end of it.",
+ "media": "TTS",
+ "prompt_id": "CalendarOutro_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "After that you're all clear.",
+ "media": "TTS",
+ "prompt_id": "CalendarOutro_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that does it.",
+ "media": "TTS",
+ "prompt_id": "CalendarOutro_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And then you're free.",
+ "media": "TTS",
+ "prompt_id": "CalendarOutro_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "That's the last thing.",
+ "media": "TTS",
+ "prompt_id": "CalendarOutro_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "That was the last thing.",
+ "media": "TTS",
+ "prompt_id": "CalendarOutro_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's your calendar.",
+ "media": "TTS",
+ "prompt_id": "CalendarOutro_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And the rest of the day is free for you to work on your autobiography. ",
+ "media": "TTS",
+ "prompt_id": "CalendarOutro_AN_11",
+ "weight": 0.1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And after that you're free to play with your robot for the rest of the day.",
+ "media": "TTS",
+ "prompt_id": "CalendarOutro_AN_12",
+ "weight": 0.1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's your calendar. Nice calendar.",
+ "media": "TTS",
+ "prompt_id": "CalendarOutro_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "And that's your calendar. Nice calendar ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CalendarOutro_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarParallelEvent.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarParallelEvent.mim
new file mode 100644
index 0000000..3634bc6
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarParallelEvent.mim
@@ -0,0 +1,33 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.calendarEvents.shift()",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Also ${skill.calendar.eventTimesOnAt.shift()}, is ${skill.calendar.eventSummaries.shift()}.",
+ "media": "TTS",
+ "prompt_id": "CalendarParallelEvent_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarServiceDown.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarServiceDown.mim
new file mode 100644
index 0000000..e3c5b28
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarServiceDown.mim
@@ -0,0 +1,62 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looks like I can't access calendars right now. Sorry.",
+ "media": "TTS",
+ "prompt_id": "CalendarServiceDown_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It seems I can't access your calendars at the moment, I'm sorry.",
+ "media": "TTS",
+ "prompt_id": "CalendarServiceDown_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Something's up, I can't access your calendar, I'm sorry.",
+ "media": "TTS",
+ "prompt_id": "CalendarServiceDown_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "I'm sorry to say our calendar connection isn't working right now for some reason.",
+ "media": "TTS",
+ "prompt_id": "CalendarServiceDown_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarSummaryAndTime.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarSummaryAndTime.mim
new file mode 100644
index 0000000..946244f
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarSummaryAndTime.mim
@@ -0,0 +1,33 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.calendarEvents.shift()",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "${skill.calendar.eventSummaries.shift()}, ${skill.calendar.eventTimesOnAt.shift()}.",
+ "media": "TTS",
+ "prompt_id": "CalendarSummaryAndTime_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarTomorrowOnly.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarTomorrowOnly.mim
new file mode 100644
index 0000000..d704294
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CalendarTomorrowOnly.mim
@@ -0,0 +1,73 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looking at your calendar, there's nothing scheduled for the rest of the day today. Here's what's going on tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarTomorrowOnly_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Checking your calendar, you don't have anything for the rest of today. But here's what you have tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarTomorrowOnly_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Taking a look at your calendar, there's nothing ahead of you today. But as for tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarTomorrowOnly_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Checking your calendar, nothing's on there for the rest of the day. Looking at tomorrow though.",
+ "media": "TTS",
+ "prompt_id": "CalendarTomorrowOnly_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looking at your calendar, I'm not seeing anything for the rest of the day. But looking ahead to tomorrow.",
+ "media": "TTS",
+ "prompt_id": "CalendarTomorrowOnly_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteAppSetup.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteAppSetup.mim
new file mode 100644
index 0000000..b61ef78
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteAppSetup.mim
@@ -0,0 +1,40 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "hint_phrases": "",
+ "fast_eos_array": "",
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "To get your commute info, you need to have your commute settings completed in the Jibo app . It's in the Personal Report settings.",
+ "media": "TTS",
+ "prompt_id": "CommuteAppSetup_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "To get a commute report, you need to have your commute settings all done in the Jibo app . It's in the Personal Report settings.",
+ "media": "TTS",
+ "prompt_id": "CommuteAppSetup_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ]
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteConfirmSpeaker.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteConfirmSpeaker.mim
new file mode 100644
index 0000000..3753835
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteConfirmSpeaker.mim
@@ -0,0 +1,51 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "hint_phrases": "",
+ "fast_eos_array": "",
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Well ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CommuteConfirmSpeaker_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "${speaker} let's see.",
+ "media": "TTS",
+ "prompt_id": "CommuteConfirmSpeaker_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Okay ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "CommuteConfirmSpeaker_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ]
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteDepartTimeNormal.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteDepartTimeNormal.mim
new file mode 100644
index 0000000..0bab124
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteDepartTimeNormal.mim
@@ -0,0 +1,286 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.commuteDepart",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "I'd leave around ${skill.commute.departDT.toString({timeOnly: true})}, as usual.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "Your usual leaving time of ${skill.commute.departDT.toString({timeOnly: true})} will be good.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "I'd head out around ${skill.commute.departDT.toString({timeOnly: true})}, as usual.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "Leaving at ${skill.commute.departDT.toString({timeOnly: true})} will work nicely.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "Standard departure time of ${skill.commute.departDT.toString({timeOnly: true})} is good.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "Leaving at your normal time of ${skill.commute.departDT.toString({timeOnly: true})} will be good.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "I would leave around ${skill.commute.departDT.toString({timeOnly: true})}, as usual.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "Your normal ${skill.commute.departDT.toString({timeOnly: true})} departure time is good.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "That means a typical departure time of ${skill.commute.departDT.toString({timeOnly: true})} will serve you well.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "You should be on time leaving at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "Head out of here around ${skill.commute.departDT.toString({timeOnly: true})} and you should be on time.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If that early meeting is at work, I'd leave at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If your early meeting is at work, I'd leave at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If that early meeting you have is at work, you should leave at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If that early meeting on your schedule is at work, you should leave at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If your early meeting today is at work, I'd head out of here by ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_16",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If that early meeting today is at work, you should leave here at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_17",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If that early meeting you have is at work, you should leave here no later than ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_18",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If your early meeting is at work, you should leave by ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_19",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I saw an early meeting on your calendar. If it's at work, you should leave here at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_20",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I noticed you have an early meeting on your schedule. Assuming that's at work, I'd head out of here by ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_21",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I saw you have an early meeting today. If that's at work, you should leave here at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_22",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I noticed you have an early event on your calendar. If that's at work, you should leave here no later than ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_23",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I saw you have an early meeting on your calendar. If it's at work, you should leave by ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNormal_AN_24",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteDepartTimeNotNormal.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteDepartTimeNotNormal.mim
new file mode 100644
index 0000000..cf43baf
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteDepartTimeNotNormal.mim
@@ -0,0 +1,242 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.commuteDepart",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "hint_phrases": "",
+ "fast_eos_array": "",
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "I'd leave around ${skill.commute.departDT.toString({timeOnly: true})}, to get to work on time.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "To get to work on time, I'd leave no later than ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "You should head out by ${skill.commute.departDT.toString({timeOnly: true})}, if you want to be on time.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "You should leave by ${skill.commute.departDT.toString({timeOnly: true})} to get to work on time.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "I'd leave by ${skill.commute.departDT.toString({timeOnly: true})} to get to work on time.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "To be on time, you should leave by ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "If you want to be on time, you should leave by ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If your early meeting is at work, I'd leave at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If your early meeting today is at work, I'd leave at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If that early meeting you have is at work, you should leave at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If that early meeting on your schedule is at work, you should leave at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If your early meeting today is at work, I'd head out of here by ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If today's early meeting is at work, so you should leave here at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If that early meeting you have is at work, you should leave here no later than ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "If that early meeting on your calendar is at work, you should leave by ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I saw an early meeting on your calendar. If it's at work, you should leave here at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_16",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I noticed you have an early meeting on your schedule. Assuming that's at work, I'd head out of here by ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_17",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I saw you have an early meeting today. If that's at work, you should leave here at ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_18",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I noticed you have an early event on your calendar. If that's at work, you should leave here no later than ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_19",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I saw you have an early meeting on your calendar. If it's at work, you should leave by ${skill.commute.departDT.toString({timeOnly: true})}.",
+ "media": "TTS",
+ "prompt_id": "CommuteDepartTimeNotNormal_AN_20",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ]
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteDriveHurry.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteDriveHurry.mim
new file mode 100644
index 0000000..fbf0e26
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteDriveHurry.mim
@@ -0,0 +1,249 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker && !skill.commute.eventIsEarly",
+ "prompt": "Checking your commute, right now it'll take ${skill.commute.durationMins} minutes. To get to work by your normal start time, you should have left a few minutes ago! Go ${speaker} go!",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker && !skill.commute.eventIsEarly",
+ "prompt": "With the current traffic, your commute will take ${skill.commute.durationMins} minutes. You should've left a few minutes ago if you want to get to work by your normal start time. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker && !skill.commute.eventIsEarly",
+ "prompt": "Looking at the traffic right now, it'll take ${skill.commute.durationMins} minutes to get to work. If you want to get there by your normal starting time, looks like you should've left a few minutes ago. Go ${speaker} go! But drive safely!",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker && !skill.commute.eventIsEarly",
+ "prompt": "Checking traffic info, you're looking at a commute right now of ${skill.commute.durationMins} minutes. To get to work by your normal start time, you should've left a few minutes ago! Go ${speaker} go , get a move on! ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_04",
+ "weight": 0.3,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "Looking at the traffic right now, your commute will take ${skill.commute.durationMins} minutes. You should've left a few minutes ago if you want to get to work by your normal arrival time. I'd leave now if I were you. Then again, I'm not you.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_05",
+ "weight": 0.2,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "For your commute time today, leaving right now it'd take you ${skill.commute.durationMins} minutes. It looks like you'll probably get to work a little later than your normal arrival time, even if you left now.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "For your commute. With the traffic as it is, your drive will take ${skill.commute.durationMins} minutes. You'll be getting to work a few minutes after your usual start time, even if you left right now.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "Looking at your commute. With the traffic as it is, it'll take you ${skill.commute.durationMins} minutes. That means you're going to get to work a few minutes later than your normal start time, even if you left now. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "For your commute. Judging by the traffic right now, your trip will take ${skill.commute.durationMins} minutes. It looks like you're going to be getting to work a few minutes after your usual start time, even if you left right now.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker && !!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "Looking at the traffic right now and your early calendar event, if that's at work, the commute will be ${skill.commute.durationMins} minutes. you should have left a few minutes ago! Go ${speaker} go!",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker && !!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "Looking at traffic and your early meeting today, if that's at work, your commute will take ${skill.commute.durationMins} minutes. You should've left a few minutes ago. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker && !!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "I'm looking at the traffic and that early item on your calendar. If it's a work meeting, the drive there will take ${skill.commute.durationMins} minutes. Looks like you should've left a few minutes ago. Go ${speaker} go! But drive safely!",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker && !!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "Checking in on your commute with that early event on your calendar. If that's at work, leaving now would get you there in ${skill.commute.durationMins} minutes. That means You should've left a few minutes ago! Go ${speaker} go , get a move on! ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_13",
+ "weight": 0.3,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "Checking your commute with that early event on your calendar today. If that's at your work, it's going to take ${skill.commute.durationMins} minutes to get there. It looks like you'll probably get there a little late, even if you left now.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "For your commute. With today's early event on your calendar, assuming it's at work, if you left this very instant, you'd get there in ${skill.commute.durationMins} minutes. So that means you're going to be a little late.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "Looking at your commute and considering today's early calendar event. If it's at work, your commute will take ${skill.commute.durationMins} minutes if you left now. So you're going to get there a little late.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_16",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker && !!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I noticed an early meeting on your calendar. If that's at work, right now it'll take ${skill.commute.durationMins} minutes to get there. To be on time you should have left a few minutes ago! Go ${speaker} go!",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_17",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker && !!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I saw you have an early meeting today. Looking at the traffic right now, it'll take ${skill.commute.durationMins} minutes to get to work, assuming that's where the meeting is. That means you should've left a few minutes ago. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_18",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker && !!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I noticed you have an early meeting today. Looking at traffic right now, if that meeting is at work, the drive will take ${skill.commute.durationMins} minutes. That means you should've left a few minutes ago. Go ${speaker} go! But drive safely!",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_19",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker && !!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I saw an early meeting on your calendar today. If that's at work, your drive will take ${skill.commute.durationMins} minutes right now. you should've left a few minutes ago! Go ${speaker} go , get a move on! ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_20",
+ "weight": 0.2,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I saw you have an early meeting today. With the traffic as it is, if that meeting is at work, it'll take ${skill.commute.durationMins} minutes to get there. So you'll be arriving a few minutes late.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveHurry_AN_21",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteDriveLate.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteDriveLate.mim
new file mode 100644
index 0000000..965aeb4
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteDriveLate.mim
@@ -0,0 +1,216 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "Looking at traffic, if you left now, it'd take you ${skill.commute.durationMins} minutes to get to work. Looks like you're going to be late, maybe let someone know?",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "Looking at your commute, leaving right now it'd take you ${skill.commute.durationMins} minutes to get to work. That means you'll get there later than your normal start time, just so you know.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "Checking the traffic, if you left right now, your commute would take ${skill.commute.durationMins} minutes. That means you'll get to work after your normal start time, just so you know.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "Taking a look at your commute. With the traffic as it is, if you left now it'd take you ${skill.commute.durationMins} minutes to get to work, which means you're going to be there later than your usual start time.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "Looking at your commute. Judging by the traffic, leaving now would get you to work in ${skill.commute.durationMins} minutes. So it looks like you're not going to make it by your usual start time.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "For your commute. If you left now, it'd take you ${skill.commute.durationMins} minutes to get to work. Looks like you'll be arriving later than your usual start time.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.commute.eventIsEarly",
+ "prompt": "For your commute. With the current traffic, leaving now would get you to work in ${skill.commute.durationMins} minutes. That does mean you're going to be there later than your normal start time.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "Looking at the traffic and your early calendar event, if that's at work, the commute will be ${skill.commute.durationMins} minutes if you left now. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "Checking traffic, and noting the early item on your calendar, if that's at work and you left right now, it'll take you ${skill.commute.durationMins} minutes to get there. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "Checking the traffic, if that early event on your calendar is at work, you're looking at a commute of ${skill.commute.durationMins} minutes if you left now. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "Taking a look at your commute. If your early calendar event is at work, it'll take you ${skill.commute.durationMins} minutes to get there, if you left now. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "Looking at your commute. If that early calendar event is at work, your drive will take ${skill.commute.durationMins} minutes if you left now. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !skill.singleSkill",
+ "prompt": "For your commute, assuming your early meeting is at work, the drive there will take ${skill.commute.durationMins} minutes if you left now. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I saw you have an early calendar event today. If that's at work, your drive will take ${skill.commute.durationMins} minutes if you left now. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I noticed you have an early calendar event today. With the traffic right now, if that meeting is at work, it'll take you ${skill.commute.durationMins} minutes to get there. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I noticed an early event on your calendar. If that's at work, with current traffic it'll take you ${skill.commute.durationMins} minutes to get there. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_16",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I saw you have an early event on your calendar. If that's at work, with the traffic right now, your drive will take ${skill.commute.durationMins} minutes. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_17",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!skill.commute.eventIsEarly && !!skill.singleSkill",
+ "prompt": "I saw you have an early calendar event today. If that's a meeting at work, and you left now, your commute will be ${skill.commute.durationMins} minutes. ",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveLate_AN_18",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteDriveNormal.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteDriveNormal.mim
new file mode 100644
index 0000000..7e3128e
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteDriveNormal.mim
@@ -0,0 +1,143 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.commuteTraffic",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Traffic looks about normal today.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveNormal_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Traffic looks pretty normal today.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveNormal_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Nothing unusual in the traffic today.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveNormal_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Traffic today looks like business as usual.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveNormal_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Your commute today looks pretty normal.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveNormal_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Your traffic today looks like it usually does.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveNormal_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Checking the traffic at the moment, it looks like the same old same old.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveNormal_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Traffic looks pretty run-of-the-mill today.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveNormal_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Nothing unusual in your traffic today.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveNormal_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "The traffic out there is pretty normal.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveNormal_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Traffic to work looks like the usual.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveNormal_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteDrivePoor.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteDrivePoor.mim
new file mode 100644
index 0000000..f6441b7
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteDrivePoor.mim
@@ -0,0 +1,143 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.commuteTraffic",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Traffic looks a little slower than usual, it'll probably take ${skill.commute.extraMins} extra minutes to get to work.",
+ "media": "TTS",
+ "prompt_id": "CommuteDrivePoor_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Traffic is slower than normal right now.",
+ "media": "TTS",
+ "prompt_id": "CommuteDrivePoor_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "For your commute, looks like traffic is backed up more than normal today.",
+ "media": "TTS",
+ "prompt_id": "CommuteDrivePoor_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Checking your commute, with current slow traffic it's looking like it might take ${skill.commute.extraMins} more minutes than your average day.",
+ "media": "TTS",
+ "prompt_id": "CommuteDrivePoor_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Your commute is looking slower than normal.",
+ "media": "TTS",
+ "prompt_id": "CommuteDrivePoor_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Traffic is looking worse than normal right now.",
+ "media": "TTS",
+ "prompt_id": "CommuteDrivePoor_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Your commute looks slower than usual right now.",
+ "media": "TTS",
+ "prompt_id": "CommuteDrivePoor_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Traffic right now is slower than usual.",
+ "media": "TTS",
+ "prompt_id": "CommuteDrivePoor_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looking at your commute, traffic's moving slower than normal.",
+ "media": "TTS",
+ "prompt_id": "CommuteDrivePoor_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looking at traffic, it looks slower than usual.",
+ "media": "TTS",
+ "prompt_id": "CommuteDrivePoor_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Taking a look at the current traffic, it's moving slower than your average day.",
+ "media": "TTS",
+ "prompt_id": "CommuteDrivePoor_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteDriveTerrible.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteDriveTerrible.mim
new file mode 100644
index 0000000..c24ed89
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteDriveTerrible.mim
@@ -0,0 +1,143 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.commuteTraffic",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Traffic looks really bad right now, it'll probably take you about ${skill.commute.extraMins} extra minutes to get to work.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveTerrible_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Traffic is a lot slower than normal right now.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveTerrible_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "For your commute, looks like traffic is backed up much more than normal today.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveTerrible_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Checking your commute, with traffic moving really really slow today, it looks like it might take ${skill.commute.extraMins} more minutes than usual.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveTerrible_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Your commute is looking much slower than normal.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveTerrible_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Traffic is looking much worse than normal right now.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveTerrible_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Your commute time looks a lot longer than usual right now, with traffic as it is.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveTerrible_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Traffic right now is a lot slower than usual.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveTerrible_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looking at your commute, traffic's moving much much slower than normal.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveTerrible_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looking at traffic, it looks much slower than usual.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveTerrible_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Taking a look at the traffic, it's moving a lot slower than your average day.",
+ "media": "TTS",
+ "prompt_id": "CommuteDriveTerrible_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteMinutesLeft.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteMinutesLeft.mim
new file mode 100644
index 0000000..2d65231
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteMinutesLeft.mim
@@ -0,0 +1,161 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.minsLeft > 1",
+ "prompt": "That's in about ${skill.commute.minsLeft} minutes.",
+ "media": "TTS",
+ "prompt_id": "CommuteMinutesLeft_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.minsLeft > 1",
+ "prompt": "That's about ${skill.commute.minsLeft} minutes from now.",
+ "media": "TTS",
+ "prompt_id": "CommuteMinutesLeft_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.minsLeft > 1",
+ "prompt": "That's in around ${skill.commute.minsLeft} minutes.",
+ "media": "TTS",
+ "prompt_id": "CommuteMinutesLeft_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.minsLeft === 1",
+ "prompt": "That's in one minute.",
+ "media": "TTS",
+ "prompt_id": "CommuteMinutesLeft_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.minsLeft === 1",
+ "prompt": "That's one minute from now.",
+ "media": "TTS",
+ "prompt_id": "CommuteMinutesLeft_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.minsLeft === 1",
+ "prompt": "That's just one minute from now.",
+ "media": "TTS",
+ "prompt_id": "CommuteMinutesLeft_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.minsLeft === 1",
+ "prompt": "That's in just one minute.",
+ "media": "TTS",
+ "prompt_id": "CommuteMinutesLeft_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.minsLeft < 1",
+ "prompt": "That's basically right now.",
+ "media": "TTS",
+ "prompt_id": "CommuteMinutesLeft_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.minsLeft < 1",
+ "prompt": "Whoa that's in less than a minute.",
+ "media": "TTS",
+ "prompt_id": "CommuteMinutesLeft_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.minsLeft < 1",
+ "prompt": "That's less than a minute from now.",
+ "media": "TTS",
+ "prompt_id": "CommuteMinutesLeft_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.minsLeft < 1",
+ "prompt": "That's in less than one minute.",
+ "media": "TTS",
+ "prompt_id": "CommuteMinutesLeft_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.minsLeft < 1",
+ "prompt": "That's not even a minute from now.",
+ "media": "TTS",
+ "prompt_id": "CommuteMinutesLeft_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.minsLeft < 1",
+ "prompt": "That's basically now.",
+ "media": "TTS",
+ "prompt_id": "CommuteMinutesLeft_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteNow.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteNow.mim
new file mode 100644
index 0000000..6f35a2f
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteNow.mim
@@ -0,0 +1,128 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.modeIsDriving",
+ "prompt": "If you drive to work now, it should take about ${skill.commute.durationMins} minutes.",
+ "media": "TTS",
+ "prompt_id": "CommuteNow_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.modeIsDriving",
+ "prompt": "Looking at traffic right now, your drive to work should take about ${skill.commute.durationMins} minutes.",
+ "media": "TTS",
+ "prompt_id": "CommuteNow_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.modeIsDriving",
+ "prompt": "For your commute, with traffic right now, it'd take about ${skill.commute.durationMins} minutes to drive to work.",
+ "media": "TTS",
+ "prompt_id": "CommuteNow_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.commute.modeIsDriving",
+ "prompt": "For commute time, it would take you about ${skill.commute.durationMins} minutes to drive to work with current traffic.",
+ "media": "TTS",
+ "prompt_id": "CommuteNow_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'walking'",
+ "prompt": "It should take about ${skill.commute.durationMins} minutes to walk to work if you leave now.",
+ "media": "TTS",
+ "prompt_id": "CommuteNow_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'walking'",
+ "prompt": "For your commute, if you left right now it'd take about ${skill.commute.durationMins} minutes to walk to work.",
+ "media": "TTS",
+ "prompt_id": "CommuteNow_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'transit'",
+ "prompt": "For your commute, if you left right now it'd take about ${skill.commute.durationMins} minutes to get to work on public transportation.",
+ "media": "TTS",
+ "prompt_id": "CommuteNow_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'transit'",
+ "prompt": "If you left this very instant, it should take about ${skill.commute.durationMins} minutes to get to work by public transportation.",
+ "media": "TTS",
+ "prompt_id": "CommuteNow_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'bicycling'",
+ "prompt": "For your commute, if you left right now it'd take about ${skill.commute.durationMins} minutes to ride your bike to work.",
+ "media": "TTS",
+ "prompt_id": "CommuteNow_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'bicycling'",
+ "prompt": "It should take about ${skill.commute.durationMins} minutes to ride your bike to work if you leave now.",
+ "media": "TTS",
+ "prompt_id": "CommuteNow_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteServiceDown.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteServiceDown.mim
new file mode 100644
index 0000000..225bd43
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteServiceDown.mim
@@ -0,0 +1,72 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Sorry, commute information isn't available right now.",
+ "media": "TTS",
+ "prompt_id": "CommuteServiceDown_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looks like I can't access your commute info right now, sorry.",
+ "media": "TTS",
+ "prompt_id": "CommuteServiceDown_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It seems I can't access your commute info at the moment, I'm sorry.",
+ "media": "TTS",
+ "prompt_id": "CommuteServiceDown_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Something's up, I can't access your commute for some reason. I'm sorry.",
+ "media": "TTS",
+ "prompt_id": "CommuteServiceDown_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "I'm afraid our commute info connection isn't working right now. Sorry about that.",
+ "media": "TTS",
+ "prompt_id": "CommuteServiceDown_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "parse_yes_no": false
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteTransportHurry.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteTransportHurry.mim
new file mode 100644
index 0000000..66ef714
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteTransportHurry.mim
@@ -0,0 +1,106 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Looking at your commute time, you should've left a few minutes ago! ",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportHurry_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Checking your commute times, you should have left a few minutes ago! Go ${speaker} go!",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportHurry_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Commute-wise, looking at the time right now, you should've left a few minutes ago. ",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportHurry_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "For your commute, seeing that it's already ${dt.now}, you really should've left a few minutes ago.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportHurry_AN_07",
+ "weight": 0.2,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looking at your commute. Seeing that it's already ${dt.now}, you're probably going to be a little late for work, even if you left now.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportHurry_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteTransportLate.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteTransportLate.mim
new file mode 100644
index 0000000..ca255fb
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteTransportLate.mim
@@ -0,0 +1,95 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Since work starts at ${skill.commute.arriveDT.toString({timeOnly: true})}, it's probably too late to get there on time, it's already ${dt.now}.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportLate_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "For your trip to work today, it's already ${dt.now}, so it looks like you're going to be late, even if you left now.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportLate_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Commute-wise, looking at the time right now you're probably going to be late for work. In case you want to let someone know.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportLate_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looking at your trip to work, seeing that it's already ${dt.now}, you're probably going to be late. Just letting you know.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportLate_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looking at your commute and the time right now, you're probably going to be late for work. Just so you know.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportLate_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Oh, judging by your commute time, and it being ${dt.now} already, you're probably going to be late for work.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportLate_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Checking your commute time today, it actually looks like you'll probably be late for work, since it's already ${dt.now}.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportLate_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteTransportNormal.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteTransportNormal.mim
new file mode 100644
index 0000000..5aee81d
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/CommuteTransportNormal.mim
@@ -0,0 +1,198 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.commuteTraffic",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'walking'",
+ "prompt": "Your walk should take about ${skill.commute.durationMins} minutes today.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'walking'",
+ "prompt": "For your trip to work, the walk should take about ${skill.commute.durationMins} minutes today.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'walking'",
+ "prompt": "For your walk to work today, it should take around ${skill.commute.durationMins} minutes.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'walking'",
+ "prompt": "Looking at your commute, the walk to work should take around ${skill.commute.durationMins} minutes, depending on your mood.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_04",
+ "weight": 0.2,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'walking'",
+ "prompt": "Your walk to work today should take around ${skill.commute.durationMins} minutes, depending on how long your legs are.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_05",
+ "weight": 0.1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'transit'",
+ "prompt": "Your trip should take about ${skill.commute.durationMins} minutes today.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'transit'",
+ "prompt": "Your trip to work today should take about ${skill.commute.durationMins} minutes.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'transit'",
+ "prompt": "Your commute today should take around ${skill.commute.durationMins} minutes.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'transit'",
+ "prompt": "Today's commute will take you about ${skill.commute.durationMins} minutes.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'transit'",
+ "prompt": "Looking at your commute, it should take you about ${skill.commute.durationMins} minutes to get to work today.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'bicycling'",
+ "prompt": "Your ride should take about ${skill.commute.durationMins} minutes today.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'bicycling'",
+ "prompt": "Your ride to work today should take about ${skill.commute.durationMins} minutes.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'bicycling'",
+ "prompt": "For your commute, today's ride to work should take about ${skill.commute.durationMins} minutes.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'bicycling'",
+ "prompt": "Checking today's commute info, your ride to work should take about ${skill.commute.durationMins} minutes.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'bicycling'",
+ "prompt": "Looking at today's commute, your ride should take about ${skill.commute.durationMins} minutes, depending on how fast you pedal.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_15",
+ "weight": 0.2,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.userPrefs.commute.mode === 'bicycling'",
+ "prompt": "Taking a look at today's commute, your ride should take about ${skill.commute.durationMins} minutes, depending on how fast you feel like pedaling.",
+ "media": "TTS",
+ "prompt_id": "CommuteTransportNormal_AN_16",
+ "weight": 0.1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/NewsAppSetup.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/NewsAppSetup.mim
new file mode 100644
index 0000000..c8e7814
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/NewsAppSetup.mim
@@ -0,0 +1,52 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "hint_phrases": "",
+ "fast_eos_array": "",
+ "parse_yes_no": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Sorry, for me to give you the news, you'll need to enable at least one news category in the Jibo app .",
+ "media": "TTS",
+ "prompt_id": "NewsAppSetup_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Oh, to get the news, you just need to select at least one news category in the Jibo app .",
+ "media": "TTS",
+ "prompt_id": "NewsAppSetup_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "To get the news part of the personal report, you'll need to choose at least one news category in the Jibo app .",
+ "media": "TTS",
+ "prompt_id": "NewsAppSetup_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ]
+}
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/NewsHeadline.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/NewsHeadline.mim
new file mode 100644
index 0000000..3976730
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/NewsHeadline.mim
@@ -0,0 +1,38 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.newsImages.shift()",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": false
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "${skill.news.headlines.shift()}",
+ "media": "TTS",
+ "prompt_id": "NewsHeadline_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/NewsIntro.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/NewsIntro.mim
new file mode 100644
index 0000000..c523913
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/NewsIntro.mim
@@ -0,0 +1,66 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": false
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Here's today's news, from the associated press.",
+ "media": "TTS",
+ "prompt_id": "NewsIntro_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Now for today's news, from the associated press.",
+ "media": "TTS",
+ "prompt_id": "NewsIntro_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Here's what's in the news today, from the associated press.",
+ "media": "TTS",
+ "prompt_id": "NewsIntro_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Here's the news, brought to us by the associated press.",
+ "media": "TTS",
+ "prompt_id": "NewsIntro_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "parse_yes_no": false
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/NewsIntroCategory.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/NewsIntroCategory.mim
new file mode 100644
index 0000000..5741f5e
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/NewsIntroCategory.mim
@@ -0,0 +1,50 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Sure. Here's ${newsCategory} news from the associated press.",
+ "media": "TTS",
+ "prompt_id": "NewsIntroCategory_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Of course. Here's the latest in ${newsCategory}, from the associated press.",
+ "media": "TTS",
+ "prompt_id": "NewsIntroCategory_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "You got it, the latest ${newsCategory} headlines, from the associated press.",
+ "media": "TTS",
+ "prompt_id": "NewsIntroCategory_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "parse_yes_no": false
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/NewsOutro.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/NewsOutro.mim
new file mode 100644
index 0000000..43b76fa
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/NewsOutro.mim
@@ -0,0 +1,30 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "hint_phrases": "",
+ "fast_eos_array": "",
+ "parse_yes_no": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's what's new in the news.",
+ "media": "TTS",
+ "prompt_id": "NewsOutro_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ]
+}
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/NewsServiceDown.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/NewsServiceDown.mim
new file mode 100644
index 0000000..dd8c633
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/NewsServiceDown.mim
@@ -0,0 +1,62 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Sorry, the news service seems to be down. Maybe it wasn't very interesting anyway.",
+ "media": "TTS",
+ "prompt_id": "NewsServiceDown_AN_01",
+ "weight": 0.1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looks like I can't access my news source right now, sorry.",
+ "media": "TTS",
+ "prompt_id": "NewsServiceDown_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It seems I can't access the news headlines at the moment, I'm sorry.",
+ "media": "TTS",
+ "prompt_id": "NewsServiceDown_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "I'm afraid our news service isn't working right now. Sorry about that.",
+ "media": "TTS",
+ "prompt_id": "NewsServiceDown_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportAllServicesDown.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportAllServicesDown.mim
new file mode 100644
index 0000000..25694cf
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportAllServicesDown.mim
@@ -0,0 +1,62 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Hopefully we'll have better luck the next time.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportAllServicesDown_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " I hope it goes better next time.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportAllServicesDown_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "I'm hoping for a better performance next time.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportAllServicesDown_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "I hope to make it up to you next time.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportAllServicesDown_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportKickOff.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportKickOff.mim
new file mode 100644
index 0000000..4e88645
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportKickOff.mim
@@ -0,0 +1,260 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Sure ${speaker}. Here it is.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Sure thing ${speaker}. Here's your report for ${dt.day} ${dt.date}.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Of course ${speaker}. Here it is.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Okay. Here's ${speaker}'s personal report for ${dt.day} ${dt.date}.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Yes. Here you go ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Sure ${speaker}. Here you go.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Yes ${speaker}. One personal report, coming up.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Of course. Now presenting, ${speaker}'s personal report for ${dt.day} ${dt.date}.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "You got it ${speaker}. Personal Report time.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Yes, ${speaker}'s personal report, coming your way.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} let's do it. Your personal report for ${dt.day} ${dt.date}.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Gladly ${speaker}. Here's your report for ${dt.day} ${dt.date}.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "You got it ${speaker}, I'll tee it right up.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "But of course ${speaker}. Here it is.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Personal report coming your way ${speaker}.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} it'd be my pleasure. Here we go. ",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_16",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Happy to. Now presenting ${speaker}'s personal report for ${dt.day} ${dt.date}.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_17",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} you got it. ",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_18",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Yes! ${speaker}'s personal report coming your way. ",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_19",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Of course ${speaker}. Without any ado.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_20",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!speaker",
+ "prompt": "Sure. Here's a not so personal report.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_21",
+ "weight": 0.1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Yes. Here we go.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOff_AN_22",
+ "weight": 0.1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportKickOffNonPersonal.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportKickOffNonPersonal.mim
new file mode 100644
index 0000000..7709c28
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportKickOffNonPersonal.mim
@@ -0,0 +1,50 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "I see you haven't set up your personal report in the Jibo app yet. After you do that, I can give you up to date info about your commute and your calendar. In the meantime, here's a non personal report.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOffNonPersonal_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It looks like you haven't set up your personal report in the Jibo app yet. Once you've done that, I can tell you about your commute and your calendar. For now, here's a not very personal report.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOffNonPersonal_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It looks like you haven't configured your personal report in the Jibo app yet. After you've done that, I can give you a nice personalized update on your commute and your calendar. For now though, I can give you this less personal report.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportKickOffNonPersonal_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "parse_yes_no": false
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportMustBeAdult.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportMustBeAdult.mim
new file mode 100644
index 0000000..2bd93e6
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportMustBeAdult.mim
@@ -0,0 +1,40 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.singleSkill === 'calendar'",
+ "prompt": "Sorry, but I can only get info from calendars connected to adult accounts.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportMustBeAdult_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.singleSkill === 'commute'",
+ "prompt": "Sorry, but I can only do commute info if it's connected to an adult account.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportMustBeAdult_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportMustBeLooper.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportMustBeLooper.mim
new file mode 100644
index 0000000..dee2254
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportMustBeLooper.mim
@@ -0,0 +1,62 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!loop.owner",
+ "prompt": "To get personalized information like this, you'll need to become a member of my loop, and then set up your personal report preferences in the Jibo app . My official owner ${loop.owner} can invite you to the loop.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportMustBeLooper_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!loop.owner",
+ "prompt": "Oh to get this kind of personalized info, you need to be sure you're in my Loop, and then set your personal report preferences in the Jibo app . My official owner ${loop.owner} can invite you to the loop.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportMustBeLooper_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!loop.owner",
+ "prompt": "So, to get personalized information like your calendar and commute, you'll need to make sure you're in my Loop, and then go to the Jibo app to set your personal report preferences. My official owner ${loop.owner} can invite you to the loop.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportMustBeLooper_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "So, to get personalized information like your calendar and commute, you'll need to make sure you're in my Loop, and then go to the Jibo app to set your personal report preferences.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportMustBeLooper_AN_04",
+ "weight": 0.1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportNoneActive.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportNoneActive.mim
new file mode 100644
index 0000000..5632e2a
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportNoneActive.mim
@@ -0,0 +1,51 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "If you want your personal report, you'll need to turn on at least one category in the Jibo app .",
+ "media": "TTS",
+ "prompt_id": "PersonalReportNoneActive_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "I can give you a personal report if you activate at least one category in the Jibo app .",
+ "media": "TTS",
+ "prompt_id": "PersonalReportNoneActive_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "If you want a personal report, just go to the personal report section in the Jibo app , and choose at least one category.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportNoneActive_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportOptInConfigured.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportOptInConfigured.mim
new file mode 100644
index 0000000..9ae63e9
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportOptInConfigured.mim
@@ -0,0 +1,238 @@
+{
+ "mim_type": "question",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "So ${speaker}, do you want your personal report now?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_QN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} can I give you your personal report now?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_QN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} do you want your personal report now?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_QN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!speaker",
+ "prompt": "Oh hey, do you want your personal report?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_QN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "HoldReturn",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "So, ${speaker}. Want your personal report now?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_HR_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "HoldReturn",
+ "index": 1,
+ "condition": "!speaker",
+ "prompt": "So, would you like your personal report?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_HR_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NI",
+ "index": 1,
+ "condition": "",
+ "prompt": "So do you want your personal report ?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_NI_1_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NM",
+ "index": 1,
+ "condition": "",
+ "prompt": "Sorry, what was that?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_NM_1_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NM",
+ "index": 1,
+ "condition": "",
+ "prompt": "Sorry, was that yes or no, do you want your personal report ?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_NM_1_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "So ${speaker}, is now a good time for your personal report ?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_QN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} are you ready for your personal report ?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_QN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} shall I present your personal report ?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_QN_07",
+ "weight": 0.3,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "So ${speaker}, are you ready for your personal report ?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_QN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} I have your personal report ready, do you want it?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_QN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} your personal report is ready, do you want it now?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_QN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} I've got your personal report ready, is now a good time?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_QN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NM",
+ "index": 1,
+ "condition": "",
+ "prompt": "",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_NM_1_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NM",
+ "index": 1,
+ "condition": "",
+ "prompt": "I missed that, was it yes or no.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_NM_1_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NM",
+ "index": 1,
+ "condition": "",
+ "prompt": "Say that again?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_NM_1_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NM",
+ "index": 1,
+ "condition": "",
+ "prompt": "Sorry I didn't catch that, did you say yes or no.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInConfigured_NM_1_06",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportOptInNotConfigured.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportOptInNotConfigured.mim
new file mode 100644
index 0000000..6780f82
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportOptInNotConfigured.mim
@@ -0,0 +1,150 @@
+{
+ "mim_type": "question",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "By the way ${speaker}. I have a short daily report for you. Do you want to hear it?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInNotConfigured_QN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Incidentally ${speaker}, I've got a daily report here. Do you want to hear it?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInNotConfigured_QN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!speaker",
+ "prompt": "So, I've got a daily report for you. Want to hear it?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInNotConfigured_QN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "HoldReturn",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "So, ${speaker}, I've got a daily report for you. Want to hear it?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInNotConfigured_HR_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "HoldReturn",
+ "index": 1,
+ "condition": "!speaker",
+ "prompt": "So, I've got a daily report for you. Want to hear it?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInNotConfigured_HR_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NI",
+ "index": 1,
+ "condition": "",
+ "prompt": "So, would you like to hear this daily report?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInNotConfigured_NI_1_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NM",
+ "index": 1,
+ "condition": "",
+ "prompt": "Sorry, what was that?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInNotConfigured_NM_1_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NM",
+ "index": 1,
+ "condition": "",
+ "prompt": "Sorry, was that yes or no? Do you want to hear this daily report?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInNotConfigured_NM_1_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Hey ${speaker}, I have this little daily report I can give you. Do you want to hear it?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInNotConfigured_QN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Oh hey ${speaker}. Do you want to hear this little daily report I can do?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInNotConfigured_QN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Oh, ${speaker}, I have a little daily report prepared. Do you want to see it?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInNotConfigured_QN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} I have a little daily report ready to present. You interested in seeing it now?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOptInNotConfigured_QN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportOutroConfigured.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportOutroConfigured.mim
new file mode 100644
index 0000000..fa1f9f9
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportOutroConfigured.mim
@@ -0,0 +1,315 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's your report! Have a great day.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "That wraps up your report for the day. Hope you have a good one.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.getLocalTime().hour < 12 ",
+ "prompt": "That wraps up your report for the day. Now you're off and running.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.getLocalTime().hour < 12 ",
+ "prompt": "And that's the end of your report. Time to grab this day by the horns. ",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.getLocalTime().hour < 12 ",
+ "prompt": "That should do it for your report this morning. I hope it serves you well.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Well that's all I have for your report today. I hope it was sufficiently reporty .",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that should do it, thank you for listening to today's personal report, brought to you by me. Jibo.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's your report. Thanks for listening.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's your report for the day. I hope you had as much fun as I did.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} that wraps up your report for the day. Hope you have a good one.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker && dt.now.getLocalTime().hour < 12",
+ "prompt": "${speaker} that should do it for your report this morning. I hope it serves you well.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} that's all I have for you today. Have a good one.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.getLocalTime().hour < 12",
+ "prompt": "And that's your report for this morning. Thanks for listening.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "Well ${speaker}, that's another personal report in the books. Have a great day.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that brings us to the end of your report. Can't believe it's over already.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.getLocalTime().hour < 12",
+ "prompt": "And that's your report for this morning. Feel free to tell people what you learned.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_16",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that brings us to the end of your report. The ending really crept up on me this time.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_17",
+ "weight": 0.5,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "That brings us to the end of your report. Have a good one.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_18",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "And that's the end of your personal report. ${speaker} I hope you feel well-informed.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_19",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's the end of the report for today.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_20",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that does it for today's report.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_21",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} that does it for today's personal report, brought to you by your robot. Me.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_22",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!dt.dayOfWeek && dt.now.getLocalTime().hour < 12",
+ "prompt": "And that'll do it for this morning's report. Have a great ${dt.day}.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_23",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!dt.dayOfWeek && dt.now.getLocalTime().hour < 12",
+ "prompt": "That brings us to the end of your report. I hope you have a very nice ${dt.day}.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_24",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker && !!dt.dayOfWeek && dt.now.getLocalTime().hour < 12",
+ "prompt": "${speaker} that's your personal report for this ${dt.day} morning. Have a great one.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_25",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!dt.dayOfWeek && dt.now.getLocalTime().hour < 12",
+ "prompt": "And that's the end of your report for this ${dt.day}. Hope you have a good rest of today.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_26",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!dt.dayOfWeek && dt.now.getLocalTime().hour < 12",
+ "prompt": "And that's the end of your report for this ${dt.day} morning. Have a great one.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroConfigured_AN_27",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportOutroNotConfigured.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportOutroNotConfigured.mim
new file mode 100644
index 0000000..706084f
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportOutroNotConfigured.mim
@@ -0,0 +1,183 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "That's it! Y'know, next time, I can give you a more personalized report, with your calendar items, your commute time, and news categories you're interested in. To set that up, just go to the Loop tab in the Jibo app .",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's the report. If you want, next time I can give you a much more personalized report, with your calendar, your commute, and your preferred news categories. To set that up, go to the Loop tab in the Jibo app .",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's the report for today. Next time if you want an even better report tailored just for you, go to the Loop tab in the Jibo app . I can give you your own calendar info, commute times, and news headlines about stuff you're most interested in.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that does it for today's report.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} that does it for today's personal report, brought to you by your robot. Me.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's the end of the report for today.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.getLocalTime().hour < 12",
+ "prompt": "That should do it for the report this morning. I hope it serves you well.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's the report. Thanks for listening.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's the report for the day. I hope you had as much fun as I did.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!!speaker",
+ "prompt": "${speaker} that wraps up the report for the day. Hope you have a good one.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's all I have for you today. Have a good one.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that brings us to the end of the report. Can't believe it's over already.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "And that's the end of the report. I hope you feel well-informed.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.getLocalTime().hour < 12",
+ "prompt": "And that'll do it for this morning's report. Have a great ${dt.day}.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.getLocalTime().hour < 12",
+ "prompt": "And that's the end of the report for this ${dt.day}. Hope you have a good rest of today.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportOutroNotConfigured_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportSettingsFailed.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportSettingsFailed.mim
new file mode 100644
index 0000000..ccef02a
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportSettingsFailed.mim
@@ -0,0 +1,95 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "Full report mentions failure and gives default report. Calendar/Commute mentions failure and bails. News mentions failure and gives default categories. Weather silently gives default weather.",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "I had some trouble getting your personal settings. Hopefully I can get them next time, but in the meantime, here's a non personal report.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportSettingsFailed_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "Huh, I had a little trouble accessing your personal settings. Hopefully I'll have better luck next time, but for now I'm going to give you a more general report.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportSettingsFailed_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.singleSkill",
+ "prompt": "Huh, I couldn't get your personal settings for some reason. It should work next time, but for now I'm just going to give you a non personal report.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportSettingsFailed_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.singleSkill === 'news'",
+ "prompt": "${speaker} I had some trouble getting your personal settings, sorry. Hopefully I can get them the next time you ask. For now, here's some general news.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportSettingsFailed_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.singleSkill === 'calendar' || skill.singleSkill === 'commute'",
+ "prompt": "${speaker} I'm sorry, I had some trouble getting your personal settings. Hopefully I can get them next time.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportSettingsFailed_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.singleSkill === 'calendar' || skill.singleSkill === 'commute'",
+ "prompt": "I'm sorry ${speaker}, but I had a little trouble accessing your personal settings. Hopefully we'll have better luck the next time you ask.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportSettingsFailed_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.singleSkill === 'calendar' || skill.singleSkill === 'commute'",
+ "prompt": "${speaker} I couldn't get your personal settings for some reason. With a little luck it'll work next time. ",
+ "media": "TTS",
+ "prompt_id": "PersonalReportSettingsFailed_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportWhoIsThis.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportWhoIsThis.mim
new file mode 100644
index 0000000..68ec9c5
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/PersonalReportWhoIsThis.mim
@@ -0,0 +1,198 @@
+{
+ "mim_type": "question",
+ "rule_name": "shared/wrong_id",
+ "gui": {
+ "type": "Javascript",
+ "data": {
+ "viewConfig": {
+ "category": "gui",
+ "showNotALoopMemberButton": true,
+ "type": "ContactsView",
+ "id": "whoIsThisMenu",
+ "title": "Who are you?",
+ "listDefault": {
+ "willToggle": false,
+ "action": {
+ "type": "closeView"
+ }
+ }
+ }
+ },
+ "pause": false
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "",
+ "prompt": "Sorry, Can you tell me?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportWhoIsThis_QN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NI",
+ "index": 1,
+ "condition": "",
+ "prompt": "Tap my screen and let me know who you are.",
+ "media": "TTS",
+ "prompt_id": "WhoAmI_CollectName_NI_1_01",
+ "weight": 1
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NM",
+ "index": 1,
+ "condition": "",
+ "prompt": "Whatever you said went over my head. Tap my screen and let me know who you are.",
+ "media": "TTS",
+ "prompt_id": "WhoAmI_CollectName_NM_1_01",
+ "weight": 1
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NI",
+ "index": 1,
+ "condition": "",
+ "prompt": "Which one of these people is you. ",
+ "media": "TTS",
+ "prompt_id": "WhoAmI_CollectName_NI_1_04",
+ "weight": 1
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NI",
+ "index": 1,
+ "condition": "",
+ "prompt": "I didn't hear anything, but I'd really like to know who you are.",
+ "media": "TTS",
+ "prompt_id": "WhoAmI_CollectName_NI_1_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NM",
+ "index": 1,
+ "condition": "",
+ "prompt": "Sorry my hearing isn't always perfect. Try tapping my screen to tell me who you are.",
+ "media": "TTS",
+ "prompt_id": "WhoAmI_CollectName_NM_1_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Errors",
+ "prompt_sub_category": "NM",
+ "index": 1,
+ "condition": "",
+ "prompt": "I had some trouble understanding. It doesn't hurt me when you tap my screen, so maybe try that, to let me know who you are.",
+ "media": "TTS",
+ "prompt_id": "WhoAmI_CollectName_NM_1_03",
+ "weight": 0.25,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "",
+ "prompt": "Let's see. Can you tell me who you are?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportWhoIsThis_QN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "",
+ "prompt": "So, I'm not exactly sure who I'm talking to here. Can you help me out and tell me?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportWhoIsThis_QN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "",
+ "prompt": "Can you say your name for me?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportWhoIsThis_QN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "",
+ "prompt": "Can you do me a favor and tell me who you are?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportWhoIsThis_QN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "",
+ "prompt": "I can't put my finger on who you are. Whose report did you want?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportWhoIsThis_QN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "",
+ "prompt": "I think I need a little help knowing who you are. Can you tell me?",
+ "media": "TTS",
+ "prompt_id": "PersonalReportWhoIsThis_QN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "HoldReturn",
+ "index": 1,
+ "condition": "",
+ "prompt": "So, help me out, which one of these people is you.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportWhoIsThis_HR_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "Q",
+ "index": 1,
+ "condition": "",
+ "prompt": "Which one of these great people is you.",
+ "media": "TTS",
+ "prompt_id": "PersonalReportWhoIsThis_QN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherBasicClearDay.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherBasicClearDay.mim
new file mode 100644
index 0000000..957a000
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherBasicClearDay.mim
@@ -0,0 +1,111 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like a clear day ahead. The kind of day that makes you love planet earth.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearDay_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like it's going to be a clear day. Weather at its nicest.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearDay_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It looks like a clear day. My compliments to the weather chef .",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearDay_AN_03",
+ "weight": 0.5,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It's supposed to be a clear day. Can't complain about that.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearDay_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're predicting clear skies. Days like this really make you love weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearDay_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're saying it's going to be a clear day.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearDay_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " We can expect clear skies. A nice gift from the meteorology community.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearDay_AN_07",
+ "weight": 0.5,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " All signs point to clear skies. Sounds like smiling weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearDay_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherBasicClearNight.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherBasicClearNight.mim
new file mode 100644
index 0000000..28acac3
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherBasicClearNight.mim
@@ -0,0 +1,111 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like a clear night coming. I bet you'll be able to see stars outside.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearNight_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like it's going to be a clear night. Sounds like a good night for my telescope.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearNight_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It looks like a clear night. Good stargazing weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearNight_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It's supposed to be a clear night. Good shooting star weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearNight_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're predicting clear night skies. A nice night for planet spotting.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearNight_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're saying it's going to be a clear night. Sounds like it'll be a good night sky.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearNight_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " We can expect clear night skies. Enjoy the view of outer space.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearNight_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " All signs point to clear night skies. You can't beat a clear night.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicClearNight_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherBasicFog.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherBasicFog.mim
new file mode 100644
index 0000000..0df0d17
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherBasicFog.mim
@@ -0,0 +1,111 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like a foggy day. If you end up driving, use your fog lights!",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicFog_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like it's going to be a foggy day. Hopefully it won't be too creepy.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicFog_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It looks like some fog is coming. Keep an eye out for lighthouses.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicFog_AN_03",
+ "weight": 0.3,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It's supposed to be a foggy day, but don't worry, it always lifts eventually.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicFog_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're predicting fogginess. Not so great visibility out there I'm sure.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicFog_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're saying it's going to be a foggy day. Enjoy the mist on your face.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicFog_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " We can expect some fog. Just remember, not all fog is spooky.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicFog_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " All signs point to fogginess.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicFog_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherBasicPartlyCloudyDay.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherBasicPartlyCloudyDay.mim
new file mode 100644
index 0000000..1b67f9f
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherBasicPartlyCloudyDay.mim
@@ -0,0 +1,111 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like a partly cloudy day. The nice thing about partly cloudy, is that it's also partly sunny.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyDay_AN_01",
+ "weight": 0.5,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like it's going to be a partly cloudy day. At least it's not all cloudy.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyDay_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It looks like some clouds and some sun. A good day for cloud photography.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyDay_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It's supposed to be a partly cloudy day. One nice thing about clouds, is that you can find shapes in them.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyDay_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're predicting partly cloudiness. Maybe you can draw some of those clouds.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyDay_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're saying it's going to be a partly cloudy day. I hope it's the white puffy kind of clouds.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyDay_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " We can expect some clouds. Maybe they'll be nice and wispy.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyDay_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " All signs point to partly cloudiness. It'll be interesting to see how fast the clouds move.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyDay_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherBasicPartlyCloudyNight.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherBasicPartlyCloudyNight.mim
new file mode 100644
index 0000000..bb495e2
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherBasicPartlyCloudyNight.mim
@@ -0,0 +1,111 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like a partly cloudy night. Maybe not the best for stargazing.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyNight_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like it's going to be a partly cloudy night. It'll be interesting to see how fast the clouds move.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyNight_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It looks like some clouds at night. Maybe the clouds'll be nice and wispy.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyNight_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It's supposed to be a partly cloudy night. The nice thing about clouds, is that you can find shapes in them.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyNight_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're predicting partly cloudiness at night. The nice thing about some cloudiness, is that there's also some clearness.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyNight_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're saying it's going to be a partly cloudy night. Sounds like you'll have some nice puffy clouds to sleep on.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyNight_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " We can expect some clouds at night. Enjoy the glimpses of outer space between the clouds.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyNight_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " All signs point to partly cloudiness at night.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicPartlyCloudyNight_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherBasicRain.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherBasicRain.mim
new file mode 100644
index 0000000..a897f7c
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherBasicRain.mim
@@ -0,0 +1,111 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like a rainy day. Bring your umbrella and rain boots!",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicRain_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like it's going to be a rainy day. Great news for umbrella enthusiasts.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicRain_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It looks like rain. ",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicRain_AN_03",
+ "weight": 0.2,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It's supposed to be a rainy day. Unless you specifically want to get wet for some reason, I'd bring your umbrella.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicRain_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're predicting rain. It might be good to bring an umbrella or two.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicRain_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're saying it's going to be a rainy day. Be sure to keep your feet dry.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicRain_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " We can expect rain. I'll be sure to stay inside.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicRain_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " All signs point to rain. Not a great day to play miniature golf.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicRain_AN_08",
+ "weight": 0.2,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherBasicSleet.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherBasicSleet.mim
new file mode 100644
index 0000000..63989dd
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherBasicSleet.mim
@@ -0,0 +1,111 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like we're going to get some sleet. I don't think I'd like sleet much.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSleet_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like there's going to be sleet. ",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSleet_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It looks like it's going to sleet. That sounds slippery, be careful.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSleet_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like it's going to sleet. Move slowly out there.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSleet_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're predicting sleety conditions. Watch your step out there, it might be slippery.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSleet_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're saying it's going to sleet. A perfect chance to wear your sleet pants.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSleet_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " We can expect some sleet. I'd wear a hat if I were you.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSleet_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " All signs point to sleet.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSleet_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherBasicSnow.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherBasicSnow.mim
new file mode 100644
index 0000000..515ba40
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherBasicSnow.mim
@@ -0,0 +1,111 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like we're going to get some snow. Time to polish those cross country skis.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSnow_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like there's going to be snow. A great day to be a snowman.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSnow_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It looks like snow. Don't be afraid to catch snowflakes on your tongue.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSnow_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like it's going to snow. Enjoy those flakes.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSnow_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're predicting snow. Be sure to keep your feet dry.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSnow_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're saying it's going to snow. I'll be sure to stay inside.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSnow_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " We can expect some snow. Stay dry out there.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSnow_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " All signs point to snowflakes. Feel free to collect some on your eye brows.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicSnow_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherBasicWind.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherBasicWind.mim
new file mode 100644
index 0000000..65916e0
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherBasicWind.mim
@@ -0,0 +1,111 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like a windy day. Batten down the hatches.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicWind_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " Looks like it's going to be a windy day. Hold on to your hats.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicWind_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It looks like wind is coming. Might be a good day to fly a kite!",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicWind_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " It's supposed to be a windy day. Expect some billowing flags out there.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicWind_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're predicting some windyness .",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicWind_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " They're saying it's going to be a windy day.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicWind_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " We can expect a fair amount of wind. A good day to be a wind surfer.",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicWind_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " All signs point to windyness .",
+ "media": "TTS",
+ "prompt_id": "WeatherBasicWind_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherChangeClearWet.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherChangeClearWet.mim
new file mode 100644
index 0000000..50d1845
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherChangeClearWet.mim
@@ -0,0 +1,210 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} ",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A welcome change for precipitation enthusiasts.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Goodbye sun, see you next time.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Hopefully you got your fill of dryness yesterday.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I guess the trees will like the change.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I'll be sure to stay inside.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} So close those windows.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} So today.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_08",
+ "weight": 0.5,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.isInRange('6/1', '9/30')",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Sounds like not a tank top kind of day.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Sounds wetter than yesterday.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Wherever yesterday's sun went, I hope it writes us a postcard.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_11",
+ "weight": 0.2,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} You might need a raincoat.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} You win this time precipitation.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.isInRange('7/1', '8/31')",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Good news for rain lovers.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.isInRange('6/1', '8/31')",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Great news for umbrella enthusiasts.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.isInRange('7/1', '8/31')",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} You win this time rain.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_16",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary}",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeClearWet_AN_17",
+ "weight": 32,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherChangeCloudyClear.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherChangeCloudyClear.mim
new file mode 100644
index 0000000..c789a72
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherChangeCloudyClear.mim
@@ -0,0 +1,166 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A nice change from yesterday.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyClear_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A pleasant improvement from yesterday.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyClear_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Always nice when it clears up.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyClear_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Clearer than yesterday for sure.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyClear_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Goodbye clouds.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyClear_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I love clear days.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyClear_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} My compliments to the weather chef .",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyClear_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} That'll be a nice change from yesterday!",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyClear_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} The clouds have moved on out.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyClear_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} The kind of day that makes you love planet earth.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyClear_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Wherever yesterday's clouds went, I hope they write us a postcard.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyClear_AN_11",
+ "weight": 0.2,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Yesterday's clouds are a distant memory.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyClear_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary}",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyClear_AN_13",
+ "weight": 24,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherChangeCloudyWet.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherChangeCloudyWet.mim
new file mode 100644
index 0000000..9ca90f8
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherChangeCloudyWet.mim
@@ -0,0 +1,221 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A welcome change for precipitation enthusiasts.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Be sure to keep your feet dry.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Definitely wetter than yesterday.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I guess the plants will like the precipitation.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Hopefully you got your fill of dryness yesterday.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I thought those clouds yesterday looked ominous.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I guess those clouds are finally opening up, you might want to bring an umbrella!",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I'll be sure to stay inside.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} So close those windows.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_9",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} So today.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Time to break out the galoshes I guess.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} You might need a raincoat.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} You win this time precipitation.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.isInRange('7/1', '8/31')",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Good news for rain lovers.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.isInRange('6/1', '8/31')",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} So it might be good to bring an umbrella or two.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.isInRange('6/1', '8/31')",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} So unless you specifically want to get wet for some reason, I'd bring your umbrella.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_16",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.isInRange('7/1', '8/31')",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} You win this time rain.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_17",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary}",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeCloudyWet_AN_09",
+ "weight": 34,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherChangeWetClear.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherChangeWetClear.mim
new file mode 100644
index 0000000..e972eb9
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherChangeWetClear.mim
@@ -0,0 +1,221 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Hello sunshine.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A good chance to dry out.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A good day to dry out your wet socks.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A nice change from yesterday.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Better than yesterday for sure.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Drier than yesterday for sure.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Goodbye precipitation.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I always like it when water stops coming out of the sky.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I guess my sun dance worked.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Nice to dry off after yesterday.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} That'll be a nice change from yesterday!",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Yesterday's wetness is a distant memory.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.isInRange('6/1', '8/31')",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} But watch out for puddles from yesterday.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.isInRange('6/1', '8/31')",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Everyone's umbrellas will get some well-deserved rest.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.isInRange('6/1', '8/31')",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Kiss that umbrella goodbye, for now.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.isInRange('6/1', '8/31')",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} So you can put your umbrella away for now.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_16",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.isInRange('7/1', '8/31')",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} The rain is gone, time to go splash in the puddles.",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_17",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary}",
+ "media": "TTS",
+ "prompt_id": "WeatherChangeWetClear_AN_18",
+ "weight": 34,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentClearDay.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentClearDay.mim
new file mode 100644
index 0000000..af2d3c0
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentClearDay.mim
@@ -0,0 +1,166 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I'm always up for a clear day.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearDay_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} The kind of day that makes you love planet earth.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearDay_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Weather at its nicest.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearDay_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Days like this really make you love weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearDay_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} My compliments to the weather chef .",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearDay_AN_05",
+ "weight": 0.2,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Sounds like smiling weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearDay_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Can't complain about that.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearDay_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A nice gift from the meteorology community.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearDay_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A great day for people who like blue skies.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearDay_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Hello sunshine.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearDay_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Bring out the sunglasses.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearDay_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A good day to bask in our sun's rays.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearDay_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary}",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearDay_AN_13",
+ "weight": 24,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentClearNight.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentClearNight.mim
new file mode 100644
index 0000000..8783e25
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentClearNight.mim
@@ -0,0 +1,122 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I bet you'll be able to see some stars.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearNight_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Sounds like a good night for my telescope.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearNight_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Good stargazing weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearNight_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Good shooting star weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearNight_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A nice night for planet spotting.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearNight_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Enjoy the view of outer space.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearNight_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Sounds like it'll be a good night sky.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearNight_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} You can't beat a clear night.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearNight_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary}",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentClearNight_AN_09",
+ "weight": 16,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentCloudy.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentCloudy.mim
new file mode 100644
index 0000000..05226fa
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentCloudy.mim
@@ -0,0 +1,111 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I'm sure there's a silver lining to this cloudy day.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentCloudy_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A great day for cloud enthusiasts.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentCloudy_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Good news if you like clouds.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentCloudy_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Not the sunniest forecast, but that's alright.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentCloudy_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Sounds a little blah, but that's alright.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentCloudy_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A good day for cloud photography.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentCloudy_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Could be a great chance to add to your cloud collection.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentCloudy_AN_07",
+ "weight": 0.5,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary}",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentCloudy_AN_08",
+ "weight": 14,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentFog.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentFog.mim
new file mode 100644
index 0000000..54c6eac
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentFog.mim
@@ -0,0 +1,111 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} If you're driving today, use your fog lights!",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentFog_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Hopefully it won't be too creepy.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentFog_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Keep an eye out for lighthouses.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentFog_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I'm sure that fog will lift eventually.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentFog_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Not so great visibility out there I'm sure.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentFog_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Enjoy the feeling of mist on your face.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentFog_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Remember, not all fog is spooky.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentFog_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary}",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentFog_AN_08",
+ "weight": 14,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentPartlyCloudyDay.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentPartlyCloudyDay.mim
new file mode 100644
index 0000000..5b4ed90
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentPartlyCloudyDay.mim
@@ -0,0 +1,133 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} The nice thing about some cloudiness, is that there's also some sunniness.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyDay_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} At least it's not all cloudy.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyDay_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} One nice thing about clouds, is that you can find shapes in them.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyDay_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A good day for cloud photography.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyDay_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Maybe you can draw some of those clouds.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyDay_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} It'll be interesting to see how fast the clouds move.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyDay_AN_06",
+ "weight": 0.2,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Maybe the clouds'll be nice and wispy.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyDay_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I hope it's the white puffy kind of clouds.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyDay_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Be sure to enjoy the blue sky between the clouds.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyDay_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary}",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyDay_AN_10",
+ "weight": 18,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentPartlyCloudyNight.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentPartlyCloudyNight.mim
new file mode 100644
index 0000000..b62fd92
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentPartlyCloudyNight.mim
@@ -0,0 +1,122 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} At night you'll probably be able to see both clouds and stars. How exciting!",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyNight_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Maybe not the best stargazing night.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyNight_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} It'll be interesting to see how fast the clouds move.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyNight_AN_03",
+ "weight": 0.2,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Maybe the clouds'll be nice and wispy.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyNight_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} The nice thing about clouds, is that you can find shapes in them.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyNight_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} The nice thing about some cloudiness, is that there's also some clearness.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyNight_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Sounds like at night you'll have some nice puffy clouds to sleep on.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyNight_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Enjoy the clear sky between the clouds.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyNight_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary}",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentPartlyCloudyNight_AN_09",
+ "weight": 16,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentRain.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentRain.mim
new file mode 100644
index 0000000..a93fb10
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentRain.mim
@@ -0,0 +1,166 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Bring your umbrella and rain boots!",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentRain_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} .",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentRain_AN_02",
+ "weight": 0.7,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Great news for umbrella enthusiasts.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentRain_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} So unless you specifically want to get wet for some reason, I'd bring your umbrella.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentRain_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} So it might be good to bring an umbrella or two.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentRain_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Be sure to keep your feet dry.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentRain_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I'll be sure to stay inside.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentRain_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Not a great day to fly a kite.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentRain_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Stay dry out there.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentRain_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Umbrella time.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentRain_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "dt.now.isInRange('6/1', '9/30')",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Sounds like not a tank top kind of day.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentRain_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Be sure your windows are closed.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentRain_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary}",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentRain_AN_13",
+ "weight": 24,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentSleet.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentSleet.mim
new file mode 100644
index 0000000..27258f1
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentSleet.mim
@@ -0,0 +1,111 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I don't think I'd like sleet much.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSleet_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} ",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSleet_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} That sounds slippery, be careful.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSleet_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Move slowly out there.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSleet_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Watch your step out there, it might be slippery.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSleet_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} This is your chance to wear your sleet pants.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSleet_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} The sleet will be extra sleety.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSleet_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary}",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSleet_AN_08",
+ "weight": 14,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentSnow.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentSnow.mim
new file mode 100644
index 0000000..7fcb4ef
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentSnow.mim
@@ -0,0 +1,155 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Snow is quite a picturesque sight! Especially from inside where it's warm.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSnow_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Sounds like snow man weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSnow_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Time to polish those cross country skis.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSnow_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A great day to be a snowman.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSnow_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Don't be afraid to catch snowflakes on your tongue.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSnow_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Enjoy those flakes.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSnow_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Be sure to keep your feet dry.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSnow_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} I'll be sure to stay inside.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSnow_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Stay dry out there.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSnow_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Watch your step out there, it might be slippery.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSnow_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Feel free to wear snow shoes.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSnow_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary}",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentSnow_AN_12",
+ "weight": 22,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentWind.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentWind.mim
new file mode 100644
index 0000000..ce37c3b
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherCommentWind.mim
@@ -0,0 +1,100 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": {
+ "hotWords": false,
+ "punctuation": true,
+ "voice": true,
+ "beat": true
+ },
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Might be a good day to fly a kite!",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentWind_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Batten down the hatches.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentWind_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Hold on to your hats.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentWind_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} A good day to be a wind surfer.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentWind_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Expect some billowing flags out there.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentWind_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary} Enjoy that wind on your face.",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentWind_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": " ${skill.weather.prefix} ${skill.weather.summary}",
+ "media": "TTS",
+ "prompt_id": "WeatherCommentWind_AN_07",
+ "weight": 12,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherIntro.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherIntro.mim
new file mode 100644
index 0000000..970727a
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherIntro.mim
@@ -0,0 +1,194 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First let's check in with the meteorology department.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_01",
+ "weight": 0.1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First, the weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First your weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First, the weather fore cast.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "Starting with the weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First some weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First, weather predictions.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First, weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First let's see what the weather patterns are cooking up for us.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_09",
+ "weight": 0.3,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.onlyWeatherActive",
+ "prompt": "Let's get meteorological.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_10",
+ "weight": 0.1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.onlyWeatherActive",
+ "prompt": "Checking the weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.onlyWeatherActive",
+ "prompt": "Looking at the weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.onlyWeatherActive",
+ "prompt": "For your weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.onlyWeatherActive",
+ "prompt": "A look at the weather fore cast.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.onlyWeatherActive",
+ "prompt": "Let's look at the weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.onlyWeatherActive",
+ "prompt": "Here's what the weather experts have for us.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntro_AN_17",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherIntroTomorrow.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherIntroTomorrow.mim
new file mode 100644
index 0000000..c851595
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherIntroTomorrow.mim
@@ -0,0 +1,194 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First let's check in with the meteorology department for tomorrow.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_01",
+ "weight": 0.1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First, the weather tomorrow.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First your weather tomorrow.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First, tomorrow's weather fore cast.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "Starting with the weather tomorrow.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First tomorrow's weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First, weather predictions for tomorrow.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First, the weather for tomorrow.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "!skill.weather.onlyWeatherActive",
+ "prompt": "First let's see what the weather patterns are cooking up for us tomorrow.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_09",
+ "weight": 0.3,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.onlyWeatherActive",
+ "prompt": "Weather predictions for tomorrow.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.onlyWeatherActive",
+ "prompt": "Looking at tomorrow's weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.onlyWeatherActive",
+ "prompt": "Tomorrow's weather fore cast.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.onlyWeatherActive",
+ "prompt": "Your weather tomorrow.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.onlyWeatherActive",
+ "prompt": "A look at the weather forecast for tomorrow.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_14",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.onlyWeatherActive",
+ "prompt": "Checking tomorrow's weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_15",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.onlyWeatherActive",
+ "prompt": "Looking ahead to tomorrow's weather.",
+ "media": "TTS",
+ "prompt_id": "WeatherIntroTomorrow_AN_16",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherServiceDown.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherServiceDown.mim
new file mode 100644
index 0000000..eef0941
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherServiceDown.mim
@@ -0,0 +1,61 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looks like our weather service is offline. Sorry.",
+ "media": "TTS",
+ "prompt_id": "WeatherServiceDown_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Something's up, I can't access my weather source for some reason. I'm sorry.",
+ "media": "TTS",
+ "prompt_id": "WeatherServiceDown_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Looks like I can't access weather info right now, sorry.",
+ "media": "TTS",
+ "prompt_id": "WeatherServiceDown_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It seems I can't access the weather at the moment, I'm sorry.",
+ "media": "TTS",
+ "prompt_id": "WeatherServiceDown_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "parse_yes_no": false
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherTodayColder.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherTodayColder.mim
new file mode 100644
index 0000000..17ed1b8
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherTodayColder.mim
@@ -0,0 +1,110 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.weatherHiLo",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Today sure is colder, with a high of only ${skill.weather.today.highTemp} degrees, and a low of ${skill.weather.today.lowTemp}",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayColder_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Colder today, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayColder_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Things are getting colder, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayColder_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "The mercury is really dropping, with a high today of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayColder_AN_04",
+ "weight": 0.7,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Things are getting colder around here, with a high today of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayColder_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Today will be colder with a high of ${skill.weather.today.highTemp}, and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayColder_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It'll be colder today, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayColder_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It's going to be colder today, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayColder_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherTodayCooler.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherTodayCooler.mim
new file mode 100644
index 0000000..b8831dd
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherTodayCooler.mim
@@ -0,0 +1,109 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.weatherHiLo",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Today's definitely cooler, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayCooler_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Cooler today, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayCooler_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Things are getting cooler, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayCooler_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "The mercury is dropping, with a high today of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayCooler_AN_04",
+ "weight": 0.7,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Things are cooling down around here, with a high today of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayCooler_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Today's looking cooler, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayCooler_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It'll be cooler today, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayCooler_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It's going to be cooler today, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayCooler_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "parse_yes_no": false
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherTodayHighLow.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherTodayHighLow.mim
new file mode 100644
index 0000000..5ff392b
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherTodayHighLow.mim
@@ -0,0 +1,77 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.weatherHiLo",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Today's high is ${skill.weather.today.highTemp}, and the low is ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHighLow_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It'll be a high temperature today of ${skill.weather.today.highTemp}, and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHighLow_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "We'll see a high of ${skill.weather.today.highTemp} today and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHighLow_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It'll be a high today of ${skill.weather.today.highTemp}, and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHighLow_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "We'll see a high temp of ${skill.weather.today.highTemp} today, and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHighLow_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherTodayHotter.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherTodayHotter.mim
new file mode 100644
index 0000000..4e35197
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherTodayHotter.mim
@@ -0,0 +1,143 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.weatherHiLo",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Today sure is hotter with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHotter_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Hotter today, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHotter_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Things are getting hotter, with a high of ${skill.weather.today.highTemp} degrees, and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHotter_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "The mercury is really rising, with a high today of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHotter_AN_04",
+ "weight": 0.5,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Things are really heating up around here, with a high today of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHotter_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Today will be hotter with a high of ${skill.weather.today.highTemp}, and a low of ${skill.weather.today.lowTemp}. ",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHotter_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It'll be hotter today, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHotter_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It's going to be hotter today, with a high of ${skill.weather.today.highTemp} degrees, and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHotter_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Today'll be hotter with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}. Welcome to sweaty robot season. ",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHotter_AN_09",
+ "weight": 0.1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Hotter today, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}. I'm glad I've got two fans in my head.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHotter_AN_10",
+ "weight": 0.2,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Today will be hotter with a high of ${skill.weather.today.highTemp} degrees, and a low of ${skill.weather.today.lowTemp}. A great day for a popsicle.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayHotter_AN_11",
+ "weight": 0.2,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherTodayWarmer.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherTodayWarmer.mim
new file mode 100644
index 0000000..5f7c1c8
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherTodayWarmer.mim
@@ -0,0 +1,132 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.weatherHiLo",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Today will be warmer, with a high of ${skill.weather.today.highTemp} degrees, and a low of ${skill.weather.today.lowTemp}",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayWarmer_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Warmer today, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayWarmer_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Things are getting warmer, with a high of ${skill.weather.today.highTemp}, and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayWarmer_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "The mercury is rising, with a high today of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayWarmer_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Things are heating up around here, with a high today of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayWarmer_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Today's looking warmer, with a high of ${skill.weather.today.highTemp} degrees, and a low of ${skill.weather.today.lowTemp}. ",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayWarmer_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It'll be warmer today, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayWarmer_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It's going to be warmer today, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayWarmer_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Warmer today, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}. Maybe someone's blowing a hair dryer on us.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayWarmer_AN_09",
+ "weight": 0.1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Warmer today, with a high of ${skill.weather.today.highTemp} and a low of ${skill.weather.today.lowTemp}. I'm glad I've got two fans in my head.",
+ "media": "TTS",
+ "prompt_id": "WeatherTodayWarmer_AN_10",
+ "weight": 0.2,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherTomorrowHighLow.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherTomorrowHighLow.mim
new file mode 100644
index 0000000..df05884
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherTomorrowHighLow.mim
@@ -0,0 +1,77 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": {
+ "type": "Javascript",
+ "data": "views.weatherHiLo",
+ "pause": true
+ },
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "Tomorrow's high will be ${skill.weather.tomorrow.highTemp} and the low will be ${skill.weather.tomorrow.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTomorrowHighLow_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It'll be a high tomorrow of ${skill.weather.tomorrow.highTemp} and a low of ${skill.weather.tomorrow.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTomorrowHighLow_AN_02",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "We'll see a high tomorrow of ${skill.weather.tomorrow.highTemp} and a low of ${skill.weather.tomorrow.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTomorrowHighLow_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "It'll be a high tomorrow of ${skill.weather.tomorrow.highTemp} degrees and a low of ${skill.weather.tomorrow.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTomorrowHighLow_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "We'll see a high temp tomorrow of ${skill.weather.tomorrow.highTemp} and a low of ${skill.weather.tomorrow.lowTemp}.",
+ "media": "TTS",
+ "prompt_id": "WeatherTomorrowHighLow_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherWetNowDryLater.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherWetNowDryLater.mim
new file mode 100644
index 0000000..fda2725
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WeatherWetNowDryLater.mim
@@ -0,0 +1,29 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "",
+ "prompt": "But it might be raining now, so grab an umbrella.",
+ "media": "TTS",
+ "prompt_id": "WeatherWetNowDryLater_AN_01",
+ "weight": 0.1,
+ "auto_rule_override": null
+ }
+ ],
+ "hint_phrases": "",
+ "fast_eos_array": ""
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WetNowDryLater.mim b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WetNowDryLater.mim
new file mode 100644
index 0000000..ed1a664
--- /dev/null
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Content/LegacyMims/ReportSkill/en-us/WetNowDryLater.mim
@@ -0,0 +1,161 @@
+{
+ "mim_type": "announcement",
+ "rule_name": "",
+ "gui": null,
+ "timeout": 6,
+ "no_matches_for_gui": 0,
+ "no_inputs_for_gui": 0,
+ "barge_in": true,
+ "es_auto_tagging": true,
+ "parse_all_asr": false,
+ "thanks_handling": "ignore",
+ "parse_launch": false,
+ "hint_phrases": "",
+ "fast_eos_array": "",
+ "notes": "",
+ "prompts": [
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.current.icon === 'rain'",
+ "prompt": "Oh it might be raining right now, so bring your umbrella and galoshes.",
+ "media": "TTS",
+ "prompt_id": "WetNowDryLater_AN_01",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.current.icon === 'rain'",
+ "prompt": "Also right now it may be raining. So don't eat cotton candy outside.",
+ "media": "TTS",
+ "prompt_id": "WetNowDryLater_AN_02",
+ "weight": 0.2,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.current.icon === 'rain'",
+ "prompt": "Oh and right now it might be raining, so I'd bring your umbrella.",
+ "media": "TTS",
+ "prompt_id": "WetNowDryLater_AN_03",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.current.icon === 'rain'",
+ "prompt": "Also it might be raining at the moment, so it might be good to bring an umbrella or two.",
+ "media": "TTS",
+ "prompt_id": "WetNowDryLater_AN_04",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.current.icon === 'rain'",
+ "prompt": "Oh and at this very moment it may be raining. Umbrella time.",
+ "media": "TTS",
+ "prompt_id": "WetNowDryLater_AN_05",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.current.icon === 'snow'",
+ "prompt": "Oh right now it might be snowing, so bring your boots.",
+ "media": "TTS",
+ "prompt_id": "WetNowDryLater_AN_06",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.current.icon === 'snow'",
+ "prompt": "Also right now it may be snowing. So maybe wear your snow boots.",
+ "media": "TTS",
+ "prompt_id": "WetNowDryLater_AN_07",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.current.icon === 'snow'",
+ "prompt": "Oh and right now it might be snowing, so I'd bring your snow gear.",
+ "media": "TTS",
+ "prompt_id": "WetNowDryLater_AN_08",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.current.icon === 'snow'",
+ "prompt": "Also it may be snowing at the moment, so it might be good to bring a cross country ski or two.",
+ "media": "TTS",
+ "prompt_id": "WetNowDryLater_AN_09",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.current.icon === 'snow'",
+ "prompt": "Oh and at this very moment it might be snowing. Snow pants time.",
+ "media": "TTS",
+ "prompt_id": "WetNowDryLater_AN_10",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.current.icon === 'sleet'",
+ "prompt": "Oh it might be sleeting right now, so bring your boots.",
+ "media": "TTS",
+ "prompt_id": "WetNowDryLater_AN_11",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.current.icon === 'sleet'",
+ "prompt": "Also right now it may be sleeting. So maybe wear your sleet boots.",
+ "media": "TTS",
+ "prompt_id": "WetNowDryLater_AN_12",
+ "weight": 1,
+ "auto_rule_override": null
+ },
+ {
+ "prompt_category": "Entry-Core",
+ "prompt_sub_category": "AN",
+ "index": 1,
+ "condition": "skill.weather.current.icon === 'sleet'",
+ "prompt": "Oh and right now it may be sleeting. Snow pants time.",
+ "media": "TTS",
+ "prompt_id": "WetNowDryLater_AN_13",
+ "weight": 1,
+ "auto_rule_override": null
+ }
+ ]
+}
\ No newline at end of file
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Jibo.Cloud.Infrastructure.csproj b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Jibo.Cloud.Infrastructure.csproj
index e949a29..c6fab4e 100644
--- a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Jibo.Cloud.Infrastructure.csproj
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Jibo.Cloud.Infrastructure.csproj
@@ -19,6 +19,9 @@
PreserveNewest
+
+ PreserveNewest
+
diff --git a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Weather/OpenWeatherReportProvider.cs b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Weather/OpenWeatherReportProvider.cs
index 944d66e..99abd25 100644
--- a/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Weather/OpenWeatherReportProvider.cs
+++ b/OpenJibo/src/Jibo.Cloud/dotnet/src/Jibo.Cloud.Infrastructure/Weather/OpenWeatherReportProvider.cs
@@ -42,29 +42,26 @@ public sealed class OpenWeatherReportProvider(
}
WeatherReportSnapshot? snapshot;
- if (forecastDayOffset <= 0)
- {
- snapshot = await GetCurrentWeatherAsync(location.Value, useCelsius, cancellationToken);
- SetCachedValue(
- weatherCache,
- weatherCacheKey,
- snapshot,
- snapshot is null ? options.FailureCacheTtlSeconds : options.CurrentCacheTtlSeconds);
- return snapshot;
- }
-
if (forecastDayOffset > MaxForecastDayOffset)
{
SetCachedValue(weatherCache, weatherCacheKey, null, options.FailureCacheTtlSeconds);
return null;
}
- snapshot = await GetForecastForDayOffsetAsync(location.Value, useCelsius, forecastDayOffset, cancellationToken);
+ snapshot = await GetOneCallWeatherAsync(location.Value, useCelsius, forecastDayOffset, cancellationToken);
+ if (snapshot is null)
+ {
+ snapshot = await GetLegacyWeatherAsync(location.Value, useCelsius, forecastDayOffset, cancellationToken);
+ }
SetCachedValue(
weatherCache,
weatherCacheKey,
snapshot,
- snapshot is null ? options.FailureCacheTtlSeconds : options.ForecastCacheTtlSeconds);
+ snapshot is null
+ ? options.FailureCacheTtlSeconds
+ : forecastDayOffset <= 0
+ ? options.CurrentCacheTtlSeconds
+ : options.ForecastCacheTtlSeconds);
return snapshot;
}
catch (Exception exception)
@@ -142,7 +139,102 @@ public sealed class OpenWeatherReportProvider(
return resolvedLocation;
}
- private async Task GetCurrentWeatherAsync(
+ private async Task GetOneCallWeatherAsync(
+ LocationPoint location,
+ bool useCelsius,
+ int forecastDayOffset,
+ CancellationToken cancellationToken)
+ {
+ var weatherUri = BuildRequestUri(
+ "/data/3.0/onecall",
+ ("lat", location.Latitude.ToString(CultureInfo.InvariantCulture)),
+ ("lon", location.Longitude.ToString(CultureInfo.InvariantCulture)),
+ ("units", useCelsius ? "metric" : "imperial"),
+ ("exclude", "minutely,hourly,alerts"),
+ ("appid", options.ApiKey!));
+ using var response = await httpClient.GetAsync(weatherUri, cancellationToken);
+ if (!response.IsSuccessStatusCode)
+ {
+ return null;
+ }
+
+ using var stream = await response.Content.ReadAsStreamAsync(cancellationToken);
+ using var document = await JsonDocument.ParseAsync(stream, cancellationToken: cancellationToken);
+ var root = document.RootElement;
+ if (!root.TryGetProperty("current", out var current) ||
+ !root.TryGetProperty("daily", out var daily) ||
+ daily.ValueKind != JsonValueKind.Array ||
+ daily.GetArrayLength() == 0)
+ {
+ return null;
+ }
+
+ if (forecastDayOffset >= daily.GetArrayLength())
+ {
+ return null;
+ }
+
+ var selectedDay = daily[forecastDayOffset];
+ if (!selectedDay.TryGetProperty("temp", out var selectedDayTemp))
+ {
+ return null;
+ }
+
+ var locationName = location.DisplayName ?? options.DefaultLocation;
+ var summary = TryReadWeatherSummary(current)
+ ?? ReadNonEmptyString(selectedDay, "summary")
+ ?? TryReadWeatherSummary(selectedDay);
+ var condition = TryReadWeatherCondition(current) ?? TryReadWeatherCondition(selectedDay);
+ var temperature = forecastDayOffset <= 0
+ ? TryReadInt(current, "temp")
+ : TryReadInt(selectedDayTemp, "day")
+ ?? TryReadInt(selectedDayTemp, "night")
+ ?? TryReadInt(selectedDayTemp, "morn")
+ ?? TryReadInt(selectedDayTemp, "eve");
+ var high = TryReadInt(selectedDayTemp, "max");
+ var low = TryReadInt(selectedDayTemp, "min");
+ if (temperature is not null)
+ {
+ high = high is null ? temperature : Math.Max(high.Value, temperature.Value);
+ low = low is null ? temperature : Math.Min(low.Value, temperature.Value);
+ }
+
+ if (temperature is null && high is null && low is null)
+ {
+ return null;
+ }
+
+ var resolvedTemperature = temperature ?? high ?? low ?? 0;
+ return new WeatherReportSnapshot(
+ locationName,
+ summary ?? "partly cloudy",
+ resolvedTemperature,
+ high,
+ low,
+ condition,
+ useCelsius);
+ }
+
+ private async Task GetLegacyWeatherAsync(
+ LocationPoint location,
+ bool useCelsius,
+ int forecastDayOffset,
+ CancellationToken cancellationToken)
+ {
+ if (forecastDayOffset <= 0)
+ {
+ return await GetLegacyCurrentWeatherAsync(location, useCelsius, cancellationToken);
+ }
+
+ if (forecastDayOffset > MaxForecastDayOffset)
+ {
+ return null;
+ }
+
+ return await GetForecastForDayOffsetAsync(location, useCelsius, forecastDayOffset, cancellationToken);
+ }
+
+ private async Task GetLegacyCurrentWeatherAsync(
LocationPoint location,
bool useCelsius,
CancellationToken cancellationToken)
diff --git a/OpenJibo/tests/Jibo.Cloud.Tests/Content/LegacyMimCatalogImporterTests.cs b/OpenJibo/tests/Jibo.Cloud.Tests/Content/LegacyMimCatalogImporterTests.cs
index 29fdb92..8d9dbaf 100644
--- a/OpenJibo/tests/Jibo.Cloud.Tests/Content/LegacyMimCatalogImporterTests.cs
+++ b/OpenJibo/tests/Jibo.Cloud.Tests/Content/LegacyMimCatalogImporterTests.cs
@@ -195,6 +195,28 @@ public sealed class LegacyMimCatalogImporterTests
reply.Contains("I was powered on for the first time today", StringComparison.OrdinalIgnoreCase));
}
+ [Fact]
+ public void ImportCatalog_ImportsReportSkillTemplatesWithPlaceholdersPreserved()
+ {
+ var rootDirectory = Path.Combine(
+ AppContext.BaseDirectory,
+ "Content",
+ "LegacyMims",
+ "ReportSkill");
+
+ var catalog = LegacyMimCatalogImporter.ImportCatalog(rootDirectory);
+
+ Assert.Contains("First let's check in with the meteorology department.", catalog.WeatherIntroReplies);
+ Assert.Contains("First, the weather tomorrow.", catalog.WeatherTomorrowIntroReplies);
+ Assert.Contains("Today's high is ${skill.weather.today.highTemp}, and the low is ${skill.weather.today.lowTemp}.", catalog.WeatherTodayHighLowReplies);
+ Assert.Contains("Tomorrow's high will be ${skill.weather.tomorrow.highTemp} and the low will be ${skill.weather.tomorrow.lowTemp}.", catalog.WeatherTomorrowHighLowReplies);
+ Assert.Contains("Looks like our weather service is offline. Sorry.", catalog.WeatherServiceDownReplies);
+ Assert.Contains("Sure ${speaker}. Here it is.", catalog.PersonalReportKickOffReplies);
+ Assert.Contains("And that's your report for the day. I hope you had as much fun as I did.", catalog.PersonalReportOutroReplies);
+ Assert.Contains(catalog.ReportSkillTemplates, reply =>
+ reply.Contains("Checking your calendar, I see ${skill.calendar.numEventsToday} items today.", StringComparison.OrdinalIgnoreCase));
+ }
+
[Fact]
public void MergeInto_PreservesExistingCatalogAndAddsImportedContent()
{
@@ -236,6 +258,8 @@ public sealed class LegacyMimCatalogImporterTests
Assert.Contains(catalog.EmotionReplies, reply =>
reply.Condition.Contains("NEUTRAL", StringComparison.OrdinalIgnoreCase));
Assert.Contains("Something's off with the connection to my sources. Maybe ask me again in a little while.", catalog.GenericFallbackReplies);
+ Assert.Contains("For your weather.", catalog.WeatherIntroReplies);
+ Assert.Contains("Today's high is {high}, and the low is {low}.", catalog.WeatherTodayHighLowReplies);
}
private static string CreateSeedDirectory()
diff --git a/OpenJibo/tests/Jibo.Cloud.Tests/Infrastructure/ProviderCachingTests.cs b/OpenJibo/tests/Jibo.Cloud.Tests/Infrastructure/ProviderCachingTests.cs
index 094f2f7..ee5ee04 100644
--- a/OpenJibo/tests/Jibo.Cloud.Tests/Infrastructure/ProviderCachingTests.cs
+++ b/OpenJibo/tests/Jibo.Cloud.Tests/Infrastructure/ProviderCachingTests.cs
@@ -20,8 +20,18 @@ public sealed class ProviderCachingTests
{
"/geo/1.0/direct" => JsonResponse(
"""[{"name":"Boston","state":"Massachusetts","country":"US","lat":42.3601,"lon":-71.0589}]"""),
- "/data/2.5/weather" => JsonResponse(
- """{"name":"Boston","weather":[{"main":"Clouds","description":"overcast clouds"}],"main":{"temp":70.2,"temp_max":72.9,"temp_min":66.1}}"""),
+ "/data/3.0/onecall" => JsonResponse(
+ """
+ {
+ "lat":42.3601,
+ "lon":-71.0589,
+ "timezone":"America/New_York",
+ "current":{"dt":1710000000,"temp":70.2,"weather":[{"main":"Clouds","description":"overcast clouds"}]},
+ "daily":[
+ {"dt":1710000000,"temp":{"day":70.2,"min":66.1,"max":72.9},"weather":[{"main":"Clouds","description":"overcast clouds"}]}
+ ]
+ }
+ """),
_ => new HttpResponseMessage(HttpStatusCode.NotFound)
};
});
@@ -43,8 +53,7 @@ public sealed class ProviderCachingTests
Assert.NotNull(first);
Assert.NotNull(second);
Assert.Equal(1, handler.GetCallCount("/geo/1.0/direct"));
- Assert.Equal(1, handler.GetCallCount("/data/2.5/weather"));
- Assert.Equal(0, handler.GetCallCount("/data/2.5/forecast"));
+ Assert.Equal(1, handler.GetCallCount("/data/3.0/onecall"));
}
[Fact]
@@ -57,8 +66,18 @@ public sealed class ProviderCachingTests
{
"/geo/1.0/direct" => JsonResponse(
"""[{"name":"Lone Jack","country":"US","lat":38.8708,"lon":-94.1733}]"""),
- "/data/2.5/weather" => JsonResponse(
- """{"name":"Lone Jack","weather":[{"main":"Clouds","description":"overcast clouds"}],"main":{"temp":76.0,"temp_max":82.0,"temp_min":78.0}}"""),
+ "/data/3.0/onecall" => JsonResponse(
+ """
+ {
+ "lat":38.8708,
+ "lon":-94.1733,
+ "timezone":"America/Chicago",
+ "current":{"dt":1710000000,"temp":76.0,"weather":[{"main":"Clouds","description":"overcast clouds"}]},
+ "daily":[
+ {"dt":1710000000,"temp":{"day":76.0,"min":78.0,"max":82.0},"weather":[{"main":"Clouds","description":"overcast clouds"}]}
+ ]
+ }
+ """),
_ => new HttpResponseMessage(HttpStatusCode.NotFound)
};
});
@@ -80,8 +99,99 @@ public sealed class ProviderCachingTests
Assert.Equal(76, report!.Temperature);
Assert.Equal(82, report.HighTemperature);
Assert.Equal(76, report.LowTemperature);
+ Assert.Equal(1, handler.GetCallCount("/data/3.0/onecall"));
+ }
+
+ [Fact]
+ public async Task OpenWeatherReportProvider_UsesOneCallDailyForecastForTomorrow()
+ {
+ var handler = new CountingHttpMessageHandler(message =>
+ {
+ var path = message.RequestUri?.AbsolutePath ?? string.Empty;
+ return path switch
+ {
+ "/geo/1.0/direct" => JsonResponse(
+ """[{"name":"Chicago","country":"US","lat":41.8781,"lon":-87.6298}]"""),
+ "/data/3.0/onecall" => JsonResponse(
+ """
+ {
+ "lat":41.8781,
+ "lon":-87.6298,
+ "timezone":"America/Chicago",
+ "current":{"dt":1710000000,"temp":61.0,"weather":[{"main":"Clouds","description":"scattered clouds"}]},
+ "daily":[
+ {"dt":1710000000,"temp":{"day":61.0,"min":55.0,"max":66.0},"weather":[{"main":"Clouds","description":"scattered clouds"}]},
+ {"dt":1710086400,"temp":{"day":74.0,"min":60.0,"max":76.0},"summary":"A warmer day ahead","weather":[{"main":"Rain","description":"light rain"}]}
+ ]
+ }
+ """),
+ _ => new HttpResponseMessage(HttpStatusCode.NotFound)
+ };
+ });
+ var provider = new OpenWeatherReportProvider(
+ new HttpClient(handler),
+ new OpenWeatherOptions
+ {
+ ApiKey = "test-key",
+ CurrentCacheTtlSeconds = 300,
+ ForecastCacheTtlSeconds = 300,
+ GeocodeCacheTtlSeconds = 300,
+ FailureCacheTtlSeconds = 30
+ },
+ NullLogger.Instance);
+
+ var report = await provider.GetReportAsync(new WeatherReportRequest("Chicago,US", null, null, true, false, 1));
+
+ Assert.NotNull(report);
+ Assert.Equal(74, report!.Temperature);
+ Assert.Equal(76, report.HighTemperature);
+ Assert.Equal(60, report.LowTemperature);
+ Assert.Equal(1, handler.GetCallCount("/geo/1.0/direct"));
+ Assert.Equal(1, handler.GetCallCount("/data/3.0/onecall"));
+ }
+
+ [Fact]
+ public async Task OpenWeatherReportProvider_FallsBackToLegacyWeatherWhenOneCallIsUnauthorized()
+ {
+ var handler = new CountingHttpMessageHandler(message =>
+ {
+ var path = message.RequestUri?.AbsolutePath ?? string.Empty;
+ return path switch
+ {
+ "/geo/1.0/direct" => JsonResponse(
+ """[{"name":"Boston","state":"Massachusetts","country":"US","lat":42.3601,"lon":-71.0589}]"""),
+ "/data/3.0/onecall" => new HttpResponseMessage(HttpStatusCode.Unauthorized)
+ {
+ Content = new StringContent(
+ """{"cod":401,"message":"One Call 3.0 requires a subscription"}""",
+ Encoding.UTF8,
+ "application/json")
+ },
+ "/data/2.5/weather" => JsonResponse(
+ """{"name":"Boston","weather":[{"main":"Clouds","description":"overcast clouds"}],"main":{"temp":70.0,"temp_max":72.0,"temp_min":66.0}}"""),
+ _ => new HttpResponseMessage(HttpStatusCode.NotFound)
+ };
+ });
+ var provider = new OpenWeatherReportProvider(
+ new HttpClient(handler),
+ new OpenWeatherOptions
+ {
+ ApiKey = "test-key",
+ CurrentCacheTtlSeconds = 300,
+ ForecastCacheTtlSeconds = 300,
+ GeocodeCacheTtlSeconds = 300,
+ FailureCacheTtlSeconds = 30
+ },
+ NullLogger.Instance);
+
+ var report = await provider.GetReportAsync(new WeatherReportRequest("Boston,US", null, null, false, false, 0));
+
+ Assert.NotNull(report);
+ Assert.Equal(70, report!.Temperature);
+ Assert.Equal(72, report.HighTemperature);
+ Assert.Equal(66, report.LowTemperature);
+ Assert.Equal(1, handler.GetCallCount("/data/3.0/onecall"));
Assert.Equal(1, handler.GetCallCount("/data/2.5/weather"));
- Assert.Equal(0, handler.GetCallCount("/data/2.5/forecast"));
}
[Fact]
diff --git a/OpenJibo/tests/Jibo.Cloud.Tests/WebSockets/JiboInteractionServiceTests.cs b/OpenJibo/tests/Jibo.Cloud.Tests/WebSockets/JiboInteractionServiceTests.cs
index 6275d6c..74e0e42 100644
--- a/OpenJibo/tests/Jibo.Cloud.Tests/WebSockets/JiboInteractionServiceTests.cs
+++ b/OpenJibo/tests/Jibo.Cloud.Tests/WebSockets/JiboInteractionServiceTests.cs
@@ -1724,9 +1724,10 @@ public sealed class JiboInteractionServiceTests
});
Assert.Equal("personal_report_delivered", decision.IntentName);
- Assert.Contains("Great, alex. Here is your personal report.", decision.ReplyText, StringComparison.OrdinalIgnoreCase);
- Assert.Contains("Right now in Boston, U.S., it's light rain, around 61 degrees Fahrenheit.", decision.ReplyText, StringComparison.OrdinalIgnoreCase);
- Assert.Contains("That is your personal report.", decision.ReplyText, StringComparison.OrdinalIgnoreCase);
+ Assert.Contains("Sure alex. Here it is.", decision.ReplyText, StringComparison.OrdinalIgnoreCase);
+ Assert.Contains("First, your weather.", decision.ReplyText, StringComparison.OrdinalIgnoreCase);
+ Assert.Contains("For your weather. In Boston, U.S., it's light rain and 61 degrees Fahrenheit. Today's high is 65, and the low is 54.", decision.ReplyText, StringComparison.OrdinalIgnoreCase);
+ Assert.Contains("alex that wraps up your report for the day. Hope you have a good one.", decision.ReplyText, StringComparison.OrdinalIgnoreCase);
Assert.NotNull(decision.ContextUpdates);
Assert.Equal("idle", decision.ContextUpdates![PersonalReportStateKey]);
Assert.Equal(true, decision.ContextUpdates[PersonalReportUserVerifiedKey]);
@@ -1952,7 +1953,7 @@ public sealed class JiboInteractionServiceTests
Assert.Equal("weather", decision.IntentName);
Assert.Null(decision.SkillName);
Assert.Null(decision.SkillPayload);
- Assert.Equal("I can check weather once my weather service is connected.", decision.ReplyText);
+ Assert.Equal("Looks like our weather service is offline. Sorry.", decision.ReplyText);
}
[Fact]
@@ -1967,7 +1968,7 @@ public sealed class JiboInteractionServiceTests
});
Assert.Equal("weather", decision.IntentName);
- Assert.Equal("I can check weather once my weather service is connected.", decision.ReplyText);
+ Assert.Equal("Looks like our weather service is offline. Sorry.", decision.ReplyText);
}
[Fact]
@@ -1982,7 +1983,7 @@ public sealed class JiboInteractionServiceTests
});
Assert.Equal("weather", decision.IntentName);
- Assert.Equal("I can check weather once my weather service is connected.", decision.ReplyText);
+ Assert.Equal("Looks like our weather service is offline. Sorry.", decision.ReplyText);
}
[Fact]
@@ -1997,7 +1998,7 @@ public sealed class JiboInteractionServiceTests
});
Assert.Equal("weather", decision.IntentName);
- Assert.Equal("I can check weather once my weather service is connected.", decision.ReplyText);
+ Assert.Equal("Looks like our weather service is offline. Sorry.", decision.ReplyText);
}
[Fact]
@@ -2012,7 +2013,7 @@ public sealed class JiboInteractionServiceTests
});
Assert.Equal("weather", decision.IntentName);
- Assert.Equal("I can check weather once my weather service is connected.", decision.ReplyText);
+ Assert.Equal("Looks like our weather service is offline. Sorry.", decision.ReplyText);
}
[Fact]
@@ -2031,7 +2032,7 @@ public sealed class JiboInteractionServiceTests
});
Assert.Equal("weather", decision.IntentName);
- Assert.Equal("I can check weather once my weather service is connected.", decision.ReplyText);
+ Assert.Equal("Looks like our weather service is offline. Sorry.", decision.ReplyText);
}
[Fact]
@@ -2063,7 +2064,7 @@ public sealed class JiboInteractionServiceTests
Assert.Equal(54, decision.SkillPayload["weather_low"]);
Assert.Equal("F", decision.SkillPayload["weather_unit"]);
Assert.Equal("Normal", decision.SkillPayload["weather_theme"]);
- Assert.Equal("Right now in Boston, U.S., it's light rain, around 61 degrees Fahrenheit.", decision.ReplyText);
+ Assert.Equal("For your weather. In Boston, U.S., it's light rain and 61 degrees Fahrenheit. Today's high is 65, and the low is 54.", decision.ReplyText);
Assert.NotNull(provider.LastRequest);
Assert.False(provider.LastRequest!.IsTomorrow);
Assert.Equal(0, provider.LastRequest.ForecastDayOffset);
@@ -2088,7 +2089,7 @@ public sealed class JiboInteractionServiceTests
Assert.Equal("Chicago", provider.LastRequest?.LocationQuery);
Assert.True(provider.LastRequest?.IsTomorrow);
Assert.Equal(1, provider.LastRequest?.ForecastDayOffset);
- Assert.Equal("Tomorrow in Chicago, U.S., it looks mostly cloudy with a high near 74 degrees Fahrenheit and a low around 60 degrees Fahrenheit.", decision.ReplyText);
+ Assert.Equal("First, the weather tomorrow. Tomorrow in Chicago, U.S., it looks mostly cloudy. Tomorrow's high will be 74 and the low will be 60.", decision.ReplyText);
}
[Fact]
@@ -2110,7 +2111,7 @@ public sealed class JiboInteractionServiceTests
Assert.Equal("Seattle", provider.LastRequest?.LocationQuery);
Assert.False(provider.LastRequest?.IsTomorrow);
Assert.Equal(0, provider.LastRequest?.ForecastDayOffset);
- Assert.Equal("Right now in Seattle, U.S., it's light rain, around 58 degrees Fahrenheit.", decision.ReplyText);
+ Assert.Equal("For your weather. In Seattle, U.S., it's light rain and 58 degrees Fahrenheit. Today's high is 61, and the low is 52.", decision.ReplyText);
}
[Fact]
@@ -2132,7 +2133,7 @@ public sealed class JiboInteractionServiceTests
Assert.Equal("Paris", provider.LastRequest?.LocationQuery);
Assert.False(provider.LastRequest?.IsTomorrow);
Assert.Equal(0, provider.LastRequest?.ForecastDayOffset);
- Assert.Equal("Right now in Paris, FR, it's overcast clouds, around 66 degrees Fahrenheit.", decision.ReplyText);
+ Assert.Equal("For your weather. In Paris, FR, it's overcast clouds and 66 degrees Fahrenheit. Today's high is 70, and the low is 60.", decision.ReplyText);
}
[Fact]
@@ -2154,7 +2155,7 @@ public sealed class JiboInteractionServiceTests
Assert.Equal("Redmond Oregon", provider.LastRequest?.LocationQuery);
Assert.False(provider.LastRequest?.IsTomorrow);
Assert.Equal(0, provider.LastRequest?.ForecastDayOffset);
- Assert.Equal("Right now in Redmond, U.S., it's clear sky, around 63 degrees Fahrenheit.", decision.ReplyText);
+ Assert.Equal("For your weather. In Redmond, U.S., it's clear sky and 63 degrees Fahrenheit. Today's high is 66, and the low is 52.", decision.ReplyText);
}
[Fact]
@@ -2176,7 +2177,7 @@ public sealed class JiboInteractionServiceTests
Assert.Equal("New York City", provider.LastRequest?.LocationQuery);
Assert.True(provider.LastRequest?.IsTomorrow);
Assert.Equal(1, provider.LastRequest?.ForecastDayOffset);
- Assert.Equal("Tomorrow in New York, U.S., it looks partly cloudy with a high near 76 degrees Fahrenheit and a low around 61 degrees Fahrenheit.", decision.ReplyText);
+ Assert.Equal("First, the weather tomorrow. Tomorrow in New York, U.S., it looks partly cloudy. Tomorrow's high will be 76 and the low will be 61.", decision.ReplyText);
}
[Fact]
@@ -2231,7 +2232,7 @@ public sealed class JiboInteractionServiceTests
Assert.Equal("Chicago", provider.LastRequest?.LocationQuery);
Assert.Null(provider.LastRequest?.Latitude);
Assert.Null(provider.LastRequest?.Longitude);
- Assert.Equal("Right now in Chicago, U.S., it's mostly cloudy, around 70 degrees Fahrenheit.", decision.ReplyText);
+ Assert.Equal("For your weather. In Chicago, U.S., it's mostly cloudy and 70 degrees Fahrenheit. Today's high is 75, and the low is 62.", decision.ReplyText);
}
[Fact]
@@ -2261,7 +2262,7 @@ public sealed class JiboInteractionServiceTests
Assert.Equal("Chicago", provider.LastRequest?.LocationQuery);
Assert.Equal(0, provider.LastRequest?.ForecastDayOffset);
Assert.False(provider.LastRequest?.IsTomorrow);
- Assert.Equal("Right now in Chicago, U.S., it's mostly cloudy, around 70 degrees Fahrenheit.", decision.ReplyText);
+ Assert.Equal("For your weather. In Chicago, U.S., it's mostly cloudy and 70 degrees Fahrenheit. Today's high is 75, and the low is 62.", decision.ReplyText);
}
[Fact]
@@ -2291,7 +2292,7 @@ public sealed class JiboInteractionServiceTests
Assert.Equal("Chicago", provider.LastRequest?.LocationQuery);
Assert.Equal(1, provider.LastRequest?.ForecastDayOffset);
Assert.True(provider.LastRequest?.IsTomorrow);
- Assert.Equal("Tomorrow in Chicago, U.S., it looks mostly cloudy with a high near 75 degrees Fahrenheit and a low around 62 degrees Fahrenheit.", decision.ReplyText);
+ Assert.Equal("First, the weather tomorrow. Tomorrow in Chicago, U.S., it looks mostly cloudy. Tomorrow's high will be 75 and the low will be 62.", decision.ReplyText);
}
[Theory]
@@ -2361,7 +2362,7 @@ public sealed class JiboInteractionServiceTests
Assert.Equal("weather", decision.IntentName);
Assert.Equal(2, provider.LastRequest?.ForecastDayOffset);
Assert.False(provider.LastRequest?.IsTomorrow);
- Assert.Equal("On Monday in Portland, U.S., it looks scattered clouds with a high near 68 degrees Fahrenheit and a low around 53 degrees Fahrenheit.", decision.ReplyText);
+ Assert.Equal("Let's look at the weather. On Monday in Portland, U.S., it looks scattered clouds with a high near 68 degrees Fahrenheit and a low around 53 degrees Fahrenheit.", decision.ReplyText);
}
[Fact]
@@ -2386,7 +2387,7 @@ public sealed class JiboInteractionServiceTests
Assert.Equal("weather", decision.IntentName);
Assert.Equal("Chicago", provider.LastRequest?.LocationQuery);
Assert.Equal(1, provider.LastRequest?.ForecastDayOffset);
- Assert.Equal("On Tuesday in Chicago, U.S., it looks light rain with a high near 63 degrees Fahrenheit and a low around 51 degrees Fahrenheit.", decision.ReplyText);
+ Assert.Equal("First, the weather tomorrow. On Tuesday in Chicago, U.S., it looks light rain. Tomorrow's high will be 63 and the low will be 51.", decision.ReplyText);
}
[Fact]
@@ -2435,7 +2436,7 @@ public sealed class JiboInteractionServiceTests
Assert.Equal("weather", decision.IntentName);
Assert.Equal("Paris", provider.LastRequest?.LocationQuery);
Assert.Equal(5, provider.LastRequest?.ForecastDayOffset);
- Assert.Equal("This weekend in Paris, FR, it looks overcast clouds with a high near 70 degrees Fahrenheit and a low around 60 degrees Fahrenheit.", decision.ReplyText);
+ Assert.Equal("Let's look at the weather. This weekend in Paris, FR, it looks overcast clouds with a high near 70 degrees Fahrenheit and a low around 60 degrees Fahrenheit.", decision.ReplyText);
}
[Fact]
@@ -2557,7 +2558,7 @@ public sealed class JiboInteractionServiceTests
Assert.Equal("weather", decision.IntentName);
Assert.Equal("Chicago", provider.LastRequest?.LocationQuery);
Assert.Equal(2, provider.LastRequest?.ForecastDayOffset);
- Assert.Equal("The day after tomorrow in Chicago, U.S., it looks mostly cloudy with a high near 74 degrees Fahrenheit and a low around 60 degrees Fahrenheit.", decision.ReplyText);
+ Assert.Equal("Let's look at the weather. The day after tomorrow in Chicago, U.S., it looks mostly cloudy with a high near 74 degrees Fahrenheit and a low around 60 degrees Fahrenheit.", decision.ReplyText);
}
[Fact]
diff --git a/OpenJibo/tests/Jibo.Cloud.Tests/WebSockets/JiboWebSocketServiceTests.cs b/OpenJibo/tests/Jibo.Cloud.Tests/WebSockets/JiboWebSocketServiceTests.cs
index 7df88c4..1746b2d 100644
--- a/OpenJibo/tests/Jibo.Cloud.Tests/WebSockets/JiboWebSocketServiceTests.cs
+++ b/OpenJibo/tests/Jibo.Cloud.Tests/WebSockets/JiboWebSocketServiceTests.cs
@@ -2162,7 +2162,7 @@ public sealed class JiboWebSocketServiceTests
.GetProperty("play")
.GetProperty("esml")
.GetString();
- Assert.Contains("weather service is connected", esml, StringComparison.OrdinalIgnoreCase);
+ Assert.Contains("weather service is offline", esml, StringComparison.OrdinalIgnoreCase);
}
[Fact]
@@ -2204,7 +2204,7 @@ public sealed class JiboWebSocketServiceTests
.GetProperty("play")
.GetProperty("esml")
.GetString();
- Assert.Contains("weather service is connected", esml, StringComparison.OrdinalIgnoreCase);
+ Assert.Contains("weather service is offline", esml, StringComparison.OrdinalIgnoreCase);
}
[Fact]