-
Notifications
You must be signed in to change notification settings - Fork 298
Open
Labels
NEXTbugIndicates an unexpected problem or an unintended behavior.Indicates an unexpected problem or an unintended behavior.
Description
Version
4.15.0
Describe the bug
Starting from 4.15.0 version, when using MicrosoftAppCredentials(CONFIG.APP_ID, CONFIG.APP_PASSWORD).get_access_token() to send request to bot - now fails with <Request POST /api/messages > has failed with exception: KeyError('access_token').
In 4.14.8 and below - it works fine.
To Reproduce
Steps to reproduce the behavior:
- Start bot locally
- Get token and send POST request to the bot
import requests
from botframework.connector.auth import MicrosoftAppCredentials
from config import CONFIG
creds = MicrosoftAppCredentials(CONFIG.APP_ID, CONFIG.APP_PASSWORD)
access_token = creds.get_access_token()
BOT_ENDPOINT = f"http://0.0.0.0:{CONFIG.PORT}/api/messages"
requests.post(BOT_ENDPOINT, json=data, headers={"Authorization": f"Bearer {access_token}"})
- See bot logs
Traceback (most recent call last):
File "/Users/someuser/someproj/venv/lib/python3.10/site-packages/botbuilder/core/bot_adapter.py", line 174, in run_pipeline
return await self._middleware.receive_activity_with_status(
File "/Users/someuser/someproj/venv/lib/python3.10/site-packages/botbuilder/core/middleware_set.py", line 69, in receive_activity_with_status
return await self.receive_activity_internal(context, callback)
File "/Users/someuser/someproj/venv/lib/python3.10/site-packages/botbuilder/core/middleware_set.py", line 79, in receive_activity_internal
return await callback(context)
File "/Users/someuser/someproj/venv/lib/python3.10/site-packages/botbuilder/core/activity_handler.py", line 70, in on_turn
await self.on_message_activity(turn_context)
File "/Users/someuser/someproj/app/bot/teams_conversation_bot.py", line 51, in on_message_activity
await self._text_message_handler.process_message(turn_context, text)
File "/Users/someuser/someproj/app/bot/handlers/text_message_handler.py", line 22, in process_message
await self._ms_teams_service.send_error_message(**locals())
File "/Users/someuser/someproj/app/bot/services/ms_teams_service.py", line 187, in send_error_message
await local_vars["turn_context"].send_activity(
File "/Users/someuser/someproj/venv/lib/python3.10/site-packages/botbuilder/core/turn_context.py", line 173, in send_activity
result = await self.send_activities([activity_or_text])
File "/Users/someuser/someproj/venv/lib/python3.10/site-packages/botbuilder/core/turn_context.py", line 225, in send_activities
return await self._emit(self._on_send_activities, output, logic())
File "/Users/someuser/someproj/venv/lib/python3.10/site-packages/botbuilder/core/turn_context.py", line 303, in _emit
return await logic
File "/Users/someuser/someproj/venv/lib/python3.10/site-packages/botbuilder/core/turn_context.py", line 220, in logic
responses = await self.adapter.send_activities(self, output)
File "/Users/someuser/someproj/venv/lib/python3.10/site-packages/botbuilder/core/bot_framework_adapter.py", line 726, in send_activities
raise error
File "/Users/someuser/someproj/venv/lib/python3.10/site-packages/botbuilder/core/bot_framework_adapter.py", line 711, in send_activities
response = await client.conversations.reply_to_activity(
File "/Users/someuser/someproj/venv/lib/python3.10/site-packages/botframework/connector/aio/operations_async/_conversations_operations_async.py", line 523, in reply_to_activity
response = await self._client.async_send(
File "/Users/someuser/someproj/venv/lib/python3.10/site-packages/msrest/async_client.py", line 115, in async_send
pipeline_response = await self.config.pipeline.run(request, **kwargs)
File "/Users/someuser/someproj/venv/lib/python3.10/site-packages/msrest/pipeline/async_abc.py", line 159, in run
return await first_node.send(pipeline_request, **kwargs) # type: ignore
File "/Users/someuser/someproj/venv/lib/python3.10/site-packages/msrest/pipeline/async_abc.py", line 79, in send
response = await self.next.send(request, **kwargs) # type: ignore
File "/Users/someuser/someproj/venv/lib/python3.10/site-packages/msrest/pipeline/async_requests.py", line 99, in send
self._creds.signed_session(session)
File "/Users/someuser/someproj/venv/lib/python3.10/site-packages/botframework/connector/auth/app_credentials.py", line 92, in signed_session
auth_token = self.get_access_token()
File "/Users/someuser/someproj/venv/lib/python3.10/site-packages/botframework/connector/auth/microsoft_app_credentials.py", line 54, in get_access_token
return auth_token["access_token"]
KeyError: 'access_token'
WARNING:root:Request <Request POST /api/messages > has failed with exception: KeyError('access_token')
Expected behavior
The request is received by the bot without any errors, as it was in 4.14.8 and below, without token issue
Andrey-Danilenko and nevenamaksic1
Metadata
Metadata
Assignees
Labels
NEXTbugIndicates an unexpected problem or an unintended behavior.Indicates an unexpected problem or an unintended behavior.