I absolutely agree with this. Add to this that there are no group conversations possible in the simulator. The group message part of the demo was just a couple of slides and he used the phrase "we are recommending for the moment" which leads me to believe that Apple probably has unfinished business here. I agree that it should somehow allow MSSession to be the carrier of data and make each subsequent message create a stack of unprocessed responses so that when the user clicks on the bubble it sees each response and can process them one by one.
What I'm wondering is, in the same section, they talk about privacy. So each device will get different identifiers for each user. If you are using the cloud, I don't see how you can then aggregate responses correctly. Take this scenario:
I send an iMessage App (IMA) to two of my friends and it asks them to pick what they want for lunch.
Friend A responds with Chicken Sandwich
Friend B responds with Chinese
Now we saw in the demo that this isn't going to work well as chances are you will only end up opening the reponse with Friend B. So Apple's solution is for you to have your friends devices upload their preference to the session URL. So far so good. Now we have our cloud service (which we will have to build) and it can accept and aggregate all responses. The only trouble is it would look like this
Friend A responds with Chicken Sandwich: their phone uploads { "EA0...": "Chicken Sandwich" }
Friend B responds with Chinese: their phone uploads { "D39...": "Chicken Sandwich" }
Assuming that you are using their local device user identifier.
Now when you open these messages on your device, you have no way to tell who is who. Because your device has it's own private identifiers for these users which will not match the ones uploaded. I guess each device could add their name to the payload but that's a hacky way of doing things. Privacy is great but this seems to lay down the gauntlet for developers to work around Apple's privacy and effectivly leak data into the cloud service.
Apple demoed a restaurant menu app that allowed them to all see who was ordering what. I wonder how they went about this given the deliberate obfuscation of user IDs? They must have also been using a cloud service to store the menu selections?