Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Alpha 5 release ready #48

Merged
merged 55 commits into from
Aug 25, 2024
Merged
Changes from 1 commit
Commits
Show all changes
55 commits
Select commit Hold shift + click to select a range
4c0568d
chore: update version number
devraj Jun 29, 2024
3299361
docs: update tagline
devraj Jun 29, 2024
1c2c74e
chore: enables social plugin for mkdocs
devraj Jun 29, 2024
4ae7873
chore: update packages
devraj Jun 29, 2024
e39470d
refactor: adds docstrings plugin to include source docs
devraj Jun 30, 2024
da99186
docs: expands on developer guide
devraj Jun 30, 2024
5d813be
feat: adds proxy support in httpx configuration
devraj Jun 30, 2024
e67d428
docs: reorganise toc
devraj Jun 30, 2024
d314d5e
docs: completes documentation on sdk configuration
devraj Jun 30, 2024
9a0f382
docs: updates usage on list and detail/retrieve
devraj Jul 1, 2024
2ff7bfb
refactor: update pydantic
devraj Jul 1, 2024
b44a332
chore: format syntax
devraj Jul 4, 2024
ea33047
docs: update hardware setup notes
devraj Jul 4, 2024
2087616
fix: pyndatic bugs following from latest release
devraj Jul 4, 2024
f5146bb
chore: update assets for future use in docs
devraj Jul 4, 2024
594a43a
docs: update exception handling reference
devraj Jul 5, 2024
ef1fc61
refactor: initial implementation of generic search
devraj Jul 5, 2024
a4d99c5
fix: unhandled exception
devraj Jul 5, 2024
9ef7376
feat(cli): wire up the cardholder search
devraj Jul 5, 2024
d1c136d
feat: adds stubs to all possible cli items
devraj Jul 6, 2024
29549e7
fix: configuration of updates for alarm summary
devraj Jul 9, 2024
0d86233
refactor(cli): calls ack and process alarm methods
devraj Jul 9, 2024
9c21258
feat(cli): wires up viewed cli to api
devraj Jul 9, 2024
95a5c97
refactor(cli): colours alarm priority
devraj Jul 9, 2024
5726e36
refactor: relaxes rule where href is optional in cardholder invitation
devraj Jul 9, 2024
9adb404
fix: incorrect call to the sdk from the cli
devraj Jul 10, 2024
65969bc
docs: adds assets for #54
devraj Jul 10, 2024
d7e0411
docs: updates notes from my failures of setting up 7000
devraj Jul 10, 2024
f89f84a
chore: update packages
devraj Jul 11, 2024
8501915
feat: implements first cut of multiple args on alarms
devraj Jul 11, 2024
1c3b3e3
refactor: adds confirmation for bulk operations
devraj Jul 11, 2024
dcf62bb
refactor: adds --yes flag to override prompt
devraj Jul 11, 2024
a8f6b69
docs: updates resources from configuration attempt
devraj Jul 13, 2024
a268b1c
refactor(tui): demo table working in grig
devraj Jul 13, 2024
c7e875e
fix: refines cli output
devraj Jul 13, 2024
a3be7d2
fix: cli annotation to make parameter optional
devraj Jul 13, 2024
da7d0a9
feat(debug): adds delete endpoint for debugging
devraj Jul 13, 2024
f654556
fix: taskfile missing the get command
devraj Jul 15, 2024
ac02a1f
refactor: moves cc related docs to hardware
devraj Jul 20, 2024
2e51433
docs: updates notes on releasing software
devraj Jul 20, 2024
b93fe0a
chore: update packages
devraj Jul 20, 2024
5589a82
refactor: update packages
devraj Jul 29, 2024
1b98a80
fix: validation rules to relax email in inviates
devraj Jul 29, 2024
da52f9a
refactor: syntax and code formatting
devraj Jul 29, 2024
e9607c1
fix: enum definition
devraj Jul 29, 2024
a3cacf2
feat: adds basic container for running cli
devraj Jul 30, 2024
9e10ce8
fix: cli working in container post build
devraj Jul 30, 2024
2941f71
refactor: clean Dockerfile for cli
devraj Jul 30, 2024
6166804
chore: update depdenencies
devraj Aug 1, 2024
6cc52dd
feat: adds access group cli endpoint
devraj Aug 5, 2024
ec45312
chore: update packages
devraj Aug 5, 2024
6891403
chore: update packages
devraj Aug 9, 2024
de3a884
docs: updates credeits and headings
devraj Aug 9, 2024
fcbfc36
chore: update packages
devraj Aug 14, 2024
326f8fc
chore: update packages
devraj Aug 18, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
docs: updates notes from my failures of setting up 7000
devraj committed Jul 10, 2024
commit d7e0411e65485cd9ff82002222a47a11499ce03d
51 changes: 50 additions & 1 deletion HARDWARE.md
Original file line number Diff line number Diff line change
@@ -53,6 +53,56 @@ Access Group

## AWS and the Local Setup

Gallagher provides ample documentation on how to configure the Controller and a remote Control Centre instance to communicate with each other. Most of the setup complication are around NAT (and security). These are some steps I took note of which putting together our setup.

I have broke my notes into two parts:

- Initial setup based on CC and Controller communicating over the public Internet
- VPN based setup to secure the channel between the CC and Controller

### Over the public Internet

Follow the initial setup guide from your Controller 7000 Single Door documentation. The steps are as follows:

- Set DIP switch `1`, `2`, `3` to ON
- Navigate to `192.168.1.199` in your browser (depending on your local network setup you will have to vary your routing rules)
- Choose static IP as your networking configuration

These are the steps that I had to make note of on the Static IP setting while communicating over a WAN:

- Server IP is the WAN IP of the AWS EC2 instance
- Controller IP is the LAN IP of the Controller 7000 Single Door, in this instance a static IP of the AWS instance
- My Controller has the static IP of `192.168.1.180` on the local network

![Single Door 7000 Controller IP configuration](assets/wan-7000-ip.png)

Local network NAT rules:

- Open port `1072` from the outside world to the controller, this is what the CC will use to communicate with the controller
- For best practices restrict this port to be open for the AWS instance IP only

On the AWS EC2 instance (firewall settings):

- You have allow inbound requests on port `1072` (I missed this in the documentation and assume it's described further in the CC docs)

#### Configuring the Controller for WAN

Upon configuring the Controller it would come online and then quickly reset itself and become unresponsive. After a bit of debugging it occurred to me that the CC was pushing the configuration it thought the Controller should have.

To overcome this I had to configure the CC to push the same information as the initial configuration on the controller that got it online and communicating with the CC.

Network Method should be set to `Manual`:

- The IP address will be of the local network where the Controller is located and connected
- Override the Server Address to provide the `WAN` address of the Command Centre

As per the Gallagher guide override the NAT settings in this panel to provide the WAN address of the network the Controller is located in.

> [!NOTE]
> Each time the Controller needed to be reset, it would issue a new certificate. You have to locate the controller on the Command Centre, head over to `Status and Overrides` and ask it to fetch a new certificate.

![Controller configuration to work over the WAN](assets/wan-7000-cc-config.png)

## Reference videos

Official video tutorials from Gallagher Security:
@@ -63,5 +113,4 @@ Official video tutorials from Gallagher Security:
Official documentation:

- [Controller 7000 Single door](https://products.security.gallagher.com/security/global/en/products/access-control-hardware/controller-7000-single-door/p/BVC400011)

- [Controller 7000 Single door documents](https://media.gallagher.com/web/1a00857c7c9c8d7/single-door-controller-7000-qr-code/?viewType=grid)