def main(): port = 3500 print("creating socket feed") s = socket.socket(socket.AF_INET,socket.SOCK_STREAM) print("socket created feed") print("binding socket feed") s.bind(('',port)) print("socket binded feed") s.listen(4) print("server started listening feed") while True: try: c,add = s.accept() print("client connected") print("receiving user id") user_id = c.recv(4096).decode('utf-8') print("id received") print("processing request") image_names = get_image_names(user_id) images_time = get_image_time(image_names) images = [convert_to_bytes.convert_image(PilImage.open(image)) for image in image_names] details = list(get_user_details(user_id,image_names)) thumbnails = get_feed_thumbnails(details[2]) thumbnails = [convert_to_bytes.convert_image(PilImage.open(thumbnail)) for thumbnail in thumbnails] details.insert(0,thumbnails) details.insert(0,image_names) details.append(images_time) details.append(images) print("done processing") print("sending details") with open(f'feed_user{add}.pickle','wb') as f: pickle.dump(details,f) with open(f"feed_user{add}.pickle",'rb') as f: data = f.read(4096) while data: c.send(data) data = f.read(4096) c.send("no more data".encode()) os.remove(f'feed_user{add}.pickle') print("sent") except Exception as e: print('server_feed raised exception :',end = ' ') print(e) print('traceback for above feed error') traceback.print_exc() break c.close() s.close()
def get_propic_and_thumbnail(person_id): conn_scout = sqlite3.connect('copro.db') cursor_scout = conn_scout.cursor() with conn_scout: cursor_scout.execute("""SELECT propic,feed_thumbnail FROM accounts WHERE id = (:person_id)""",{ "person_id":person_id }) propic,thumbnail = cursor_scout.fetchone() propic,thumbnail = PilImage.open(propic),PilImage.open(thumbnail) return convert_to_bytes.convert_image([propic,thumbnail])
def get_images(images_name,user_id): os.chdir(f"account_user{user_id}") images = [convert_to_bytes.convert_image(PilImage.open(image_name)) for image_name in images_name] os.chdir("..") return images
def main(): port = 2500 print("creating scoket") with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s: print("socket login created") print("binding socket login") s.bind(('', port)) print("socket login binded") s.listen(4) print("server started listening") while True: try: c, add = s.accept() print("client accepted") print("receiving login details") login_details = pickle.loads(c.recv(4096)) print("received") return_status = login(login_details[0], login_details[1]) print("sending return status") if return_status == 0 or return_status == 1: c.sendall(pickle.dumps(return_status)) else: user_id = return_status["id"] propic = PilImage.open( f"account_user{user_id}/profile_pic_user{user_id}/propic.jpg" ) thumbnail = PilImage.open( f"account_user{user_id}/thumbnail_user{user_id}/thumbnail.jpg" ) propic_bytes = convert_to_bytes.convert_image(propic) thumbnail_bytes = convert_to_bytes.convert_image(thumbnail) return_status.update({"propic": propic_bytes}) return_status.update({"thumbnail": thumbnail_bytes}) with open("data_login.pickle", 'wb') as f: pickle.dump(return_status, f) with open("data_login.pickle", 'rb') as f: data = f.read(4096000) while data: c.sendall(data) data = f.read(4096000) os.remove('data_login.pickle') print("sent") except Exception as e: print('server_login raised exception :', end=' ') print(e) print('traceback for above login error') traceback.print_exc() break c.close()
def main(): port = 5000 print('creating socket') s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) print('socket created') print('binding socket') s.bind(('', port)) print('socket binded') s.listen(4) print("listening") while True: try: c, add = s.accept() print("client connected") print("receiving flag") flag = c.recv(4096) if flag == 'search'.encode(): c.sendall("flag received by client".encode()) print('flag recieved') print('receiving details') details = pickle.loads(c.recv(4096)) print('details received') print("processing request") detail, user_id = details search_result, friend_list, sent = search(detail, user_id) thumbnails = [ PilImage.open(result[3]) for result in search_result ] thumbnails = convert_to_bytes.convert_image(thumbnails) search_result = [list(result) for result in search_result] for thumbnail, result in zip(thumbnails, search_result): result[3] = thumbnail info = [search_result, friend_list, sent] print("done") print("sending information") with open(f'result_search{add}.pickle', 'wb') as f: pickle.dump(info, f) with open(f'result_search{add}.pickle', 'rb') as f: data = f.read(4096) while data: c.sendall(data) data = f.read(4096) c.sendall(b'no more data') os.remove(f'result_search{add}.pickle') print("sent") elif flag == 'send req'.encode(): c.sendall("flag received by client".encode()) print('flag recieved') print('receiving details') sender_id, receiver_id = pickle.loads(c.recv(4096)) c.send('received by server'.encode()) print('received') send_req(sender_id, receiver_id) print('req sent') except Exception as e: print('server_search raised exception :', end=' ') print(e) print('traceback for above search error') traceback.print_exc() break c.close() s.close()
def main(): port = 5500 print('creating socket friend') s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) print('socket friend created') print("binding socket friend") s.bind(('', port)) print('socket friend binded') s.listen(4) print('socket started listening') while True: try: c, add = s.accept() print('connected to client') print("receiving flag") flag = c.recv(4096).decode('utf-8') if flag == "fetch": c.send(b'flag received by server') print('received') print('receiving user id') user_id = c.recv(4096).decode('utf-8') c.send('id received by server'.encode()) print('received') print('processing request') req_list = fetch_req(user_id) thumbnails = [ PilImage.open(requests.split(' ')[3]) for requests in req_list if requests != '' ] thumbnails = convert_to_bytes.convert_image(thumbnails) print("processed") print("sending requests") requests_info = [req_list, thumbnails] with open(f'requests_friend{add}.pickle', 'wb') as f: pickle.dump(requests_info, f) with open(f'requests_friend{add}.pickle', 'rb') as f: data = f.read(4096) while data: c.sendall(data) data = f.read(4096) c.sendall(b'no more data') os.remove(f'requests_friend{add}.pickle') print("sent") elif flag == 'reject': c.send(b'flag received by server') print('received') print('receiving details') user_id, new_req_list, requester_id = pickle.loads( c.recv(4096)) reject(user_id, new_req_list, requester_id) elif flag == 'accept': c.send(b'flag received by server') print('received') print('receiving details') requester_id, new_req_list, user_id = pickle.loads( c.recv(4096)) accept(requester_id, new_req_list, user_id) except Exception as e: print('server_friend raised exception :', end=' ') print(e) print('traceback for above server_friend error') traceback.print_exc() break c.close() s.close()
def main(): port = 3000 print("creating socket") s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) print("socket created") print("binding socket") s.bind(('', port)) print("binding complete") s.listen(4) print("started listening") while True: try: c, add = s.accept() print("receiving flag") flag = c.recv(4096).decode('utf-8') print("received") if flag == 'settings': c.sendall('received by server'.encode()) print("receiving details") details = pickle.loads(c.recv(409600)) print("received") print("making changs") return_value = account_settings(details[0], details[1], details[2]) print("done") print("sending return values") c.sendall(pickle.dumps(return_value)) elif flag == 'propic': print('receiving propic') with open(f'image_propic.pickle_user{add}', 'wb') as f: data = c.recv(4096) while True: if data.endswith(b'no more data'): data = data.split(b'no more data')[0] f.write(data) break f.write(data) data = c.recv(4096) with open(f'image_propic.pickle_user{add}', 'rb') as f: propic, user_id = pickle.load(f) os.remove(f'image_propic.pickle_user{add}') print('propic received') print("processing image") propic.thumbnail((150, 150)) propic_bytes = convert_to_bytes.convert_image(propic) save_profile_pic(user_id, propic) print("done") print("sending new propic to user") with open(f'image_propic_user{add}.pickle', 'wb') as f: pickle.dump(propic_bytes, f) with open(f'image_propic_user{add}.pickle', 'rb') as f: data = f.read(4096) while data: c.sendall(data) data = f.read(4096) c.sendall(b'no more data') os.remove(f'image_propic_user{add}.pickle') print('sent') except Exception as e: print('server_change_settings raised exception :', end=' ') print(e) print('traceback for above change_settings error') traceback.print_exc() break c.close() s.close()