add clientId to device connect endpoint
All checks were successful
continuous-integration/drone the build was successful
All checks were successful
continuous-integration/drone the build was successful
This commit is contained in:
parent
0aa587551f
commit
8c49cabc35
@ -5,6 +5,7 @@ import { serialize } from "serializr";
|
|||||||
import ApiError from "@common/ApiError";
|
import ApiError from "@common/ApiError";
|
||||||
import { ErrorCode } from "@common/ErrorCode";
|
import { ErrorCode } from "@common/ErrorCode";
|
||||||
import * as schema from "@common/sprinklersRpc/schema";
|
import * as schema from "@common/sprinklersRpc/schema";
|
||||||
|
import { DeviceToken } from "@common/TokenClaims";
|
||||||
import { generateDeviceToken } from "@server/authentication";
|
import { generateDeviceToken } from "@server/authentication";
|
||||||
import { SprinklersDevice } from "@server/entities";
|
import { SprinklersDevice } from "@server/entities";
|
||||||
import { verifyAuthorization } from "@server/express/verifyAuthorization";
|
import { verifyAuthorization } from "@server/express/verifyAuthorization";
|
||||||
@ -50,6 +51,13 @@ export function devices(state: ServerState) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
router.get("/:deviceId", verifyAuthorization(), async (req, res) => {
|
router.get("/:deviceId", verifyAuthorization(), async (req, res) => {
|
||||||
|
const deviceInfo = await verifyUserDevice(req);
|
||||||
|
res.send({
|
||||||
|
id: deviceInfo.id, deviceId: deviceInfo.deviceId, name: deviceInfo.name
|
||||||
|
})
|
||||||
|
});
|
||||||
|
|
||||||
|
router.get("/:deviceId/data", verifyAuthorization(), async (req, res) => {
|
||||||
await verifyUserDevice(req);
|
await verifyUserDevice(req);
|
||||||
const device = state.mqttClient.acquireDevice(req.params.deviceId);
|
const device = state.mqttClient.acquireDevice(req.params.deviceId);
|
||||||
const j = serialize(schema.sprinklersDevice, device);
|
const j = serialize(schema.sprinklersDevice, device);
|
||||||
@ -98,8 +106,13 @@ export function devices(state: ServerState) {
|
|||||||
type: "device"
|
type: "device"
|
||||||
}),
|
}),
|
||||||
async (req, res) => {
|
async (req, res) => {
|
||||||
|
const token: DeviceToken = req.token! as any;
|
||||||
|
const deviceId = token.aud;
|
||||||
|
const clientId = `device-${deviceId}`;
|
||||||
res.send({
|
res.send({
|
||||||
url: state.mqttUrl
|
mqttUrl: state.mqttUrl,
|
||||||
|
deviceId,
|
||||||
|
clientId,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user