Revert weather report-skill routing to stabilize playback
This commit is contained in:
@@ -665,7 +665,7 @@ public sealed class JiboInteractionService(
|
|||||||
return new JiboInteractionDecision(
|
return new JiboInteractionDecision(
|
||||||
"weather",
|
"weather",
|
||||||
weeklySpokenReply,
|
weeklySpokenReply,
|
||||||
"report-skill",
|
"chitchat-skill",
|
||||||
SkillPayload: weeklyWeatherPayload);
|
SkillPayload: weeklyWeatherPayload);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -705,7 +705,7 @@ public sealed class JiboInteractionService(
|
|||||||
return new JiboInteractionDecision(
|
return new JiboInteractionDecision(
|
||||||
"weather",
|
"weather",
|
||||||
spokenReply,
|
spokenReply,
|
||||||
"report-skill",
|
"chitchat-skill",
|
||||||
SkillPayload: weatherPayload);
|
SkillPayload: weatherPayload);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -300,22 +300,6 @@ public sealed class ResponsePlanToSocketMessagesMapper
|
|||||||
DelayMs: 125));
|
DelayMs: 125));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isReportSkillLaunch)
|
|
||||||
{
|
|
||||||
messages.Add(new SocketReplyPlan(
|
|
||||||
JsonSerializer.Serialize(BuildSkillRedirectPayload(
|
|
||||||
transId,
|
|
||||||
"report-skill",
|
|
||||||
outboundIntent,
|
|
||||||
outboundAsrText,
|
|
||||||
outboundRules,
|
|
||||||
entities)),
|
|
||||||
DelayMs: 75));
|
|
||||||
messages.Add(new SocketReplyPlan(
|
|
||||||
JsonSerializer.Serialize(BuildCompletionOnlySkillPayload(transId, "report-skill")),
|
|
||||||
DelayMs: 125));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (emitSkillActions && speak is not null)
|
if (emitSkillActions && speak is not null)
|
||||||
{
|
{
|
||||||
messages.Add(new SocketReplyPlan(
|
messages.Add(new SocketReplyPlan(
|
||||||
|
|||||||
@@ -1458,7 +1458,7 @@ public sealed class JiboInteractionServiceTests
|
|||||||
});
|
});
|
||||||
|
|
||||||
Assert.Equal("weather", decision.IntentName);
|
Assert.Equal("weather", decision.IntentName);
|
||||||
Assert.Equal("report-skill", decision.SkillName);
|
Assert.Equal("chitchat-skill", decision.SkillName);
|
||||||
Assert.NotNull(decision.SkillPayload);
|
Assert.NotNull(decision.SkillPayload);
|
||||||
Assert.Contains("cat='weather'", decision.SkillPayload!["esml"]?.ToString(), StringComparison.OrdinalIgnoreCase);
|
Assert.Contains("cat='weather'", decision.SkillPayload!["esml"]?.ToString(), StringComparison.OrdinalIgnoreCase);
|
||||||
Assert.Contains("meta='rain'", decision.SkillPayload["esml"]?.ToString(), StringComparison.OrdinalIgnoreCase);
|
Assert.Contains("meta='rain'", decision.SkillPayload["esml"]?.ToString(), StringComparison.OrdinalIgnoreCase);
|
||||||
@@ -1667,7 +1667,7 @@ public sealed class JiboInteractionServiceTests
|
|||||||
Assert.Equal(expectedLocationQuery, provider.LastRequest!.LocationQuery);
|
Assert.Equal(expectedLocationQuery, provider.LastRequest!.LocationQuery);
|
||||||
Assert.Equal(expectedForecastOffset, provider.LastRequest.ForecastDayOffset);
|
Assert.Equal(expectedForecastOffset, provider.LastRequest.ForecastDayOffset);
|
||||||
Assert.Equal(expectedIsTomorrow, provider.LastRequest.IsTomorrow);
|
Assert.Equal(expectedIsTomorrow, provider.LastRequest.IsTomorrow);
|
||||||
Assert.Equal("report-skill", decision.SkillName);
|
Assert.Equal("chitchat-skill", decision.SkillName);
|
||||||
Assert.Equal(true, decision.SkillPayload?["weather_view_enabled"]);
|
Assert.Equal(true, decision.SkillPayload?["weather_view_enabled"]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -2198,13 +2198,10 @@ public sealed class JiboWebSocketServiceTests
|
|||||||
Assert.True(replies.Count >= 3);
|
Assert.True(replies.Count >= 3);
|
||||||
Assert.Equal("LISTEN", ReadReplyType(replies[0]));
|
Assert.Equal("LISTEN", ReadReplyType(replies[0]));
|
||||||
Assert.Equal("EOS", ReadReplyType(replies[1]));
|
Assert.Equal("EOS", ReadReplyType(replies[1]));
|
||||||
Assert.Contains(replies, static reply => string.Equals(ReadReplyType(reply), "SKILL_REDIRECT", StringComparison.Ordinal));
|
|
||||||
Assert.Contains(replies, static reply => string.Equals(ReadReplyType(reply), "SKILL_ACTION", StringComparison.Ordinal));
|
Assert.Contains(replies, static reply => string.Equals(ReadReplyType(reply), "SKILL_ACTION", StringComparison.Ordinal));
|
||||||
|
|
||||||
using var listenPayload = JsonDocument.Parse(replies[0].Text!);
|
using var listenPayload = JsonDocument.Parse(replies[0].Text!);
|
||||||
Assert.Equal(
|
Assert.False(listenPayload.RootElement.GetProperty("data").GetProperty("nlu").TryGetProperty("skill", out _));
|
||||||
"report-skill",
|
|
||||||
listenPayload.RootElement.GetProperty("data").GetProperty("nlu").GetProperty("skill").GetString());
|
|
||||||
Assert.Equal("weather", listenPayload.RootElement.GetProperty("data").GetProperty("match").GetProperty("cloudSkill").GetString());
|
Assert.Equal("weather", listenPayload.RootElement.GetProperty("data").GetProperty("match").GetProperty("cloudSkill").GetString());
|
||||||
|
|
||||||
var skillReply = replies.Last(static reply => string.Equals(ReadReplyType(reply), "SKILL_ACTION", StringComparison.Ordinal));
|
var skillReply = replies.Last(static reply => string.Equals(ReadReplyType(reply), "SKILL_ACTION", StringComparison.Ordinal));
|
||||||
|
|||||||
157
tmp/jibo-test-41/captures/http/20260511.events.ndjson
Normal file
157
tmp/jibo-test-41/captures/http/20260511.events.ndjson
Normal file
File diff suppressed because one or more lines are too long
17365
tmp/jibo-test-41/captures/turn/20260511.events.ndjson
Normal file
17365
tmp/jibo-test-41/captures/turn/20260511.events.ndjson
Normal file
File diff suppressed because it is too large
Load Diff
2290
tmp/jibo-test-41/captures/websocket/20260511.events.ndjson
Normal file
2290
tmp/jibo-test-41/captures/websocket/20260511.events.ndjson
Normal file
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,102 @@
|
|||||||
|
{
|
||||||
|
"name": "neohubjibocom-neohubproactive-tidd36da4d442a611f1aba45cf821ea55ae",
|
||||||
|
"session": {
|
||||||
|
"hostName": "neo-hub.jibo.com",
|
||||||
|
"path": "/v1/proactive",
|
||||||
|
"kind": "neo-hub-proactive",
|
||||||
|
"token": "hub-usr_openjibo_owner-1777340189867"
|
||||||
|
},
|
||||||
|
"steps": [
|
||||||
|
{
|
||||||
|
"text": {
|
||||||
|
"type": "TRIGGER",
|
||||||
|
"ts": 1777341970615,
|
||||||
|
"msgID": "mid-d388c070-42a6-11f1-a414-5cf821ea55ae",
|
||||||
|
"transID": "tid-d36da4d4-42a6-11f1-aba4-5cf821ea55ae",
|
||||||
|
"data": {
|
||||||
|
"triggerSource": "SURPRISE",
|
||||||
|
"triggerData": {
|
||||||
|
"looperID": "5c0b221fdf9d450019c5e255"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"binary": null,
|
||||||
|
"expectedReplyTypes": []
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": {
|
||||||
|
"type": "CONTEXT",
|
||||||
|
"ts": 1777341970702,
|
||||||
|
"msgID": "mid-d395f790-42a6-11f1-95f4-5cf821ea55ae",
|
||||||
|
"transID": "tid-d36da4d4-42a6-11f1-aba4-5cf821ea55ae",
|
||||||
|
"data": {
|
||||||
|
"runtime": {
|
||||||
|
"character": {
|
||||||
|
"emotion": {
|
||||||
|
"name": "NEUTRAL",
|
||||||
|
"valence": 0.45,
|
||||||
|
"confidence": 0.2
|
||||||
|
},
|
||||||
|
"motivation": {
|
||||||
|
"social": 1,
|
||||||
|
"playful": 0.5152989351851469
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"perception": {
|
||||||
|
"speaker": "5c0b221fdf9d450019c5e255",
|
||||||
|
"peoplePresent": [
|
||||||
|
{
|
||||||
|
"id": "NOT_TRAINED",
|
||||||
|
"entityId": 16085,
|
||||||
|
"type": "fused",
|
||||||
|
"confidence": 1
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"location": {
|
||||||
|
"city": "Pleasant Hill",
|
||||||
|
"state": "Missouri",
|
||||||
|
"stateAbbr": "MO",
|
||||||
|
"country": "United States",
|
||||||
|
"countryCode": "US",
|
||||||
|
"lat": 38.8358494,
|
||||||
|
"lng": -94.1427229,
|
||||||
|
"iso": "2026-04-27T21:06:10.626-05:00"
|
||||||
|
},
|
||||||
|
"loop": {
|
||||||
|
"loopId": "5c0b221fdf9d450019c5e253",
|
||||||
|
"users": [
|
||||||
|
{
|
||||||
|
"firstName": "Erin",
|
||||||
|
"lastName": "Picone",
|
||||||
|
"phoneticName": "Erin",
|
||||||
|
"gender": "female",
|
||||||
|
"birthdate": 649209600000,
|
||||||
|
"id": "5c0b221fdf9d450019c5e255",
|
||||||
|
"accountId": "5c0b20547c46170019235759"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"jibo": {
|
||||||
|
"color": "WHITE",
|
||||||
|
"birthdate": 1544234645598,
|
||||||
|
"id": "5c0b221fdf9d450019c5e254"
|
||||||
|
},
|
||||||
|
"owner": "5c0b221fdf9d450019c5e255"
|
||||||
|
},
|
||||||
|
"dialog": {
|
||||||
|
"referent": null
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"skill": {
|
||||||
|
"id": null
|
||||||
|
},
|
||||||
|
"general": {
|
||||||
|
"release": "1.9.2"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"binary": null,
|
||||||
|
"expectedReplyTypes": []
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
1620
tmp/jibo-test-41/jibo test 41.txt
Normal file
1620
tmp/jibo-test-41/jibo test 41.txt
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user