def main(): try: #declaramos um objeto do tipo enlace com o nome "com". Essa é a camada inferior à aplicação. Observe que um parametro #para declarar esse objeto é o nome da porta. server = Comunicador(serialName) print("-------------------------") print('Porta Com habilitada') print("-------------------------") hs = False while hs == False: server.getHead() server.getEop() if server.message_type == 1: print(" handshake respondido") server.rogerHS() hs = True doingIt = True while doingIt == True: server.getHead() server.getPayload() server.getEop() server.sendAcknowlage() if server.conferData(): print("Pacote recebido com sucesso ", server.package_index) server.joinPackages(server.payload) if server.package_index == (server.nPackage - 1): doingIt = False imageW = "./recebidaTeste.png" print("-------------------------") print("Salvando dados no arquivo :") print(" - {}".format(imageW)) f = open(imageW, 'wb') f.write(server.complete_payload) f.close() print("-------------------------") print("imagem recebida e salva") print("-------------------------") print("Comunicação Finalizada") server.end() except: print("ops! :-\\") server.end()
def main(): try: #declaramos um objeto do tipo enlace com o nome "com". Essa é a camada inferior à aplicação. Observe que um parametro #para declarar esse objeto é o nome da porta. client = Comunicador(serialName) #imagem = input("Coloque o endereço da imagem que deseja enviar: ") imagem = "./imageB.png" # print("-------------------------") # print("TESTANDO ERRO NO TAMANHO DO PAYLOAD") # print("-------------------------") print("-------------------------") print("Checking server avalability") print("-------------------------") onlineCheck = True while onlineCheck == True: client.sendHS() print("Esperando resposta do servidor") print("-------------------------") time.sleep(2) if client.com.rx.getIsEmpty() == True: x = input("Sem resposta. Enviar Novamente (Y/N)") if x == "N": onlineCheck = False else: client.getHead() client.getEop() if client.hs_response == 1: onlineCheck = True # Log print("Comunicação inicializada") print("-------------------------") print("-------------------------") print ("Carregando imagem para transmissão :") print("-------------------------") data = Arquivo(imagem) dividedPackages = data.setPacotes() print("-------------------------") print ("Imagem Pronta para ser enviada:") print("-------------------------") indexPackageToBeSent = 0 while(indexPackageToBeSent < data.total_payloads ): client.sendPackage(dividedPackages[indexPackageToBeSent]) client.getHead() client.getEop() if client.acknolage_confirmartion == 1: indexPackageToBeSent = client.error_package print("-------------------------") print("Erro no", indexPackageToBeSent) print("Enviando novamente") print("-------------------------") else: print("Pacote {} de {} enviado".format(indexPackageToBeSent, client.nPackage)) indexPackageToBeSent += 1 onlineCheck = False # Encerra comunicação print("-------------------------") print("Comunicação Finalizada") print("-------------------------") client.end() except: print("ops! :-\\") client.com.disable()