Skip to content

Commit

Permalink
JOIN MESSAGE TREAT? treat? I don't speak english
Browse files Browse the repository at this point in the history
  • Loading branch information
arthunix committed Jun 6, 2023
1 parent 7879107 commit 88faa66
Showing 1 changed file with 18 additions and 5 deletions.
23 changes: 18 additions & 5 deletions servidor
Original file line number Diff line number Diff line change
Expand Up @@ -63,26 +63,39 @@ def dados_recebidos(conexao, dados):

if destination.startswith(b'#') and dUpper in servidor.chan_db.keys():
for i in servidor.chan_db[dUpper]:
if servidor.chan_db[dUpper] != conexao:
servidor.chan_db[dUpper].enviar(b':' + remetenteNick + b' PRIVMSG ' + destination + b' :' + content + b'\r\n')
if servidor.chan_db[dUpper][i] != conexao:
servidor.chan_db[dUpper][i].enviar(b':' + remetenteNick + b' PRIVMSG ' + destination + b' :' + content + b'\r\n')
else:
destinationConnection = None
for i in servidor.conexoes:
for i in servidor.conn_db:
if list(servidor.nick_db.keys())[list(servidor.nick_db.values()).index(i)].upper() == dUpper:
destinationConnection = i
if destinationConnection != None:
destinationConnectionNick = list(servidor.nick_db.keys())[list(servidor.nick_db.values()).index(destinationConnection)]
destinationConnection.enviar(b':' + remetenteNick + b' PRIVMSG ' + destinationConnectionNick + b' :' + content + b'\r\n')

if command.upper() == b'JOIN':
if payload.startswith(b'#') and validar_nome(payload[1:]):
pUpper = payload.upper()

connectionNick = list(servidor.nick_db.keys())[list(servidor.nick_db.values()).index(conexao)]

if pUpper not in (upp.upper() for upp in list(servidor.chan_db.keys())):
servidor.chan_db[pUpper] = dict()
servidor.chan_db[pUpper][connectionNick] = conexao

for i in servidor.chan_db[pUpper]:
servidor.chan_db[pUpper][i].enviar(b':' + connectionNick + b' JOIN :' + payload + b'\r\n')

def conexao_aceita(conexao):
print(conexao, 'nova conexão')
servidor.conexoes.append(conexao)
servidor.conn_db.append(conexao)
conexao.dados_residuais = b''
conexao.registrar_recebedor(dados_recebidos)

servidor = Servidor(6667)
servidor.nick_db = dict()
servidor.chan_db = dict()
servidor.conexoes = list()
servidor.conn_db = list()
servidor.registrar_monitor_de_conexoes_aceitas(conexao_aceita)
asyncio.get_event_loop().run_forever()

0 comments on commit 88faa66

Please sign in to comment.