Using extension method GZipSerialize(this ConversationReference conversationReference) from Microsoft.Bot.Builder.ConnectorEx fails with a SerializationException, as ConversationReference is not marked Serializable (unlike ResumptionCookie.)
FYI the ConversationReference in question was sourced from an existing (production) ResumptionCookie, on which .ToConversationReference() was called.
The resulting ConversationReference (with phone numbers changed) is included below via JsonConvert.SerializeObject(). I'm currently using JSON serialization instead of GZipSerialize() as a workaround.
{"activityId":null,
"user":{"id":"+353851111111","name":"+353851111111"},
"bot":{"id":"+353862222222","name":"+353851111111"},
"conversation":{"isGroup":false,"id":"+3538511111111","name":null},
"channelId":"sms",
"serviceUrl":"https://sms.botframework.com"}
Same here, should be included in automated testing to make sure this doesn't happen.
@oflahero Are you still experiencing the issue after upgrading to BotBuilder 3.8.1?
@nwhitmont Yes.
I am also getting this issue with 3.8.1 after updating my code to use ConversationReference instead of ResumptionCookie
This issue is still present in 3.8.2.
And still in 3.9.0. I really thought I was handing a dev an easy win for their burndown chart - guess it must be more complex than I thought!
Hi,
Is there a recommended approach for this? Previously I used a serialized ResumptionCookie in the query string to authenticate a user and then continue the conversation.
I've just updated by to use the latest BotBuilder, and have replaced all the ResumptionCookie references to use ConversationReference, but when using the GZipSerialize extension I get the error that ConversationReference is not serializable.
Is there a plan to make this ConversationReference serializable or is there a preferred approach going forward and the GZipSerialize extension method will be removed?
If this is to be fixed, is there an interim solution / estimate to when the fix will be released?
Cheers
Andy
Can you please let us know if the issue still persists?
Can you please let us know if the issue still persists?
It still exists in 3.16
And neither is ChannelAccount Serializable :-(
And a couple of other classes in that assembly.
Thank you for opening an issue against the Bot Framework SDK v3. As part of the Bot Framework v4 release, we鈥檝e moved all v3 work to a new repo located at https://github.com/microsoft/botbuilder-v3. We will continue to support and offer maintenance updates to v3 via this new repo.
From now on, https://github.com/microsoft/botbuilder repo will be used as hub, with pointers to all the different SDK languages, tools and samples repos.
As part of this restructuring, we are closing all tickets in this repo.
For defects or feature requests, please create a new issue in the new Bot Framework v3 repo found here:
https://github.com/microsoft/botbuilder-v3/issues
For Azure Bot Service Channel specific defects or feature requests (e.g. Facebook, Twilio, Teams, Slack, etc.), please create a new issue in the new Bot Framework Channel repo found here:
https://github.com/microsoft/botbuilder-channels/issues
For product behavior, how-to, or general understanding questions, please use Stackoverflow.
https://stackoverflow.com/search?q=bot+framework
Thank you.
The Bot Framework Team
Most helpful comment
FYI the ConversationReference in question was sourced from an existing (production) ResumptionCookie, on which .ToConversationReference() was called.
The resulting ConversationReference (with phone numbers changed) is included below via JsonConvert.SerializeObject(). I'm currently using JSON serialization instead of GZipSerialize() as a workaround.