Compare commits
8 Commits
Author | SHA1 | Date | |
---|---|---|---|
157ff06ba0 | |||
1cc8df148d | |||
9e06629595 | |||
77dd5c32d3 | |||
9c7d652fbb | |||
7855d78a64 | |||
cf6c452b1e | |||
acf6e6845c |
4
.gitignore
vendored
4
.gitignore
vendored
@ -1,5 +1,3 @@
|
||||
/.vs
|
||||
/Zway-Bot/obj
|
||||
/Zway-Bot/bin/Debug
|
||||
/Zway-Bot/bin/Release/*.pdb
|
||||
/Zway-Bot/bin/Release/output.log
|
||||
/Zway-Bot/bin
|
||||
|
310
CHANGELOG.md
Normal file
310
CHANGELOG.md
Normal file
@ -0,0 +1,310 @@
|
||||
# Changelog
|
||||
|
||||
## 1.8.4 - 2022-01-30 - Logging now more better
|
||||
### New Features
|
||||
* Default settings.conf have now debug=false
|
||||
* ZwayDataUpdate now uses DebugLogging flag
|
||||
### Bugfixes
|
||||
* Fixing bug in logrotate-script
|
||||
### Changes
|
||||
* ProgrammLogger SetPath removed cause its done by Bot-Utils
|
||||
* IniReader SetSearchPath removed, cause its done by Bot-Utils
|
||||
*
|
||||
* Bump Bot-Utils to ([v.1.2.6](https://git.blubbfish.net/vs_utils/Bot-Utils/src/tag/v1.2.6))
|
||||
* Bump Utils to ([v.1.6.2](https://git.blubbfish.net/vs_utils/Utils/src/tag/v1.2.6))
|
||||
|
||||
## 1.8.3 - 2022-01-20 - Shutdown working
|
||||
### New Features
|
||||
* Deconstruction makes better Output
|
||||
### Bugfixes
|
||||
### Changes
|
||||
* Bump Bot-Utils to ([v.1.2.5](https://git.blubbfish.net/vs_utils/Bot-Utils/src/tag/v1.2.5))
|
||||
* Bunp Utils to ([v1.6.1](https://git.blubbfish.net/vs_utils/Utils/src/tag/v1.6.1))
|
||||
* Bump Zway to ([v1.6.1](https://git.blubbfish.net/vs_projects/Zway/src/tag/v1.6.1))
|
||||
* Modify buildscript
|
||||
|
||||
## 1.8.2 - 2022-01-19 - Logging better
|
||||
### New Features
|
||||
* Change buildscript, so logrotate is not overwritten by setup every time
|
||||
### Bugfixes
|
||||
### Changes
|
||||
* Change default logpath
|
||||
* Modify buildscript
|
||||
|
||||
## 1.8.1 - 2022-01-18 - New Default Configs
|
||||
### New Features
|
||||
* Bump Bot-Utils to ([v1.2.4](https://git.blubbfish.net/vs_utils/Bot-Utils/src/tag/v1.2.4)) and using the possibillity to enable via config if a module is loaded
|
||||
### Bugfixes
|
||||
* Buildscript not cleansup behind
|
||||
### Changes
|
||||
* New Sample Configs
|
||||
* Codingstyles
|
||||
* Add dependency to dotnet-runtime-3.1 (>= 3.1.22) in buildscript
|
||||
|
||||
## 1.8.0 - 2022-01-16 - Running again
|
||||
### New Features
|
||||
* Change licence file (LGPL 4)
|
||||
* Running in netcore now
|
||||
* Add Changelog, Contribution
|
||||
* Update Readme
|
||||
### Bugfixes
|
||||
### Changes
|
||||
* Remove releases from source
|
||||
* Using the rewrote abstract mqtt class
|
||||
* Also senml is simpler
|
||||
* Loading of names.ini different so it now passes another datastructure
|
||||
* names.ini are now containing deviceid related items and not the same data for the same device
|
||||
* settings.ini now needs a type
|
||||
* Sample config not having example in name anymore
|
||||
* Buildsystem is now using ci-scripts
|
||||
* Windows installer using new location of icons
|
||||
|
||||
## 1.7.3 - 2018-10-29 - Change dependencys
|
||||
### New Features
|
||||
* Add readme
|
||||
### Bugfixes
|
||||
### Changes
|
||||
* update mono-runtime dependency to 5.16
|
||||
* Move licence to another location
|
||||
|
||||
## 1.7.2 - 2018-10-02 - Improve
|
||||
### New Features
|
||||
* Add Logging to some Modules
|
||||
### Bugfixes
|
||||
* fixing a bug in overtaker (now it not removes every time all events, so only the latest event are watched)
|
||||
### Changes
|
||||
|
||||
## 1.7.1 - 2018-09-29 - Tiny fix for nullpointer exception
|
||||
### New Features
|
||||
### Bugfixes
|
||||
* Fixing issue in zway lib ([v1.5.1](https://git.blubbfish.net/vs_projects/Zway/src/tag/v1.5.1))
|
||||
### Changes
|
||||
|
||||
## 1.7.0 - 2018-09-29 - Rewrite of Eventhandleing, Threaded
|
||||
### New Features
|
||||
* Rewrite of Eventhandleing, Threaded
|
||||
* enable service before reloading systemd
|
||||
* kill the process if its not stopping in 5s
|
||||
### Bugfixes
|
||||
### Changes
|
||||
* Change the Namespace
|
||||
* Codestyle
|
||||
* Exceptionhandleing
|
||||
|
||||
## 1.6.2 - 2018-06-09 - Moved CronJob, Overtaker, Statuspolling to Abstract Bot-Utils
|
||||
### New Features
|
||||
* Add first Licence
|
||||
* Move more to Bot-Utils
|
||||
* Finish creation of windowssetup
|
||||
### Bugfixes
|
||||
### Changes
|
||||
|
||||
## 1.6.1 - 2018-06-07 - Add Bot-Utils and rewrite code
|
||||
### New Features
|
||||
* Move Abstract Stuff to Bot-Utils
|
||||
* Rewrite to use the new Utils Library
|
||||
* Make Senml as a childclass of Mqtt
|
||||
### Bugfixes
|
||||
### Changes
|
||||
|
||||
## 1.6.0 - 2018-06-05 - Thread that checks if a MQTT Connection exists and if not reopen it
|
||||
### New Features
|
||||
* Automatic reconnect in MQTT
|
||||
### Bugfixes
|
||||
### Changes
|
||||
|
||||
## 1.5.7 - 2018-06-02 - new try
|
||||
### New Features
|
||||
### Bugfixes
|
||||
* forget cr
|
||||
### Changes
|
||||
|
||||
## 1.5.6 - 2018-06-02 - new try
|
||||
### New Features
|
||||
### Bugfixes
|
||||
* using /bin/bash
|
||||
### Changes
|
||||
|
||||
## 1.5.5 - 2018-06-02 - new try
|
||||
### New Features
|
||||
### Bugfixes
|
||||
* restart not working correctly
|
||||
### Changes
|
||||
|
||||
## 1.5.4 - 2018-06-02 - Fixing Bug in after installation script
|
||||
### New Features
|
||||
### Bugfixes
|
||||
* not using sudo in installscripts
|
||||
### Changes
|
||||
|
||||
## 1.5.3 - 2018-06-02 - Making service linux running
|
||||
### New Features
|
||||
* restart the service if its was running before
|
||||
* Output the error to syslog
|
||||
### Bugfixes
|
||||
### Changes
|
||||
|
||||
## 1.5.2 - 2018-06-02 - Cleanup
|
||||
### New Features
|
||||
* Debian Package includes the arch in name
|
||||
### Bugfixes
|
||||
* Try to fix a shutdown bug
|
||||
### Changes
|
||||
* Move deb package to another dictionary
|
||||
* Codingstyle
|
||||
* Programm is not stared automatically after install
|
||||
* Remove the creation of logfile in service file
|
||||
|
||||
## 1.5.1 - 2018-06-02 - Logrotate
|
||||
### New Features
|
||||
* Output when creating the waiting loop
|
||||
* Add logrotate script to debian package
|
||||
### Bugfixes
|
||||
* Absolute paths in service file
|
||||
### Changes
|
||||
|
||||
## 1.5.0 - 2018-05-29 - More Systemd
|
||||
### New Features
|
||||
* Buildscript now dedects the versionnumber itselfs
|
||||
### Bugfixes
|
||||
* Mono.Runtime is only called when its presend
|
||||
* postinst reloads systemctl first before try to start service
|
||||
* Create the logfile first before start the programm
|
||||
### Changes
|
||||
* Remove the old starting system with screen
|
||||
|
||||
## 1.4.3 - 2018-05-15 - Now sould dedect Strg+c on Linux
|
||||
### New Features
|
||||
* Posibillity to dedect Interrupt on Linux also
|
||||
* Extend debian package to use postinst, where the service is started
|
||||
* preinst now creates a group
|
||||
### Bugfixes
|
||||
* Remove BOM on sample configs
|
||||
### Changes
|
||||
|
||||
## 1.4.2 - 2018-05-15 - Fixinig installations dpkg script
|
||||
### New Features
|
||||
* The arch is now an argument in build
|
||||
### Bugfixes
|
||||
### Changes
|
||||
|
||||
## 1.4.1 - 2018-05-15 - Fixinig installations dpkg script
|
||||
### New Features
|
||||
### Bugfixes
|
||||
* Using any instead of i386 arch
|
||||
### Changes
|
||||
|
||||
## 1.4.0 - 2018-05-15 - Utils.csproj
|
||||
### New Features
|
||||
* Using Programmlogger now
|
||||
* Extend debian package to use systemd
|
||||
* Add linux systemd service file
|
||||
### Bugfixes
|
||||
* Remove Starting / in mqtt topic
|
||||
### Changes
|
||||
* Waiting fot Interrupt for exit the program
|
||||
* Codingstyles
|
||||
|
||||
## 1.3.4 - 2018-05-12 - Bump zway lib to v1.4.3
|
||||
### New Features
|
||||
* Start of generating windows installer
|
||||
### Bugfixes
|
||||
* Fixing issue in zway lib ([v1.4.3](https://git.blubbfish.net/vs_projects/Zway/src/tag/v1.4.3))
|
||||
### Changes
|
||||
|
||||
## 1.3.3 - 2018-05-10 - Bump zway lib to v1.4.2.0
|
||||
### New Features
|
||||
### Bugfixes
|
||||
* Fixing issue in zway lib ([v1.4.2.0](https://git.blubbfish.net/vs_projects/Zway/src/tag/v1.4.2.0))
|
||||
### Changes
|
||||
* Move the finish deb packets to another directory
|
||||
|
||||
## 1.3.2 - 2018-05-08 - Debian Packaging
|
||||
### New Features
|
||||
* Start creating debian packages
|
||||
### Bugfixes
|
||||
### Changes
|
||||
|
||||
## 1.3.1.0 - 2018-05-07 - Add Senml
|
||||
### New Features
|
||||
* Add HasInterface to Helper
|
||||
* Add Senml Module
|
||||
* Add helper for Debian so the programm can be run as service like
|
||||
* Type /exit to shutdown the program
|
||||
* IniReader now supports the config lookup
|
||||
* Add Config examples
|
||||
### Bugfixes
|
||||
* Avoid nullpointer exception
|
||||
### Changes
|
||||
* Remove Flex4Grid Plugin
|
||||
* Make ABackend as a Parent Class of ADataBackend
|
||||
|
||||
## 1.3.0.0 - 2017-12-22 - add possability to modify the config over mqtt
|
||||
### New Features
|
||||
* Config is now stored in an array, so it can be modyfied
|
||||
### Bugfixes
|
||||
### Changes
|
||||
* Mqtt Modul Refactored
|
||||
|
||||
## 1.2.2.0 - 2017-12-19 - Set values over mqtt
|
||||
### New Features
|
||||
* Helper has now ToUpperLower
|
||||
* Possiblity to Set and get values over mqtt
|
||||
### Bugfixes
|
||||
### Changes
|
||||
|
||||
## 1.2.1.0 - 2017-12-17 - Tiny fix for mqtt
|
||||
### New Features
|
||||
* Helper can now dedect Double
|
||||
### Bugfixes
|
||||
### Changes
|
||||
|
||||
## 1.2.0.0 - 2017-12-17 - Adding Status Polling and Mqtt (not compelete)
|
||||
### New Features
|
||||
* Add IForceLoad, so a module is loaded even if there is no config for it
|
||||
* Add Mqtt Module
|
||||
* Add StatusPolling, so All devices are regulary querdied (once a day)
|
||||
### Bugfixes
|
||||
### Changes
|
||||
* Refactoring
|
||||
|
||||
## 1.1.2.1 - 2017-12-09 - Next try to emulate F4G Events
|
||||
### New Features
|
||||
### Bugfixes
|
||||
* Flex4Grid needs more hacking to emulate a client
|
||||
### Changes
|
||||
|
||||
## 1.1.2.0 - 2017-12-08 - Interconnection
|
||||
### New Features
|
||||
* Module can now access each other during load
|
||||
* Cronjob now can execure actions from other modules
|
||||
### Bugfixes
|
||||
* F4G needs to "ping" the server
|
||||
### Changes
|
||||
|
||||
## 1.1.1.0 - 2017-12-06 - F4G Module
|
||||
### New Features
|
||||
* Add Flex4Grid Module
|
||||
* Add Icon (“Internet Of Things” icon by By Michael Wohlwend, US, from thenounproject.com.)
|
||||
### Bugfixes
|
||||
### Changes
|
||||
|
||||
## 1.1.0.0 - 2017-12-02 - AModul
|
||||
### New Features
|
||||
* Internal eventing is now using ModulEventArgs
|
||||
* Add AModul, Refactoring Modules
|
||||
* Improving Modul Loading
|
||||
### Bugfixes
|
||||
### Changes
|
||||
|
||||
## 1.0.1.0 - 2017-12-01 - Cronjob Bugfix
|
||||
### New Features
|
||||
### Bugfixes
|
||||
* Fixing Bug with Cronjob
|
||||
### Changes
|
||||
|
||||
## 1.0.0.0 - 2017-11-25 - Init
|
||||
### New Features
|
||||
* First Version
|
||||
### Bugfixes
|
||||
### Changes
|
92
CONTRIBUTING.md
Normal file
92
CONTRIBUTING.md
Normal file
@ -0,0 +1,92 @@
|
||||
# Contributing
|
||||
|
||||
When contributing to this repository, please first discuss the change you wish to make via issue,
|
||||
email, or any other method with the owners of this repository before making a change.
|
||||
|
||||
Please note we have a code of conduct, please follow it in all your interactions with the project.
|
||||
|
||||
## Pull Request Process
|
||||
|
||||
1. Ensure any install or build dependencies are removed before the end of the layer when doing a
|
||||
build.
|
||||
2. Update the README.md with details of changes to the interface, this includes new environment
|
||||
variables, exposed ports, useful file locations and container parameters.
|
||||
3. Increase the version numbers in any examples files and the README.md to the new version that this
|
||||
Pull Request would represent. The versioning scheme we use is [SemVer](http://semver.org/).
|
||||
4. You may merge the Pull Request in once you have the sign-off of two other developers, or if you
|
||||
do not have permission to do that, you may request the second reviewer to merge it for you.
|
||||
|
||||
## Code of Conduct
|
||||
|
||||
### Our Pledge
|
||||
|
||||
In the interest of fostering an open and welcoming environment, we as
|
||||
contributors and maintainers pledge to making participation in our project and
|
||||
our community a harassment-free experience for everyone, regardless of age, body
|
||||
size, disability, ethnicity, gender identity and expression, level of experience,
|
||||
nationality, personal appearance, race, religion, or sexual identity and
|
||||
orientation.
|
||||
|
||||
### Our Standards
|
||||
|
||||
Examples of behavior that contributes to creating a positive environment
|
||||
include:
|
||||
|
||||
* Using welcoming and inclusive language
|
||||
* Being respectful of differing viewpoints and experiences
|
||||
* Gracefully accepting constructive criticism
|
||||
* Focusing on what is best for the community
|
||||
* Showing empathy towards other community members
|
||||
|
||||
Examples of unacceptable behavior by participants include:
|
||||
|
||||
* The use of sexualized language or imagery and unwelcome sexual attention or
|
||||
advances
|
||||
* Trolling, insulting/derogatory comments, and personal or political attacks
|
||||
* Public or private harassment
|
||||
* Publishing others' private information, such as a physical or electronic
|
||||
address, without explicit permission
|
||||
* Other conduct which could reasonably be considered inappropriate in a
|
||||
professional setting
|
||||
|
||||
### Our Responsibilities
|
||||
|
||||
Project maintainers are responsible for clarifying the standards of acceptable
|
||||
behavior and are expected to take appropriate and fair corrective action in
|
||||
response to any instances of unacceptable behavior.
|
||||
|
||||
Project maintainers have the right and responsibility to remove, edit, or
|
||||
reject comments, commits, code, wiki edits, issues, and other contributions
|
||||
that are not aligned to this Code of Conduct, or to ban temporarily or
|
||||
permanently any contributor for other behaviors that they deem inappropriate,
|
||||
threatening, offensive, or harmful.
|
||||
|
||||
### Scope
|
||||
|
||||
This Code of Conduct applies both within project spaces and in public spaces
|
||||
when an individual is representing the project or its community. Examples of
|
||||
representing a project or community include using an official project e-mail
|
||||
address, posting via an official social media account, or acting as an appointed
|
||||
representative at an online or offline event. Representation of a project may be
|
||||
further defined and clarified by project maintainers.
|
||||
|
||||
### Enforcement
|
||||
|
||||
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
||||
reported by contacting the project team at git ATTTT blubbfish.net. All
|
||||
complaints will be reviewed and investigated and will result in a response that
|
||||
is deemed necessary and appropriate to the circumstances. The project team is
|
||||
obligated to maintain confidentiality with regard to the reporter of an incident.
|
||||
Further details of specific enforcement policies may be posted separately.
|
||||
|
||||
Project maintainers who do not follow or enforce the Code of Conduct in good
|
||||
faith may face temporary or permanent repercussions as determined by other
|
||||
members of the project's leadership.
|
||||
|
||||
### Attribution
|
||||
|
||||
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
|
||||
available at [http://contributor-covenant.org/version/1/4][version]
|
||||
|
||||
[homepage]: http://contributor-covenant.org
|
||||
[version]: http://contributor-covenant.org/version/1/4/
|
515
LICENSE
515
LICENSE
@ -1,362 +1,165 @@
|
||||
Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International Creative
|
||||
Commons Corporation ("Creative Commons") is not a law firm and does not provide
|
||||
legal services or legal advice. Distribution of Creative Commons public licenses
|
||||
does not create a lawyer-client or other relationship. Creative Commons makes
|
||||
its licenses and related information available on an "as-is" basis. Creative
|
||||
Commons gives no warranties regarding its licenses, any material licensed
|
||||
under their terms and conditions, or any related information. Creative Commons
|
||||
disclaims all liability for damages resulting from their use to the fullest
|
||||
extent possible.
|
||||
|
||||
Using Creative Commons Public Licenses
|
||||
|
||||
Creative Commons public licenses provide a standard set of terms and conditions
|
||||
that creators and other rights holders may use to share original works of
|
||||
authorship and other material subject to copyright and certain other rights
|
||||
specified in the public license below. The following considerations are for
|
||||
informational purposes only, are not exhaustive, and do not form part of our
|
||||
licenses.
|
||||
|
||||
Considerations for licensors: Our public licenses are intended for use by
|
||||
those authorized to give the public permission to use material in ways otherwise
|
||||
restricted by copyright and certain other rights. Our licenses are irrevocable.
|
||||
Licensors should read and understand the terms and conditions of the license
|
||||
they choose before applying it. Licensors should also secure all rights necessary
|
||||
before applying our licenses so that the public can reuse the material as
|
||||
expected. Licensors should clearly mark any material not subject to the license.
|
||||
This includes other CC-licensed material, or material used under an exception
|
||||
or limitation to copyright. More considerations for licensors : wiki.creativecommons.org/Considerations_for_licensors
|
||||
|
||||
Considerations for the public: By using one of our public licenses, a licensor
|
||||
grants the public permission to use the licensed material under specified
|
||||
terms and conditions. If the licensor's permission is not necessary for any
|
||||
reason–for example, because of any applicable exception or limitation to copyright–then
|
||||
that use is not regulated by the license. Our licenses grant only permissions
|
||||
under copyright and certain other rights that a licensor has authority to
|
||||
grant. Use of the licensed material may still be restricted for other reasons,
|
||||
including because others have copyright or other rights in the material. A
|
||||
licensor may make special requests, such as asking that all changes be marked
|
||||
or described. Although not required by our licenses, you are encouraged to
|
||||
respect those requests where reasonable. More considerations for the public
|
||||
: wiki.creativecommons.org/Considerations_for_licensees
|
||||
|
||||
Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International Public
|
||||
License
|
||||
|
||||
By exercising the Licensed Rights (defined below), You accept and agree to
|
||||
be bound by the terms and conditions of this Creative Commons Attribution-NonCommercial-ShareAlike
|
||||
4.0 International Public License ("Public License"). To the extent this Public
|
||||
License may be interpreted as a contract, You are granted the Licensed Rights
|
||||
in consideration of Your acceptance of these terms and conditions, and the
|
||||
Licensor grants You such rights in consideration of benefits the Licensor
|
||||
receives from making the Licensed Material available under these terms and
|
||||
conditions.
|
||||
|
||||
Section 1 – Definitions.
|
||||
|
||||
a. Adapted Material means material subject to Copyright and Similar Rights
|
||||
that is derived from or based upon the Licensed Material and in which the
|
||||
Licensed Material is translated, altered, arranged, transformed, or otherwise
|
||||
modified in a manner requiring permission under the Copyright and Similar
|
||||
Rights held by the Licensor. For purposes of this Public License, where the
|
||||
Licensed Material is a musical work, performance, or sound recording, Adapted
|
||||
Material is always produced where the Licensed Material is synched in timed
|
||||
relation with a moving image.
|
||||
|
||||
b. Adapter's License means the license You apply to Your Copyright and Similar
|
||||
Rights in Your contributions to Adapted Material in accordance with the terms
|
||||
and conditions of this Public License.
|
||||
|
||||
c. BY-NC-SA Compatible License means a license listed at creativecommons.org/compatiblelicenses,
|
||||
approved by Creative Commons as essentially the equivalent of this Public
|
||||
License.
|
||||
|
||||
d. Copyright and Similar Rights means copyright and/or similar rights closely
|
||||
related to copyright including, without limitation, performance, broadcast,
|
||||
sound recording, and Sui Generis Database Rights, without regard to how the
|
||||
rights are labeled or categorized. For purposes of this Public License, the
|
||||
rights specified in Section 2(b)(1)-(2) are not Copyright and Similar Rights.
|
||||
|
||||
e. Effective Technological Measures means those measures that, in the absence
|
||||
of proper authority, may not be circumvented under laws fulfilling obligations
|
||||
under Article 11 of the WIPO Copyright Treaty adopted on December 20, 1996,
|
||||
and/or similar international agreements.
|
||||
|
||||
f. Exceptions and Limitations means fair use, fair dealing, and/or any other
|
||||
exception or limitation to Copyright and Similar Rights that applies to Your
|
||||
use of the Licensed Material.
|
||||
|
||||
g. License Elements means the license attributes listed in the name of a Creative
|
||||
Commons Public License. The License Elements of this Public License are Attribution,
|
||||
NonCommercial, and ShareAlike.
|
||||
|
||||
h. Licensed Material means the artistic or literary work, database, or other
|
||||
material to which the Licensor applied this Public License.
|
||||
|
||||
i. Licensed Rights means the rights granted to You subject to the terms and
|
||||
conditions of this Public License, which are limited to all Copyright and
|
||||
Similar Rights that apply to Your use of the Licensed Material and that the
|
||||
Licensor has authority to license.
|
||||
|
||||
j. Licensor means the individual(s) or entity(ies) granting rights under this
|
||||
Public License.
|
||||
|
||||
k. NonCommercial means not primarily intended for or directed towards commercial
|
||||
advantage or monetary compensation. For purposes of this Public License, the
|
||||
exchange of the Licensed Material for other material subject to Copyright
|
||||
and Similar Rights by digital file-sharing or similar means is NonCommercial
|
||||
provided there is no payment of monetary compensation in connection with the
|
||||
exchange.
|
||||
|
||||
l. Share means to provide material to the public by any means or process that
|
||||
requires permission under the Licensed Rights, such as reproduction, public
|
||||
display, public performance, distribution, dissemination, communication, or
|
||||
importation, and to make material available to the public including in ways
|
||||
that members of the public may access the material from a place and at a time
|
||||
individually chosen by them.
|
||||
|
||||
m. Sui Generis Database Rights means rights other than copyright resulting
|
||||
from Directive 96/9/EC of the European Parliament and of the Council of 11
|
||||
March 1996 on the legal protection of databases, as amended and/or succeeded,
|
||||
as well as other essentially equivalent rights anywhere in the world.
|
||||
|
||||
n. You means the individual or entity exercising the Licensed Rights under
|
||||
this Public License. Your has a corresponding meaning.
|
||||
|
||||
Section 2 – Scope.
|
||||
|
||||
a. License grant.
|
||||
|
||||
1. Subject to the terms and conditions of this Public License, the Licensor
|
||||
hereby grants You a worldwide, royalty-free, non-sublicensable, non-exclusive,
|
||||
irrevocable license to exercise the Licensed Rights in the Licensed Material
|
||||
to:
|
||||
|
||||
A. reproduce and Share the Licensed Material, in whole or in part, for NonCommercial
|
||||
purposes only; and
|
||||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
Version 3, 29 June 2007
|
||||
|
||||
B. produce, reproduce, and Share Adapted Material for NonCommercial purposes
|
||||
only.
|
||||
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
2. Exceptions and Limitations. For the avoidance of doubt, where Exceptions
|
||||
and Limitations apply to Your use, this Public License does not apply, and
|
||||
You do not need to comply with its terms and conditions.
|
||||
|
||||
3. Term. The term of this Public License is specified in Section 6(a).
|
||||
This version of the GNU Lesser General Public License incorporates
|
||||
the terms and conditions of version 3 of the GNU General Public
|
||||
License, supplemented by the additional permissions listed below.
|
||||
|
||||
4. Media and formats; technical modifications allowed. The Licensor authorizes
|
||||
You to exercise the Licensed Rights in all media and formats whether now known
|
||||
or hereafter created, and to make technical modifications necessary to do
|
||||
so. The Licensor waives and/or agrees not to assert any right or authority
|
||||
to forbid You from making technical modifications necessary to exercise the
|
||||
Licensed Rights, including technical modifications necessary to circumvent
|
||||
Effective Technological Measures. For purposes of this Public License, simply
|
||||
making modifications authorized by this Section 2(a)(4) never produces Adapted
|
||||
Material.
|
||||
0. Additional Definitions.
|
||||
|
||||
5. Downstream recipients.
|
||||
As used herein, "this License" refers to version 3 of the GNU Lesser
|
||||
General Public License, and the "GNU GPL" refers to version 3 of the GNU
|
||||
General Public License.
|
||||
|
||||
A. Offer from the Licensor – Licensed Material. Every recipient of the Licensed
|
||||
Material automatically receives an offer from the Licensor to exercise the
|
||||
Licensed Rights under the terms and conditions of this Public License.
|
||||
|
||||
B. Additional offer from the Licensor – Adapted Material. Every recipient
|
||||
of Adapted Material from You automatically receives an offer from the Licensor
|
||||
to exercise the Licensed Rights in the Adapted Material under the conditions
|
||||
of the Adapter's License You apply.
|
||||
|
||||
C. No downstream restrictions. You may not offer or impose any additional
|
||||
or different terms or conditions on, or apply any Effective Technological
|
||||
Measures to, the Licensed Material if doing so restricts exercise of the Licensed
|
||||
Rights by any recipient of the Licensed Material.
|
||||
|
||||
6. No endorsement. Nothing in this Public License constitutes or may be construed
|
||||
as permission to assert or imply that You are, or that Your use of the Licensed
|
||||
Material is, connected with, or sponsored, endorsed, or granted official status
|
||||
by, the Licensor or others designated to receive attribution as provided in
|
||||
Section 3(a)(1)(A)(i).
|
||||
|
||||
b. Other rights.
|
||||
|
||||
1. Moral rights, such as the right of integrity, are not licensed under this
|
||||
Public License, nor are publicity, privacy, and/or other similar personality
|
||||
rights; however, to the extent possible, the Licensor waives and/or agrees
|
||||
not to assert any such rights held by the Licensor to the limited extent necessary
|
||||
to allow You to exercise the Licensed Rights, but not otherwise.
|
||||
|
||||
2. Patent and trademark rights are not licensed under this Public License.
|
||||
|
||||
3. To the extent possible, the Licensor waives any right to collect royalties
|
||||
from You for the exercise of the Licensed Rights, whether directly or through
|
||||
a collecting society under any voluntary or waivable statutory or compulsory
|
||||
licensing scheme. In all other cases the Licensor expressly reserves any right
|
||||
to collect such royalties, including when the Licensed Material is used other
|
||||
than for NonCommercial purposes.
|
||||
|
||||
Section 3 – License Conditions.
|
||||
|
||||
Your exercise of the Licensed Rights is expressly made subject to the following
|
||||
conditions.
|
||||
|
||||
a. Attribution.
|
||||
|
||||
1. If You Share the Licensed Material (including in modified form), You must:
|
||||
|
||||
A. retain the following if it is supplied by the Licensor with the Licensed
|
||||
Material:
|
||||
|
||||
i. identification of the creator(s) of the Licensed Material and any others
|
||||
designated to receive attribution, in any reasonable manner requested by the
|
||||
Licensor (including by pseudonym if designated);
|
||||
|
||||
ii. a copyright notice;
|
||||
|
||||
iii. a notice that refers to this Public License;
|
||||
|
||||
iv. a notice that refers to the disclaimer of warranties;
|
||||
|
||||
|
||||
|
||||
v. a URI or hyperlink to the Licensed Material to the extent reasonably practicable;
|
||||
|
||||
B. indicate if You modified the Licensed Material and retain an indication
|
||||
of any previous modifications; and
|
||||
|
||||
C. indicate the Licensed Material is licensed under this Public License, and
|
||||
include the text of, or the URI or hyperlink to, this Public License.
|
||||
|
||||
2. You may satisfy the conditions in Section 3(a)(1) in any reasonable manner
|
||||
based on the medium, means, and context in which You Share the Licensed Material.
|
||||
For example, it may be reasonable to satisfy the conditions by providing a
|
||||
URI or hyperlink to a resource that includes the required information.
|
||||
|
||||
3. If requested by the Licensor, You must remove any of the information required
|
||||
by Section 3(a)(1)(A) to the extent reasonably practicable.
|
||||
|
||||
b. ShareAlike.In addition to the conditions in Section 3(a), if You Share
|
||||
Adapted Material You produce, the following conditions also apply.
|
||||
|
||||
1. The Adapter's License You apply must be a Creative Commons license with
|
||||
the same License Elements, this version or later, or a BY-NC-SA Compatible
|
||||
License.
|
||||
|
||||
2. You must include the text of, or the URI or hyperlink to, the Adapter's
|
||||
License You apply. You may satisfy this condition in any reasonable manner
|
||||
based on the medium, means, and context in which You Share Adapted Material.
|
||||
|
||||
3. You may not offer or impose any additional or different terms or conditions
|
||||
on, or apply any Effective Technological Measures to, Adapted Material that
|
||||
restrict exercise of the rights granted under the Adapter's License You apply.
|
||||
|
||||
Section 4 – Sui Generis Database Rights.
|
||||
|
||||
Where the Licensed Rights include Sui Generis Database Rights that apply to
|
||||
Your use of the Licensed Material:
|
||||
|
||||
a. for the avoidance of doubt, Section 2(a)(1) grants You the right to extract,
|
||||
reuse, reproduce, and Share all or a substantial portion of the contents of
|
||||
the database for NonCommercial purposes only;
|
||||
|
||||
b. if You include all or a substantial portion of the database contents in
|
||||
a database in which You have Sui Generis Database Rights, then the database
|
||||
in which You have Sui Generis Database Rights (but not its individual contents)
|
||||
is Adapted Material, including for purposes of Section 3(b); and
|
||||
|
||||
c. You must comply with the conditions in Section 3(a) if You Share all or
|
||||
a substantial portion of the contents of the database.
|
||||
|
||||
For the avoidance of doubt, this Section 4 supplements and does not replace
|
||||
Your obligations under this Public License where the Licensed Rights include
|
||||
other Copyright and Similar Rights.
|
||||
|
||||
Section 5 – Disclaimer of Warranties and Limitation of Liability.
|
||||
|
||||
a. Unless otherwise separately undertaken by the Licensor, to the extent possible,
|
||||
the Licensor offers the Licensed Material as-is and as-available, and makes
|
||||
no representations or warranties of any kind concerning the Licensed Material,
|
||||
whether express, implied, statutory, or other. This includes, without limitation,
|
||||
warranties of title, merchantability, fitness for a particular purpose, non-infringement,
|
||||
absence of latent or other defects, accuracy, or the presence or absence of
|
||||
errors, whether or not known or discoverable. Where disclaimers of warranties
|
||||
are not allowed in full or in part, this disclaimer may not apply to You.
|
||||
|
||||
b. To the extent possible, in no event will the Licensor be liable to You
|
||||
on any legal theory (including, without limitation, negligence) or otherwise
|
||||
for any direct, special, indirect, incidental, consequential, punitive, exemplary,
|
||||
or other losses, costs, expenses, or damages arising out of this Public License
|
||||
or use of the Licensed Material, even if the Licensor has been advised of
|
||||
the possibility of such losses, costs, expenses, or damages. Where a limitation
|
||||
of liability is not allowed in full or in part, this limitation may not apply
|
||||
to You.
|
||||
|
||||
c. The disclaimer of warranties and limitation of liability provided above
|
||||
shall be interpreted in a manner that, to the extent possible, most closely
|
||||
approximates an absolute disclaimer and waiver of all liability.
|
||||
|
||||
Section 6 – Term and Termination.
|
||||
|
||||
a. This Public License applies for the term of the Copyright and Similar Rights
|
||||
licensed here. However, if You fail to comply with this Public License, then
|
||||
Your rights under this Public License terminate automatically.
|
||||
|
||||
b. Where Your right to use the Licensed Material has terminated under Section
|
||||
6(a), it reinstates:
|
||||
|
||||
1. automatically as of the date the violation is cured, provided it is cured
|
||||
within 30 days of Your discovery of the violation; or
|
||||
|
||||
2. upon express reinstatement by the Licensor.
|
||||
|
||||
For the avoidance of doubt, this Section 6(b) does not affect any right the
|
||||
Licensor may have to seek remedies for Your violations of this Public License.
|
||||
|
||||
c. For the avoidance of doubt, the Licensor may also offer the Licensed Material
|
||||
under separate terms or conditions or stop distributing the Licensed Material
|
||||
at any time; however, doing so will not terminate this Public License.
|
||||
|
||||
d. Sections 1, 5, 6, 7, and 8 survive termination of this Public License.
|
||||
|
||||
Section 7 – Other Terms and Conditions.
|
||||
|
||||
a. The Licensor shall not be bound by any additional or different terms or
|
||||
conditions communicated by You unless expressly agreed.
|
||||
|
||||
b. Any arrangements, understandings, or agreements regarding the Licensed
|
||||
Material not stated herein are separate from and independent of the terms
|
||||
and conditions of this Public License.
|
||||
|
||||
Section 8 – Interpretation.
|
||||
|
||||
a. For the avoidance of doubt, this Public License does not, and shall not
|
||||
be interpreted to, reduce, limit, restrict, or impose conditions on any use
|
||||
of the Licensed Material that could lawfully be made without permission under
|
||||
this Public License.
|
||||
|
||||
b. To the extent possible, if any provision of this Public License is deemed
|
||||
unenforceable, it shall be automatically reformed to the minimum extent necessary
|
||||
to make it enforceable. If the provision cannot be reformed, it shall be severed
|
||||
from this Public License without affecting the enforceability of the remaining
|
||||
terms and conditions.
|
||||
|
||||
c. No term or condition of this Public License will be waived and no failure
|
||||
to comply consented to unless expressly agreed to by the Licensor.
|
||||
|
||||
d. Nothing in this Public License constitutes or may be interpreted as a limitation
|
||||
upon, or waiver of, any privileges and immunities that apply to the Licensor
|
||||
or You, including from the legal processes of any jurisdiction or authority.
|
||||
|
||||
Creative Commons is not a party to its public licenses. Notwithstanding, Creative
|
||||
Commons may elect to apply one of its public licenses to material it publishes
|
||||
and in those instances will be considered the "Licensor." The text of the
|
||||
Creative Commons public licenses is dedicated to the public domain under the
|
||||
CC0 Public Domain Dedication. Except for the limited purpose of indicating
|
||||
that material is shared under a Creative Commons public license or as otherwise
|
||||
permitted by the Creative Commons policies published at creativecommons.org/policies,
|
||||
Creative Commons does not authorize the use of the trademark "Creative Commons"
|
||||
or any other trademark or logo of Creative Commons without its prior written
|
||||
consent including, without limitation, in connection with any unauthorized
|
||||
modifications to any of its public licenses or any other arrangements, understandings,
|
||||
or agreements concerning use of licensed material. For the avoidance of doubt,
|
||||
this paragraph does not form part of the public licenses.
|
||||
|
||||
Creative Commons may be contacted at creativecommons.org.
|
||||
"The Library" refers to a covered work governed by this License,
|
||||
other than an Application or a Combined Work as defined below.
|
||||
|
||||
An "Application" is any work that makes use of an interface provided
|
||||
by the Library, but which is not otherwise based on the Library.
|
||||
Defining a subclass of a class defined by the Library is deemed a mode
|
||||
of using an interface provided by the Library.
|
||||
|
||||
A "Combined Work" is a work produced by combining or linking an
|
||||
Application with the Library. The particular version of the Library
|
||||
with which the Combined Work was made is also called the "Linked
|
||||
Version".
|
||||
|
||||
The "Minimal Corresponding Source" for a Combined Work means the
|
||||
Corresponding Source for the Combined Work, excluding any source code
|
||||
for portions of the Combined Work that, considered in isolation, are
|
||||
based on the Application, and not on the Linked Version.
|
||||
|
||||
The "Corresponding Application Code" for a Combined Work means the
|
||||
object code and/or source code for the Application, including any data
|
||||
and utility programs needed for reproducing the Combined Work from the
|
||||
Application, but excluding the System Libraries of the Combined Work.
|
||||
|
||||
1. Exception to Section 3 of the GNU GPL.
|
||||
|
||||
You may convey a covered work under sections 3 and 4 of this License
|
||||
without being bound by section 3 of the GNU GPL.
|
||||
|
||||
2. Conveying Modified Versions.
|
||||
|
||||
If you modify a copy of the Library, and, in your modifications, a
|
||||
facility refers to a function or data to be supplied by an Application
|
||||
that uses the facility (other than as an argument passed when the
|
||||
facility is invoked), then you may convey a copy of the modified
|
||||
version:
|
||||
|
||||
a) under this License, provided that you make a good faith effort to
|
||||
ensure that, in the event an Application does not supply the
|
||||
function or data, the facility still operates, and performs
|
||||
whatever part of its purpose remains meaningful, or
|
||||
|
||||
b) under the GNU GPL, with none of the additional permissions of
|
||||
this License applicable to that copy.
|
||||
|
||||
3. Object Code Incorporating Material from Library Header Files.
|
||||
|
||||
The object code form of an Application may incorporate material from
|
||||
a header file that is part of the Library. You may convey such object
|
||||
code under terms of your choice, provided that, if the incorporated
|
||||
material is not limited to numerical parameters, data structure
|
||||
layouts and accessors, or small macros, inline functions and templates
|
||||
(ten or fewer lines in length), you do both of the following:
|
||||
|
||||
a) Give prominent notice with each copy of the object code that the
|
||||
Library is used in it and that the Library and its use are
|
||||
covered by this License.
|
||||
|
||||
b) Accompany the object code with a copy of the GNU GPL and this license
|
||||
document.
|
||||
|
||||
4. Combined Works.
|
||||
|
||||
You may convey a Combined Work under terms of your choice that,
|
||||
taken together, effectively do not restrict modification of the
|
||||
portions of the Library contained in the Combined Work and reverse
|
||||
engineering for debugging such modifications, if you also do each of
|
||||
the following:
|
||||
|
||||
a) Give prominent notice with each copy of the Combined Work that
|
||||
the Library is used in it and that the Library and its use are
|
||||
covered by this License.
|
||||
|
||||
b) Accompany the Combined Work with a copy of the GNU GPL and this license
|
||||
document.
|
||||
|
||||
c) For a Combined Work that displays copyright notices during
|
||||
execution, include the copyright notice for the Library among
|
||||
these notices, as well as a reference directing the user to the
|
||||
copies of the GNU GPL and this license document.
|
||||
|
||||
d) Do one of the following:
|
||||
|
||||
0) Convey the Minimal Corresponding Source under the terms of this
|
||||
License, and the Corresponding Application Code in a form
|
||||
suitable for, and under terms that permit, the user to
|
||||
recombine or relink the Application with a modified version of
|
||||
the Linked Version to produce a modified Combined Work, in the
|
||||
manner specified by section 6 of the GNU GPL for conveying
|
||||
Corresponding Source.
|
||||
|
||||
1) Use a suitable shared library mechanism for linking with the
|
||||
Library. A suitable mechanism is one that (a) uses at run time
|
||||
a copy of the Library already present on the user's computer
|
||||
system, and (b) will operate properly with a modified version
|
||||
of the Library that is interface-compatible with the Linked
|
||||
Version.
|
||||
|
||||
e) Provide Installation Information, but only if you would otherwise
|
||||
be required to provide such information under section 6 of the
|
||||
GNU GPL, and only to the extent that such information is
|
||||
necessary to install and execute a modified version of the
|
||||
Combined Work produced by recombining or relinking the
|
||||
Application with a modified version of the Linked Version. (If
|
||||
you use option 4d0, the Installation Information must accompany
|
||||
the Minimal Corresponding Source and Corresponding Application
|
||||
Code. If you use option 4d1, you must provide the Installation
|
||||
Information in the manner specified by section 6 of the GNU GPL
|
||||
for conveying Corresponding Source.)
|
||||
|
||||
5. Combined Libraries.
|
||||
|
||||
You may place library facilities that are a work based on the
|
||||
Library side by side in a single library together with other library
|
||||
facilities that are not Applications and are not covered by this
|
||||
License, and convey such a combined library under terms of your
|
||||
choice, if you do both of the following:
|
||||
|
||||
a) Accompany the combined library with a copy of the same work based
|
||||
on the Library, uncombined with any other library facilities,
|
||||
conveyed under the terms of this License.
|
||||
|
||||
b) Give prominent notice with the combined library that part of it
|
||||
is a work based on the Library, and explaining where to find the
|
||||
accompanying uncombined form of the same work.
|
||||
|
||||
6. Revised Versions of the GNU Lesser General Public License.
|
||||
|
||||
The Free Software Foundation may publish revised and/or new versions
|
||||
of the GNU Lesser General Public License from time to time. Such new
|
||||
versions will be similar in spirit to the present version, but may
|
||||
differ in detail to address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the
|
||||
Library as you received it specifies that a certain numbered version
|
||||
of the GNU Lesser General Public License "or any later version"
|
||||
applies to it, you have the option of following the terms and
|
||||
conditions either of that published version or of any later version
|
||||
published by the Free Software Foundation. If the Library as you
|
||||
received it does not specify a version number of the GNU Lesser
|
||||
General Public License, you may choose any version of the GNU Lesser
|
||||
General Public License ever published by the Free Software Foundation.
|
||||
|
||||
If the Library as you received it specifies that a proxy can decide
|
||||
whether future versions of the GNU Lesser General Public License shall
|
||||
apply, that proxy's public statement of acceptance of any version is
|
||||
permanent authorization for you to choose that version for the
|
||||
Library.
|
56
README.md
56
README.md
@ -1,2 +1,54 @@
|
||||
# Zway-Bot
|
||||
|
||||
# BlubbFish.IoT.Bots.ZwayBot (Zway-Bot)
|
||||
<!-- Short description of the project. -->
|
||||
|
||||
Programm that uses the zway library and crawls zwave data from a controller.
|
||||
|
||||
This program is running on every hardware that supports dotnet.
|
||||
|
||||
<!-- A teaser figure may be added here. It is best to keep the figure small (<500KB) and in the same repo -->
|
||||
|
||||
## Getting Started
|
||||
<!-- Instruction to make the project up and running. -->
|
||||
|
||||
The project documentation is available on the [Wiki](https://git.blubbfish.net/vs_projects/Zway-Bot/wiki).
|
||||
|
||||
## Usage
|
||||
<!-- Deployment/Installation instructions. If this is software library, change this section to "Usage" and give usage examples -->
|
||||
This software can not run itselfs, cause its a library.
|
||||
|
||||
## Development
|
||||
<!-- Developer instructions. -->
|
||||
* Versioning: Use [SemVer](http://semver.org/) and tag the repository with full version string. E.g. `v1.0.0`
|
||||
|
||||
### Copyright
|
||||
|
||||
This library is under GNU LESSER GENERAL PUBLIC LICENSE Version 3
|
||||
|
||||
### Prerequisite
|
||||
|
||||
If you want to work with this programm, please checkout [zway-project](https://git.blubbfish.net/vs/zway-project) with all submodules, to get all dependencies.
|
||||
|
||||
#### Internal
|
||||
* BlubbFish.Utils ([Utils](https://git.blubbfish.net/vs_utils/Utils))
|
||||
* BlubbFish.Utils.IoT ([Utils-IoT](https://git.blubbfish.net/vs_utils/Utils-IoT))
|
||||
* BlubbFish.Utils.IoT.Bots ([Bot-Utils](https://git.blubbfish.net/vs_utils/Bot-Utils))
|
||||
* BlubbFish.Utils.IoT.Interfaces ([Iot-Interfaces](https://git.blubbfish.net/vs_utils/Iot-Interfaces))
|
||||
* BlubbFish.Utils.IoT.Connector.Data ([ConnectorDataMqtt](https://git.blubbfish.net/vs_utils/ConnectorDataMqtt))
|
||||
* BlubbFish.IoT.Zway ([Zway](https://git.blubbfish.net/vs_projects/Zway))
|
||||
|
||||
#### External
|
||||
* M2Mqtt ([Used Fork](https://github.com/blubbfish/mqtt), [Original](https://github.com/eclipse/paho.mqtt.m2mqtt))
|
||||
* litjson ([Used Fork](https://github.com/blubbfish/litjson), [Original](https://github.com/LitJSON/litjson))
|
||||
|
||||
### Test
|
||||
|
||||
You need to compile he library and use it with a calling agent.
|
||||
|
||||
### Build
|
||||
|
||||
Build it with Visual Studio.
|
||||
|
||||
## Contributing
|
||||
Contributions are welcome.
|
||||
|
||||
Please fork, make your changes, and submit a pull request. For major changes, please open an issue first and discuss it with the other authors.
|
96
Zway-Bot.sln
96
Zway-Bot.sln
@ -1,25 +1,25 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 15
|
||||
VisualStudioVersion = 15.0.27004.2010
|
||||
# Visual Studio Version 16
|
||||
VisualStudioVersion = 16.0.29806.167
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Zway-Bot", "Zway-Bot\Zway-Bot.csproj", "{AEF8059F-8AEF-45C7-85C4-318C8F797900}"
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Zway-Bot", "Zway-Bot\Zway-Bot.csproj", "{47EE9E42-FD75-4768-B87E-30CD98845742}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Zway", "..\Zway\Zway\Zway.csproj", "{166258ED-CB3D-43F5-8E8D-3A993B64D022}"
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Utils", "..\Utils\Utils\Utils\Utils.csproj", "{DB0BD8C3-154C-4A72-9B17-BC043435559E}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Utils", "..\Utils\Utils\Utils.csproj", "{FAC8CE64-BF13-4ECE-8097-AEB5DD060098}"
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Utils-IoT", "..\Utils\Utils-IoT\Utils-IoT\Utils-IoT.csproj", "{554A9B22-98B3-4713-BE21-F76B21C5343F}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Utils-IoT", "..\Utils\IoT\Utils-IoT.csproj", "{B870E4D5-6806-4A0B-B233-8907EEDC5AFC}"
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Iot-Interfaces", "..\Utils\Iot-Interfaces\Iot-Interfaces\Iot-Interfaces.csproj", "{A84D05FC-A267-494F-BA6F-A1FBC165EF7F}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ConnectorDataMqtt", "..\Utils\IoT\Connector\Data\Mqtt\ConnectorDataMqtt.csproj", "{EE6C8F68-ED46-4C1C-ABDD-CFCDF75104F2}"
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ConnectorDataMqtt", "..\Utils\ConnectorDataMqtt\ConnectorDataMqtt\ConnectorDataMqtt.csproj", "{AEEC3445-A3A4-498C-8729-9AB3DC692C58}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Iot-Interfaces", "..\Utils\IoT\Interfaces\Iot-Interfaces.csproj", "{4DAADA29-C600-4CF3-8AD3-9C97C8D7F632}"
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Bot-Utils", "..\Utils\Bot-Utils\Bot-Utils\Bot-Utils.csproj", "{FCE6AD89-D55A-4B2B-9BBB-87BBC3DC7DFA}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "litjson_4.7.1", "..\Librarys\litjson\litjson\litjson_4.7.1.csproj", "{91A14CD2-2940-4500-8193-56D37EDDDBAA}"
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "litjson", "..\Librarys\litjson\litjson\litjson.csproj", "{452E1239-789A-4FA0-A7B2-B546C792C80B}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "M2Mqtt_4.7.1", "..\Librarys\mqtt\M2Mqtt\M2Mqtt_4.7.1.csproj", "{A11AEF5A-B246-4FE8-8330-06DB73CC8074}"
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "M2Mqtt", "..\Librarys\mqtt\M2Mqtt\M2Mqtt.csproj", "{2D53CFD6-A412-4427-9461-E1CAF6815A63}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Bot-Utils", "..\Utils\Bot-Utils\Bot-Utils.csproj", "{BB7BFCB5-3DB0-49E1-802A-3CE3EECC59F9}"
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Zway", "..\Zway\Zway\Zway.csproj", "{B25686A9-D5F1-4A87-B156-9B02444DFFF7}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
@ -27,47 +27,47 @@ Global
|
||||
Release|Any CPU = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{AEF8059F-8AEF-45C7-85C4-318C8F797900}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{AEF8059F-8AEF-45C7-85C4-318C8F797900}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{AEF8059F-8AEF-45C7-85C4-318C8F797900}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{AEF8059F-8AEF-45C7-85C4-318C8F797900}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{166258ED-CB3D-43F5-8E8D-3A993B64D022}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{166258ED-CB3D-43F5-8E8D-3A993B64D022}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{166258ED-CB3D-43F5-8E8D-3A993B64D022}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{166258ED-CB3D-43F5-8E8D-3A993B64D022}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{FAC8CE64-BF13-4ECE-8097-AEB5DD060098}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{FAC8CE64-BF13-4ECE-8097-AEB5DD060098}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{FAC8CE64-BF13-4ECE-8097-AEB5DD060098}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{FAC8CE64-BF13-4ECE-8097-AEB5DD060098}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{B870E4D5-6806-4A0B-B233-8907EEDC5AFC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{B870E4D5-6806-4A0B-B233-8907EEDC5AFC}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{B870E4D5-6806-4A0B-B233-8907EEDC5AFC}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{B870E4D5-6806-4A0B-B233-8907EEDC5AFC}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{EE6C8F68-ED46-4C1C-ABDD-CFCDF75104F2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{EE6C8F68-ED46-4C1C-ABDD-CFCDF75104F2}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{EE6C8F68-ED46-4C1C-ABDD-CFCDF75104F2}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{EE6C8F68-ED46-4C1C-ABDD-CFCDF75104F2}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{4DAADA29-C600-4CF3-8AD3-9C97C8D7F632}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{4DAADA29-C600-4CF3-8AD3-9C97C8D7F632}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{4DAADA29-C600-4CF3-8AD3-9C97C8D7F632}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{4DAADA29-C600-4CF3-8AD3-9C97C8D7F632}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{91A14CD2-2940-4500-8193-56D37EDDDBAA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{91A14CD2-2940-4500-8193-56D37EDDDBAA}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{91A14CD2-2940-4500-8193-56D37EDDDBAA}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{91A14CD2-2940-4500-8193-56D37EDDDBAA}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{A11AEF5A-B246-4FE8-8330-06DB73CC8074}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{A11AEF5A-B246-4FE8-8330-06DB73CC8074}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{A11AEF5A-B246-4FE8-8330-06DB73CC8074}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{A11AEF5A-B246-4FE8-8330-06DB73CC8074}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{BB7BFCB5-3DB0-49E1-802A-3CE3EECC59F9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{BB7BFCB5-3DB0-49E1-802A-3CE3EECC59F9}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{BB7BFCB5-3DB0-49E1-802A-3CE3EECC59F9}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{BB7BFCB5-3DB0-49E1-802A-3CE3EECC59F9}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{47EE9E42-FD75-4768-B87E-30CD98845742}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{47EE9E42-FD75-4768-B87E-30CD98845742}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{47EE9E42-FD75-4768-B87E-30CD98845742}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{47EE9E42-FD75-4768-B87E-30CD98845742}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{DB0BD8C3-154C-4A72-9B17-BC043435559E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{DB0BD8C3-154C-4A72-9B17-BC043435559E}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{DB0BD8C3-154C-4A72-9B17-BC043435559E}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{DB0BD8C3-154C-4A72-9B17-BC043435559E}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{554A9B22-98B3-4713-BE21-F76B21C5343F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{554A9B22-98B3-4713-BE21-F76B21C5343F}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{554A9B22-98B3-4713-BE21-F76B21C5343F}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{554A9B22-98B3-4713-BE21-F76B21C5343F}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{A84D05FC-A267-494F-BA6F-A1FBC165EF7F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{A84D05FC-A267-494F-BA6F-A1FBC165EF7F}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{A84D05FC-A267-494F-BA6F-A1FBC165EF7F}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{A84D05FC-A267-494F-BA6F-A1FBC165EF7F}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{AEEC3445-A3A4-498C-8729-9AB3DC692C58}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{AEEC3445-A3A4-498C-8729-9AB3DC692C58}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{AEEC3445-A3A4-498C-8729-9AB3DC692C58}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{AEEC3445-A3A4-498C-8729-9AB3DC692C58}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{FCE6AD89-D55A-4B2B-9BBB-87BBC3DC7DFA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{FCE6AD89-D55A-4B2B-9BBB-87BBC3DC7DFA}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{FCE6AD89-D55A-4B2B-9BBB-87BBC3DC7DFA}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{FCE6AD89-D55A-4B2B-9BBB-87BBC3DC7DFA}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{452E1239-789A-4FA0-A7B2-B546C792C80B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{452E1239-789A-4FA0-A7B2-B546C792C80B}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{452E1239-789A-4FA0-A7B2-B546C792C80B}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{452E1239-789A-4FA0-A7B2-B546C792C80B}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{2D53CFD6-A412-4427-9461-E1CAF6815A63}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{2D53CFD6-A412-4427-9461-E1CAF6815A63}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{2D53CFD6-A412-4427-9461-E1CAF6815A63}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{2D53CFD6-A412-4427-9461-E1CAF6815A63}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{B25686A9-D5F1-4A87-B156-9B02444DFFF7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{B25686A9-D5F1-4A87-B156-9B02444DFFF7}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{B25686A9-D5F1-4A87-B156-9B02444DFFF7}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{B25686A9-D5F1-4A87-B156-9B02444DFFF7}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {FC298685-EC11-4957-9D91-F044DDDD0B6E}
|
||||
SolutionGuid = {BD3495D8-45C6-495E-81C9-EA9C711C6B75}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
|
Before Width: | Height: | Size: 3.4 KiB After Width: | Height: | Size: 3.4 KiB |
@ -1,108 +0,0 @@
|
||||
Namensnennung-Nicht kommerziell-Share Alike 4.0 International
|
||||
|
||||
Die Creative Commons Corporation (“Creative Commons”) ist keine Rechtsanwaltskanzlei und bietet weder Rechtsdienstleistungen noch Rechtsberatung. Die Verbreitung von Creative Commons Public Licenses führt zu keinem Mandatsverhältnis und keiner sonstigen Rechtsbeziehung. Creative Commons macht seine Lizenzen und die dazugehörigen Informationen so zugänglich, wie sie sind. Creative Commons übernimmt keinerlei Gewährleistung hinsichtlich seiner Lizenzen, jedweder unter deren Bedingungen lizenzierter Materialien oder darauf bezogener Informationen. Creative Commons schließt jegliche Haftung für Schäden, die aus ihrer Verwendung resultieren, so weit wie möglich aus.
|
||||
|
||||
Verwendung der Creative Commons Public Licenses
|
||||
|
||||
Creative Commons Public Licenses sind standardisierte Zusammenstellungen rechtlicher Bedingungen, die Urheber und andere Rechteinhaber verwenden können, um ihre selbst geschaffenen Werke und andere Materialien, die urheberrechtlich oder durch bestimmte andere Rechte geschützt sind, die unten in der Public License genauer benannt werden, zur Nutzung freizugeben. Die folgenden Überlegungen haben lediglich informativen Charakter, sind keineswegs vollständig und nicht Teil unserer Lizenzen.
|
||||
|
||||
Überlegungen für Lizenzgeber: Unsere Public Licenses sind zur Verwendung durch diejenigen gedacht, die rechtlich befugt sind, der Allgemeinheit solche Nutzungen von Material zu erlauben, die sonst durch das Urheberrecht oder bestimmte andere Rechte untersagt wären. Unsere Lizenzen sind unwiderruflich. Lizenzgeber sollten die Bedingungen der Lizenz, die sie auswählen, lesen und verstehen, bevor sie die Lizenz verwenden. Lizenzgeber sollten zudem alle erforderlichen Rechte einholen, die für die Verwendung unserer Lizenzen notwendig sind, damit die Allgemeinheit das lizenzierte Material wie erwartet nutzen kann. Lizenzgeber sollten jegliches Material, für welches die Lizenz nicht gilt, klar kenntlich machen. Das gilt auch für anderes CC-lizenziertes Material und für Material, das gemäß einer urheberrechtlichen Beschränkung oder Ausnahme genutzt wird. Weitere Überlegungen für Lizenzgeber finden Sie im Creative Commons Wiki (in Englisch).
|
||||
Überlegungen für die Allgemeinheit: Durch die Verwendung einer unserer Public Licenses gibt ein Lizenzgeber der Allgemeinheit die Erlaubnis, das lizenzierte Material unter bestimmten Bedingungen zu nutzen. Falls die Erlaubnis des Lizenzgebers aus irgendwelchen Gründen gar nicht erforderlich ist – beispielsweise wegen einer urheberrechtlichen Ausnahme oder Beschränkung – dann wird die entsprechende Nutzung auch nicht durch die Lizenz geregelt. Die Erlaubnisse in unseren Lizenzen beziehen sich nur auf das Urheberrecht und bestimmte andere Rechte, hinsichtlich derer der Lizenzgeber Erlaubnisse geben kann. Die Nutzung des lizenzierten Materials kann aber dennoch aus anderen Gründen untersagt sein, etwa weil Dritte Urheber- oder andere Rechte am Material haben. Ein Lizenzgeber kann auch besondere Wünsche haben, etwa indem er dazu auffordert, alle Veränderungen zu kennzeichnen oder zu beschreiben. Obwohl dies dann nicht verpflichtend im Sinne unserer Lizenzen ist, sollten Sie sich bemühen, derlei Wünschen nach Möglichkeit nachzukommen. Weitere Überlegungen für die Allgemeinheit finden Sie im Creative Commons Wiki (in Englisch).
|
||||
Creative Commons Namensnennung-Nicht kommerziell-Share Alike 4.0 International Public License
|
||||
Durch die Ausübung der lizenzierten Rechte (wie unten definiert) erklären Sie sich rechtsverbindlich mit den Bedingungen dieser Creative Commons Namensnennung – Nicht kommerziell – Share Alike 4.0 International Public License (“Public License”) einverstanden. Soweit die vorliegende Public License als Lizenzvertrag anzusehen ist, gewährt Ihnen der Lizenzgeber die in der Public License genannten lizenzierten Rechte im Gegenzug dafür, dass Sie die Lizenzbedingungen akzeptieren, und gewährt Ihnen die entsprechenden Rechte in Hinblick auf Vorteile, die der Lizenzgeber durch das Verfügbarmachen des lizenzierten Materials unter diesen Bedingungen hat.
|
||||
|
||||
Abschnitt 1 – Definitionen
|
||||
|
||||
Abgewandeltes Material bezeichnet Material, welches durch Urheberrechte oder ähnliche Rechte geschützt ist und vom lizenzierten Material abgeleitet ist oder darauf aufbaut und in welchem das lizenzierte Material übersetzt, verändert, umarrangiert, umgestaltet oder anderweitig modifiziert in einer Weise enthalten ist, die aufgrund des Urheberrechts oder ähnlicher Rechte des Lizenzgebers eine Zustimmung erfordert. Im Sinne der vorliegenden Public License entsteht immer abgewandeltes Material, wenn das lizenzierte Material ein Musikwerk, eine Darbietung oder eine Tonaufnahme ist und zur Vertonung von Bewegtbildern verwendet wird.
|
||||
Abwandlungslizenz bezeichnet die Lizenz, die Sie in Bezug auf Ihr Urheberrecht oder ähnliche Rechte an Ihren Beiträgen zum abgewandelten Material in Übereinstimmng mit den Bedingungen der vorliegenden Public License erteilen.
|
||||
BY-NC-SA-kompatible Lizenz bezeichnet eine unter creativecommons.org/compatiblelicenses genannte Lizenz, die Creative Commons als der vorliegenden Public License im Wesentlichen gleichwertig anerkannt hat.
|
||||
Urheberrecht und ähnliche Rechte bezeichnet das Urheberrecht und/oder ähnliche, dem Urheberrecht eng verwandte Rechte, einschließlich insbesondere des Rechts des ausübenden Künstlers, des Rechts zur Sendung, zur Tonaufnahme und des Sui-generis-Datenbankrechts, unabhängig davon, wie diese Rechte genannt oder kategorisiert werden. Im Sinne der vorliegenden Public License werden die in Abschnitt 2(b)(1)-(2) aufgeführten Rechte nicht als Urheberrecht und ähnliche Rechte angesehen.
|
||||
Wirksame technische Schutzmaßnahmen bezeichnet solche Maßnahmen, die gemäß gesetzlichen Regelungen auf der Basis des Artikels 11 des WIPO Copyright Treaty vom 20. Dezember 1996 und/oder ähnlicher internationaler Vereinbarungen ohne entsprechende Erlaubnis nicht umgangen werden dürfen.
|
||||
Ausnahmen und Beschränkungen bezeichnet Fair Use, Fair Dealing und/oder jegliche andere Ausnahme oder Beschränkung des Urheberrechts oder ähnlicher Rechte, die auf Ihre Nutzung des lizenzierten Materials Anwendung findet.
|
||||
Lizenzelemente bezeichnet die Lizenzeigenschaften, die in der Bezeichnung einer Creative Commons Public License aufgeführt werden. Die Lizenzelemente der vorliegenden Public License sind Namensnennung, Nicht kommerziell und Share Alike.
|
||||
Lizenziertes Material bezeichnet das Werk der Literatur oder Kunst, die Datenbank oder das sonstige Material, welches der Lizenzgeber unter die vorliegende Public License gestellt hat.
|
||||
Lizenzierte Rechte bezeichnet die Ihnen unter den Bedingungen der vorliegenden Public License gewährten Rechte, welche auf solche Urheberrechte und ähnlichen Rechte beschränkt sind, die Ihre Nutzung des lizenzierten Materials betreffen und die der Lizenzgeber zu lizenzieren berechtigt ist.
|
||||
Lizenzgeber bezeichnet die natürliche(n) oder juristische(n) Person(en), die unter der vorliegenden Public License Rechte gewährt (oder gewähren).
|
||||
Nicht kommerziell meint nicht vorrangig auf einen geschäftlichen Vorteil oder eine geldwerte Vergütung gerichtet. Der Austausch von lizenziertem Material gegen anderes unter Urheberrecht oder ähnlichen Rechten geschütztes Material durch digitales File-Sharing oder ähnliche Mittel ist nicht kommerziell im Sinne der vorliegenden Public License, sofern in Verbindung damit keine geldwerte Vergütung erfolgt.
|
||||
Weitergabe meint, Material der Öffentlichkeit bereitzustellen durch beliebige Mittel oder Verfahren, die gemäß der lizenzierten Rechte Zustimmung erfordern, wie zum Beispiel Vervielfältigung, öffentliche Vorführung, öffentliche Darbietung, Vertrieb, Verbreitung, Wiedergabe oder Übernahme und öffentliche Zugänglichmachung bzw. Verfügbarmachung in solcher Weise, dass Mitglieder der Öffentlichkeit auf das Material von Orten und zu Zeiten ihrer Wahl zugreifen können.
|
||||
Sui-generis Datenbankrechte bezeichnet Rechte, die keine Urheberrechte sind, sondern gegründet sind auf die Richtlinie 96/9/EG des Europäischen Parlaments und des Rates vom 11. März 1996 über den rechtlichen Schutz von Datenbanken in der jeweils gültigen Fassung bzw. deren Nachfolgeregelungen, sowie andere im Wesentlichen funktionsgleiche Rechte anderswo auf der Welt.
|
||||
Sie bezeichnet die natürliche oder juristische Person, die von lizenzierten Rechten unter der vorliegenden Public License Gebrauch macht. Ihr bzw. Ihre hat die entsprechende Bedeutung.
|
||||
Abschnitt 2 – Umfang
|
||||
|
||||
Lizenzgewährung
|
||||
Unter den Bedingungen der vorliegenden Public License gewährt der Lizenzgeber Ihnen eine weltweite, vergütungsfreie, nicht unterlizenzierbare, nicht-ausschließliche, unwiderrufliche Lizenz zur Ausübung der lizenzierten Rechte am lizenzierten Material, um:
|
||||
das lizenzierte Material ganz oder in Teilen zu vervielfältigen und weiterzugeben, jedoch nur für nicht kommerzielle Zwecke; und
|
||||
abgewandeltes Material zu erstellen, zu vervielfältigen und weiterzugeben, jedoch nur für nicht kommerzielle Zwecke.
|
||||
Ausnahmen und Beschränkungen. Es sei klargestellt, dass, wo immer gesetzliche Ausnahmen und Beschränkungen auf Ihre Nutzung Anwendung finden, die vorliegende Public License nicht anwendbar ist und Sie insoweit ihre Bedingungen nicht einhalten müssen.
|
||||
Laufzeit. Die Laufzeit der vorliegenden Public License wird in Abschnitt 6(a) geregelt.
|
||||
Medien und Formate; Gestattung technischer Modifikationen. Der Lizenzgeber erlaubt Ihnen, die lizenzierten Rechte in allen bekannten und zukünftig entstehenden Medien und Formaten auszuüben und die dafür notwendigen technischen Modifikationen vorzunehmen. Der Lizenzgeber verzichtet auf jegliche und/oder versichert die Nichtausübung jeglicher Rechte und Befugnisse, Ihnen zu verbieten, technische Modifikationen vorzunehmen, die notwendig sind, um die lizenzierten Rechte ausüben zu können, einschließlich solcher, die zur Umgehung wirksamer technischer Schutzmaßnahmen erforderlich sind. Im Sinne der vorliegenden Public License entsteht kein abgewandeltes Material, soweit lediglich Modifikationen vorgenommen werden, die nach diesem Abschnitt 2(a)(4) zulässig sind.
|
||||
Nachfolgende Empfänger
|
||||
Angebot des Lizenzgebers – Lizenziertes Material. Jeder Empfänger des lizenzierten Materials erhält automatisch ein Angebot des Lizenzgebers, die lizenzierten Rechte unter den Bedingungen der vorliegenden Public License auzuüben.
|
||||
Zusätzliches Angebot des Lizenzgebers – Abgewandeltes Material. Jeder, der abgewandeltes Material von Ihnen erhält, erhält automatisch vom Lizenzgeber ein Angebot, die lizenzierten Rechte am abgewandelten Material unter den Bedingungen der durch Sie vergebenen Abwandlungslizenz auszuüben.
|
||||
Keine Beschränkungen für nachfolgende Empfänger. Sie dürfen keine zusätzlichen oder abweichenden Bedingungen fordern oder das lizenzierte Material mit solchen belegen oder darauf wirksame technische Maßnahmen anwenden, sofern dadurch die Ausübung der lizenzierten Rechte durch Empfänger des lizenzierten Materials eingeschränkt wird.
|
||||
Inhaltliche Indifferenz. Die vorliegende Public License begründet nicht die Erlaubnis, zu behaupten oder den Eindruck zu erwecken, dass Sie oder Ihre Nutzung des lizenzierten Materials mit dem Lizenzgeber oder den Zuschreibungsempfängern gemäß Abschnitt 3(a)(1)(A)(i) in Verbindung stehen oder durch ihn gefördert, gutgeheißen oder offiziell anerkannt werden.
|
||||
Sonstige Rechte
|
||||
|
||||
Urheberpersönlichkeitsrechte, wie etwa zum Schutz vor Werkentstellungen, werden durch die vorliegende Public License ebenso wenig mitlizenziert wie das Recht auf Privatheit, auf Datenschutz und/oder ähnliche Persönlichkeitsrechte; gleichwohl verzichtet der Lizenzgeber auf derlei Rechte bzw. ihre Durchsetzung, soweit dies für Ihre Ausübung der lizenzierten Rechte erforderlich und möglich ist, jedoch nicht darüber hinaus.
|
||||
Patent- und Kennzeichenrechte werden durch die vorliegende Public License nicht lizenziert.
|
||||
Soweit wie möglich verzichtet der Lizenzgeber auf Vergütung durch Sie für die Ausübung der lizenzierten Rechte, sowohl direkt als auch durch eine Verwertungsgesellschaft unter welchem freiwilligen oder abdingbaren gesetzlichen oder Pflichtlizenzmechanismus auch immer eingezogen. In allen übrigen Fällen behält sich der Lizenzgeber ausdrücklich jedes Recht vor, Vergütungen zu fordern, einschließlich für Nutzungen des lizenzierten Materials für andere als nicht kommerzielle Zwecke.
|
||||
Abschnitt 3 – Lizenzbedingungen
|
||||
|
||||
Ihre Ausübung der lizenzierten Rechte unterliegt ausdrücklich folgenden Bedingungen.
|
||||
|
||||
Namensnennung
|
||||
|
||||
Wenn Sie das lizenzierte Material weitergeben (auch in veränderter Form), müssen Sie:
|
||||
|
||||
die folgenden Angaben beibehalten, soweit sie vom Lizenzgeber dem lizenzierten Material beigefügt wurden:
|
||||
die Bezeichnung der/des Ersteller(s) des lizenzierten Materials und anderer, die für eine Namensnennung vorgesehen sind (auch durch Pseudonym, falls angegeben), in jeder durch den Lizenzgeber verlangten Form, die angemessen ist;
|
||||
einen Copyright-Vermerk;
|
||||
einen Hinweis auf die vorliegende Public License;
|
||||
einen Hinweis auf den Haftungsausschluss;
|
||||
soweit vernünftigerweise praktikabel einen URI oder Hyperlink zum lizenzierten Material;
|
||||
angeben, ob Sie das lizenzierte Material verändert haben, und alle vorherigen Änderungsangaben beibehalten; und
|
||||
angeben, dass das lizenzierte Material unter der vorliegenden Public License steht, und deren Text oder URI oder einen Hyperlink darauf beifügen.
|
||||
Sie dürfen die Bedingungen des Abschnitts 3(a)(1) in jeder angemessenen Form erfüllen, je nach Medium, Mittel und Kontext in bzw. mit dem Sie das lizenzierte Material weitergeben. Es kann zum Beispiel angemessen sein, die Bedingungen durch Angabe eines URI oder Hyperlinks auf eine Quelle zu erfüllen, die die erforderlichen Informationen enthält.
|
||||
Falls der Lizenzgeber es verlangt, müssen Sie die gemäß Abschnitt 3(a)(1)(A) erforderlichen Informationen entfernen, soweit dies vernünftigerweise praktikabel ist.
|
||||
Share Alike
|
||||
Zusätzlich zu den Bedingungen in Abschnitt 3(a) gelten die folgenden Bedingungen, falls Sie abgewandeltes Material weitergeben, welches Sie selbst erstellt haben.
|
||||
|
||||
Die Abwandlungslizenz, die Sie vergeben, muss eine Creative-Commons-Lizenz der vorliegenden oder einer späteren Version mit den gleichen Lizenzelementen oder eine BY-NC-SA-kompatible Lizenz sein.
|
||||
Sie müssen den Text oder einen URI oder Hyperlink auf die von Ihnen gewählte Abwandlungslizenz beifügen. Diese Bedingung dürfen Sie in jeder angemessenen Form erfüllen, je nach Medium, Mittel und Kontext in bzw. mit dem Sie abgewandeltes Material weitergeben.
|
||||
Sie dürfen keine zusätzlichen oder abweichenden Bedingungen anbieten oder das abgewandelte Material mit solchen belegen oder darauf wirksame technische Maßnahmen anwenden, sofern dadurch die Ausübung der Rechte am abgewandelten Material eingeschränkt wird, die Sie unter der Abwandlungslizenz gewähren.
|
||||
Abschnitt 4 – Sui-generis-Datenbankrechte
|
||||
|
||||
Soweit die lizenzierten Rechte Sui-generis-Datenbankrechte beinhalten, die auf Ihre Nutzung des lizenzierten Materials Anwendung finden, gilt:
|
||||
|
||||
es sei klargestellt, dass Abschnitt 2(a)(1) Ihnen lediglich zu nicht kommerziellen Zwecken das Recht gewährt, die gesamten Inhalte der Datenbank oder wesentliche Teile davon zu entnehmen, weiterzuverwenden, zu vervielfältigen und weiterzugeben;
|
||||
sofern Sie alle Inhalte der Datenbank oder wesentliche Teile davon in eine Datenbank aufnehmen, an der Sie Sui-generis-Datenbankrechte haben, dann gilt die Datenbank, an der Sie Sui-generis-Datenbankrechte haben (aber nicht ihre einzelnen Inhalte) als abgewandeltes Material, insbesondere in Bezug auf Abschnitt 3(b); und
|
||||
Sie müssen die Bedingungen des Abschnitts 3(a) einhalten, wenn sie alle Datenbankinhalte oder wesentliche Teile davon weitergeben.
|
||||
Es sei ferner klargestellt, dass dieser Abschnitt 4 Ihre Verpflichtungen aus der vorliegenden Public License nur ergänzt und nicht ersetzt, soweit die lizenzierten Rechte andere Urheberrechte oder ähnliche Rechte enthalten.
|
||||
Abschnitt 5 – Gewährleistungsausschluss und Haftungsbeschränkung
|
||||
|
||||
Sofern der Lizenzgeber nicht separat anderes erklärt und so weit wie möglich, bietet der Lizenzgeber das lizenzierte Material so wie es ist und verfügbar ist an und sagt in Bezug auf das lizenzierte Material keine bestimmten Eigenschaften zu, weder ausdrücklich noch konkludent oder anderweitig, und schließt jegliche Gewährleistung aus, einschließlich der gesetzlichen. Dies umfasst insbesondere das Freisein von Rechtsmängeln, Verkehrsfähigkeit, Eignung für einen bestimmten Zweck, Wahrung der Rechte Dritter, Freisein von (auch verdeckten) Sachmängeln, Richtigkeit und das Vorliegen oder Nichtvorliegen von Irrtümern, gleichviel ob sie bekannt, unbekannt oder erkennbar sind. Dort, wo Gewährleistungsausschlüsse ganz oder teilweise unzulässig sind, gilt der vorliegende Ausschluss möglicherweise für Sie nicht.
|
||||
Soweit wie möglich, haftet der Lizenzgeber Ihnen gegenüber nach keinem rechtlichen Konstrukt (einschließlich insbesondere Fahrlässigkeit) oder anderweitig für irgendwelche direkten, speziellen, indirekten, zufälligen, Folge-, Straf- exemplarischen oder anderen Verluste, Kosten, Aufwendungen oder Schäden, die sich aus der vorliegenden Public License oder der Nutzung des lizenzierten Materials ergeben, selbst wenn der Lizenzgeber auf die Möglichkeit solcher Verluste, Kosten, Aufwendungen oder Schäden hingewiesen wurde. Dort, wo Haftungsbeschränkungen ganz oder teilweise unzulässig sind, gilt die vorliegende Beschränkung möglicherweise für Sie nicht.
|
||||
Der Gewährleistungsausschluss und die Haftungsbeschränkung oben sollen so ausgelegt werden, dass sie soweit wie möglich einem absoluten Haftungs- und Gewährleistungsausschluss nahe kommen.
|
||||
Abschnitt 6 – Laufzeit und Beendigung
|
||||
|
||||
Die vorliegende Public License gilt bis zum Ablauf der Schutzfrist des Urheberrechts und der ähnlichen Rechte, die hiermit lizenziert werden. Gleichwohl erlöschen Ihre Rechte aus dieser Public License automatisch, wenn Sie die Bestimmungen dieser Public License nicht einhalten.
|
||||
Soweit Ihr Recht, das lizenzierte Material zu nutzen, gemäß Abschnitt 6(a) erloschen ist, lebt es wieder auf:
|
||||
|
||||
automatisch zu dem Zeitpunkt, an welchem die Verletzung abgestellt ist, sofern dies innerhalb von 30 Tagen seit Ihrer Kenntnis der Verletzung geschieht; oder
|
||||
durch ausdrückliche Wiedereinsetzung durch den Lizenzgeber.
|
||||
Es sei klargestellt, dass dieser Abschnitt 6(b) die Rechte des Lizenzgebers, Ausgleich für Ihre Verletzung der vorliegenden Public License zu verlangen, nicht einschränkt.
|
||||
Es sei klargestellt, dass der Lizenzgeber das lizenzierte Material auch unter anderen Bedingungen anbieten oder den Vertrieb des lizenzierten Materials jederzeit einstellen darf; gleichwohl erlischt dadurch die vorliegende Public License nicht.
|
||||
Die Abschnitte 1, 5, 6, 7 und 8 gelten auch nach Erlöschen der vorliegenden Public License fort.
|
||||
Abschnitt 7 – Sonstige Bedingungen
|
||||
|
||||
Der Lizenzgeber ist nicht an durch Sie gestellte zusätzliche oder abweichende Bedingungen gebunden, wenn diese nicht ausdrücklich vereinbart wurden.
|
||||
Jedwede das lizenzierte Material betreffenden und hier nicht genannten Umstände, Annahmen oder Vereinbarungen sind getrennt und unabhängig von den Bedingungen der vorliegenden Public License.
|
||||
Abschnitt 8 – Auslegung
|
||||
|
||||
Es sei klargestellt, dass die vorliegende Public License weder besagen noch dahingehend ausgelegt werden soll, dass sie solche Nutzungen des lizenzierten Materials verringert, begrenzt, einschränkt oder mit Bedingungen belegt, die ohne eine Erlaubnis aus dieser Public License zulässig sind.
|
||||
Soweit wie möglich soll, falls eine Klausel der vorliegenden Public License als nicht durchsetzbar anzusehen ist, diese Klausel automatisch im geringst erforderlichen Maße angepasst werden, um sie durchsetzbar zu machen. Falls die Klausel nicht anpassbar ist, soll sie von der vorliegenden Public License abgeschieden werden, ohne dass die Durchsetzbarkeit der verbleibenden Bedingungen tangiert wird.
|
||||
Auf keine Bedingung der vorliegenden Public License wird verzichtet und kein Verstoß dagegen soll als hingenommen gelten, außer der Lizenzgeber hat sich damit ausdrücklich einverstanden erklärt.
|
||||
Nichts in der vorliegenden Public License soll zu einer Beschränkung oder Aufhebung von Privilegien und Immunitäten führen, die dem Lizenzgeber oder Ihnen insbesondere aufgrund rechtlicher Regelungen irgendeiner Rechtsordnung oder Rechtsposition zustehen, oder dahingehend interpretiert werden.
|
||||
Creative Commons ist keine Vertragspartei seiner Public Licenses. Dennoch kann Creative Commons sich dazu entscheiden, eine seiner Public Licenses für selbst publiziertes Material zu verwenden, und ist in diesen Fällen als „Lizenzgeber” zu betrachten. Der Text der Creative Commons Public Licenses selbst wird mittels der CC0 Verzichtserklärung der Gemeinfreiheit überantwortet. Abgesehen vom begrenzten Zweck, darauf hinzuweisen, dass Material unter einer Creative Commons Public License freigegeben ist, und falls es nicht anderweitig erlaubt wird durch die Creative-Commons-Policies, die unter creativecommons.org/policies veröffentlicht sind, erlaubt Creative Commons es nicht, dass die Marke “Creative Commons” oder eine andere Marke oder ein anderes Logo von Creative Commons ohne vorherige schriftliche Zustimmung genutzt werden, insbesondere in Verbindung mit nicht autorisierten Veränderungen seiner Public Licenses oder sonstigen Regelungen, Übereinkünften oder Vereinbarungen in Bezug auf die Nutzung lizenzierten Materials. Es sei klargestellt, dass dieser Absatz nicht Teil der Public Licenses ist.
|
||||
|
||||
Creative Commons kann kontaktiert werden unter creativecommons.org.
|
@ -1,8 +1,8 @@
|
||||
using System;
|
||||
|
||||
using BlubbFish.IoT.Zway;
|
||||
using BlubbFish.IoT.Zway.Interfaces;
|
||||
using BlubbFish.Utils;
|
||||
using BlubbFish.Utils.IoT.Bots;
|
||||
using BlubbFish.Utils.IoT.Bots.Events;
|
||||
using BlubbFish.Utils.IoT.Bots.Moduls;
|
||||
|
||||
|
@ -1,72 +1,47 @@
|
||||
using System;
|
||||
using System.Text.RegularExpressions;
|
||||
|
||||
using BlubbFish.IoT.Zway;
|
||||
using BlubbFish.IoT.Zway.Events;
|
||||
using BlubbFish.IoT.Zway.Interfaces;
|
||||
using BlubbFish.Utils;
|
||||
using BlubbFish.Utils.IoT.Bots;
|
||||
using BlubbFish.Utils.IoT.Bots.Events;
|
||||
using BlubbFish.Utils.IoT.Bots.Moduls;
|
||||
using BlubbFish.Utils.IoT.Connector;
|
||||
using BlubbFish.Utils.IoT.Events;
|
||||
using BlubbFish.Utils.IoT.Interfaces;
|
||||
|
||||
using LitJson;
|
||||
|
||||
namespace BlubbFish.IoT.Bots.ZwayBot.Moduls {
|
||||
class Mqtt : Mqtt<ZwayController> {
|
||||
protected Boolean mqttConnect = false;
|
||||
public override event ModulEvent Update;
|
||||
|
||||
public Mqtt(ZwayController zwave, InIReader settings) : base(zwave, settings) { }
|
||||
public Mqtt(ZwayController lib, InIReader settings) : base(lib, settings) { }
|
||||
|
||||
#region Mqtt
|
||||
protected override void Connect() {
|
||||
Console.WriteLine("BlubbFish.IoT.Bots.ZwayBot.Moduls.Mqtt.Connect()");
|
||||
this.mqtt = ABackend.GetInstance(this.config["settings"], ABackend.BackendType.Data);
|
||||
this.mqtt.MessageIncomming += this.MqttUpdate;
|
||||
this.mqttConnect = true;
|
||||
}
|
||||
|
||||
protected override void Disconnect() {
|
||||
Console.WriteLine("BlubbFish.IoT.Bots.ZwayBot.Moduls.Mqtt.Disconnect()");
|
||||
this.mqttConnect = false;
|
||||
if (this.mqtt != null) {
|
||||
this.mqtt.MessageIncomming -= this.MqttUpdate;
|
||||
}
|
||||
if (this.mqtt != null) {
|
||||
this.mqtt.Dispose();
|
||||
}
|
||||
this.mqtt = null;
|
||||
}
|
||||
#endregion
|
||||
public override void EventLibSetter() => this.library.Recieved += this.HandleLibUpdate;
|
||||
|
||||
#region Events
|
||||
public override void EventLibSetter() {
|
||||
this.library.Update += this.HandleLibUpdate;
|
||||
}
|
||||
|
||||
protected override void LibUpadteThread(Object state) {
|
||||
try {
|
||||
if(this.mqttConnect) {
|
||||
if(this.mqtt.IsConnected) {
|
||||
DeviceUpdateEvent e = state as DeviceUpdateEvent;
|
||||
String topic = "";
|
||||
String data = "";
|
||||
if (e.Parent.GetType().HasInterface(typeof(IMqtt))) {
|
||||
IMqtt sensor = (IMqtt)e.Parent;
|
||||
topic = "zwavebot/devices/" + sensor.MqttTopic();
|
||||
data = sensor.ToJson();
|
||||
}
|
||||
if (topic != "" && data != "") {
|
||||
((ADataBackend)this.mqtt).Send(topic, data);
|
||||
this.Update?.Invoke(this, new MqttEvent(topic, data));
|
||||
if(e.Parent.GetType().HasInterface(typeof(IMqtt))) {
|
||||
IMqtt sensor = e.Parent as IMqtt;
|
||||
((ADataBackend)this.mqtt).Send("zwavebot/devices/" + sensor.MqttTopic(), sensor.ToJson());
|
||||
this.Update?.Invoke(this, new MqttEvent("zwavebot/devices/" + sensor.MqttTopic(), sensor.ToJson()));
|
||||
}
|
||||
}
|
||||
} catch { }
|
||||
} catch (Exception e) {
|
||||
Helper.WriteError("BlubbFish.IoT.Bots.ZwayBot.Moduls.Mqtt.LibUpadteThread: " + e.Message);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#region Events
|
||||
protected virtual void MqttUpdate(Object sender, BackendEvent e) {
|
||||
try {
|
||||
if (this.mqttConnect) {
|
||||
if (this.mqtt.IsConnected) {
|
||||
if (e.From.ToString().StartsWith("zwavebot/devices/") && (e.From.ToString().EndsWith("/set") || e.From.ToString().EndsWith("/get"))) {
|
||||
Match m = new Regex("^zwavebot/devices/(\\d+)/(\\d+)/(\\d+)/[gs]et$|^zwavebot/devices/(\\d+)/(\\d+)/(\\d+)/(\\d+)/[gs]et$").Match(e.From.ToString());
|
||||
String id = "";
|
||||
|
@ -1,10 +1,10 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
using BlubbFish.IoT.Zway;
|
||||
using BlubbFish.IoT.Zway.Events;
|
||||
using BlubbFish.IoT.Zway.Interfaces;
|
||||
using BlubbFish.Utils;
|
||||
using BlubbFish.Utils.IoT.Bots;
|
||||
using BlubbFish.Utils.IoT.Bots.Events;
|
||||
using BlubbFish.Utils.IoT.Bots.Moduls;
|
||||
|
||||
|
@ -1,8 +1,8 @@
|
||||
using System;
|
||||
|
||||
using BlubbFish.IoT.Zway;
|
||||
using BlubbFish.IoT.Zway.Events;
|
||||
using BlubbFish.Utils;
|
||||
using BlubbFish.Utils.IoT.Bots;
|
||||
using BlubbFish.Utils.IoT.Bots.Events;
|
||||
using BlubbFish.Utils.IoT.Connector;
|
||||
using BlubbFish.Utils.IoT.Events;
|
||||
@ -19,34 +19,20 @@ namespace BlubbFish.IoT.Bots.ZwayBot.Moduls {
|
||||
}
|
||||
}
|
||||
|
||||
protected override void Connect() {
|
||||
Console.WriteLine("BlubbFish.IoT.Bots.ZwayBot.Moduls.Senml.Connect()");
|
||||
base.Connect();
|
||||
}
|
||||
|
||||
protected override void Disconnect() {
|
||||
Console.WriteLine("BlubbFish.IoT.Bots.ZwayBot.Moduls.Senml.Disconnect()");
|
||||
base.Disconnect();
|
||||
}
|
||||
|
||||
#region Events
|
||||
protected override void LibUpadteThread(Object state) {
|
||||
try {
|
||||
if (this.mqttConnect) {
|
||||
if(this.mqtt.IsConnected) {
|
||||
DeviceUpdateEvent e = state as DeviceUpdateEvent;
|
||||
String topic = "";
|
||||
String data = "";
|
||||
if (e.Parent.GetType().HasInterface(typeof(ISenml))) {
|
||||
ISenml sensor = (ISenml)e.Parent;
|
||||
topic = sensor.SenmlTopic() + this.SenmlGuid + "/senml";
|
||||
data = sensor.ToSenml();
|
||||
}
|
||||
if (topic != "" && data != null && data != "") {
|
||||
((ADataBackend)this.mqtt).Send(topic, data);
|
||||
this.Update?.Invoke(this, new SenmlEvent(topic, data));
|
||||
if(e.Parent.GetType().HasInterface(typeof(ISenml))) {
|
||||
ISenml sensor = e.Parent as ISenml;
|
||||
((ADataBackend)this.mqtt).Send(sensor.SenmlTopic() + this.SenmlGuid + "/senml", sensor.ToSenml());
|
||||
this.Update?.Invoke(this, new MqttEvent(sensor.SenmlTopic() + this.SenmlGuid + "/senml", sensor.ToSenml()));
|
||||
}
|
||||
}
|
||||
} catch { }
|
||||
} catch(Exception e) {
|
||||
Helper.WriteError("BlubbFish.IoT.Bots.ZwayBot.Moduls.Mqtt.LibUpadteThread: " + e.Message);
|
||||
}
|
||||
}
|
||||
|
||||
protected override void MqttUpdate(Object sender, BackendEvent e) { }
|
||||
|
@ -1,5 +1,6 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
using BlubbFish.IoT.Zway;
|
||||
using BlubbFish.IoT.Zway.Devices;
|
||||
using BlubbFish.IoT.Zway.Interfaces;
|
||||
|
@ -1,5 +1,7 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.ObjectModel;
|
||||
|
||||
using BlubbFish.IoT.Zway;
|
||||
using BlubbFish.Utils;
|
||||
using BlubbFish.Utils.IoT.Bots;
|
||||
@ -8,31 +10,47 @@ namespace BlubbFish.IoT.Bots.ZwayBot {
|
||||
class Program : Bot<ZwayController> {
|
||||
static void Main(String[] args) => new Program(args);
|
||||
|
||||
public Program(String[] args) {
|
||||
InIReader.SetSearchPath(new List<String>() { "/etc/zwaybot", Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\zwaybot" });
|
||||
Dictionary<String, String> names;
|
||||
public Program(String[] args) : base(args, true, "zwaybot") {
|
||||
Console.WriteLine("BlubbFish.IoT.Bots.ZwayBot.Program.Constructor()");
|
||||
|
||||
Dictionary<String, ReadOnlyDictionary<String, String>> names = new Dictionary<String, ReadOnlyDictionary<String, String>>();
|
||||
if(InIReader.ConfigExist("names")) {
|
||||
names = InIReader.GetInstance("names").GetSection("names");
|
||||
} else {
|
||||
names = new Dictionary<String, String>();
|
||||
foreach(String item in InIReader.GetInstance("names").GetSections(false)) {
|
||||
names.Add(item, new ReadOnlyDictionary<String, String>( InIReader.GetInstance("names").GetSection(item)));
|
||||
}
|
||||
}
|
||||
if(!InIReader.ConfigExist("settings")) {
|
||||
Helper.WriteError("No settings.ini found. Abord!");
|
||||
return;
|
||||
}
|
||||
this.logger.SetPath(InIReader.GetInstance("settings").GetValue("logging", "path"));
|
||||
|
||||
ZwayController zw = new ZwayController(InIReader.GetInstance("settings").GetSection("zway"), names, false);
|
||||
zw.Update += this.ZwayDataUpate;
|
||||
zw.Recieved += this.ZwayDataUpate;
|
||||
|
||||
this.ModulLoader("BlubbFish.IoT.Bots.ZwayBot.Moduls", zw);
|
||||
this.ModulInterconnect();
|
||||
this.ModulEvents();
|
||||
this.WaitForShutdown();
|
||||
this.Deconstructor(zw);
|
||||
|
||||
Console.WriteLine("Bye!");
|
||||
this.Dispose();
|
||||
}
|
||||
|
||||
private void Deconstructor(ZwayController zw) {
|
||||
Console.WriteLine("BlubbFish.IoT.Bots.ZwayBot.Program.Deconstructor(): Deconstruct ZwayBot.");
|
||||
|
||||
this.ModulDispose();
|
||||
Console.WriteLine("BlubbFish.IoT.Bots.ZwayBot.Program.Deconstructor(): ModuleDisposed.");
|
||||
|
||||
zw.Dispose();
|
||||
}
|
||||
Console.WriteLine("BlubbFish.IoT.Bots.ZwayBot.Program.Deconstructor(): Zway lib Disposed.");
|
||||
}
|
||||
|
||||
private void ZwayDataUpate(Object sender, Zway.Events.DeviceUpdateEvent e) {
|
||||
Console.WriteLine("-> ZW [" + e.UpdateTime + "]: " + e.Parent.ToString());
|
||||
if(this.DebugLogging) {
|
||||
Console.WriteLine("-> ZW [" + e.UpdateTime + "]: " + e.Parent.ToString());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,38 +0,0 @@
|
||||
using System.Reflection;
|
||||
using System.Resources;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
// Allgemeine Informationen über eine Assembly werden über die folgenden
|
||||
// Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern,
|
||||
// die einer Assembly zugeordnet sind.
|
||||
[assembly: AssemblyTitle("Zway-Bot")]
|
||||
[assembly: AssemblyDescription("Is a Bot for Zwave Devices")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("BlubbFish")]
|
||||
[assembly: AssemblyProduct("Zway-Bot")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2017 - 02.10.2018")]
|
||||
[assembly: AssemblyTrademark("BlubbFish")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// Durch Festlegen von ComVisible auf FALSE werden die Typen in dieser Assembly
|
||||
// für COM-Komponenten unsichtbar. Wenn Sie auf einen Typ in dieser Assembly von
|
||||
// COM aus zugreifen müssen, sollten Sie das ComVisible-Attribut für diesen Typ auf "True" festlegen.
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
// Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird
|
||||
[assembly: Guid("aef8059f-8aef-45c7-85c4-318c8f797900")]
|
||||
|
||||
// Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten:
|
||||
//
|
||||
// Hauptversion
|
||||
// Nebenversion
|
||||
// Buildnummer
|
||||
//
|
||||
// Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden,
|
||||
// übernehmen, indem Sie "*" eingeben:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("1.7.3")]
|
||||
[assembly: AssemblyFileVersion("1.7.3")]
|
||||
[assembly: NeutralResourcesLanguage("de-DE")]
|
||||
|
||||
// “Internet Of Things” icon by By Michael Wohlwend, US, from thenounproject.com.
|
73
Zway-Bot/Properties/Resources.Designer.cs
generated
73
Zway-Bot/Properties/Resources.Designer.cs
generated
@ -1,73 +0,0 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// Dieser Code wurde von einem Tool generiert.
|
||||
// Laufzeitversion:4.0.30319.42000
|
||||
//
|
||||
// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
|
||||
// der Code erneut generiert wird.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace BlubbFish.IoT.Bots.ZwayBot.Properties {
|
||||
using System;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw.
|
||||
/// </summary>
|
||||
// Diese Klasse wurde von der StronglyTypedResourceBuilder automatisch generiert
|
||||
// -Klasse über ein Tool wie ResGen oder Visual Studio automatisch generiert.
|
||||
// Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen
|
||||
// mit der /str-Option erneut aus, oder Sie erstellen Ihr VS-Projekt neu.
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "15.0.0.0")]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
public class Resources {
|
||||
|
||||
private static global::System.Resources.ResourceManager resourceMan;
|
||||
|
||||
private static global::System.Globalization.CultureInfo resourceCulture;
|
||||
|
||||
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
|
||||
internal Resources() {
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird.
|
||||
/// </summary>
|
||||
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||
public static global::System.Resources.ResourceManager ResourceManager {
|
||||
get {
|
||||
if (object.ReferenceEquals(resourceMan, null)) {
|
||||
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("BlubbFish.IoT.Bots.ZwayBot.Properties.Resources", typeof(Resources).Assembly);
|
||||
resourceMan = temp;
|
||||
}
|
||||
return resourceMan;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle
|
||||
/// Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden.
|
||||
/// </summary>
|
||||
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||
public static global::System.Globalization.CultureInfo Culture {
|
||||
get {
|
||||
return resourceCulture;
|
||||
}
|
||||
set {
|
||||
resourceCulture = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Icon ähnlich wie (Symbol).
|
||||
/// </summary>
|
||||
public static System.Drawing.Icon Icon {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("Icon", resourceCulture);
|
||||
return ((System.Drawing.Icon)(obj));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -1,124 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="Icon" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Icon.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
</root>
|
@ -1,136 +1,114 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{AEF8059F-8AEF-45C7-85C4-318C8F797900}</ProjectGuid>
|
||||
<OutputType>Exe</OutputType>
|
||||
<RootNamespace>BlubbFish.IoT.Bots.ZwayBot</RootNamespace>
|
||||
<TargetFramework>netcoreapp3.1</TargetFramework>
|
||||
<RootNamespace>BlubbFish.IoT.Bots.ZwayBot.Program</RootNamespace>
|
||||
<AssemblyName>Zway-Bot</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.7.1</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
|
||||
<TargetFrameworkProfile />
|
||||
<NuGetPackageImportStamp>
|
||||
</NuGetPackageImportStamp>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<StartupObject>BlubbFish.IoT.Bots.ZwayBot.Program</StartupObject>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<ApplicationIcon>Resources\Icon.ico</ApplicationIcon>
|
||||
<PackageId>Program.ZwayBot.Bots.IoT.BlubbFish</PackageId>
|
||||
<Version>1.8.4</Version>
|
||||
<NeutralLanguage>de-DE</NeutralLanguage>
|
||||
<Description>Is a Bot for Zwave Devices</Description>
|
||||
<Authors>BlubbFish</Authors>
|
||||
<Company>BlubbFish</Company>
|
||||
<Copyright>Copyright © BlubbFish 2017 - 30.01.2022</Copyright>
|
||||
<PackageLicenseFile>LICENSE</PackageLicenseFile>
|
||||
<PackageProjectUrl>https://git.blubbfish.net/vs_projects/Zway-Bot</PackageProjectUrl>
|
||||
<RepositoryUrl>https://git.blubbfish.net/vs_projects/Zway-Bot.git</RepositoryUrl>
|
||||
<RepositoryType>git</RepositoryType>
|
||||
<PackageReleaseNotes>
|
||||
1.8.4 - 2022-01-30 - Logging now more better
|
||||
1.8.3 - 2022-01-20 - Shutdown working
|
||||
1.8.2 - 2022-01-19 - Logging better
|
||||
1.8.1 - 2022-01-18 - New Default Configs
|
||||
1.8.0 - 2022-01-16 - Running again
|
||||
1.7.3 - 2018-10-29 - Change dependencys
|
||||
1.7.2 - 2018-10-02 - Improve
|
||||
1.7.1 - 2018-09-29 - Tiny fix for nullpointer exception
|
||||
1.7.0 - 2018-09-29 - Rewrite of Eventhandleing, Threaded
|
||||
1.6.2 - 2018-06-09 - Moved CronJob, Overtaker, Statuspolling to Abstract Bot-Utils
|
||||
1.6.1 - 2018-06-07 - Add Bot-Utils and rewrite code
|
||||
1.6.0 - 2018-06-05 - Thread that checks if a MQTT Connection exists and if not reopen it
|
||||
1.5.7 - 2018-06-02 - new try
|
||||
1.5.6 - 2018-06-02 - new try
|
||||
1.5.5 - 2018-06-02 - new try
|
||||
1.5.4 - 2018-06-02 - Fixing Bug in after installation script
|
||||
1.5.3 - 2018-06-02 - Making service linux running
|
||||
1.5.2 - 2018-06-02 - Cleanup
|
||||
1.5.1 - 2018-06-02 - Logrotate
|
||||
1.5.0 - 2018-05-29 - More Systemd
|
||||
1.4.3 - 2018-05-15 - Now sould dedect Strg+c on Linux
|
||||
1.4.2 - 2018-05-15 - Fixinig installations dpkg script
|
||||
1.4.1 - 2018-05-15 - Fixinig installations dpkg script
|
||||
1.4.0 - 2018-05-15 - Utils.csproj
|
||||
1.3.4 - 2018-05-12 - Bump zway lib to v1.4.3
|
||||
1.3.3 - 2018-05-10 - Bump zway lib to v1.4.2.0
|
||||
1.3.2 - 2018-05-08 - Debian Packaging
|
||||
1.3.1.0 - 2018-05-07 - Add Senml
|
||||
1.3.0.0 - 2017-12-22 - add possability to modify the config over mqtt
|
||||
1.2.2.0 - 2017-12-19 - Set values over mqtt
|
||||
1.2.1.0 - 2017-12-17 - Tiny fix for mqtt
|
||||
1.2.0.0 - 2017-12-17 - Adding Status Polling and Mqtt (not compelete)
|
||||
1.1.2.1 - 2017-12-09 - Next try to emulate F4G Events
|
||||
1.1.2.0 - 2017-12-08 - Interconnection
|
||||
1.1.1.0 - 2017-12-06 - F4G Module
|
||||
1.1.0.0 - 2017-12-02 - AModul
|
||||
1.0.1.0 - 2017-12-01 - Cronjob Bugfix
|
||||
1.0.0.0 - 2017-11-25 - Init
|
||||
</PackageReleaseNotes>
|
||||
<PackageIconUrl />
|
||||
<ApplicationIcon>Icon.ico</ApplicationIcon>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<None Include="dpkg\make-exe.nsi" />
|
||||
<None Include="dpkg\make-exe.sh" />
|
||||
<None Include="dpkg\preinst" />
|
||||
<None Include="dpkg\postinst" />
|
||||
<Compile Include="Moduls\CronJob.cs" />
|
||||
<Compile Include="Moduls\Mqtt.cs" />
|
||||
<Compile Include="Moduls\Overtaker.cs" />
|
||||
<Compile Include="Moduls\Senml.cs" />
|
||||
<Compile Include="Moduls\StatusPolling.cs" />
|
||||
<Compile Include="Program.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="Properties\Resources.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DesignTime>True</DesignTime>
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
</Compile>
|
||||
<Content Include="../CHANGELOG.md" />
|
||||
<Content Include="../CONTRIBUTING.md" />
|
||||
<Content Include="../LICENSE" />
|
||||
<Content Include="../README.md" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\Librarys\litjson\litjson\litjson_4.7.1.csproj">
|
||||
<Project>{91a14cd2-2940-4500-8193-56d37edddbaa}</Project>
|
||||
<Name>litjson_4.7.1</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\..\Utils\Bot-Utils\Bot-Utils.csproj">
|
||||
<Project>{bb7bfcb5-3db0-49e1-802a-3ce3eecc59f9}</Project>
|
||||
<Name>Bot-Utils</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\..\Utils\IoT\Connector\Data\Mqtt\ConnectorDataMqtt.csproj">
|
||||
<Project>{ee6c8f68-ed46-4c1c-abdd-cfcdf75104f2}</Project>
|
||||
<Name>ConnectorDataMqtt</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\..\Utils\IoT\Interfaces\Iot-Interfaces.csproj">
|
||||
<Project>{4daada29-c600-4cf3-8ad3-9c97c8d7f632}</Project>
|
||||
<Name>Iot-Interfaces</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\..\Utils\IoT\Utils-IoT.csproj">
|
||||
<Project>{b870e4d5-6806-4a0b-b233-8907eedc5afc}</Project>
|
||||
<Name>Utils-IoT</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\..\Utils\Utils\Utils.csproj">
|
||||
<Project>{fac8ce64-bf13-4ece-8097-aeb5dd060098}</Project>
|
||||
<Name>Utils</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\..\Zway\Zway\Zway.csproj">
|
||||
<Project>{166258ed-cb3d-43f5-8e8d-3a993b64d022}</Project>
|
||||
<Name>Zway</Name>
|
||||
</ProjectReference>
|
||||
<None Include="..\LICENSE">
|
||||
<Pack>True</Pack>
|
||||
<PackagePath></PackagePath>
|
||||
</None>
|
||||
<None Include="Resources\Icon.ico">
|
||||
<Pack>True</Pack>
|
||||
<PackagePath></PackagePath>
|
||||
</None>
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<None Include="config-example\cronjob.conf.example">
|
||||
<ProjectReference Include="..\..\Utils\Bot-Utils\Bot-Utils\Bot-Utils.csproj" />
|
||||
<ProjectReference Include="..\..\Utils\ConnectorDataMqtt\ConnectorDataMqtt\ConnectorDataMqtt.csproj" />
|
||||
<ProjectReference Include="..\..\Utils\Iot-Interfaces\Iot-Interfaces\Iot-Interfaces.csproj" />
|
||||
<ProjectReference Include="..\..\Utils\Utils-IoT\Utils-IoT\Utils-IoT.csproj" />
|
||||
<ProjectReference Include="..\..\Utils\Utils\Utils\Utils.csproj" />
|
||||
<ProjectReference Include="..\..\Zway\Zway\Zway.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<None Update="config-example\cronjob.conf">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="config-example\names.conf.example">
|
||||
<None Update="config-example\mqtt.conf">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="config-example\senml.conf.example">
|
||||
<None Update="config-example\names.conf">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="config-example\settings.conf.example">
|
||||
<None Update="config-example\overtaker.conf">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="config-example\statuspolling.conf.example">
|
||||
<None Update="config-example\senml.conf">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Update="config-example\settings.conf">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Update="config-example\statuspolling.conf">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="config-example\mqtt.conf.example">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="config-example\overtaker.conf.example">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="dpkg\control" />
|
||||
<None Include="dpkg\create-Builds.bat" />
|
||||
<None Include="dpkg\make-deb.sh" />
|
||||
<None Include="dpkg\prerm" />
|
||||
<None Include="dpkg\zwaybot-logrotate" />
|
||||
<None Include="dpkg\zwaybot.service" />
|
||||
<None Include="Resources\Icon.ico" />
|
||||
<Content Include="License.txt" />
|
||||
<Content Include="Resources\icon.svg" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="Properties\Resources.resx">
|
||||
<Generator>PublicResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Drawing" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
</Project>
|
||||
|
||||
</Project>
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,10 +0,0 @@
|
||||
[modul]
|
||||
config=public
|
||||
|
||||
[cold]
|
||||
cron=0 23 * * 0-4
|
||||
set=7-0-67-2:Level-19;7-0-112-8:Level-2
|
||||
|
||||
[hot]
|
||||
cron=0 16 * * 1-5
|
||||
set=7-0-67-1:Level-22;7-0-112-8:Level-1
|
@ -1,6 +0,0 @@
|
||||
[modul]
|
||||
config=private
|
||||
|
||||
[settings]
|
||||
type=mqtt
|
||||
server=localhost
|
@ -1,24 +0,0 @@
|
||||
[names]
|
||||
2-0-37=Kühlschrank Schalter
|
||||
2-0-49-4=Kühlschrank Leistung
|
||||
2-0-50-0=Kühlschrank Verbrauch [kWh]
|
||||
2-0-50-2=Kühlschrank Verbrauch [Wh]
|
||||
2-0-112-1=Kühlschrank Config (Immer AN)
|
||||
2-0-112-16=Kühlschrank Config (Zurück zu altem Status nach Stromausfall)
|
||||
2-0-112-34=Kühlschrank Config (Reaktion auf Alarm)
|
||||
2-0-112-35=Kühlschrank Config (Antwort auf Alarmmeldung)
|
||||
2-0-112-39=Kühlschrank Config (Alarm Dauer)
|
||||
2-0-112-40=Kühlschrank Config (Sofortiger Bericht über Stromverbrauch)
|
||||
2-0-112-42=Kühlschrank Config (Änderung der Leistung zum Generieren eines Reports)
|
||||
2-0-112-43=Kühlschrank Config (Regelmäßiges Senden eines Reports über die Stromaufnahme)
|
||||
2-0-112-45=Kühlschrank Config (Automatisches Senden eines Reportes über Stromverbrauch bei Verbrauchsänderung)
|
||||
2-0-112-47=Kühlschrank Config (Zeitinterval zum Senden eines Reportes ohne Änderung im Verbrauch)
|
||||
2-0-112-49=Kühlschrank Config (Messen des Eigenstromverbrauches)
|
||||
2-0-112-50=Kühlschrank Config (unterer Leistungsschwellwert)
|
||||
2-0-112-51=Kühlschrank Config (oberer Leistungsschwellwert)
|
||||
2-0-112-52=Kühlschrank Config (Aktion bei Erreichen des definierten Schwellwertes (Parameter 50/51))
|
||||
2-0-112-60=Kühlschrank Config (Leistungsschwellwert für violettes Blinken)
|
||||
2-0-112-61=Kühlschrank Config (LED Ring Farbe im Einschaltzustand)
|
||||
2-0-112-62=Kühlschrank Config (LED Ring Farbe im Ausschaltzustand)
|
||||
2-0-112-63=Kühlschrank Config (LED Ring Farbe bei Z-Wave Alarmmeldungen)
|
||||
2-0-112-70=Kühlschrank Config (Überlastabschaltung)
|
@ -1,12 +0,0 @@
|
||||
[hot]
|
||||
from=7-0-67-1:Level
|
||||
to=8-0-67-1:Level;9-0-67-1:Level
|
||||
|
||||
[cold]
|
||||
from=7-0-67-2:Level
|
||||
to=8-0-67-11:Level;9-0-67-11:Level
|
||||
|
||||
[mode]
|
||||
from=7-0-112-8:Level
|
||||
to=8-0-64:Level;9-0-64:Level
|
||||
convert=1-1;2-11
|
@ -1,7 +0,0 @@
|
||||
[modul]
|
||||
config=private
|
||||
|
||||
[settings]
|
||||
type=mqtt
|
||||
server=localhost
|
||||
guid=linksmart-zwaybot
|
@ -1,7 +0,0 @@
|
||||
[zway]
|
||||
server=localhost
|
||||
user=admin
|
||||
pass=pass
|
||||
|
||||
[logging]
|
||||
path=/var/log/zwaybot.log
|
@ -1,3 +0,0 @@
|
||||
[temp]
|
||||
cron=30 * * * *
|
||||
devices=7-0-49-1,8-0-49-1,9-0-49-1,10-0-49-1,11-0-49-1
|
Binary file not shown.
11
Zway-Bot/config-example/cronjob.conf
Normal file
11
Zway-Bot/config-example/cronjob.conf
Normal file
@ -0,0 +1,11 @@
|
||||
[modul]
|
||||
enabled=true
|
||||
config=public
|
||||
|
||||
; [cold]
|
||||
; cron=0 23 * * 0-4
|
||||
; set=7-0-67-2:Level-19;7-0-112-8:Level-2
|
||||
|
||||
; [hot]
|
||||
; cron=0 16 * * 1-5
|
||||
; set=7-0-67-1:Level-22;7-0-112-8:Level-1
|
@ -1,10 +0,0 @@
|
||||
[modul]
|
||||
config=public
|
||||
|
||||
[cold]
|
||||
cron=0 23 * * 0-4
|
||||
set=7-0-67-2:Level-19;7-0-112-8:Level-2
|
||||
|
||||
[hot]
|
||||
cron=0 16 * * 1-5
|
||||
set=7-0-67-1:Level-22;7-0-112-8:Level-1
|
@ -1,4 +1,5 @@
|
||||
[modul]
|
||||
enabled=false
|
||||
config=private
|
||||
|
||||
[settings]
|
86
Zway-Bot/config-example/names.conf
Normal file
86
Zway-Bot/config-example/names.conf
Normal file
@ -0,0 +1,86 @@
|
||||
[2-3-32784]
|
||||
0=Default
|
||||
0-49-1=Temperatur
|
||||
0-67-1=Einstellung Heizen Ziel
|
||||
0-67-2=Einstellung Kühlen Ziel
|
||||
0-67-10=Einstellung Automatisch Ziel
|
||||
0-91=Taster
|
||||
0-112-1=Config (Temperaturgrenzwert für Bericht)
|
||||
0-112-2=Config (Temperaturwert setzen)
|
||||
0-112-3=Config (Minimum Temperaturwert setzen)
|
||||
0-112-4=Config (Maximum Temperaturwert setzen)
|
||||
0-112-5=Config (LED Flash Periode)
|
||||
0-112-6=Config (Kontrollfunktion setzen)
|
||||
0-112-7=Config (Temporärer Überbrückungsplan)
|
||||
0-112-8=Config (Temperaturregelung setzen)
|
||||
0-112-9=Config (LED on time)
|
||||
0-112-10=Config (Dauer des LED Blinkens)
|
||||
0-112-11=Config (LED Farbe)
|
||||
0-128=Batterie
|
||||
0-132=Wakeup
|
||||
0-135=Indikator
|
||||
|
||||
[271-1536-4096]
|
||||
0=Default
|
||||
0-37=Schalter
|
||||
0-49-4=Leistung
|
||||
0-50-0=Verbrauch [kWh]
|
||||
0-50-2=Verbrauch [W]
|
||||
0-112-1=Config (Immer AN)
|
||||
0-112-16=Config (Zurück zu altem Status nach Stromausfall)
|
||||
0-112-34=Config (Reaktion auf Alarm)
|
||||
0-112-35=Config (Antwort auf Alarmmeldung)
|
||||
0-112-39=Config (Alarm Dauer)
|
||||
0-112-40=Config (Sofortiger Bericht über Stromverbrauch)
|
||||
0-112-42=Config (Änderung der Leistung zum Generieren eines Reports)
|
||||
0-112-43=Config (Regelmäßiges Senden eines Reports über die Stromaufnahme)
|
||||
0-112-45=Config (Automatisches Senden eines Reportes über Stromverbrauch bei Verbrauchsänderung)
|
||||
0-112-47=Config (Zeitinterval zum Senden eines Reportes ohne Änderung im Verbrauch)
|
||||
0-112-49=Config (Messen des Eigenstromverbrauches)
|
||||
0-112-50=Config (unterer Leistungsschwellwert)
|
||||
0-112-51=Config (oberer Leistungsschwellwert)
|
||||
0-112-52=Config (Aktion bei Erreichen des definierten Schwellwertes (Parameter 50/51))
|
||||
0-112-60=Config (Leistungsschwellwert für violettes Blinken)
|
||||
0-112-61=Config (LED Ring Farbe im Einschaltzustand)
|
||||
0-112-62=Config (LED Ring Farbe im Ausschaltzustand)
|
||||
0-112-63=Config (LED Ring Farbe bei Z-Wave Alarmmeldungen)
|
||||
0-112-70=Config (Überlastabschaltung)
|
||||
|
||||
[271-1538-4097]
|
||||
0=Default
|
||||
0-37=Schalter
|
||||
0-49-4=Leistung
|
||||
0-50-0=Verbrauch [kWh]
|
||||
0-50-2=Verbrauch [W]
|
||||
0-112-1=Config (Immer AN)
|
||||
0-112-2=Config (Zurück zu altem Status nach Stromausfall)
|
||||
0-112-3=Config (Überlastabschaltung)
|
||||
0-112-10=Config (Sofortiger Bericht über Stromverbrauch)
|
||||
0-112-11=Config (Änderung der Leistung zum Generieren eines Reports)
|
||||
0-112-12=Config (Regelmäßiges Senden eines Reports über die Stromaufnahme)
|
||||
0-112-13=Config (Automatisches Senden eines Reportes über Stromverbrauch bei Verbrauchsänderung)
|
||||
0-112-14=Config (Zeitinterval zum Senden eines Reportes ohne Änderung im Verbrauch)
|
||||
0-112-15=Config (Messen des Eigenstromverbrauches)
|
||||
0-112-20=Config (Assoziierte Geräte mitschalten invertieren)
|
||||
0-112-21=Config (unterer Leistungsschwellwert)
|
||||
0-112-22=Config (oberer Leistungsschwellwert)
|
||||
0-112-23=Config (Aktion bei Erreichen des definierten Schwellwertes (Parameter 21/22))
|
||||
0-112-24=Config (Assoziierte Geräte mitschalten)
|
||||
0-112-30=Config (Reaktion auf Alarm)
|
||||
0-112-31=Config (Antwort auf Alarmmeldung)
|
||||
0-112-32=Config (Alarm Dauer)
|
||||
0-112-40=Config (Leistungsschwellwert für violettes Blinken)
|
||||
0-112-41=Config (LED Ring Farbe im Einschaltzustand)
|
||||
0-112-42=Config (LED Ring Farbe im Ausschaltzustand)
|
||||
0-112-43=Config (LED Ring Farbe bei Z-Wave Alarmmeldungen)
|
||||
0-112-50=Config (Assozierte Geräte im sicheren Modus ansprechen)
|
||||
0-113=Alarmmeldung Leistungsschwellwert
|
||||
|
||||
[328-2-1]
|
||||
0-38=Reglerstellung
|
||||
0-49-1=Temperatur
|
||||
0-64=Thermostat Modus
|
||||
0-67-1=Einstellung Heizen
|
||||
0-67-11=Einstellung Kühlen
|
||||
0-128=Batterie
|
||||
0-132=Wakeup
|
@ -1,24 +0,0 @@
|
||||
[names]
|
||||
2-0-37=Kühlschrank Schalter
|
||||
2-0-49-4=Kühlschrank Leistung
|
||||
2-0-50-0=Kühlschrank Verbrauch [kWh]
|
||||
2-0-50-2=Kühlschrank Verbrauch [Wh]
|
||||
2-0-112-1=Kühlschrank Config (Immer AN)
|
||||
2-0-112-16=Kühlschrank Config (Zurück zu altem Status nach Stromausfall)
|
||||
2-0-112-34=Kühlschrank Config (Reaktion auf Alarm)
|
||||
2-0-112-35=Kühlschrank Config (Antwort auf Alarmmeldung)
|
||||
2-0-112-39=Kühlschrank Config (Alarm Dauer)
|
||||
2-0-112-40=Kühlschrank Config (Sofortiger Bericht über Stromverbrauch)
|
||||
2-0-112-42=Kühlschrank Config (Änderung der Leistung zum Generieren eines Reports)
|
||||
2-0-112-43=Kühlschrank Config (Regelmäßiges Senden eines Reports über die Stromaufnahme)
|
||||
2-0-112-45=Kühlschrank Config (Automatisches Senden eines Reportes über Stromverbrauch bei Verbrauchsänderung)
|
||||
2-0-112-47=Kühlschrank Config (Zeitinterval zum Senden eines Reportes ohne Änderung im Verbrauch)
|
||||
2-0-112-49=Kühlschrank Config (Messen des Eigenstromverbrauches)
|
||||
2-0-112-50=Kühlschrank Config (unterer Leistungsschwellwert)
|
||||
2-0-112-51=Kühlschrank Config (oberer Leistungsschwellwert)
|
||||
2-0-112-52=Kühlschrank Config (Aktion bei Erreichen des definierten Schwellwertes (Parameter 50/51))
|
||||
2-0-112-60=Kühlschrank Config (Leistungsschwellwert für violettes Blinken)
|
||||
2-0-112-61=Kühlschrank Config (LED Ring Farbe im Einschaltzustand)
|
||||
2-0-112-62=Kühlschrank Config (LED Ring Farbe im Ausschaltzustand)
|
||||
2-0-112-63=Kühlschrank Config (LED Ring Farbe bei Z-Wave Alarmmeldungen)
|
||||
2-0-112-70=Kühlschrank Config (Überlastabschaltung)
|
16
Zway-Bot/config-example/overtaker.conf
Normal file
16
Zway-Bot/config-example/overtaker.conf
Normal file
@ -0,0 +1,16 @@
|
||||
[modul]
|
||||
enabled=false
|
||||
config=public
|
||||
|
||||
; [hot]
|
||||
; from=7-0-67-1:Level
|
||||
; to=8-0-67-1:Level;9-0-67-1:Level
|
||||
|
||||
; [cold]
|
||||
; from=7-0-67-2:Level
|
||||
; to=8-0-67-11:Level;9-0-67-11:Level
|
||||
|
||||
; [mode]
|
||||
; from=7-0-112-8:Level
|
||||
; to=8-0-64:Level;9-0-64:Level
|
||||
; convert=1-1;2-11
|
@ -1,12 +0,0 @@
|
||||
[hot]
|
||||
from=7-0-67-1:Level
|
||||
to=8-0-67-1:Level;9-0-67-1:Level
|
||||
|
||||
[cold]
|
||||
from=7-0-67-2:Level
|
||||
to=8-0-67-11:Level;9-0-67-11:Level
|
||||
|
||||
[mode]
|
||||
from=7-0-112-8:Level
|
||||
to=8-0-64:Level;9-0-64:Level
|
||||
convert=1-1;2-11
|
@ -1,4 +1,5 @@
|
||||
[modul]
|
||||
enabled=false
|
||||
config=private
|
||||
|
||||
[settings]
|
9
Zway-Bot/config-example/settings.conf
Normal file
9
Zway-Bot/config-example/settings.conf
Normal file
@ -0,0 +1,9 @@
|
||||
[zway]
|
||||
server=localhost
|
||||
user=admin
|
||||
pass=pass
|
||||
type=zway
|
||||
|
||||
[logging]
|
||||
path=/var/log/zwaybot/debug.log
|
||||
debug=false
|
@ -1,7 +0,0 @@
|
||||
[zway]
|
||||
server=localhost
|
||||
user=admin
|
||||
pass=pass
|
||||
|
||||
[logging]
|
||||
path=/var/log/zwaybot.log
|
7
Zway-Bot/config-example/statuspolling.conf
Normal file
7
Zway-Bot/config-example/statuspolling.conf
Normal file
@ -0,0 +1,7 @@
|
||||
[modul]
|
||||
enabled=true
|
||||
config=public
|
||||
|
||||
; [temp]
|
||||
; cron=30 * * * *
|
||||
; devices=7-0-49-1,8-0-49-1,9-0-49-1,10-0-49-1,11-0-49-1
|
@ -1,3 +0,0 @@
|
||||
[temp]
|
||||
cron=30 * * * *
|
||||
devices=7-0-49-1,8-0-49-1,9-0-49-1,10-0-49-1,11-0-49-1
|
@ -1,10 +0,0 @@
|
||||
Package: zwaybot
|
||||
Version: x.x-x
|
||||
Section: base
|
||||
Priority: optional
|
||||
Architecture: any
|
||||
Depends: mono-runtime (>= 5.16.0)
|
||||
Maintainer: BlubbFish <dev@blubbfish.net>
|
||||
Description: Zway-Bot
|
||||
Zway-Bot manage a Zwave.me installation
|
||||
so that it has more features
|
@ -1,3 +1,3 @@
|
||||
bash.exe -c "./make-deb.sh armhf"
|
||||
bash.exe -c "./make-deb.sh"
|
||||
bash.exe -c "./make-exe.sh"
|
||||
pause
|
@ -1,49 +1,44 @@
|
||||
#!/bin/bash
|
||||
|
||||
HOMEDIR="/home/blubb"
|
||||
ROOT="$HOMEDIR/deb"
|
||||
OUTPUT="../bin/Release"
|
||||
CSPROJFILE="Zway-Bot.csproj"
|
||||
VMAJOR=$(grep -e "<Version>" ../$CSPROJFILE | cut -d'>' -f 2 | cut -d'<' -f 1 | cut -d'.' -f 1)
|
||||
VMINOR=$(grep -e "<Version>" ../$CSPROJFILE | cut -d'>' -f 2 | cut -d'<' -f 1 | cut -d'.' -f 2)
|
||||
VBUILD=$(grep -e "<Version>" ../$CSPROJFILE | cut -d'>' -f 2 | cut -d'<' -f 1 | cut -d'.' -f 3)
|
||||
|
||||
EXEC="$ROOT/usr/local/bin/zwaybot"
|
||||
CONFIG="$ROOT/etc/zwaybot"
|
||||
SYSTEMD="$ROOT/lib/systemd/system"
|
||||
LOGROTATE="$ROOT/etc/logrotate.d"
|
||||
mkdir -p ../deb
|
||||
mkdir -p ../Builds
|
||||
|
||||
DEBIAN="$ROOT/DEBIAN"
|
||||
VMAJOR=$(grep -e "^\[assembly: AssemblyVersion(\"" ../Properties/AssemblyInfo.cs | cut -d'"' -f 2 | cut -d'.' -f 1)
|
||||
VMINOR=$(grep -e "^\[assembly: AssemblyVersion(\"" ../Properties/AssemblyInfo.cs | cut -d'"' -f 2 | cut -d'.' -f 2)
|
||||
VBUILD=$(grep -e "^\[assembly: AssemblyVersion(\"" ../Properties/AssemblyInfo.cs | cut -d'"' -f 2 | cut -d'.' -f 3)
|
||||
ARCHT=$1
|
||||
export NAME=zwaybot
|
||||
export MAINAINER="BlubbFish <dev@blubbfish.net>"
|
||||
export VERSION="$VMAJOR.$VMINOR-$VBUILD"
|
||||
export DESCRIPTION="Zway-Bot manage a Zwave.me installation so that it has more features"
|
||||
export DEPENDENCIES="dotnet-runtime-3.1 (>= 3.1.22)"
|
||||
|
||||
mkdir -p $EXEC
|
||||
mkdir -p $CONFIG
|
||||
mkdir -p $DEBIAN
|
||||
mkdir -p $SYSTEMD
|
||||
mkdir -p $LOGROTATE
|
||||
export EXEPATH=Zway-Bot.dll
|
||||
export USERNAMEGROUP=zwaybot
|
||||
export EXEARGUMENTS=" "
|
||||
export RUNNER=/usr/share/dotnet/dotnet
|
||||
export COPYEXEC="../bin/Release/netcoreapp3.1/*.dll ../bin/Release/netcoreapp3.1/Zway-Bot.deps.json ../bin/Release/netcoreapp3.1/Zway-Bot.runtimeconfig.json"
|
||||
export LOGFILE="/var/log/zwaybot/debug.log"
|
||||
|
||||
cp control $DEBIAN
|
||||
cp preinst $DEBIAN
|
||||
cp postinst $DEBIAN
|
||||
cp prerm $DEBIAN
|
||||
sed -i s/Version:\ x\.x-x/"Version: $VMAJOR.$VMINOR-$VBUILD"/ $DEBIAN/control
|
||||
sed -i s/Architecture:\ any/"Architecture: $ARCHT"/ $DEBIAN/control
|
||||
chmod 755 $DEBIAN -R
|
||||
export COPYCONFIG="../bin/Release/netcoreapp3.1/config-example/*.conf"
|
||||
export CONFIGREPLACEASK="cronjob.conf mqtt.conf names.conf overtaker.conf senml.conf settings.conf statuspolling.conf"
|
||||
|
||||
cp zwaybot.service $SYSTEMD
|
||||
chmod 644 $SYSTEMD/zwaybot.service
|
||||
cd ../deb
|
||||
export PLATFORM=armhf
|
||||
curl -s https://git.blubbfish.net/vs_utils/CI-Scripts/raw/branch/master/deb/control-build.sh | bash
|
||||
curl -s https://git.blubbfish.net/vs_utils/CI-Scripts/raw/branch/master/deb/logrotate-build.sh | bash
|
||||
curl -s https://git.blubbfish.net/vs_utils/CI-Scripts/raw/branch/master/deb/pre-post-build.sh | bash
|
||||
curl -s https://git.blubbfish.net/vs_utils/CI-Scripts/raw/branch/master/deb/service-build.sh | bash
|
||||
curl -s https://git.blubbfish.net/vs_utils/CI-Scripts/raw/branch/master/deb/build-deb.sh | bash
|
||||
|
||||
cp $OUTPUT/*.exe $EXEC/
|
||||
find $OUTPUT -name \*.dll ! -name Mono.Posix.dll -exec cp {} $EXEC/ \;
|
||||
chmod 644 $EXEC/*
|
||||
chmod 755 $EXEC
|
||||
|
||||
cp $OUTPUT/config-example/* $CONFIG
|
||||
chmod 644 $CONFIG/*
|
||||
chmod 755 $CONFIG
|
||||
export PLATFORM=amd64
|
||||
curl -s https://git.blubbfish.net/vs_utils/CI-Scripts/raw/branch/master/deb/control-build.sh | bash
|
||||
curl -s https://git.blubbfish.net/vs_utils/CI-Scripts/raw/branch/master/deb/build-deb.sh | bash
|
||||
|
||||
cp zwaybot-logrotate $LOGROTATE/zwaybot
|
||||
chmod 644 $LOGROTATE/*
|
||||
cd ..
|
||||
rm deb -rf
|
||||
|
||||
dpkg-deb --build $ROOT
|
||||
mv $HOMEDIR/deb.deb ../../../Builds/"$ARCHT-zwaybot_$VMAJOR.$VMINOR-$VBUILD.deb"
|
||||
rm $HOMEDIR/deb -r
|
||||
cp Builds/* ../../Builds/
|
||||
rm Builds -rf
|
@ -25,15 +25,15 @@
|
||||
!define MUI_STARTMENUPAGE_REGISTRY_ROOT "HKCU"
|
||||
!define MUI_STARTMENUPAGE_REGISTRY_KEY "Software\Zway-Bot"
|
||||
!define MUI_STARTMENUPAGE_REGISTRY_VALUENAME "Start Menu Folder"
|
||||
!define MUI_ICON "..\Resources\Icon.ico"
|
||||
!define MUI_UNICON "..\Resources\Icon.ico"
|
||||
!define MUI_ICON "..\Icon.ico"
|
||||
!define MUI_UNICON "..\Icon.ico"
|
||||
!define MUI_FINISHPAGE_NOAUTOCLOSE
|
||||
!define MUI_UNFINISHPAGE_NOAUTOCLOSE
|
||||
!define MUI_STARTMENUPAGE_DEFAULTFOLDER "Zway-Bot"
|
||||
;--------------------------------
|
||||
;Pages
|
||||
!insertmacro MUI_PAGE_WELCOME
|
||||
!insertmacro MUI_PAGE_LICENSE "..\License.txt"
|
||||
!insertmacro MUI_PAGE_LICENSE "..\..\LICENSE"
|
||||
!insertmacro MUI_PAGE_COMPONENTS
|
||||
!insertmacro MUI_PAGE_DIRECTORY
|
||||
!insertmacro MUI_PAGE_STARTMENU Application $StartMenuFolder
|
||||
@ -61,21 +61,23 @@
|
||||
!insertmacro MUI_STARTMENU_WRITE_END
|
||||
WriteRegStr HKCU "Software\Zway-Bot" "" $INSTDIR
|
||||
SetOutPath "$INSTDIR"
|
||||
File /r /x Mono.Posix.dll ..\bin\Release\*.dll
|
||||
File /r ..\bin\Release\*.exe
|
||||
File /r /x ..\bin\Release\netcoreapp3.1\Zway-Bot.deps.json ..\bin\Release\netcoreapp3.1\Zway-Bot.runtimeconfig.json
|
||||
File /r ..\bin\Release\netcoreapp3.1\*.dll
|
||||
File /r ..\bin\Release\netcoreapp3.1\*.exe
|
||||
WriteUninstaller "$INSTDIR\Uninstall.exe"
|
||||
SectionEnd
|
||||
Section "Konfigurationsdateien" SecConf
|
||||
SectionIn 1
|
||||
CreateDirectory "$APPDATA\zwaybot"
|
||||
SetOutPath "$APPDATA\zwaybot"
|
||||
File /r ..\bin\Release\config-example\*.example
|
||||
File /r ..\bin\Release\netcoreapp3.1\config-example\*.conf
|
||||
SectionEnd
|
||||
Section "Uninstall"
|
||||
;ADD YOUR OWN FILES HERE...
|
||||
Delete "$INSTDIR\*.exe"
|
||||
Delete "$INSTDIR\*.dll"
|
||||
Delete "$APPDATA\zwaybot\*.example"
|
||||
Delete "$INSTDIR\*.json"
|
||||
Delete "$APPDATA\zwaybot\*.conf"
|
||||
RMDir "$INSTDIR"
|
||||
RMDir "$APPDATA\zwaybot"
|
||||
!insertmacro MUI_STARTMENU_GETFOLDER Application $StartMenuFolder
|
||||
|
@ -1,8 +1,9 @@
|
||||
#!/bin/bash
|
||||
|
||||
VMAJOR=$(grep -e "^\[assembly: AssemblyVersion(\"" ../Properties/AssemblyInfo.cs | cut -d'"' -f 2 | cut -d'.' -f 1)
|
||||
VMINOR=$(grep -e "^\[assembly: AssemblyVersion(\"" ../Properties/AssemblyInfo.cs | cut -d'"' -f 2 | cut -d'.' -f 2)
|
||||
VBUILD=$(grep -e "^\[assembly: AssemblyVersion(\"" ../Properties/AssemblyInfo.cs | cut -d'"' -f 2 | cut -d'.' -f 3)
|
||||
CSPROJFILE="Zway-Bot.csproj"
|
||||
VMAJOR=$(grep -e "<Version>" ../$CSPROJFILE | cut -d'>' -f 2 | cut -d'<' -f 1 | cut -d'.' -f 1)
|
||||
VMINOR=$(grep -e "<Version>" ../$CSPROJFILE | cut -d'>' -f 2 | cut -d'<' -f 1 | cut -d'.' -f 2)
|
||||
VBUILD=$(grep -e "<Version>" ../$CSPROJFILE | cut -d'>' -f 2 | cut -d'<' -f 1 | cut -d'.' -f 3)
|
||||
|
||||
cp make-exe.nsi make.nsi
|
||||
sed -i s/Name\ \"Zway-Bot\ x\.x\.x\"/"Name \"Zway-Bot $VMAJOR.$VMINOR.$VBUILD\""/ make.nsi
|
||||
|
@ -1,8 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
systemctl enable zwaybot
|
||||
systemctl daemon-reload
|
||||
if [[ $(systemctl is-active zwaybot || true) == "active" ]]
|
||||
then
|
||||
service zwaybot restart
|
||||
fi
|
@ -1,6 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
useradd -M zwaybot
|
||||
usermod -L zwaybot
|
||||
groupadd zwaybot
|
||||
usermod -G zwaybot,adm zwaybot
|
@ -1,3 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
service zwaybot stop
|
@ -1,10 +0,0 @@
|
||||
/var/log/zwaybot.log {
|
||||
compress
|
||||
copytruncate
|
||||
daily
|
||||
delaycompress
|
||||
missingok
|
||||
notifempty
|
||||
rotate 4
|
||||
size=10M
|
||||
}
|
@ -1,21 +0,0 @@
|
||||
# If you modify this, please also make sure to edit init.sh
|
||||
|
||||
[Unit]
|
||||
Description=Zway-Bot manage a Zwave.me installation so that it has more features
|
||||
After=network-online.target
|
||||
|
||||
[Service]
|
||||
User=zwaybot
|
||||
Group=zwaybot
|
||||
WorkingDirectory=/usr/local/bin/zwaybot
|
||||
# ExecStartPre=/bin/rm /var/log/zwaybot.log && /bin/touch /var/log/zwaybot.log && /bin/chown zwaybot:zwaybot /var/log/zwaybot.log && /bin/chmod 644 /var/log/zwaybot.log
|
||||
ExecStart=/usr/bin/mono /usr/local/bin/zwaybot/Zway-Bot.exe
|
||||
KillMode=control-group
|
||||
TimeoutStopSec=5
|
||||
Restart=on-failure
|
||||
StandardOutput=null
|
||||
StandardError=syslog
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
Alias=zwaybot.service
|
Loading…
Reference in New Issue
Block a user