Describe the bug
An adaptive card with a button Action.Submit results in an invalid payload which causes the Python botframework to crash when attempting to de-serialize.
To Reproduce
Steps to reproduce the behavior:
Create an adapative card with an Action.Submit with the following payload:
Observe that the payload received by the bot includes a key value pair: "tabContext": ""
The python BotFramework SDK - botbuildercore v4.14.2 will then fail attempting to tread the empty string value from tabContext as a dictionary.
Stacktrace:
File "/usr/local/lib/python3.9/site-packages/msrest/serialization.py", line 1418, in _deserialize found_value = key_extractor(attr, attr_desc, data) File "/usr/local/lib/python3.9/site-packages/msrest/serialization.py", line 1162, in rest_key_extractor return working_data.get(key) AttributeError: 'str' object has no attribute 'get'
Expected behavior
Teams on iOS should not send the empty tabContext element to have the same behaviour as desktop and Android clients.
Smartphone:
Device: iPhone 12
OS: iOS 15.7
Browser n/a
Version Teams App used - version 4.16.0
Additional context
Full payload that causes de-serialization exception:
Describe the bug An adaptive card with a button Action.Submit results in an invalid payload which causes the Python botframework to crash when attempting to de-serialize.
To Reproduce Steps to reproduce the behavior:
"tabContext": ""
File "/usr/local/lib/python3.9/site-packages/msrest/serialization.py", line 1418, in _deserialize found_value = key_extractor(attr, attr_desc, data) File "/usr/local/lib/python3.9/site-packages/msrest/serialization.py", line 1162, in rest_key_extractor return working_data.get(key) AttributeError: 'str' object has no attribute 'get'
Expected behavior Teams on iOS should not send the empty tabContext element to have the same behaviour as desktop and Android clients.
Smartphone:
Additional context Full payload that causes de-serialization exception: