Chat com SignalR

Há poucos meses, em um evento para desenvolvedores, tive a oportunidade de conhecer um pouco sobre a biblioteca SignalR. A apresentação foi bem sucinta, se não me falha a memória, não durou mais que meia hora, mesmo assim deu para ter uma ideia.

O que é SignalR?

ASP.NET SignalR is a library for ASP.NET developers that simplifies the process of adding real-time web functionality to applications. Real-time web functionality is the ability to have server code push content to connected clients instantly as it becomes available, rather than having the server wait for a client to request new data.

Resumidamente, é um biblioteca que facilita a implementação de aplicações real-time. Podemos desenvolver jogos, sistema de notificações, notícias, chat ou qualquer outra aplicação que atualizações em tempo real seja necessário. Um exemplo real que podemos ver diariamente é o chat e as notícias do Facebook.

Para colocar em prática algumas coisas que estudei e esse feriado de final de ano, resolvi fazer o exemplo mais conhecido quando falamos sobre SignalR: um chat. Um chat que você pode mandar mensagem para todos ou para usuário específicos no particular. Não me prendi a nenhum tipo de validação ou coisas do tipo, é apenas um exemplo bem simples. A ideia não é ensinar essa parte do desenvolvimento, mas caso queira estudar sobre o assunto, uma boa referência é o guia no site asp.net.

Chat de exemplo com SignalR

O projeto completo está disponível e pode ser baixado no meu GitHub.