|
|
@@ -132,181 +132,209 @@ Some simple bash scripts to achieve this are kindly provided in [nickexyz's repo
|
|
|
## Node-RED
|
|
|
You can use the HTTP request node to send messages with [Node-RED](https://nodered.org), some examples:
|
|
|
|
|
|
+Example: Send a message
|
|
|
+
|
|
|
+
|
|
|
<details>
|
|
|
-<summary>Example: Send a message</summary>
|
|
|
+<summary>Expand</summary>
|
|
|
|
|
|
```
|
|
|
[
|
|
|
- {
|
|
|
- "id": "8f09d37dd5773f88",
|
|
|
- "type": "http request",
|
|
|
- "z": "ff3ad4e1.d3415",
|
|
|
- "name": "ntfy",
|
|
|
- "method": "POST",
|
|
|
- "ret": "txt",
|
|
|
- "paytoqs": "ignore",
|
|
|
- "url": "https://example.com/topic",
|
|
|
- "tls": "",
|
|
|
- "persist": false,
|
|
|
- "proxy": "",
|
|
|
- "authType": "",
|
|
|
- "senderr": false,
|
|
|
- "credentials": {},
|
|
|
- "x": 1410,
|
|
|
- "y": 740,
|
|
|
- "wires": [
|
|
|
- []
|
|
|
- ]
|
|
|
- },
|
|
|
- {
|
|
|
- "id": "2603f296b25fe351",
|
|
|
- "type": "function",
|
|
|
- "z": "ff3ad4e1.d3415",
|
|
|
- "name": "data",
|
|
|
- "func": "msg.payload = \"Something happened\";\nmsg.headers = {};\nmsg.headers['tags'] = 'house';\nmsg.headers['X-Title'] = 'Home Assistant';\n\nreturn msg;",
|
|
|
- "outputs": 1,
|
|
|
- "noerr": 0,
|
|
|
- "initialize": "",
|
|
|
- "finalize": "",
|
|
|
- "libs": [],
|
|
|
- "x": 1290,
|
|
|
- "y": 740,
|
|
|
- "wires": [
|
|
|
- [
|
|
|
- "8f09d37dd5773f88"
|
|
|
- ]
|
|
|
- ]
|
|
|
- },
|
|
|
- {
|
|
|
- "id": "d2351ed0720a239f",
|
|
|
- "type": "inject",
|
|
|
- "z": "ff3ad4e1.d3415",
|
|
|
- "name": "Manual start",
|
|
|
- "props": [
|
|
|
- {
|
|
|
- "p": "payload"
|
|
|
- },
|
|
|
- {
|
|
|
- "p": "topic",
|
|
|
- "vt": "str"
|
|
|
- }
|
|
|
- ],
|
|
|
- "repeat": "",
|
|
|
- "crontab": "",
|
|
|
- "once": false,
|
|
|
- "onceDelay": "20",
|
|
|
- "topic": "",
|
|
|
- "payload": "",
|
|
|
- "payloadType": "date",
|
|
|
- "x": 1150,
|
|
|
- "y": 740,
|
|
|
- "wires": [
|
|
|
- [
|
|
|
- "2603f296b25fe351"
|
|
|
- ]
|
|
|
- ]
|
|
|
- }
|
|
|
+ {
|
|
|
+ "id": "c956e688cc74ad8e",
|
|
|
+ "type": "http request",
|
|
|
+ "z": "fabdd7a3.4045a",
|
|
|
+ "name": "ntfy.sh",
|
|
|
+ "method": "POST",
|
|
|
+ "ret": "txt",
|
|
|
+ "paytoqs": "ignore",
|
|
|
+ "url": "https://ntfy.sh/mytopic",
|
|
|
+ "tls": "",
|
|
|
+ "persist": false,
|
|
|
+ "proxy": "",
|
|
|
+ "authType": "",
|
|
|
+ "senderr": false,
|
|
|
+ "credentials":
|
|
|
+ {
|
|
|
+ "user": "",
|
|
|
+ "password": ""
|
|
|
+ },
|
|
|
+ "x": 590,
|
|
|
+ "y": 3160,
|
|
|
+ "wires":
|
|
|
+ [
|
|
|
+ []
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "id": "32ee1eade51fae50",
|
|
|
+ "type": "function",
|
|
|
+ "z": "fabdd7a3.4045a",
|
|
|
+ "name": "data",
|
|
|
+ "func": "msg.payload = \"Something happened\";\nmsg.headers = {};\nmsg.headers['tags'] = 'house';\nmsg.headers['X-Title'] = 'Home Assistant';\n\nreturn msg;",
|
|
|
+ "outputs": 1,
|
|
|
+ "noerr": 0,
|
|
|
+ "initialize": "",
|
|
|
+ "finalize": "",
|
|
|
+ "libs": [],
|
|
|
+ "x": 470,
|
|
|
+ "y": 3160,
|
|
|
+ "wires":
|
|
|
+ [
|
|
|
+ [
|
|
|
+ "c956e688cc74ad8e"
|
|
|
+ ]
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "id": "b287e59cd2311815",
|
|
|
+ "type": "inject",
|
|
|
+ "z": "fabdd7a3.4045a",
|
|
|
+ "name": "Manual start",
|
|
|
+ "props":
|
|
|
+ [
|
|
|
+ {
|
|
|
+ "p": "payload"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "p": "topic",
|
|
|
+ "vt": "str"
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ "repeat": "",
|
|
|
+ "crontab": "",
|
|
|
+ "once": false,
|
|
|
+ "onceDelay": "20",
|
|
|
+ "topic": "",
|
|
|
+ "payload": "",
|
|
|
+ "payloadType": "date",
|
|
|
+ "x": 330,
|
|
|
+ "y": 3160,
|
|
|
+ "wires":
|
|
|
+ [
|
|
|
+ [
|
|
|
+ "32ee1eade51fae50"
|
|
|
+ ]
|
|
|
+ ]
|
|
|
+ }
|
|
|
]
|
|
|
```
|
|
|
|
|
|
</details>
|
|
|
|
|
|
+Example: Send a picture
|
|
|
+
|
|
|
+
|
|
|
<details>
|
|
|
-<summary>Example: Send a picture</summary>
|
|
|
+<summary>Expand</summary>
|
|
|
|
|
|
```
|
|
|
[
|
|
|
- {
|
|
|
- "id": "726d0d75d6c0f70e",
|
|
|
- "type": "http request",
|
|
|
- "z": "ff3ad4e1.d3415",
|
|
|
- "name": "Download jpeg",
|
|
|
- "method": "GET",
|
|
|
- "ret": "bin",
|
|
|
- "paytoqs": "ignore",
|
|
|
- "url": "https://www.google.com/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png",
|
|
|
- "tls": "",
|
|
|
- "persist": false,
|
|
|
- "proxy": "",
|
|
|
- "authType": "",
|
|
|
- "senderr": false,
|
|
|
- "credentials": {},
|
|
|
- "x": 1320,
|
|
|
- "y": 780,
|
|
|
- "wires": [
|
|
|
- [
|
|
|
- "730dbbc9dbf1ed8a"
|
|
|
- ]
|
|
|
- ]
|
|
|
- },
|
|
|
- {
|
|
|
- "id": "730dbbc9dbf1ed8a",
|
|
|
- "type": "function",
|
|
|
- "z": "ff3ad4e1.d3415",
|
|
|
- "name": "data",
|
|
|
- "func": "msg.payload = msg.payload;\nmsg.headers = {};\nmsg.headers['tags'] = 'house';\nmsg.headers['X-Title'] = 'Home Assistant - Picture';\n\nreturn msg;",
|
|
|
- "outputs": 1,
|
|
|
- "noerr": 0,
|
|
|
- "initialize": "",
|
|
|
- "finalize": "",
|
|
|
- "libs": [],
|
|
|
- "x": 1470,
|
|
|
- "y": 780,
|
|
|
- "wires": [
|
|
|
- [
|
|
|
- "592f424b37f76f5c"
|
|
|
- ]
|
|
|
- ]
|
|
|
- },
|
|
|
- {
|
|
|
- "id": "592f424b37f76f5c",
|
|
|
- "type": "http request",
|
|
|
- "z": "ff3ad4e1.d3415",
|
|
|
- "name": "ntfy",
|
|
|
- "method": "PUT",
|
|
|
- "ret": "bin",
|
|
|
- "paytoqs": "ignore",
|
|
|
- "url": "https://example.com/topic",
|
|
|
- "tls": "",
|
|
|
- "persist": false,
|
|
|
- "proxy": "",
|
|
|
- "authType": "",
|
|
|
- "senderr": false,
|
|
|
- "x": 1590,
|
|
|
- "y": 780,
|
|
|
- "wires": [
|
|
|
- []
|
|
|
- ]
|
|
|
- },
|
|
|
- {
|
|
|
- "id": "8aa06dda3c902f6a",
|
|
|
- "type": "inject",
|
|
|
- "z": "ff3ad4e1.d3415",
|
|
|
- "name": "Manual start",
|
|
|
- "props": [
|
|
|
- {
|
|
|
- "p": "payload"
|
|
|
- },
|
|
|
- {
|
|
|
- "p": "topic",
|
|
|
- "vt": "str"
|
|
|
- }
|
|
|
- ],
|
|
|
- "repeat": "",
|
|
|
- "crontab": "",
|
|
|
- "once": false,
|
|
|
- "onceDelay": "20",
|
|
|
- "topic": "",
|
|
|
- "payload": "",
|
|
|
- "payloadType": "date",
|
|
|
- "x": 1150,
|
|
|
- "y": 780,
|
|
|
- "wires": [
|
|
|
- [
|
|
|
- "726d0d75d6c0f70e"
|
|
|
- ]
|
|
|
- ]
|
|
|
- }
|
|
|
+ {
|
|
|
+ "id": "d135a13eadeb9d6d",
|
|
|
+ "type": "http request",
|
|
|
+ "z": "fabdd7a3.4045a",
|
|
|
+ "name": "Download image",
|
|
|
+ "method": "GET",
|
|
|
+ "ret": "bin",
|
|
|
+ "paytoqs": "ignore",
|
|
|
+ "url": "https://www.google.com/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png",
|
|
|
+ "tls": "",
|
|
|
+ "persist": false,
|
|
|
+ "proxy": "",
|
|
|
+ "authType": "",
|
|
|
+ "senderr": false,
|
|
|
+ "credentials":
|
|
|
+ {
|
|
|
+ "user": "",
|
|
|
+ "password": ""
|
|
|
+ },
|
|
|
+ "x": 490,
|
|
|
+ "y": 3320,
|
|
|
+ "wires":
|
|
|
+ [
|
|
|
+ [
|
|
|
+ "6e75bc41d2ec4a03"
|
|
|
+ ]
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "id": "6e75bc41d2ec4a03",
|
|
|
+ "type": "function",
|
|
|
+ "z": "fabdd7a3.4045a",
|
|
|
+ "name": "data",
|
|
|
+ "func": "msg.payload = msg.payload;\nmsg.headers = {};\nmsg.headers['tags'] = 'house';\nmsg.headers['X-Title'] = 'Home Assistant - Picture';\n\nreturn msg;",
|
|
|
+ "outputs": 1,
|
|
|
+ "noerr": 0,
|
|
|
+ "initialize": "",
|
|
|
+ "finalize": "",
|
|
|
+ "libs": [],
|
|
|
+ "x": 650,
|
|
|
+ "y": 3320,
|
|
|
+ "wires":
|
|
|
+ [
|
|
|
+ [
|
|
|
+ "eb160615b6ceda98"
|
|
|
+ ]
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "id": "eb160615b6ceda98",
|
|
|
+ "type": "http request",
|
|
|
+ "z": "fabdd7a3.4045a",
|
|
|
+ "name": "ntfy.sh",
|
|
|
+ "method": "PUT",
|
|
|
+ "ret": "bin",
|
|
|
+ "paytoqs": "ignore",
|
|
|
+ "url": "https://ntfy.sh/mytopic",
|
|
|
+ "tls": "",
|
|
|
+ "persist": false,
|
|
|
+ "proxy": "",
|
|
|
+ "authType": "",
|
|
|
+ "senderr": false,
|
|
|
+ "credentials":
|
|
|
+ {
|
|
|
+ "user": "",
|
|
|
+ "password": ""
|
|
|
+ },
|
|
|
+ "x": 770,
|
|
|
+ "y": 3320,
|
|
|
+ "wires":
|
|
|
+ [
|
|
|
+ []
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "id": "5b8dbf15c8a7a3a5",
|
|
|
+ "type": "inject",
|
|
|
+ "z": "fabdd7a3.4045a",
|
|
|
+ "name": "Manual start",
|
|
|
+ "props":
|
|
|
+ [
|
|
|
+ {
|
|
|
+ "p": "payload"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "p": "topic",
|
|
|
+ "vt": "str"
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ "repeat": "",
|
|
|
+ "crontab": "",
|
|
|
+ "once": false,
|
|
|
+ "onceDelay": "20",
|
|
|
+ "topic": "",
|
|
|
+ "payload": "",
|
|
|
+ "payloadType": "date",
|
|
|
+ "x": 310,
|
|
|
+ "y": 3320,
|
|
|
+ "wires":
|
|
|
+ [
|
|
|
+ [
|
|
|
+ "d135a13eadeb9d6d"
|
|
|
+ ]
|
|
|
+ ]
|
|
|
+ }
|
|
|
]
|
|
|
```
|
|
|
|