Files
HA-NerdFlows-Functions/subflows/user-conversion.js

54 lines
1.2 KiB
JavaScript

// Get the user ID list from global context
const users = global.get("userIDList","diskCon")
// Initialize variables
let userTrigger = {}
let userFirstName = {}
let userLastName = {}
let hassUserID = {}
let statusTxt = {}
// Check if the user ID is in the payload or data
if (msg.payload && msg.payload.context && msg.payload.context.user_id) {
userTrigger = msg.payload.context.user_id
} else if (msg.data && msg.data.context && msg.data.context.user_id) {
userTrigger = msg.data.context.user_id
} else {
userTrigger = "none"
}
// Set the status message based on the user ID
let successTxt = `User: ${users[userTrigger].firstName}`
let errorTxt = "User not found"
if (userTrigger === "none") {
statusTxt = errorTxt
} else {
statusTxt = successTxt
}
// Set the user's information in the message
msg.user = users[userTrigger]
// Create the status message
let statusMsg = {
"status": {
"fill": "green",
"shape": "dot",
"text": `${statusTxt} at ${new Date().toLocaleString()}`
}
}
// Send the message and status message to the output nodes
if (userTrigger === "none") {
node.error("User not found")
} else {
node.send([msg,statusMsg])
}