/// <inheritdoc />
        public async Task JoinChatRoomAsync(string channel, string userName, Action <string> subHandler)
        {
            await _cacheStore.SubscribeAsync(channel, subHandler);

            var history = await _cacheStore.GetAllAsync($"{PrefixKey}*");

            subHandler(string.Join("\n", history));
            await _cacheStore.PublishAsync(channel, $"'{userName}' joined the chat room.").ConfigureAwait(false);
        }