Skip to content

thadeurc/Erlang-Chat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MAC5765 - T—picos em Sistemas de Computa�‹o - Segundo Semestre de 2009
	Programa�‹o Funcional Contempor‰nea

EP1 - Exerc’cio-Programa 1: Melhorias no IRC Lite do Armstrong
	
Alunos: Sergio Lopes e Thadeu de Russo e Carmo

Instru�›es
----------
Para compilar os arquivos fontes erlang, basta chamar no diret—rio ep1-sergio-thadeu o comando make. Uma vez que este comando tenha sido executado,
os arquivos *.beam ser‹o criados. AlŽm disso, o arquivo lib_chan.conf ser‡ copiado para ${HOME}/.erlang.config.

Para iniciar a execu�‹o do servidor de chat, basta executar o comando make chat_server.

Para iniciar a execu�‹o dos clientes do chat, existem 3 alternativas diferentes:

	1) make chat_client. Esta chamada ir‡ criar 6 clientes divididos em 2 groups (general, e general2);
	2) No diret—rio do ep, executar erl para iniciar a execu�‹o do erlang, e logo em seguida chamar chat_client:start(). Isso ir‡ executar
		um cliente com o nome joe, no grupo general;
	3) No diret—rio do ep, executar erl para iniciar a execu�‹o do erlang, e logo em seguida chamar chat_client:start(Grupo, Usuario), onde
		Grupo Ž o grupo que se deseja entrar, e Usuario, o nome do usu‡rio. E.g.: chat_client:start("esportes", "Pedro").
		
Segue abaixo as intru�›es espec’ficas para cada um dos itens solicitados:

1- "Improve the graphics widged, adding a side panel to list the names of the people in the current group."
	Basta entrar na aplica�‹o que o painel ser‡ mostrado ao lado direito da janela de conversa. O painel Ž atualiado automaticamente para novos usu‡rios
que fa�am login no grupo, ou deixem o mesmo. 

2- "Add code to show the names of all people in a group."
	Na caixa de escrita para envio de mensagem, basta digitar o comando : show_group_members:<grupo>, onde <grupo> Ž o nome do grupo que se deseja ver os
integrantes. E.g.: jow> show_group_members:general. O resultado Ž listado na janela de conversa.  

3- "Add code to list all the groups."
	Na caixa de escrita para envio de mensagem, basta digitar o comando : show_groups E.g.: jow> show_groups. O resultado Ž listado na janela de conversa.

4- "Add person to person conversations".
	Na caixa de escrita para envio de mensagem, basta digitar o comando : to:<pessoa> ! <mensagem>, onde <pessoa> Ž uma <pessoa> no grupo corrente e <mensagem>
Ž a pr—pria mensagem. E.g.: to:joe ! ola, como vai? O resultado Ž mostrado na janela de quem recebeu e enviou a mensagem. 

5- "Add code so that the server machine does not run the group controller but so that this functionality is provided by the first user to join the system in a 
particular group." 
	** Este item nao foi implementado.


Coment‡rios gerais:
-------------------

Os arquivos da biblioteca de comunica�‹o (lib_*), n‹o sofreram nenhum tipo de altera�‹o. Estas se concentram nos arquivos io_widget.erl, chat_server.erl, 
chat_client.erl, chat_group_controller.erl. Basicamente novas mensagens foram adicionadas, e seu tratamento.

About

Repository to store the code of this work for CFP

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages