Update mqtt + test msqtt via button

This commit is contained in:
Fransolet Thomas 2022-02-23 16:36:07 +01:00
parent d145689ec3
commit 526fb41971
3 changed files with 36 additions and 7 deletions

View File

@ -16,7 +16,7 @@ class MQTTHelper {
print('Connected !!!!!!!!!!!! ----------------------------------'); print('Connected !!!!!!!!!!!! ----------------------------------');
HomieAppContext homieAppContext = appContext.getContext(); HomieAppContext homieAppContext = appContext.getContext();
homieAppContext.clientMQTT.subscribe("#", MqttQos.atLeastOnce); homieAppContext.clientMQTT.subscribe("test/rpi", MqttQos.atLeastOnce);
print(homieAppContext.clientMQTT); print(homieAppContext.clientMQTT);

View File

@ -1,3 +1,5 @@
import 'dart:convert';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter/rendering.dart'; import 'package:flutter/rendering.dart';
import 'package:flutter/services.dart'; import 'package:flutter/services.dart';
@ -10,6 +12,8 @@ import 'package:myhomie_app/app_context.dart';
import 'package:myhomie_app/client.dart'; import 'package:myhomie_app/client.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import '../../Models/homieContext.dart';
class HomePage extends StatefulWidget { class HomePage extends StatefulWidget {
HomePage({Key key}) : super(key: key); HomePage({Key key}) : super(key: key);
@ -110,6 +114,7 @@ class _HomePageState extends State<HomePage> {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
final appContext = Provider.of<AppContext>(context); final appContext = Provider.of<AppContext>(context);
Size size = MediaQuery.of(context).size;
if (!MQTTHelper.instance.isInstantiated) if (!MQTTHelper.instance.isInstantiated)
{ {
@ -117,6 +122,7 @@ class _HomePageState extends State<HomePage> {
MQTTHelper.instance.connect(appContext); MQTTHelper.instance.connect(appContext);
} }
HomieAppContext homieAppContext = appContext.getContext();
return Scaffold( return Scaffold(
appBar: AppBar( appBar: AppBar(
@ -165,20 +171,44 @@ class _HomePageState extends State<HomePage> {
], ],
), ),
), ),
/*floatingActionButton: FloatingActionButton( floatingActionButton: FloatingActionButton(
onPressed: () => { onPressed: () {
Navigator.push( var message = {
"userId": homieAppContext.userId,
"width": size.width,
"height": size.height,
"action": "button0"
};
const pubTopic = 'rpiZero/test';
final builder = MqttClientPayloadBuilder();
builder.addString(jsonEncode(message));
homieAppContext.clientMQTT.publishMessage(pubTopic, MqttQos.atLeastOnce, builder.payload);
var message2 = {
"state": "toggle"
};
const pubTopic2 = 'zigbee2mqtt/GU10Bureau/set';
final builder2 = MqttClientPayloadBuilder();
builder2.addString(jsonEncode(message2));
homieAppContext.clientMQTT.publishMessage(pubTopic2, MqttQos.atLeastOnce, builder2.payload);
/*Navigator.push(
context, context,
MaterialPageRoute( MaterialPageRoute(
builder: (context) { builder: (context) {
return DebugPage(); return DebugPage();
}, },
) )
) )*/
}, },
tooltip: 'Increment', tooltip: 'Increment',
child: Icon(Icons.add), child: Icon(Icons.add),
),*/ ),
); );
} }
} }

View File

@ -61,7 +61,6 @@ class _BodyState extends State<Body> {
homieAppContext.clientMQTT = new MqttServerClient(homieAppContext.host.replaceAll('http://', ''),'tablet_app_'+'TODODODO'); homieAppContext.clientMQTT = new MqttServerClient(homieAppContext.host.replaceAll('http://', ''),'tablet_app_'+'TODODODO');
// homieAppContext.clientAPI = client; // TODO // homieAppContext.clientAPI = client; // TODO
homieAppContext.userId = "TODO"; // TODO homieAppContext.userId = "TODO"; // TODO
setState(() { setState(() {
appContext.setContext(homieAppContext); appContext.setContext(homieAppContext);
}); });