Set up manifest and basic mqtt connection to adafruit io
This commit is contained in:
parent
f3f8012ce3
commit
4f38af0a13
7 changed files with 7381 additions and 1 deletions
36
src/background/api.js
Normal file
36
src/background/api.js
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
import mqtt from "mqtt";
|
||||
|
||||
const mqttHeartbeatTopic = "dennissc/feeds/heartbeat/json";
|
||||
const mqttTiltTopic = "dennissc/feeds/tilt-sensor/json";
|
||||
const mqttEdnpoint = process.env.AIO_ENDPOINT;
|
||||
const mqttOptions = {
|
||||
port: Number(process.env.AIO_PORT),
|
||||
username: process.env.AIO_USERNAME,
|
||||
password: process.env.AIO_KEY,
|
||||
};
|
||||
|
||||
const client = mqtt.connect("mqtt://io.adafruit.com", mqttOptions);
|
||||
|
||||
export function subscribeToAllSensors({ onHeartbeat, onTilt }) {
|
||||
client.on("connect", () => {
|
||||
client.subscribe(mqttHeartbeatTopic);
|
||||
client.subscribe(mqttTiltTopic);
|
||||
});
|
||||
|
||||
client.on("error", (error) => {
|
||||
console.log("MQTT Client Errored");
|
||||
console.log(error);
|
||||
});
|
||||
|
||||
client.on("message", (topic, message) => {
|
||||
if (topic === mqttHeartbeatTopic) {
|
||||
const parsedMessage = JSON.parse(message.toString());
|
||||
onHeartbeat(parsedMessage);
|
||||
}
|
||||
|
||||
if (topic === mqttTiltTopic) {
|
||||
const parsedMessage = JSON.parse(message.toString());
|
||||
onTilt(parsedMessage);
|
||||
}
|
||||
});
|
||||
}
|
||||
11
src/background/index.js
Normal file
11
src/background/index.js
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
import { subscribeToAllSensors } from "./api";
|
||||
import dotenv from "dotenv";
|
||||
|
||||
dotenv.config();
|
||||
|
||||
chrome.runtime.onInstalled.addListener(() => {
|
||||
subscribeToAllSensors({
|
||||
onHeartbeat: (heartbeatData) => console.log(heartbeatData),
|
||||
onTilt: (tiltData) => console.log(tiltData),
|
||||
});
|
||||
});
|
||||
0
src/background/storage.js
Normal file
0
src/background/storage.js
Normal file
1
src/frontend/index.js
Normal file
1
src/frontend/index.js
Normal file
|
|
@ -0,0 +1 @@
|
|||
console.log("Frontend registered");
|
||||
Reference in a new issue