Skip to content
This repository has been archived by the owner on Apr 3, 2020. It is now read-only.

Commit

Permalink
Merge pull request #14 from jhochwald/develop
Browse files Browse the repository at this point in the history
Release 1.0.9
  • Loading branch information
jhochwald committed Jan 20, 2019
2 parents 1bd4621 + 1071dbc commit e1e51fd
Show file tree
Hide file tree
Showing 94 changed files with 20,847 additions and 908 deletions.
8 changes: 7 additions & 1 deletion Acknowledgements.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,12 @@
# Acknowledgements

This project owes some acknowlegement to others. Here are some other authors, projects, and companies which have made this project possible. If you believe you or a project should be included in this list please let us know.
This project owes some acknowlegement to others. Here are some other authors, projects, and companies which have made this project possible.

If you believe you or a project should be included in this list please let us know.

### Idea

This project is based on the idea of the [PHP API client class](https://github.com/Art-of-WiFi/UniFi-API-client) implementation from [Art of WiFi](http://artofwifi.net/). If you want to implement a PHP based solution, take a look at the GitHub project of the [PHP API client class](https://github.com/Art-of-WiFi/UniFi-API-client) implementation from [Art of WiFi](http://artofwifi.net/).

### PowerShell

Expand Down
23 changes: 21 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,25 @@ All notable changes to the **UniFiTooling** project will be documented in this f

---

### 1.0.9 - 2019-01-20

Mainly a feature release with some bugfixes and refactoring.

#### Added

- `Get-UnifiSpeedTestResult` has now a -last parameter to get only the latest result
- `Invoke-UnifiAuthorizeGuest` - Authorize a client device via the API of the UniFi Controller
- `Invoke-UnifiUnauthorizeGuest` - Unauthorize a client device via the API of the UniFi Controller
- `Invoke-UnifiReconnectClient` - Reconnect a client device via the API of the UniFi Controller
- `Invoke-UnifiBlockClient` - Block a client device via the API of the UniFi Controller
- `Invoke-UnifiUnblockClient` - Unblock a client device via the API of the UniFi Controller
- `Invoke-UnifiForgetClient` - Forget one or more client devices via the API of the UniFi Controller

- #### Changed
- Refactored a lot of code.
- Change the Verbose output (Detailed connection details)
- Change some links to the GitHub Wiki

### 1.0.8 - 2019-01-19

Mainly a bugfix and refactoring release
Expand Down Expand Up @@ -46,8 +65,8 @@ Mainly a bugfix and refactoring release
- Git Ignore extended
- Add Multi valued inputs to `Get-UnifiNetworkDetails`
- Add `-Id` parameter to `Get-UnifiNetworkDetails`. This replaced the -UnifiNetworkName` parameter - Related to #9
- `-UnifiNetworkName` is now a legacy alias, necessary to make it a non breaking change
- For the parameter `-UnifiNetworkName` an ID (`network_id`) must be used, necessary to make it a non breaking change
- `-UnifiNetworkName` is now a legacy alias, necessary to make it a non breaking change
- For the parameter `-UnifiNetworkName` an ID (`network_id`) must be used, necessary to make it a non breaking change
- Add `-name` parameter to `Get-UnifiNetworkDetails` - Related to #9
- Moved `Get-UnifiFirewallGroupBody` from Public to Private (No longer exported as command)

Expand Down
45 changes: 32 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,32 +1,50 @@
# UniFiTooling

This is an early beta version for an PowerShell Module for the Ubiquiti (UBNT) UniFi Controller API.
This is an beta version for an PowerShell Module for the Ubiquiti [UBNT SDN Controller API](https://unifi-sdn.ui.com/).



I started this module as an internal helper for many automated updates for my UniFi Security Gateway Firewall Rules and do a few other things (automated). I migrated everything into a regular module and published it as open source after using it for a while.



I plan to release versions that cover more and more functions. However, I need to refactor and document the code before doing so.

### Use Cases

Please see the [UseCases](https://github.com/jhochwald/UniFiTooling/tree/master/release/UniFiTooling/UseCases) directory.
You will find some demo use cases within the [UseCases](https://github.com/jhochwald/UniFiTooling/tree/master/release/UniFiTooling/UseCases) directory.

### Version

This document is based on UniFiTooling version 1.0.8
This document is based on UniFiTooling version 1.0.9

### Status

Early version - Work in progress.
Beta version - Work still in progress.

Please remember this before using it in production. You have been warned :)
*Please remember this before using it in production. You have been warned :)*

### Requirements

PowerShell 5.1, or later. Desktop or Core.
- PowerShell 5.1, or later. Desktop or Core.

- *Tested on Windows with PowerShell Desktop Version 5.1*

- *Tested on Windows with PowerShell Core Version 6.1.1*

- *Tested on macOS with PowerShell Core Version 6.1.2*

- *Tested on CentOS Linux release 7.6 with PowerShell Core Version 6.1.2*

- Ubiquiti [UBNT SDN Controller](https://unifi-sdn.ui.com/), Version 5.9.32

- *This is the only tested version*

- *Olders Ubiquiti [UBNT SDN Controller](https://unifi-sdn.ui.com/) Versions might work*

### Installation

There are several ways to get, install, and use this module!
There are several ways to get, install, and use this module.

#### With PowerShellGet

Expand All @@ -37,15 +55,17 @@ Install the module with PowerShellGet directly from the Powershell Gallery, this
##### Just for you

```powershell
# Install the module for the Current User with PowerShellGet directly from the Powershell Gallery, Preferred method
# Install the module for the Current User
# with PowerShellGet directly from the Powershell Gallery, Preferred method
# Run in a regular or administrative PowerShell prompt (Elevated).
PS C:\> Install-Module -Name 'UniFiTooling' -Scope CurrentUser
```

##### Systemwide

```powershell
# Install the module for the All Users with PowerShellGet directly from the Powershell Gallery, Preferred method.
# Install the module for the All Users
# with PowerShellGet directly from the Powershell Gallery, Preferred method.
# Run this in an administrative PowerShell prompt (Elevated).
PS C:\> Install-Module -Name 'UniFiTooling' -Scope AllUsers
```
Expand Down Expand Up @@ -149,6 +169,7 @@ Here is a sample configuration:
"Port": 443
}
```

#### Username

The login of a UniFi User with admin rights
Expand Down Expand Up @@ -193,11 +214,9 @@ All rights reserved.

### License

BSD 3-Clause "New" or "Revised" License. - [Online](https://github.com/jhochwald/UniFiTooling/wiki/License)
BSD 3-Clause "New" or "Revised" License.
Here is the the [online](https://github.com/jhochwald/UniFiTooling/wiki/License) version of the License.

---

[![GitHub license](https://img.shields.io/github/license/jhochwald/UniFiTooling.svg)](https://github.com/jhochwald/UniFiTooling/blob/master/LICENSE) [![made-with-Markdown](https://img.shields.io/badge/Made%20with-Markdown-1f425f.svg)](http://commonmark.org) [![Open Source Love png1](https://badges.frapsoft.com/os/v1/open-source.png?v=103)](https://github.com/ellerbrock/open-source-badges/)



18 changes: 12 additions & 6 deletions UniFiTooling.psd1
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
#
# Generated by: Joerg Hochwald
#
# Generated on: 1/14/2019
# Generated on: 1/19/2019
#

@{
Expand All @@ -12,7 +12,7 @@
RootModule = 'UniFiTooling.psm1'

# Version number of this module.
ModuleVersion = '1.0.8'
ModuleVersion = '1.0.9'

# Supported PSEditions
CompatiblePSEditions = 'Core', 'Desktop'
Expand Down Expand Up @@ -69,7 +69,14 @@ PowerShellVersion = '5.1'
# NestedModules = @()

# Functions to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no functions to export.
FunctionsToExport = @('Get-UnifiFirewallGroupDetails','Get-UnifiFirewallGroups','Get-UnifiNetworkDetails','Get-UnifiNetworkList','Invoke-UniFiApiLogin','Invoke-UniFiApiLogout','New-UniFiConfig','Set-UnifiFirewallGroup','Set-UnifiNetworkDetails', 'Get-UnifiSpeedTestResult')
FunctionsToExport = 'Get-UnifiFirewallGroupDetails', 'Get-UnifiFirewallGroups',
'Get-UnifiNetworkDetails', 'Get-UnifiNetworkList',
'Get-UnifiSpeedTestResult', 'Invoke-UniFiApiLogin',
'Invoke-UniFiApiLogout', 'New-UniFiConfig', 'Set-UnifiFirewallGroup',
'Set-UnifiNetworkDetails', 'Invoke-UnifiAuthorizeGuest',
'Invoke-UnifiUnauthorizeGuest', 'Invoke-UnifiReconnectClient',
'Invoke-UnifiBlockClient', 'Invoke-UnifiUnblockClient',
'Invoke-UnifiForgetClient'

# Cmdlets to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no cmdlets to export.
CmdletsToExport = '*'
Expand Down Expand Up @@ -98,7 +105,7 @@ PrivateData = @{
Tags = 'UniFi','API','Automation','Ubiquiti','UBNT','USG','RESTful'

# A URL to the license for this module.
LicenseUri = 'https://github.com/jhochwald/UniFiTooling/raw/master/LICENSE'
LicenseUri = 'https://github.com/jhochwald/UniFiTooling/wiki/License'

# A URL to the main website for this project.
ProjectUri = 'https://github.com/jhochwald/UniFiTooling'
Expand All @@ -107,7 +114,7 @@ PrivateData = @{
IconUri = 'https://github.com/jhochwald/UniFiTooling/raw/master/src/other/powershell-project.png'

# ReleaseNotes of this module
ReleaseNotes = 'Mainly a bugfix and refactoring release.'
ReleaseNotes = 'Mainly a feature release with some bugfix and refactoring.'

# Prerelease string of this module
# Prerelease = ''
Expand All @@ -129,4 +136,3 @@ PrivateData = @{
# DefaultCommandPrefix = ''

}

0 comments on commit e1e51fd

Please sign in to comment.