wrote message and connect function for the mqtt connection to pi

This commit is contained in:
ishak jmilou.ishak
2024-10-16 16:26:51 +02:00
parent ebfacd52b4
commit 55c24eabf7
4 changed files with 32 additions and 32 deletions

3
.gitignore vendored
View File

@@ -16,4 +16,5 @@ src/C++/Driver/Makefile
src/C++/Driver/vgcore*
src/C++/Driver/cmake_install.cmake
src/C++/Driver/Makefile
src/Python/flask/web/_pycache_
src/Python/flask/web/_pycache_
venv

View File

@@ -1,4 +1,5 @@
from flask import Flask, render_template
from flask import Flask, request, render_template
import paho.mqtt.publish as publish
app = Flask(__name__)
@@ -6,12 +7,11 @@ app = Flask(__name__)
def index():
return render_template('index.html')
@app.route('/control', methods=['POST'])
def control():
return("hello")
@app.route('/move', methods=['POST'])
def move():
direction = request.form['direction']
publish.single("home/commands", direction, hostname="ishak.ishakpi.ddns.net")
return "Message sent"
if __name__ == '__main__':
app.run(debug=True)
app.run(debug=True)

View File

@@ -4,13 +4,15 @@
<img src="kobuki.jpg" alt="Kobuki Robot" id="robot-image" />
</div>
<div class="button-section">
<button class="btn"></button>
<button class="btn"></button>
<button class="btn"></button>
<button class="btn"></button>
<form action="/move" method="post">
<button class="btn" name="direction" value="left"></button>
<button class="btn" name="direction" value="up"></button>
<button class="btn" name="direction" value="right"></button>
<button class="btn" name="direction" value="down"></button>
</form>
</div>
</div>
<div class="container">
<h1>Sensor Data</h1>
<h1>Sensor Data</h1>
</div>
{%endblock%}

View File

@@ -1,20 +1,17 @@
import socket
import paho.mqtt.client as mqtt
HOST = "127.0.0.1" # Listen on all available interfaces
PORT = 4024 # Port to listen on (non-privileged ports are > 1023)
def on_connect(client, userdata, flags, rc):
print("Connected with result code " + str(rc))
client.subscribe("move")
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
s.bind((HOST, PORT))
s.listen()
print(f"Server listening on {HOST}:{PORT}")
conn, addr = s.accept()
with conn:
print(f"Connected by {addr}")
conn.sendall(b"hallo\n")
while True:
data = conn.recv(2048)
if data:
print("Received:", repr(data))
conn.sendall(b"message received\n")
if not data:
break
def on_message(client, userdata, msg):
command = msg.payload.decode()
print(f"Received command: {command}")
# Voeg hier je code toe om het commando uit te voeren
client = mqtt.Client()
client.on_connect = on_connect
client.on_message = on_message
client.connect("ishak.ishakpi.ddns.net", 1883, 60)
client.loop_forever()