Spaces:
Build error
Build error
| # Copyright (c) Microsoft Corporation. All rights reserved. | |
| # Licensed under the MIT License. | |
| from botbuilder.dialogs import ( | |
| ComponentDialog, | |
| DialogTurnResult, | |
| OAuthPrompt, | |
| OAuthPromptSettings, | |
| WaterfallDialog, | |
| WaterfallStepContext | |
| ) | |
| from botbuilder.schema import TokenResponse | |
| from botbuilder.core import MessageFactory | |
| from botframework.connector.auth import MicrosoftAppCredentials | |
| from config import DefaultConfig | |
| class MainDialog(ComponentDialog): | |
| def __init__(self, config: DefaultConfig): | |
| super(MainDialog, self).__init__(MainDialog.__name__) | |
| self.connection_name = config.CONNECTION_NAME | |
| self.add_dialog( | |
| WaterfallDialog( | |
| WaterfallDialog.__name__, | |
| [self.sign_in_step, self.show_token_response] | |
| ) | |
| ) | |
| self.add_dialog( | |
| OAuthPrompt( | |
| OAuthPrompt.__name__, | |
| OAuthPromptSettings( | |
| connection_name=self.connection_name, | |
| text="Sign In to AAD", | |
| title="Sign In", | |
| oauth_app_credentials=MicrosoftAppCredentials( | |
| app_id=config.APP_ID, | |
| password=config.APP_PASSWORD | |
| ) | |
| ) | |
| ) | |
| ) | |
| async def sign_in_step(self, context: WaterfallStepContext) -> DialogTurnResult: | |
| return await context.begin_dialog(OAuthPrompt.__name__) | |
| async def show_token_response(self, context: WaterfallStepContext) -> DialogTurnResult: | |
| result: TokenResponse = context.result | |
| if not result: | |
| await context.context.send_activity(MessageFactory.text("Skill: No token response from OAuthPrompt")) | |
| else: | |
| await context.context.send_activity(MessageFactory.text(f"Skill: Your token is {result.token}")) | |
| return await context.end_dialog() | |