diff --git a/libraries/botbuilder-dialogs/botbuilder/dialogs/dialog_manager.py b/libraries/botbuilder-dialogs/botbuilder/dialogs/dialog_manager.py index 28dbe6e74..c1d3088d1 100644 --- a/libraries/botbuilder-dialogs/botbuilder/dialogs/dialog_manager.py +++ b/libraries/botbuilder-dialogs/botbuilder/dialogs/dialog_manager.py @@ -16,7 +16,7 @@ DialogStateManager, DialogStateManagerConfiguration, ) -from botbuilder.schema import Activity, ActivityTypes +from botbuilder.schema import Activity, ActivityTypes, EndOfConversationCodes from botframework.connector.auth import ( AuthenticationConstants, ClaimsIdentity, @@ -355,6 +355,9 @@ async def handle_skill_on_turn( type=ActivityTypes.end_of_conversation, value=turn_result.result, locale=turn_context.activity.locale, + code=EndOfConversationCodes.completed_successfully + if turn_result.status == DialogTurnStatus.Complete + else EndOfConversationCodes.user_cancelled, ) await turn_context.send_activity(activity) diff --git a/libraries/botbuilder-dialogs/tests/test_dialog_manager.py b/libraries/botbuilder-dialogs/tests/test_dialog_manager.py index 6ed5198f7..75f5b91a3 100644 --- a/libraries/botbuilder-dialogs/tests/test_dialog_manager.py +++ b/libraries/botbuilder-dialogs/tests/test_dialog_manager.py @@ -38,6 +38,7 @@ ActivityTypes, ChannelAccount, ConversationAccount, + EndOfConversationCodes, InputHints, ) from botframework.connector.auth import AuthenticationConstants, ClaimsIdentity @@ -237,6 +238,10 @@ async def test_handles_bot_and_skills(self): SimpleComponentDialog.eoc_sent.type, ActivityTypes.end_of_conversation, ) + self.assertEqual( + SimpleComponentDialog.eoc_sent.code, + EndOfConversationCodes.completed_successfully, + ) self.assertEqual(SimpleComponentDialog.eoc_sent.value, "SomeName") else: self.assertIsNone(