Thanks for detailed explanation.
The Room API is based on low-level Web SDK method sendData
var payload = {"name1","value1", "name1":"value1"};
sendData(payload);
So you can send any arbitrary data object.
As you mentioned, the ROOM API does not have such a method.
So you have to care and wrap...