private void ChannelsProviderOnChannelsUpdated(object sender, EventArgs args)
{
var channels = context.ChannelsProvider.GetChannels();
var channelIds = new HashSet<int> (channels.Select (c => c.ChannelId));
foreach (UserInfo user in context.Users.Where (u => !channelIds.Contains (u.CurrentChannelId)))
context.Users.Move (user, context.ChannelsProvider.DefaultChannel);
foreach (IConnection connection in context.Connections)
connection.SendAsync (new ChannelListMessage (channels, context.ChannelsProvider.DefaultChannel));
}