Skip to content

Commit

Permalink
cleanup
Browse files Browse the repository at this point in the history
  • Loading branch information
Nall-chan committed Jan 2, 2024
0 parents commit 52d710c
Show file tree
Hide file tree
Showing 36 changed files with 4,202 additions and 0 deletions.
16 changes: 16 additions & 0 deletions .github/workflows/style.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
name: Check Style

on: [push, pull_request]

jobs:
style:
runs-on: ubuntu-latest
steps:
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: 7.4
- name: Checkout module
uses: actions/checkout@master
- name: Check style
uses: Nall-chan/action-style@master
14 changes: 14 additions & 0 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
name: Run Tests

on: [push, pull_request]

jobs:
test:
runs-on: ubuntu-latest
steps:
- name: Checkout module
uses: actions/checkout@master
with:
submodules: true
- name: Run tests
uses: symcon/action-tests@master
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<<<<<<< HEAD
/docs/
=======
docs/
>>>>>>> 4236f2949deef76002a8103f5f36eaf5e39b2d66
.vscode/settings.json
12 changes: 12 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
[submodule "libs/helper"]
path = libs/helper
url = https://github.com/Nall-chan/SymconModulHelper
[submodule ".style"]
path = .style
url = https://github.com/Nall-chan/StylePHP
[submodule "tests/stubs"]
path = tests/stubs
url = https://github.com/Nall-chan/SymconStubs
[submodule ".vscode"]
path = .vscode
url = https://github.com/Nall-chan/SymconVSCTasks.git
1 change: 1 addition & 0 deletions .style
Submodule .style added at ccb631
1 change: 1 addition & 0 deletions .vscode
Submodule .vscode added at 672a09
127 changes: 127 additions & 0 deletions KLF200Configurator/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,127 @@
[![SDK](https://img.shields.io/badge/Symcon-PHPModul-red.svg?style=flat-square)](https://www.symcon.de/service/dokumentation/entwicklerbereich/sdk-tools/sdk-php/)
[![Version](https://img.shields.io/badge/Modul%20Version-0.80-blue.svg?style=flat-square)](https://community.symcon.de/t/modul-velux-klf200/50429)
[![Version](https://img.shields.io/badge/Symcon%20Version-5.5%20%3E-green.svg?style=flat-square)](https://www.symcon.de/service/dokumentation/installation/migrationen/v54-v55-q4-2020/)
[![License](https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-green.svg?style=flat-square)](https://creativecommons.org/licenses/by-nc-sa/4.0/)
[![Check Style](https://github.com/Nall-chan/VeluxKLF200/workflows/Check%20Style/badge.svg)](https://github.com/Nall-chan/VeluxKLF200/actions) [![Run Tests](https://github.com/Nall-chan/VeluxKLF200/workflows/Run%20Tests/badge.svg)](https://github.com/Nall-chan/VeluxKLF200/actions)
[![Spenden](https://www.paypalobjects.com/de_DE/DE/i/btn/btn_donate_SM.gif)](#3-spenden)
[![Wunschliste](https://img.shields.io/badge/Wunschliste-Amazon-ff69fb.svg)](#3-spenden)

# Velux KLF200 Configurator <!-- omit in toc -->

## Inhaltsverzeichnis <!-- omit in toc -->

- [1. Funktionsumfang](#1-funktionsumfang)
- [2. Voraussetzungen](#2-voraussetzungen)
- [3. Software-Installation](#3-software-installation)
- [4. Einrichten der Instanzen in IP-Symcon](#4-einrichten-der-instanzen-in-ip-symcon)
- [5. Statusvariablen und Profile](#5-statusvariablen-und-profile)
- [6. Gateway Kommandos](#6-gateway-kommandos)
- [7. PHP-Befehlsreferenz](#7-php-befehlsreferenz)
- [8. Aktionen](#8-aktionen)
- [9. Anhang](#9-anhang)
- [1. Changelog](#1-changelog)
- [2. Spenden](#2-spenden)
- [10. Lizenz](#10-lizenz)


## 1. Funktionsumfang

- Auslesen und darstellen aller vom Gateway bekannten Geräte (Nodes).
- Einfaches Anlegen von neuen Instanzen in IPS.
- Anlernen und löschen von Nodes im Gateway.

## 2. Voraussetzungen

- IPS ab Version 5.5
- KLF200 io-homecontrol® Gateway
- KLF muss per LAN angeschlossen sein
- KLF Firmware 2.0.0.71 oder neuer

## 3. Software-Installation

* Dieses Modul ist Bestandteil der [VeluxKLF200-Library](../README.md#3-software-installation).

## 4. Einrichten der Instanzen in IP-Symcon

Eine einfache Einrichtung ist über diese Instanz möglich.
Bei der installation aus dem Store wird das anlegen der Instanz automatisch angeboten.

In den sich öffneden Konfigurationsfenstern ist das Passwort und die IP-Adresse bzw. der Hostname einzutragen.
``Das Standardkennwort ist dasselbe wie das auf der Rückseite des KLF200 angegebene WLAN-Kennwort.``

Bei der manuellen Einrichtung ist das Modul im Dialog `Instanz hinzufügen` unter den Hersteller `VELUX` zu finden.
![Instanz hinzufügen](../imgs/instanzen.png)

Alternativ ist es auch in der Liste alle Konfiguratoren aufgeführt.
![Instanz hinzufügen](../imgs/instanzen_configurator.png)

Es wird automatisch eine `KLF200 Gateway` Instanz erzeugt, wenn noch keine vorhanden ist.
Werden in dem sich öffnenden Konfigurationsformular keine Geräte angezeigt, so ist zuerst die IO-Instanz korrekt zu konfigurieren.
Diese kann über die Schaltfläche `Gateway konfigurieren` und dann `Schnittstelle konfigurieren` erreicht werden.

Ist die Gateway-Instanz korrekt verbunden, wird beim öffnen des Konfigurator folgendender Dialog angezeigt.
![Konfigurator](../imgs/conf_configurator.png)

Über das selektieren eines Eintrages in der Tabelle und betätigen des dazugehörigen `Erstellen` Button,
können Instanzen in IPS angelegt werden.

## 5. Statusvariablen und Profile

Dieses Modul erstellt keine Statusvariablen und Profile.

## 6. Gateway Kommandos

In dem Konfigurator sind über den ersten Eintrag die Gateway Kommandos erreichbar.
Mit den dort vorhandenen Schaltflächen können Geräte (Nodes) an dem Gateway an- un ab gelernt werden, sowie das Gateway selber neugestartet werden.
Durch die Schaltfläche `Suche Gerät`, wird die Gerätesuche gestartet. Alle Geräte welche sich im Anlern-Modus befinden werden hierdurch an das Gateway angelernt.
![Konfigurator](../imgs/conf_configurator1.png)

Über die Schaltfläche `Entferne Gerät` wird eine Liste mit allen im Gateway vorhandenen Geräten (Nodes) angezeigt.
Durch auswählen eines Eintrages und betätigen von `Entferne Gerät` wird das Gerät aus dem Gateway gelöscht.
![Konfigurator](../imgs/conf_configurator2.png)

## 7. PHP-Befehlsreferenz

**Folgende Funktionen liefern `TRUE` bei Erfolg.
Im Fehlerfall wird eine Warnung erzeugt und `FALSE` zurückgegeben.**

```php
bool KLF200_DiscoveryNodes(int $InstanzeID);
```
Sucht nach neuen Geräten und lernte Diese am Gateway an.

```php
bool KLF200_RemoveNode(int $InstanzeID, int $Node);
```
Entfernt das angelernte Gerät mit der in '$Node' übergebenen NodeId aus dem Gateway.

```php
bool KLF200_RebootGateway(int $InstanzeID);
```
Startet das Gateway KLF200 neu.


## 8. Aktionen

Es gibt keine speziellen Aktionen für dieses Modul.

## 9. Anhang

### 1. Changelog

[Changelog der Library](../README.md#2-changelog)

### 2. Spenden

Die Library ist für die nicht kommerzielle Nutzung kostenlos, Schenkungen als Unterstützung für den Autor werden hier akzeptiert:

<a href="https://www.paypal.com/donate?hosted_button_id=G2SLW2MEMQZH2" target="_blank"><img src="https://www.paypalobjects.com/de_DE/DE/i/btn/btn_donate_LG.gif" border="0" /></a>

[![Wunschliste](https://img.shields.io/badge/Wunschliste-Amazon-ff69fb.svg)](https://www.amazon.de/hz/wishlist/ls/YU4AI9AQT9F?ref_=wl_share)


## 10. Lizenz

IPS-Modul:
[CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/)

162 changes: 162 additions & 0 deletions KLF200Configurator/form.json

Large diffs are not rendered by default.

33 changes: 33 additions & 0 deletions KLF200Configurator/locale.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
{
"translations": {
"de": {
"Gateway commands": "Gateway Kommandos",
"Discover device": "Suche Gerät",
"Remove device": "Entferne Gerät",
"Select device to remove": "Gerät zum Entfernen auswählen",
"Reboot Gateway": "Gateway neustarten",
"Refresh Devicelist": "Aktualisiere Geräteliste",
"Type": "Typ",
"Zone": "Zone",
"Name": "Name",
"Location": "Lokation",
"Instance has no active parent.": "Instanz hat keinen aktiven Parent.",
"Splitter has no IO instance.": "Splitter hat keine IO Instanz.",
"%s out of range.": "%s außerhalb des zulässigen Bereiches.",
"The view will reload after discovery is finished.": "Die Ansicht wird neu geladen, sobald die Suche abgeschlossen wurde.",
"The view will reload after remove is finished.": "Die Ansicht wird neu geladen, nachdem das Entfernen beendet wurde.",
"The KLF200 will now reboot.": "Das KLF200 wird jetzt neustarten.",
"No error.": "Kein Fehler.",
"Timeout.": "Zeitüberschreitung.",
"Waiting for finish remove.": "Warte auf entfernen.",
"Waiting for finish discovery.": "Warte auf Gerätesuche.",
"Not further defined error.": "Nicht weiter definierter Fehler.",
"Unknown command or command is not accepted at this state.": "Unbekanntes Kommando oder Kommando wird zu diesem Zeitpunkt nicht akzeptiert.",
"Error on Frame Structure.": "Fehler in Frame Struktur.",
"Busy. Try again later.": "Beschäftigt. Später nochmal versuchen.",
"Bad system table index.": "Ungültiger Index der Systemtabelle.",
"Not authenticated.": "Nicht berechtigt.",
"This module is free for non-commercial use,\r\nDonations in support of the author are accepted here:": "Dieses Modul ist für die nicht kommerzielle Nutzung kostenlos,\r\nSchenkungen als Unterstützung für den Autor werden hier akzeptiert:"
}
}
}
18 changes: 18 additions & 0 deletions KLF200Configurator/module.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
{
"id": "{38724E6E-8202-4D37-9FA7-BDD2EDA79520}",
"name": "KLF200 Configurator",
"type": 4,
"vendor": "VELUX",
"aliases": [
"KLF200 Configurator"
],
"parentRequirements": [
"{7B0F87CC-0408-4283-8E0E-2D48141E42E8}"
],
"childRequirements": [],
"implemented": [
"{5242DAEF-EEBD-441F-AB0B-E83C01475B65}"
],
"prefix": "KLF200",
"url": "https://github.com/Nall-chan/VeluxKLF200/blob/master/KLF200Configurator/README.md"
}
Loading

0 comments on commit 52d710c

Please sign in to comment.