Tiered Pricing
Occasionally we want to differentiate things like prices for different tiers of clients (or other forms of categorisation) but we do not want the client to have to deal with the complexity of how we differentiate in each Channel
and give the server the ability to change this dynamically without having to worry about it in the client.
Often this is approached using something similar to topic hierarchies or different channels for different tier levels. However, this is pushing too much info to the client. A better approach is for the clients to all share the same topic names, but for the server to be able to add users to different grouped topics based on some characteristic.
The library supports this natively using GroupTopics
which enables us to partition Users on the server in a manner that is transparent to the client and requires little effort on the part of the developer.
In the example above, each user believes they are getting prices on the USD/EUR topic but in reality they are receiving prices from the tier specific topic they have been assigned to. On the server these GroupTopics
are completely isolated from each other and share no data.