Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/master' into GogoVega-patch-1
Browse files Browse the repository at this point in the history
  • Loading branch information
Shaquu committed Feb 8, 2022
2 parents cd37d5b + 2086fff commit a559fb5
Show file tree
Hide file tree
Showing 62 changed files with 15,946 additions and 769 deletions.
7 changes: 7 additions & 0 deletions assets/scss/layouts/_sidebar.scss
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@ a.docs-link {
display: block;
padding: 0.125rem 0;
font-size: $font-size-base;
margin-right: 100px;
}

.page-links li {
Expand Down Expand Up @@ -108,3 +109,9 @@ a.docs-link {
.page-links h3.sidebar-link a:hover {
text-decoration: underline;
}

.docs-link.divider {
border-bottom: 1px dashed #dee2e6;
padding-bottom: 4px;
margin-bottom: 4px;
}
1 change: 1 addition & 0 deletions config/_default/menus.toml
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@
weight = 10

[[footer]]
name = "Discord"
pre = "<img src=\"https://img.shields.io/discord/586065987267330068?color=%238f0000&label=Discord&logo=discord\" alt=\"NRCHKB Discord\"/>"
url = "https://discord.gg/uvYac5u"
weight = 20
2 changes: 1 addition & 1 deletion config/_default/params.toml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ lqipWidth = "20x"
footer = "Powered by <a href=\"https://gohugo.io/\">Hugo</a> and <a href=\"https://getdoks.org/\">Doks</a>"

# Alert
alert = true
alert = false
alertText = "Like NRCHKB? <a class=\"alert-link\" href=\"https://github.com/NRCHKB/node-red-contrib-homekit-bridged\">Star on GitHub</a>. Thanks!</a>"

# Edit Page
Expand Down
68 changes: 39 additions & 29 deletions content/_index.md
Original file line number Diff line number Diff line change
@@ -1,37 +1,47 @@
---
title : "HomeKit all the things!"
title: "HomeKit all the things!"
description: "NRCHKB is a Node-RED nodes pack to simulate Apple HomeKit devices. The goal is to emulate native HomeKit devices as closely as possible."
lead: "NRCHKB is a Node-RED nodes pack to simulate Apple HomeKit devices. The goal is to emulate native HomeKit devices as closely as possible."
date: 2021-04-01T00:00:00+02:00
lastmod: 2022-01-22T20:32:10.143Z
lastmod: 2022-02-07T19:48:12.612Z
draft: false
images: []
---


<div class="clearfix">
<img src="/images/presentation/demonstration.gif" class="col-md-9 float-md-end mb-3 ms-md-3" style="max-width: 100%;" alt="NRCHKB Demonstration"/>

### About this Contrib

This is a collection of nodes which can be used to imitate HomeKit devices inside Node-RED. Messages coming into these nodes are able to set device states and status in Apple's iOS and macOS Home apps. Commands from Home apps (or Siri) will be passed from these nodes into your Node-RED flows.

### Easy Install

If you have Node-RED already installed, the recommended install method is to use the editor. To do this, select `Manage palette` from the Node-RED menu (top right).
Then select `Install` tab in the palette. Search for and install this node (`node-red-contrib-homekit-bridged`).
</div>

### Docker Install

You can also pull a [docker image](https://github.com/NRCHKB/node-red-contrib-homekit-docker) containing everything needed to get started.

### Getting Started

[**Example flows**]({{< ref "/wiki/examples" >}} "Examples")
For a quick start, we recommend checking out the flows which are included with the plugin, they can be imported using the Node-RED hamburger menu after install.

[**Documentation home page**]({{< ref "/wiki/introduction/quick-start" >}} "Quick Start")
For more instructions, information about how things work, and detailed examples (including various real life examples from the community).

[**Discord**](https://discord.gg/uvYac5u) Again, one of us is on Discord every day, always ready to help!
<div class="container">
<div class="row justify-content-center text-center row align-items-center">
<div class="col-lg-7 order-lg-first order-md-last order-last">
<h2 class="h4">About NRCHKB</h2>
<p style="text-align: left;">This is a collection of nodes which can be used to simulate HomeKit accessories inside of Node-RED. Messages coming into these nodes are able to set accessory states and status in Apple's iOS and MacOS Home apps. Commands from Home.app (or Siri) will be passed from these nodes into your Node-RED flows.</p>
</div>
<div class="col-lg-7 order-lg-last order-md-first order-first">
<video autoplay loop muted playsinline>
<source src="/images/presentation/nrchkb-demonstration.webm" type="video/webm">
<source src="/images/presentation/nrchkb-demonstration.mp4" type="video/mp4">
<source src="/images/presentation/nrchkb-demonstration.mov" type="video/quicktime">
</video>
</div>
</div>
<div class="row justify-content-center text-center">
<div class="col-lg-7">
<h2 class="h4">Easy Install</h2>
<p style="text-align: left;">Installation of this collection of nodes (<code>node-red-contrib-homekit-bridged</code>) is done directly in Node-RED from <code>Manage palette</code>. </p>
</div>
<div class="col-lg-7">
<h2 class="h4">Docker Install</h2>
<p style="text-align: left;">You can also pull a <a href="https://github.com/NRCHKB/node-red-contrib-homekit-docker">Docker image</a> containing everything needed to get started. </p>
</div>
<div class="col-lg-7">
<h2 class="h4">Examples Included</h2>
<p style="text-align: left;">
<a href="{{"/wiki/examples/" | absURL }}"><strong>Example flows</strong></a> are included with the plugin, they can be imported using the Node-RED menu after install.
</p>
</div>
<div class="col-lg-7">
<h2 class="h4">Getting Started</h2>
<p style="text-align: left;">Our <a href="{{"/wiki/introduction/quick-start/" | absURL }}"><strong>Documentation Page</strong></a> is full of explanations, examples, and information to get you moving! </p>
</div>
<div class="col-lg-12 mt-4 pt-1">
<p style="text-align: center;">If you have any questions we are every day on <a href="https://discord.gg/uvYac5u"><strong>Discord</strong></a>, always ready to help!</p>
</div>
</div>
118 changes: 0 additions & 118 deletions content/wiki/introduction/characteristics.md

This file was deleted.

79 changes: 50 additions & 29 deletions content/wiki/introduction/faq/index.md
Original file line number Diff line number Diff line change
@@ -1,54 +1,75 @@
---
title: "FAQ"
description: "Frequently Asked Questions"
lead: "Question you ask us and questions we ask you"
date: 2021-04-15T20:00:00+02:00
lastmod: 2021-10-04T16:10:51.017Z
lead: "Frequently Asked Questions"
date: 2022-01-26T20:51:13.183Z
lastmod: 2022-02-07T19:48:12.612Z
draft: false
images: []
menu:
docs:
parent: "introduction"
weight: 100
weight: 40
toc: true
contributors: ["Shaquu"]
---

## How to update NRCHKB node
## How to check software versions

New version has been released, and you would like to upgrade? There are at least two ways to do that!
How to check versions for most common install methods:

### Using palette
### Our node

1. In `node-red` UI click Manage palette in Menu
2. Locate `node-red-contrib-homekit-bridged` and click update to `1.4.0`
- `Settings/Manage palette` ![Nodes Version via Manage Palette](nodes_version_manage_palette.png)

### Manually
- `package.json` file in your Node-RED installation folder usually `~/.node-red` ![Nodes Version via package.json](nodes_version_package_json.png)

1. Stop `node-red`
2. `cd ~/.node-red`
3. `npm i [email protected]`
4. Start `node-red`
### Node-RED

## Device paired but Service disappearing in Home.app from time to time
Check in the drop-down menu in the top right of the editor.

You managed to pair with Accessory or Bridge but after a while it has disappeared?
### Node-JS

1. Make sure that device you are using to view Home status is connected to the same network that node-red (with nrchkb) is running on
2. If you are using VLAN or special firewall rules, [join us on Discord](https://discord.gg/uvYac5u) to discuss what settings should be for things to work
Run `node -v` in the command line

## Type already defined error
## Which format for msg.payload (JSON)

`Type already defined` or `Cannot register type` errors appeared in UI?
Payload messages sent and received from the HomeKit node have a **JSON** structure.
To popularize, this structure resembles a library: you search for your book (value) thanks to its title (key).

1. Make sure you are using the latest version of our node.
2. Look for other homekit nodes that you have installed. You will have to remove them if they collide with our node. Possible collisions with:
1. `node-red-contrib-homekit-preconfigured`
2. `node-red-contrib-homekit`
Below is an example of `msg.payload`:

How to check nodes versions?
```js
msg = {
payload: {
On: true,
Brightness: 38,
},
};
```

1. `Settings/Manage palette`
![Nodes Version via Manage Palette](nodes_version_manage_palette.png)
2. `package.json` file in your Node-RED installation folder usually `~/.node-red`
![Nodes Version via package.json](nodes_version_package_json.png)
In this example we can retrieve the value of `On` with this JavaScript path: `msg.payload.On`.

{{< alert icon="👉" >}}Find more about [JSON](https://en.wikipedia.org/wiki/JSON).{{< /alert >}}

## What's Home Hub

Home Hub is the name given to the device that acts as the gateway between your accessories and Apple's servers.
Concretely, Home Hub allows you to access your accessories from outside your home.

{{< alert icon="👉" >}}Find more about [Home Hub](https://support.apple.com/en-us/HT207057).{{< /alert >}}

## Differentiate between passthrough or "from HomeKit" messages

In some cases, it may be useful, even essential, to differentiate a command from the previous node or Home.app to avoid a loop problem.

{{< alert icon="👉" >}}Find more about [Passthrough Messages]({{< ref "/wiki/nodes/output-messages" >}} "Passthrough Messages").{{< /alert >}}

## Miscellaneous oddities...

- We **highly recommend** setting your Node-RED editor to "Deploy modified nodes" only. This will keep the backend for HomeKit nodes from restarting so often while making edits, keeping the Home app much happier.

![Modified Nodes](modified_nodes.png)

- Sometimes Node-RED will send multiple copies of each message when you've been working on a lot of flows, simply restart Node-RED to clear the caches and you'll usually be back to normal
- If something new is struggling, the first thing to try is to remove the problem service node, deploy, then add it back. If things still struggle it might be helpful to remove the problem nodes _and_ bridge from Node-RED and the Home app - then add it all back in.
Binary file added content/wiki/introduction/faq/modified_nodes.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
30 changes: 30 additions & 0 deletions content/wiki/introduction/how-to-update.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
---
title: "How to Update"
description: "NRCHKB node update instructions"
lead: "How to update NRCHKB node"
date: 2022-01-26T20:51:13.183Z
lastmod: 2022-02-07T19:48:12.612Z
draft: false
images: []
menu:
docs:
parent: "introduction"
weight: 20
toc: true
contributors: ["Shaquu"]
---

A new version has been released, and you would like to upgrade? There are at least two ways to do that!

## Inside Node-RED

1. In the Node-RED UI, click on the menu at the top right.
2. Go to `Manage Palette`.
3. Research `node-red-contrib-homekit-bridged` and click `Update`.

## Manually

1. Stop `node-red`
2. `cd ~/.node-red`
3. `npm i node-red-contrib-homekit-bridged@latest`
4. Start `node-red`
Loading

1 comment on commit a559fb5

@github-actions
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please sign in to comment.