made signalR message generic