diff --git a/bitmap_service/app.py b/bitmap_service/app.py index 75f7b2a..0730b62 100644 --- a/bitmap_service/app.py +++ b/bitmap_service/app.py @@ -30,11 +30,14 @@ def bitmap(): img = Image.open(image_stream) grayscale_img = img.convert('L') bitmap_data = list(grayscale_img.getdata()) - - payload = ''.join([chr(i) for i in bitmap_data]) + + payload = 'P5\n296 152\n255\n' + payload += ''.join([chr(i) for i in bitmap_data]) print(payload) - # req = requests.post('http://10.141.142.75/api/tag', data=payload) - return jsonify({'payload': payload}) + req = requests.put('http://localhost:8080/api/tag', data=payload, headers={ + 'Content-Type': 'image/x-portable-greymap' + }) + return jsonify({'payload': payload, 'code': req.status_code}) # return jsonify({'code': req.status_code}) except Exception as e: diff --git a/trash/app.py b/trash/app.py deleted file mode 100644 index 5391410..0000000 --- a/trash/app.py +++ /dev/null @@ -1,55 +0,0 @@ -from flask import Flask, request, jsonify -from flask_cors import CORS -from PIL import Image -import io -from tcp import send_request - -app = Flask(__name__) -CORS(app) - -@app.route('/') -def root(): - return 'ok' - -@app.route('/api/bitmap', methods=['POST']) -def bitmap(): - - if 'file' not in request.files: - return jsonify({"error": "no file"}), 400 - - file = request.files['file'] - - if file.filename == '': - return jsonify({"error": "no file"}), 400 - - if not file.filename.lower().endswith('.png'): - return jsonify({"error": "invalid file format"}), 400 - - try: - image_stream = io.BytesIO(file.read()) - img = Image.open(image_stream) - grayscale_img = img.convert('L') - bitmap_data = list(grayscale_img.getdata()) - - payload = ''.join([chr(i) for i in bitmap_data]) - print(payload) - - chunk_size = 2048 - for i in range(0, len(payload), chunk_size): - data = { - "command": "update_image", - "index": i, - "data": bytes(payload[i:i+chunk_size]) - } - send_request(data) - send_request({"command":"push_image"}) - - # req = requests.post('http://10.141.142.75/api/tag', data=payload) - return jsonify({'payload': payload}) - # return jsonify({'code': req.status_code}) - - except Exception as e: - return jsonify({"error": e}), 500 - -if __name__ == '__main__': - app.run('0.0.0.0', port=80) diff --git a/trash/dockerfile b/trash/dockerfile deleted file mode 100644 index 41af328..0000000 --- a/trash/dockerfile +++ /dev/null @@ -1,9 +0,0 @@ -FROM python:3.9 - -WORKDIR /app - -COPY . . - -RUN pip3 install pillow flask flask-cors requests - -CMD ["python3", "app.py"] \ No newline at end of file diff --git a/trash/tcp.py b/trash/tcp.py deleted file mode 100644 index 120bc43..0000000 --- a/trash/tcp.py +++ /dev/null @@ -1,28 +0,0 @@ -from typing import Dict, Any -import socket - -import msgpack - -SERVER_ADDRESS = ('172.16.0.249', 8888) - -def send_request(data:Dict[str, Any]): - client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - client_socket.connect(SERVER_ADDRESS) - - try: - message:bytes = msgpack.packb(data) - - client_socket.sendall(message) - - rx = client_socket.recv(1024) - if data: - print(f"Received message: {rx.decode('utf-8').strip()}") - else: - print("Connection closed") - return - except ConnectionResetError: - print("Connection reset") - finally: - client_socket.close() - print("Connection closed") -