Xbox LIVE encrypts all network traffic. This makes it hard for people to cheat by intercepting and modifying packets. However, communication data is required to be sent via an unencrypted channel.
Because of this, each LIVE packet contains two sections. The first part contains encrypted gameplay data, while the second contains unencrypted voice or text chat information.
In the 2.0 XNA Framework, all data sent by your game went in the encrypted part of the packet, while voice was automatically sent unencrypted. Text chat was not permitted, as there was no unencrypted channel available for it.
In 3.0, we are enabling text chat by adding a new SendDataOptions.Chat flag. Here's how this works:
What you should do: