{
"common": {
"label": {
"payload": "Payload",
"topic": "Topic",
"name": "Name",
"username": "Username",
"password": "Password"
},
"status": {
"connected": "connected",
"not-connected": "not connected",
"disconnected": "disconnected",
"connecting": "connecting",
"error": "error",
"ok": "OK"
},
"notification": {
"error": "Error: __message__",
"errors": {
"not-deployed": "node not deployed",
"no-response": "no response from server",
"unexpected": "unexpected error (__status__) __message__"
}
},
"errors": {
"nooverride": "Warning: msg properties can no longer override set node properties. See bit.ly/nr-override-msg-props"
}
},
"inject": {
"inject": "inject",
"repeat": "repeat = __repeat__",
"crontab": "crontab = __crontab__",
"stopped": "stopped",
"failed": "Inject failed: __error__",
"label": {
"repeat": "Repeat"
},
"timestamp": "timestamp",
"none": "none",
"interval": "interval",
"interval-time": "interval between times",
"time": "at a specific time",
"seconds": "seconds",
"minutes": "minutes",
"hours": "hours",
"between": "between",
"previous": "previous value",
"at": "at",
"and": "and",
"every": "every",
"days": [
"Monday",
"Tuesday",
"Wednesday",
"Thursday",
"Friday",
"Saturday",
"Sunday"
],
"on": "on",
"onstart": "Inject once at start?",
"tip": "Note: \"interval between times\" and \"at a specific time\" will use cron.
See info box for details.",
"success": "Successfully injected: __label__",
"errors": {
"failed": "inject failed, see log for details"
}
},
"catch": {
"catch": "catch all",
"catchNodes": "catch (__number__)",
"label": {
"source": "Catch errors from",
"node": "node",
"type": "type",
"selectAll": "select all",
"sortByLabel": "sort by label",
"sortByType": "sort by type"
},
"scope": {
"all": "all nodes",
"selected": "selected nodes"
}
},
"status": {
"status": "status (all)",
"statusNodes": "status (__number__)",
"label": {
"source": "Report status from",
"node": "node",
"type": "type",
"selectAll": "select all",
"sortByLabel": "sort by label",
"sortByType": "sort by type"
},
"scope": {
"all": "all nodes",
"selected": "selected nodes"
}
},
"debug": {
"output": "Output",
"msgprop": "message property",
"msgobj": "complete msg object",
"to": "to",
"debtab": "debug tab",
"tabcon": "debug tab and console",
"notification": {
"activated": "Successfully activated: __label__",
"deactivated": "Successfully deactivated: __label__"
},
"sidebar": {
"label": "debug",
"name": "Debug messages",
"filterAll": "all flows",
"filterCurrent": "current flow"
}
},
"link": {
"linkIn": "link in",
"linkOut": "link out",
"label": {
"event": "Event name"
}
},
"tls": {
"tls": "TLS configuration",
"label": {
"use-local-files": "Use key and certificates from local files",
"upload": "Upload",
"cert": "Certificate",
"key": "Private Key",
"ca": "CA Certificate",
"verify-server-cert":"Verify server certificate"
},
"placeholder": {
"cert":"path to certificate (PEM format)",
"key":"path to private key (PEM format)",
"ca":"path to CA certificate (PEM format)"
},
"error": {
"missing-file": "No certificate/key file provided"
}
},
"exec": {
"label": {
"command": "Command",
"append": "Append",
"timeout": "Timeout",
"timeoutplace": "optional",
"return": "Output"
},
"placeholder": {
"extraparams": "extra input parameters"
},
"opt": {
"exec": "when the command is complete - exec mode",
"spawn": "while the command is running - spawn mode"
},
"oldrc": "Use old style output (compatibility mode)"
},
"function": {
"label": {
"function": "Function",
"outputs": "Outputs"
},
"error": {
"inputListener":"Cannot add listener to 'input' event within Function"
},
"tip": "See the Info tab for help writing functions."
},
"template": {
"label": {
"template": "Template",
"property": "Set property",
"format": "Syntax Highlight",
"syntax": "Format",
"output": "Output as",
"mustache": "Mustache template",
"plain": "Plain text",
"json": "Parsed JSON"
},
"templatevalue": "This is the payload: {{payload}} !"
},
"delay": {
"action": "Action",
"for": "For",
"delaymsg": "Delay message",
"randomdelay": "Random delay",
"limitrate": "Limit rate to",
"fairqueue": "Topic based fair queue",
"timedqueue": "Timed release queue",
"milisecs": "Miliseconds",
"secs": "Seconds",
"sec": "Second",
"mins": "Minutes",
"min": "Minute",
"hours": "Hours",
"hour": "Hour",
"days": "Days",
"day": "Day",
"between": "Between",
"rate": "Rate",
"msgper": "msg(s) per",
"dropmsg": "drop intermediate messages",
"label": {
"delay": "delay",
"limit": "limit",
"random": "random",
"queue": "queue",
"timed": "releases per",
"units" : {
"second": {
"plural" : "Seconds",
"singular": "Second"
},
"minute": {
"plural" : "Minutes",
"singular": "Minute"
},
"hour": {
"plural" : "Hours",
"singular": "Hour"
},
"day": {
"plural" : "Days",
"singular": "Day"
}
}
},
"error": {
"buffer": "buffer exceeded 1000 messages",
"buffer1": "buffer exceeded 10000 messages"
}
},
"trigger": {
"send": "Send",
"then": "then",
"then-send": "then send",
"output": {
"string": "the string",
"number": "the number",
"existing": "the existing msg object",
"original": "the original msg object",
"latest": "the latest msg object",
"nothing": "nothing"
},
"wait-reset": "wait to be reset",
"wait-for": "wait for",
"wait-loop": "resend it every",
"duration": {
"ms": "Milliseconds",
"s": "Seconds",
"m": "Minutes",
"h": "Hours"
},
"extend": " extend delay if new message arrives",
"label": {
"trigger": "trigger",
"trigger-block": "trigger & block",
"trigger-loop": "resend every",
"reset": "Reset the trigger if:",
"resetMessage":"msg.reset is set",
"resetPayload":"msg.payload equals",
"resetprompt": "optional"
}
},
"comment": {
"label": {
"title": "Title",
"body": "Body"
},
"tip": "Tip: The body text can be styled as Github flavoured Markdown"
},
"unknown": {
"label": {
"unknown": "unknown"
},
"tip": "
This node is a type unknown to your installation of Node-RED.
If you deploy with the node in this state, it's configuration will be preserved, but the flow will not start until the missing type is installed.
See the Info side bar for more help
" }, "mqtt": { "label": { "broker": "Server", "qos": "QoS", "clientid": "Client ID", "port": "Port", "keepalive": "Keep alive time (s)", "cleansession": "Use clean session", "use-tls": "Enable secure (SSL/TLS) connection", "tls-config":"TLS Configuration", "verify-server-cert":"Verify server certificate", "compatmode": "Use legacy MQTT 3.1 support" }, "tabs-label": { "connection": "Connection", "security": "Security", "will": "Will Message", "birth": "Birth Message" }, "placeholder": { "clientid": "Leave blank for auto generated", "clientid-nonclean":"Must be set for non-clean sessions", "will-topic": "Leave blank to disable will message", "birth-topic": "Leave blank to disable birth message" }, "state": { "connected": "Connected to broker: __broker__", "disconnected": "Disconnected from broker: __broker__", "connect-failed": "Connection failed to broker: __broker__" }, "retain": "Retain", "true": "true", "false": "false", "tip": "Tip: Leave topic, qos or retain blank if you want to set them via msg properties.", "errors": { "not-defined": "topic not defined", "missing-config": "missing broker configuration", "invalid-topic": "Invalid topic specified", "nonclean-missingclientid": "No client ID set, using clean session" } }, "httpin": { "label": { "method": "Method", "url": "URL", "doc": "Docs", "return": "Return", "upload": "Accept file uploads?", "status": "Status code", "headers": "Headers" }, "setby": "- set by msg.method -", "basicauth": "Use basic authentication", "use-tls": "Enable secure (SSL/TLS) connection", "tls-config":"TLS Configuration", "utf8": "a UTF-8 string", "binary": "a binary buffer", "json": "a parsed JSON object", "tip": { "in": "The url will be relative to ", "res": "The messages sent to this node must originate from an http input node", "req": "Tip: If the JSON parse fails the fetched string is returned as-is." }, "httpreq": "http request", "errors": { "not-created": "Cannot create http-in node when httpNodeRoot set to false", "missing-path": "missing path", "no-response": "No response object", "json-error": "JSON parse error", "no-url": "No url specified", "deprecated-call":"Deprecated call to __method__" }, "status": { "requesting": "requesting" } }, "websocket": { "label": { "type": "Type", "path": "Path", "url": "URL" }, "listenon": "Listen on", "connectto": "Connect to", "payload": "Send/Receive payload", "message": "Send/Receive entire message", "tip": { "path1": "By default,payload
will contain the data to be sent over, or received from a websocket. The listener can be configured to send or receive the entire message object as a JSON formatted string.",
"path2": "This path will be relative to ",
"url1": "URL should use ws:// or wss:// scheme and point to an existing websocket listener.",
"url2": "By default, payload
will contain the data to be sent over, or received from a websocket. The client can be configured to send or receive the entire message object as a JSON formatted string."
},
"errors": {
"connect-error": "An error occured on the ws connection: ",
"send-error": "An error occurred while sending: ",
"missing-conf": "Missing server configuration"
}
},
"watch": {
"label": {
"files": "File(s)",
"recursive": "Watch sub-directories recursively"
},
"placeholder": {
"files": "Comma-separated list of files and/or directories"
},
"tip": "On Windows you must use double back-slashes \\\\ in any directory names."
},
"tcpin": {
"label": {
"type": "Type",
"output": "Output",
"port": "port",
"host": "at host",
"payload": "payload(s)",
"delimited": "delimited by",
"close-connection": "Close connection after each message is sent?",
"decode-base64": "Decode Base64 message?",
"server": "Server",
"return": "Return"
},
"type": {
"listen": "Listen on",
"connect": "Connect to",
"reply": "Reply to TCP"
},
"output": {
"stream": "stream of",
"single": "single",
"buffer": "Buffer",
"string": "String",
"base64": "Base64 String"
},
"return": {
"timeout": "after a fixed timeout of",
"character": "when character received is",
"number": "a fixed number of chars",
"never": "never - keep connection open"
},
"status": {
"connecting": "connecting to __host__:__port__",
"connected": "connected to __host__:__port__",
"listening-port": "listening on port __port__",
"stopped-listening": "stopped listening on port",
"connection-from": "connection from __host__:__port__",
"connection-closed": "connection closed from __host__:__port__",
"connections": "__count__ connection",
"connections_plural": "__count__ connections"
},
"errors": {
"connection-lost": "connection lost to __host__:__port__",
"timeout": "timeout closed socket port __port__",
"cannot-listen": "unable to listen on port __port__, error: __error__",
"error": "error: __error__",
"socket-error": "socket error from __host__:__port__",
"no-host": "Host and/or port not set",
"connect-timeout": "connect timeout",
"connect-fail": "connect failed"
}
},
"udp": {
"label": {
"listen": "Listen for",
"onport": "on Port",
"using": "using",
"output": "Output",
"group": "Group",
"interface": "Local IP",
"interfaceprompt": "(optional) local ip address to bind to",
"send": "Send a",
"toport": "to port",
"address": "Address",
"decode-base64": "Decode Base64 encoded payload?"
},
"placeholder": {
"interface": "(optional) ip address of eth0",
"address": "destination ip"
},
"udpmsgs": "udp messages",
"mcmsgs": "multicast messages",
"udpmsg": "udp message",
"bcmsg": "broadcast message",
"mcmsg": "multicast message",
"output": {
"buffer": "a Buffer",
"string": "a String",
"base64": "a Base64 encoded string"
},
"bind": {
"random": "bind to random local port",
"local": "bind to local port",
"target": "bind to target port"
},
"tip": {
"in": "Tip: Make sure your firewall will allow the data in.",
"out": "Tip: leave address and port blank if you want to set using msg.ip
and msg.port
.",
"port": "Ports already in use: "
},
"status": {
"listener-at": "udp listener at __host__:__port__",
"mc-group": "udp multicast group __group__",
"listener-stopped": "udp listener stopped",
"output-stopped": "udp output stopped",
"mc-ready": "udp multicast ready: __outport__ -> __host__:__port__",
"bc-ready": "udp broadcast ready: __outport__ -> __host__:__port__",
"ready": "udp ready: __outport__ -> __host__:__port__",
"ready-nolocal": "udp ready: __host__:__port__"
},
"errors": {
"access-error": "UDP access error, you may need root access for ports below 1024",
"error": "error: __error__",
"bad-mcaddress": "Bad Multicast Address",
"interface": "Must be ip address of the required interface",
"ip-notset": "udp: ip address not set",
"port-notset": "udp: port not set",
"port-invalid": "udp: port number not valid",
"alreadyused": "udp: port already in use"
}
},
"switch": {
"label": {
"property": "Property",
"rule": "rule"
},
"and": "and",
"checkall": "checking all rules",
"stopfirst": "stopping after first match",
"ignorecase": "ignore case",
"rules": {
"btwn":"is between",
"cont":"contains",
"regex":"matches regex",
"true":"is true",
"false":"is false",
"null":"is null",
"nnull":"is not null",
"else":"otherwise"
},
"errors": {
"invalid-expr": "Invalid expression: __error__"
}
},
"change": {
"label": {
"rules": "Rules",
"rule": "rule",
"set": "set __property__",
"change": "change __property__",
"delete": "delete __property__",
"move": "move __property__",
"changeCount": "change: __count__ rules",
"regex": "Use regular expressions"
},
"action": {
"set": "Set",
"change": "Change",
"delete": "Delete",
"move": "Move",
"to": "to",
"search": "Search for",
"replace": "Replace with"
},
"errors": {
"invalid-from": "Invalid 'from' property: __error__",
"invalid-json": "Invalid 'to' JSON property"
}
},
"range": {
"label": {
"action": "Action",
"inputrange": "Map the input range",
"resultrange": "to the result range",
"from": "from",
"to": "to",
"roundresult": "Round result to the nearest integer?"
},
"placeholder": {
"min": "e.g. 0",
"maxin": "e.g. 99",
"maxout": "e.g. 255"
},
"scale": {
"payload": "Scale msg.payload",
"limit": "Scale and limit to the target range",
"wrap": "Scale and wrap within the target range"
},
"tip": "Tip: This node ONLY works with numbers.",
"errors": {
"notnumber": "Not a number"
}
},
"csv": {
"label": {
"columns": "Columns",
"separator": "Separator",
"c2o": "CSV-to-Object options",
"o2c": "Object-to-CSV options",
"input": "Input",
"firstrow": "first row contains column names",
"output": "Output",
"includerow": "include column name row",
"newline": "Newline"
},
"placeholder": {
"columns": "comma-separated column names"
},
"separator": {
"comma": "comma",
"tab": "tab",
"space": "space",
"semicolon": "semicolon",
"colon": "colon",
"hashtag": "hashtag",
"other": "other..."
},
"output": {
"row": "a message per row",
"array": "a single message [array]"
},
"newline": {
"linux": "Linux (\\n)",
"mac": "Mac (\\r)",
"windows": "Windows (\\r\\n)"
},
"errors": {
"csv_js": "This node only handles csv strings or js objects.",
"obj_csv": "No columns template specified for object -> csv."
}
},
"html": {
"label": {
"select": "Select",
"output": "Output"
},
"output": {
"html": "the html content of the elements",
"text": "only the text content of the elements",
"attr": "an object of any attributes of the elements"
},
"format": {
"single": "as a single message containing an array",
"multi": "as multiple messages, one for each element"
},
"tip": "Tip: The Select value is a CSS Selector, similar to a jQuery selector."
},
"json": {
"errors": {
"dropped-object": "Ignored non-object payload",
"dropped": "Ignored unsupported payload type",
"dropped-error": "Failed to convert payload"
}
},
"yaml": {
"errors": {
"dropped-object": "Ignored non-object payload",
"dropped": "Ignored unsupported payload type",
"dropped-error": "Failed to convert payload"
}
},
"xml": {
"label": {
"represent": "Represent XML tag attributes as a property named",
"prefix": "Prefix to access character content",
"advanced": "Advanced options"
},
"tip": "There is no simple way to convert XML attributes to JSON so the approach taken here is to add a property, named $ by default, to the JSON structure.",
"errors": {
"xml_js": "This node only handles xml strings or js objects."
}
},
"rpi-gpio": {
"label": {
"gpiopin": "GPIO",
"selectpin": "select pin",
"resistor": "Resistor?",
"readinitial": "Read initial state of pin on deploy/restart?",
"type": "Type",
"initpin": "Initialise pin state?",
"debounce": "Debounce",
"button": "Button",
"pimouse": "Pi Mouse",
"pikeyboard": "Pi Keyboard",
"left": "Left",
"right": "Right",
"middle": "Middle"
},
"resistor": {
"none": "none",
"pullup": "pullup",
"pulldown": "pulldown"
},
"digout": "Digital output",
"pwmout": "PWM output",
"servo": "Servo output",
"initpin0": "initial level of pin - low (0)",
"initpin1": "initial level of pin - high (1)",
"left": "left",
"right": "right",
"middle": "middle",
"any": "any",
"pinname": "Pin",
"alreadyuse": "already in use",
"alreadyset": "already set as",
"tip": {
"pin": "Pins in Use: ",
"in": "Tip: Only Digital Input is supported - input must be 0 or 1.",
"dig": "Tip: For digital output - input must be 0 or 1.",
"pwm": "Tip: For PWM output - input must be between 0 to 100; setting high frequency might occupy more CPU than expected.",
"ser": "Tip: For Servo output - input must be between 0 to 100. 50 is centre."
},
"types": {
"digout": "digital output",
"input": "input",
"pullup": "input with pull up",
"pulldown": "input with pull down",
"pwmout": "PWM output",
"servo": "Servo output"
},
"status": {
"stopped": "stopped",
"closed": "closed",
"not-running": "not running"
},
"errors": {
"ignorenode": "Ignoring Raspberry Pi specific node",
"version": "Version command failed",
"sawpitype": "Saw Pi Type",
"libnotfound": "Cannot find Pi RPi.GPIO python library",
"alreadyset": "GPIO pin __pin__ already set as type: __type__",
"invalidpin": "Invalid GPIO pin",
"invalidinput": "Invalid input",
"needtobeexecutable": "__command__ needs to be executable",
"mustbeexecutable": "nrgpio must to be executable",
"commandnotfound": "nrgpio command not found",
"commandnotexecutable": "nrgpio command not executable",
"error": "error: __error__",
"pythoncommandnotfound": "nrpgio python command not running"
}
},
"tail": {
"label": {
"filename": "Filename",
"type": "File type",
"splitlines": "Split lines on \\n?"
},
"action": {
"text": "Text - returns String",
"binary": "Binary - returns Buffer"
},
"errors": {
"windowsnotsupport": "Not currently supported on Windows."
}
},
"file": {
"label": {
"filename": "Filename",
"action": "Action",
"addnewline": "Add newline (\\n) to each payload?",
"createdir": "Create directory if it doesn't exist?",
"outputas": "Output as",
"filelabel": "file",
"deletelabel": "delete __file__"
},
"action": {
"append": "append to file",
"overwrite": "overwrite file",
"delete": "delete file"
},
"output": {
"utf8": "a utf8 string",
"buffer": "a Buffer"
},
"status": {
"wrotefile": "wrote to file: __file__",
"deletedfile": "deleted file: __file__",
"appendedfile": "appended to file: __file__"
},
"errors": {
"nofilename": "No filename specified",
"invaliddelete": "Warning: Invalid delete. Please use specific delete option in config dialog.",
"deletefail": "failed to delete file: __error__",
"writefail": "failed to write to file: __error__",
"appendfail": "failed to append to file: __error__",
"createfail": "failed to create file: __error__"
},
"tip": "Tip: You should fully path the Filename."
}
}