Compare commits
	
		
			67 Commits
		
	
	
		
			v2.2.21
			...
			82d0e6b1b6
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 82d0e6b1b6 | |||
| e84d810e39 | |||
| dbd7d760aa | |||
| 75f92aece3 | |||
| 14644b8575 | |||
| f37a24673c | |||
| d313cb8d4a | |||
| 2e3210c438 | |||
| 2db8db3b89 | |||
| af36bed895 | |||
| ba898624c5 | |||
| 12595b3674 | |||
| f7234b10f8 | |||
| be3fb7bbfc | |||
| 23bbc9f9b0 | |||
| e60509fbfd | |||
| aafeea4d5f | |||
| c6b6a12e47 | |||
| b57f538bc3 | |||
| 464ba0bec3 | |||
| 2b96be4e6e | |||
| d07297bcd8 | |||
| af786290bc | |||
| 478c4a3159 | |||
| 6a38b446a9 | |||
| 00c0a2a87e | |||
| 0a47226436 | |||
| e9fb9357a9 | |||
| ce875a8beb | |||
| d0157fb2c7 | |||
| eb134a19e9 | |||
| cfd255569f | |||
| b1de4b52da | |||
| 6b6c066a9b | |||
| 530fc01d57 | |||
| 7d7cbef4ed | |||
| 8b9bbd4f98 | |||
| 2a06821252 | |||
| 9868f74a86 | |||
| d2e93a6d5a | |||
| c27d51534c | |||
| 5bfd1c49d9 | |||
| 0f1af75a9e | |||
| 70a402f096 | |||
| 245fc455e1 | |||
| 1683fab2d4 | |||
| 33763032c6 | |||
| 2afb98f9b9 | |||
| 38091aacd1 | |||
| 30dd03cbea | |||
| 43e3fcb237 | |||
| 5f611555e3 | |||
| a3fa194cdd | |||
| baa48a79a4 | |||
| 2601a42643 | |||
| cfd8ff9ea1 | |||
| be3352e462 | |||
| fb5087803b | |||
| e3b9f512b9 | |||
| 99b46338ca | |||
| a78a1a986d | |||
| 62df910faa | |||
| f96c557a22 | |||
| 4eeb71e8bc | |||
| eeea03d2df | |||
| 2e8acfff0b | |||
| c29f48a282 | 
							
								
								
									
										469
									
								
								CHANGELOG.md
									
									
									
									
									
								
							
							
						
						
									
										469
									
								
								CHANGELOG.md
									
									
									
									
									
								
							@@ -1,4 +1,471 @@
 | 
			
		||||
### fix: bugfix function WeatherAsHtmlD not working (HEAD -> patch-WeatherAsHtmlD)
 | 
			
		||||
### Update version to 2.3.1 and fix conditionals in Weather.pm (HEAD -> patch-mod-weather)
 | 
			
		||||
>Thu, 16 Oct 2025 19:01:00 +0200
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
This commit updates the version number in the FHEM weather module
 | 
			
		||||
from 2.3.0 to 2.3.1 to reflect the latest changes.
 | 
			
		||||
 | 
			
		||||
In addition to the version bump, several conditionals in
 | 
			
		||||
lib/FHEM/Core/Weather.pm have been corrected. Specifically, the
 | 
			
		||||
syntax for checking the command attributes has been fixed to ensure
 | 
			
		||||
proper evaluation of the conditions.
 | 
			
		||||
 | 
			
		||||
These changes improve code clarity and correctness, which helps
 | 
			
		||||
in maintaining the module. There are no breaking changes in this
 | 
			
		||||
commit, and existing functionality remains intact.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### Remove DarkSky API support from Weather module (tag: v2.3.0, origin/testing, origin/main, origin/dev, origin/HEAD, testing, main, dev)
 | 
			
		||||
>Tue, 14 Oct 2025 07:35:31 +0200
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
The DarkSky API support has been removed from the Weather module
 | 
			
		||||
documentation, affecting both English and German sections. The API
 | 
			
		||||
documentation now focuses solely on the OpenWeatherMap API.
 | 
			
		||||
 | 
			
		||||
Changes include the deletion of DarkSky references in `59_Weather.pm`
 | 
			
		||||
and updates to example command snippets to refer to the
 | 
			
		||||
OpenWeatherMap API. The version number was incremented from
 | 
			
		||||
v2.2.35 to v2.3.0, and the OpenWeatherMap API version was updated
 | 
			
		||||
from v3.2.7 to v3.2.8.
 | 
			
		||||
 | 
			
		||||
These updates were necessary as DarkSky has been discontinued,
 | 
			
		||||
streamlining the module's functionality. There are no breaking
 | 
			
		||||
changes for current OpenWeatherMap API users.
 | 
			
		||||
 | 
			
		||||
Additionally, the language handling in the Weather API was
 | 
			
		||||
refactored to replace the experimental `given/when` construct
 | 
			
		||||
with standard `if/elsif` statements for better readability
 | 
			
		||||
and maintainability. This change does not introduce any breaking
 | 
			
		||||
changes and enhances code clarity.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### Remove DarkSky API support from Weather module
 | 
			
		||||
>Tue, 14 Oct 2025 07:35:18 +0200
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
The DarkSky API support has been removed from the Weather module documentation,
 | 
			
		||||
including its references in both English and German sections. The API
 | 
			
		||||
documentation has been updated to exclusively focus on the
 | 
			
		||||
OpenWeatherMap API.
 | 
			
		||||
 | 
			
		||||
The changes made to `59_Weather.pm` include:
 | 
			
		||||
 | 
			
		||||
- Deleted mentions of the DarkSky API in the documentation.
 | 
			
		||||
- Updated example command snippets to reference the
 | 
			
		||||
  OpenWeatherMap API.
 | 
			
		||||
- Version number has been incremented from v2.2.35 to v2.3.0.
 | 
			
		||||
 | 
			
		||||
In addition, the version number for the OpenWeatherMap API support
 | 
			
		||||
has been updated from v3.2.7 to v3.2.8 in the corresponding API file.
 | 
			
		||||
 | 
			
		||||
These updates were necessary to streamline the module's
 | 
			
		||||
functionality and align it with current API availability, as
 | 
			
		||||
DarkSky has been discontinued. There are no breaking changes
 | 
			
		||||
for existing users of the OpenWeatherMap API.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### Refactor language handling in Weather API
 | 
			
		||||
>Tue, 14 Oct 2025 07:04:00 +0200
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
Improved the language initialization logic by replacing the
 | 
			
		||||
experimental `given/when` construct with a more standard
 | 
			
		||||
`if/elsif` structure to enhance code readability and
 | 
			
		||||
maintainability. The attribute handling in the `Attr` subroutine
 | 
			
		||||
was simplified for clarity, removing unnecessary usage
 | 
			
		||||
of `given/when`, which helps reduce complexity throughout
 | 
			
		||||
the codebase.
 | 
			
		||||
 | 
			
		||||
Additionally, in the OpenWeatherMapAPI module, the logic for
 | 
			
		||||
handling weather response data was streamlined by removing
 | 
			
		||||
`given/when` statements in favor of `if` conditions. This change
 | 
			
		||||
avoids potential confusion and enhances the clarity of the
 | 
			
		||||
code logic. No breaking changes were introduced; the overall
 | 
			
		||||
functionality remains intact.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### Refactor language handling in Weather API
 | 
			
		||||
>Tue, 14 Oct 2025 07:03:38 +0200
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
Improved the language initialization logic by replacing the
 | 
			
		||||
experimental `given/when` construct with a more standard
 | 
			
		||||
`if/elsif` structure, enhancing code readability and
 | 
			
		||||
maintainability. The attribute handling in the `Attr` subroutine
 | 
			
		||||
was also refactored for clarity, removing unnecessary usage
 | 
			
		||||
of `given/when`, which helps reduce complexity throughout
 | 
			
		||||
the codebase.
 | 
			
		||||
 | 
			
		||||
In the OpenWeatherMapAPI module, the logic for handling
 | 
			
		||||
weather response data was streamlined by removing `given/when`
 | 
			
		||||
statements in favor of `if` conditions. This change avoids
 | 
			
		||||
potential confusion and enhances the clarity of the code logic.
 | 
			
		||||
No breaking changes were introduced; the overall functionality
 | 
			
		||||
remains intact.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### Refactor language handling to improve readability
 | 
			
		||||
>Tue, 14 Oct 2025 07:01:07 +0200
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
Improved the language initialization logic by replacing the
 | 
			
		||||
experimental `given/when` construct with a more standard
 | 
			
		||||
`if/elsif` structure, enhancing code readability and
 | 
			
		||||
maintainability. Additionally, the attribute handling in the
 | 
			
		||||
`Attr` subroutine was refactored for clarity, removing
 | 
			
		||||
unnecessary usage of `given/when`, which helps reduce
 | 
			
		||||
complexity across the codebase.
 | 
			
		||||
 | 
			
		||||
Furthermore, in the OpenWeatherMapAPI module, logic for
 | 
			
		||||
handling weather response data was streamlined by removing
 | 
			
		||||
the `given/when` statements in favor of `if` conditions.
 | 
			
		||||
This change eliminates potential confusion and enhances
 | 
			
		||||
the clarity of the code logic. No breaking changes were
 | 
			
		||||
introduced; the overall functionality remains intact.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### Refactor language initialization and attribute handling
 | 
			
		||||
>Tue, 14 Oct 2025 06:53:44 +0200
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
Improved the language initialization logic by replacing
 | 
			
		||||
the experimental `given/when` construct with a more
 | 
			
		||||
standard `if/elsif` structure. This change enhances code
 | 
			
		||||
readability and maintainability, making it easier to follow
 | 
			
		||||
the flow of language assignments.
 | 
			
		||||
 | 
			
		||||
Additionally, refactored attribute handling in the `Attr`
 | 
			
		||||
subroutine by streamlining the conditions, removing
 | 
			
		||||
unnecessary `given/when` usage, and maintaining clarity
 | 
			
		||||
in the logic for setting and deleting forecasts and alerts.
 | 
			
		||||
These changes help reduce complexity and improve
 | 
			
		||||
consistency throughout the codebase.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### ``` Refactor pre-commit hook by removing DarkSkyAPI references
 | 
			
		||||
>Wed, 5 Feb 2025 07:08:45 +0100
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
Updated the pre-commit hook to eliminate references to
 | 
			
		||||
'lib/FHEM/APIs/Weather/DarkSkyAPI.pm'. This change was made to
 | 
			
		||||
simplify the codebase and make it more relevant by focusing on
 | 
			
		||||
the other weather API files.
 | 
			
		||||
 | 
			
		||||
Additionally, the output formatting of the pre-commit hook
 | 
			
		||||
has been improved for better readability, and the order of
 | 
			
		||||
the files in the @filenames array has been restructured for
 | 
			
		||||
clarity.
 | 
			
		||||
 | 
			
		||||
No breaking changes have been introduced; the pre-commit
 | 
			
		||||
hook continues to operate as intended.
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### ``` Refactor pre-commit hook file list and output formatting
 | 
			
		||||
>Wed, 5 Feb 2025 07:07:52 +0100
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
Updated the list of files in the pre-commit hook to remove
 | 
			
		||||
references to 'lib/FHEM/APIs/Weather/DarkSkyAPI.pm' and adjusted
 | 
			
		||||
the output formatting for better readability. The order of the
 | 
			
		||||
files in the @filenames array has been restructured for clarity.
 | 
			
		||||
These changes were necessary to ensure our code base focuses on
 | 
			
		||||
the more relevant weather API files.
 | 
			
		||||
 | 
			
		||||
No breaking changes introduced; the pre-commit hook continues to
 | 
			
		||||
function as intended.
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### docs: add changelog
 | 
			
		||||
>Tue, 4 Feb 2025 21:27:10 +0100
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### docs: fix unbalanced p
 | 
			
		||||
>Tue, 4 Feb 2025 21:26:52 +0100
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### docs: add changelog
 | 
			
		||||
>Tue, 4 Feb 2025 21:01:33 +0100
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### feat: remove DarkSky, change versions remove DarkSkyAPI, no longer supported change Copyright years and versions of OWM API
 | 
			
		||||
>Tue, 4 Feb 2025 21:01:17 +0100
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
[Ticket: no]
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### docs: changelog
 | 
			
		||||
>Tue, 4 Feb 2025 20:53:14 +0100
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
[Ticket: no]
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### fix: apply patch from stefanru https://forum.fhem.de/index.php?msg=1332884
 | 
			
		||||
>Tue, 4 Feb 2025 20:52:52 +0100
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
[Ticket: no]
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### docs: new CHANGELOG
 | 
			
		||||
>Fri, 11 Oct 2024 12:04:37 +0200
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### docs: change versions and add copyright
 | 
			
		||||
>Fri, 11 Oct 2024 12:04:07 +0200
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### docs: Changelog
 | 
			
		||||
>Fri, 11 Oct 2024 07:07:57 +0200
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
[Ticket: no]
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### fix: Update forecast with cachemaxage after API calls are down. special thanks to stefanru (forum)
 | 
			
		||||
>Fri, 11 Oct 2024 06:59:53 +0200
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
[Ticket: no]
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### test: add new CHANGELOG
 | 
			
		||||
>Sat, 21 Oct 2023 08:59:11 +0200
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### feat: new reading owmAPICode for original code
 | 
			
		||||
>Tue, 11 Jul 2023 14:10:13 +0200
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
[Ticket: no]
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### feat: add human-readable text of daily forecast
 | 
			
		||||
>Tue, 6 Jun 2023 08:35:06 +0200
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
add the proper human-readable text description of the daily forecast
 | 
			
		||||
 | 
			
		||||
[Ticket: no]
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### add temperatur reading and fix weblink
 | 
			
		||||
>Tue, 23 May 2023 08:08:42 +0200
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (oldenburg@b1-systems.de)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (oldenburg@b1-systems.de)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### fix: missing perl modules
 | 
			
		||||
>Sun, 5 Feb 2023 09:26:04 +0100
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### fix: failed then Readonly is missing
 | 
			
		||||
>Sun, 5 Feb 2023 09:20:20 +0100
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### fix: : Undefined subroutine
 | 
			
		||||
>Thu, 2 Feb 2023 22:58:40 +0100
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
&FHEM::Core::Weather::DeleteForecastreadings
 | 
			
		||||
 | 
			
		||||
[Ticket: #46]
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### docs: add new entry in CHANGELOG.md (tag: v2.2.22)
 | 
			
		||||
>Tue, 10 Jan 2023 21:44:20 +0100
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### build: v2.2.22
 | 
			
		||||
>Tue, 10 Jan 2023 21:43:26 +0100
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### docs: add new modul path in to pre-commit
 | 
			
		||||
>Tue, 10 Jan 2023 21:37:10 +0100
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
add new modul path in to pre-commit hook file
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### revert: mod packages
 | 
			
		||||
>Tue, 10 Jan 2023 21:32:56 +0100
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
- packages Weather.pm
 | 
			
		||||
- split FHEM/59_Weather.pm in two files and packages (FEHM/59_Weather.pm
 | 
			
		||||
and FHEM/Core/Weather.pm
 | 
			
		||||
 | 
			
		||||
[optional body]
 | 
			
		||||
 | 
			
		||||
[Ticket: no]
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### fix: #40
 | 
			
		||||
>Tue, 10 Jan 2023 16:09:53 +0100
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
Undefined subroutine &FHEM::APIs::Weather::DarkSkyAPI::__strftimeWrapper
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### docs: add new changelog and change version (tag: v2.2.21)
 | 
			
		||||
>Sun, 8 Jan 2023 21:56:15 +0100
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
>Commiter: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
### fix: bugfix function WeatherAsHtmlD not working
 | 
			
		||||
>Sun, 8 Jan 2023 21:54:31 +0100
 | 
			
		||||
 | 
			
		||||
>Author: Marko Oldenburg (fhemdevelopment@cooltux.net)
 | 
			
		||||
 
 | 
			
		||||
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										1171
									
								
								FHEM/59_Weather.pm
									
									
									
									
									
								
							
							
						
						
									
										1171
									
								
								FHEM/59_Weather.pm
									
									
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@@ -1,4 +1,4 @@
 | 
			
		||||
UPD 2023-01-08_21:52:20 57800 FHEM/59_Weather.pm
 | 
			
		||||
UPD 2023-01-08_17:15:24 50104 lib/FHEM/APIs/Weather/DarkSkyAPI.pm
 | 
			
		||||
UPD 2023-01-08_17:15:24 33411 lib/FHEM/APIs/Weather/OpenWeatherMapAPI.pm
 | 
			
		||||
UPD 2023-01-07_19:00:05 36090 lib/FHEM/APIs/Weather/wundergroundAPI.pm
 | 
			
		||||
UPD 2025-10-16_18:59:55 24515 FHEM/59_Weather.pm
 | 
			
		||||
UPD 2025-10-16_18:59:41 34158 lib/FHEM/Core/Weather.pm
 | 
			
		||||
UPD 2025-10-14_07:39:57 33545 lib/FHEM/APIs/Weather/OpenWeatherMapAPI.pm
 | 
			
		||||
UPD 2025-10-14_07:20:30 38721 lib/FHEM/APIs/Weather/wundergroundAPI.pm
 | 
			
		||||
 
 | 
			
		||||
@@ -4,8 +4,9 @@ use File::Basename;
 | 
			
		||||
use POSIX qw(strftime);
 | 
			
		||||
use strict;
 | 
			
		||||
 | 
			
		||||
my @filenames = (   'FHEM/59_Weather.pm',
 | 
			
		||||
		    'lib/FHEM/APIs/Weather/DarkSkyAPI.pm',
 | 
			
		||||
my @filenames = (
 | 
			
		||||
    'FHEM/59_Weather.pm',
 | 
			
		||||
    'lib/FHEM/Core/Weather.pm',
 | 
			
		||||
    'lib/FHEM/APIs/Weather/OpenWeatherMapAPI.pm',
 | 
			
		||||
    'lib/FHEM/APIs/Weather/wundergroundAPI.pm',
 | 
			
		||||
);
 | 
			
		||||
@@ -18,7 +19,8 @@ for my  $filename (@filenames) {
 | 
			
		||||
    my @statOutput = stat($filename);
 | 
			
		||||
 | 
			
		||||
    if ( scalar @statOutput != 13 ) {
 | 
			
		||||
        printf 'error: stat has unexpected return value for ' . $filename . "\n";
 | 
			
		||||
        printf 'error: stat has unexpected return value for '
 | 
			
		||||
          . $filename . "\n";
 | 
			
		||||
        next;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							@@ -3,7 +3,7 @@
 | 
			
		||||
#
 | 
			
		||||
# Developed with VSCodium and richterger perl plugin
 | 
			
		||||
#
 | 
			
		||||
#  (c) 2019-2023 Copyright: Marko Oldenburg (fhemdevelopment at cooltux dot net)
 | 
			
		||||
#  (c) 2019-2025 Copyright: Marko Oldenburg (fhemdevelopment at cooltux dot net)
 | 
			
		||||
#  All rights reserved
 | 
			
		||||
#
 | 
			
		||||
#   Special thanks goes to:
 | 
			
		||||
@@ -41,7 +41,8 @@ use FHEM::Meta;
 | 
			
		||||
 | 
			
		||||
use POSIX;
 | 
			
		||||
use HttpUtils;
 | 
			
		||||
use experimental qw /switch/;
 | 
			
		||||
 | 
			
		||||
#use experimental qw /switch/;
 | 
			
		||||
 | 
			
		||||
my $META = {};
 | 
			
		||||
my $ret  = FHEM::Meta::getMetadata( __FILE__, $META );
 | 
			
		||||
@@ -466,8 +467,7 @@ sub _FillSelfHashWithWeatherResponse {
 | 
			
		||||
    $self->{cached}->{city}          = encode_utf8( $data->{name} );
 | 
			
		||||
    $self->{cached}->{license}{text} = 'none';
 | 
			
		||||
 | 
			
		||||
    given ( $self->{endpoint} ) {
 | 
			
		||||
        when ('onecall') {
 | 
			
		||||
    if ( $self->{endpoint} eq 'onecall' ) {
 | 
			
		||||
        ## löschen des alten current Datensatzes
 | 
			
		||||
        delete $self->{cached}->{current};
 | 
			
		||||
 | 
			
		||||
@@ -484,28 +484,24 @@ sub _FillSelfHashWithWeatherResponse {
 | 
			
		||||
            && scalar( @{ $data->{hourly} } ) > 0 )
 | 
			
		||||
        {
 | 
			
		||||
            $self =
 | 
			
		||||
                  _FillSelfHashWithWeatherResponseForOnecallHourly( $self,
 | 
			
		||||
                    $data );
 | 
			
		||||
              _FillSelfHashWithWeatherResponseForOnecallHourly( $self, $data );
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if ( ref( $data->{daily} ) eq "ARRAY"
 | 
			
		||||
            && scalar( @{ $data->{daily} } ) > 0 )
 | 
			
		||||
        {
 | 
			
		||||
            $self =
 | 
			
		||||
                  _FillSelfHashWithWeatherResponseForOnecallDaily( $self,
 | 
			
		||||
                    $data );
 | 
			
		||||
              _FillSelfHashWithWeatherResponseForOnecallDaily( $self, $data );
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if ( ref( $data->{alerts} ) eq "ARRAY"
 | 
			
		||||
            && scalar( @{ $data->{alerts} } ) > 0 )
 | 
			
		||||
        {
 | 
			
		||||
            $self =
 | 
			
		||||
                  _FillSelfHashWithWeatherResponseForOnecallAlerts( $self,
 | 
			
		||||
                    $data );
 | 
			
		||||
              _FillSelfHashWithWeatherResponseForOnecallAlerts( $self, $data );
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
        when ('weather') {
 | 
			
		||||
    elsif ( $self->{endpoint} eq 'weather' ) {
 | 
			
		||||
        ## löschen des alten current Datensatzes
 | 
			
		||||
        delete $self->{cached}->{current};
 | 
			
		||||
 | 
			
		||||
@@ -515,8 +511,7 @@ sub _FillSelfHashWithWeatherResponse {
 | 
			
		||||
        $self =
 | 
			
		||||
          _FillSelfHashWithWeatherResponseForWeatherCurrent( $self, $data );
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
        when ('forecast') {
 | 
			
		||||
    elsif ( $self->{endpoint} eq 'forecast' ) {
 | 
			
		||||
        ## löschen des alten forecast Datensatzes
 | 
			
		||||
        delete $self->{cached}->{forecast};
 | 
			
		||||
 | 
			
		||||
@@ -524,9 +519,7 @@ sub _FillSelfHashWithWeatherResponse {
 | 
			
		||||
            and scalar( @{ $data->{list} } ) > 0 )
 | 
			
		||||
        {
 | 
			
		||||
            $self =
 | 
			
		||||
                  _FillSelfHashWithWeatherResponseForForecastHourly( $self,
 | 
			
		||||
                    $data );
 | 
			
		||||
            }
 | 
			
		||||
              _FillSelfHashWithWeatherResponseForForecastHourly( $self, $data );
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
@@ -591,6 +584,7 @@ sub _FillSelfHashWithWeatherResponseForWeatherCurrent {
 | 
			
		||||
        'wind_direction' => $data->{wind}->{deg},
 | 
			
		||||
        'cloudCover'     => $data->{clouds}->{all},
 | 
			
		||||
        'code'           => $codes{ $data->{weather}->[0]->{id} },
 | 
			
		||||
        'owmAPICode'     => $data->{weather}->[0]->{id},
 | 
			
		||||
        'iconAPI'        => $data->{weather}->[0]->{icon},
 | 
			
		||||
        'sunsetTime'     => _strftimeWrapper(
 | 
			
		||||
            "%a, %e %b %Y %H:%M",
 | 
			
		||||
@@ -670,6 +664,7 @@ sub _FillSelfHashWithWeatherResponseForForecastHourly {
 | 
			
		||||
                ),
 | 
			
		||||
                'cloudCover' => $data->{list}->[$i]->{clouds}->{all},
 | 
			
		||||
                'code' => $codes{ $data->{list}->[$i]->{weather}->[0]->{id} },
 | 
			
		||||
                'owmAPICode' => $data->{list}->[$i]->{weather}->[0]->{id},
 | 
			
		||||
                'iconAPI'    => $data->{list}->[$i]->{weather}->[0]->{icon},
 | 
			
		||||
                'rain1h'     => (
 | 
			
		||||
                      $data->{list}->[$i]->{rain}->{'1h'}
 | 
			
		||||
@@ -732,6 +727,7 @@ sub _FillSelfHashWithWeatherResponseForOnecallCurrent {
 | 
			
		||||
        'rain_1h'    => ( $data->{rain}->{'1h'} ? $data->{rain}->{'1h'} : 0 ),
 | 
			
		||||
        'cloudCover' => $data->{current}->{clouds},
 | 
			
		||||
        'code'       => $codes{ $data->{current}->{weather}->[0]->{id} },
 | 
			
		||||
        'owmAPICode' => $data->{current}->{weather}->[0]->{id},
 | 
			
		||||
        'iconAPI'    => $data->{current}->{weather}->[0]->{icon},
 | 
			
		||||
        'condition'  =>
 | 
			
		||||
          encode_utf8( $data->{current}->{weather}->[0]->{description} ),
 | 
			
		||||
@@ -788,6 +784,7 @@ sub _FillSelfHashWithWeatherResponseForOnecallDaily {
 | 
			
		||||
                'moonset'    => strftime(
 | 
			
		||||
                    "%a, %H:%M", localtime( $data->{daily}->[$i]->{moonset} )
 | 
			
		||||
                ),
 | 
			
		||||
                'summary'     => $data->{daily}->[$i]->{summary},
 | 
			
		||||
                'temperature' =>
 | 
			
		||||
                  int( sprintf( "%.0f", $data->{daily}->[$i]->{temp}->{day} ) ),
 | 
			
		||||
                'temperature_morn' => int(
 | 
			
		||||
@@ -833,6 +830,7 @@ sub _FillSelfHashWithWeatherResponseForOnecallDaily {
 | 
			
		||||
                    $data->{daily}->[$i]->{weather}->[0]->{description}
 | 
			
		||||
                ),
 | 
			
		||||
                'code' => $codes{ $data->{daily}->[$i]->{weather}->[0]->{id} },
 | 
			
		||||
                'owmAPICode' => $data->{daily}->[$i]->{weather}->[0]->{id},
 | 
			
		||||
                'iconAPI'    => $data->{daily}->[$i]->{weather}->[0]->{icon},
 | 
			
		||||
                'pressure'   => int(
 | 
			
		||||
                    sprintf( "%.1f", $data->{daily}->[$i]->{pressure} ) + 0.5
 | 
			
		||||
@@ -853,7 +851,6 @@ sub _FillSelfHashWithWeatherResponseForOnecallDaily {
 | 
			
		||||
                    sprintf( "%.1f", ( $data->{daily}->[$i]->{wind_deg} ) )
 | 
			
		||||
                ),
 | 
			
		||||
                'cloudCover' => $data->{daily}->[$i]->{clouds},
 | 
			
		||||
                'code' => $codes{ $data->{daily}->[$i]->{weather}->[0]->{id} },
 | 
			
		||||
                'rain'       => (
 | 
			
		||||
                    $data->{daily}->[$i]->{rain} ? $data->{daily}->[$i]->{rain}
 | 
			
		||||
                    : 0
 | 
			
		||||
@@ -920,6 +917,7 @@ sub _FillSelfHashWithWeatherResponseForOnecallHourly {
 | 
			
		||||
                'wind_direction' => $data->{hourly}->[$i]->{wind_deg},
 | 
			
		||||
                'cloudCover'     => $data->{hourly}->[$i]->{clouds},
 | 
			
		||||
                'code' => $codes{ $data->{hourly}->[$i]->{weather}->[0]->{id} },
 | 
			
		||||
                'owmAPICode' => $data->{hourly}->[$i]->{weather}->[0]->{id},
 | 
			
		||||
                'iconAPI'    => $data->{hourly}->[$i]->{weather}->[0]->{icon},
 | 
			
		||||
                'rain1h'     => (
 | 
			
		||||
                      $data->{hourly}->[$i]->{rain}->{'1h'}
 | 
			
		||||
@@ -951,7 +949,7 @@ sub _CallWeatherCallbackFn {
 | 
			
		||||
 | 
			
		||||
    #     print 'Dumperausgabe: ' . Dumper $self;
 | 
			
		||||
    ### Aufruf der callbackFn
 | 
			
		||||
    return ::Weather_RetrieveCallbackFn( $self->{devName} );
 | 
			
		||||
    return FHEM::Core::Weather::RetrieveCallbackFn( $self->{devName} );
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
sub _ErrorHandling {
 | 
			
		||||
@@ -1031,7 +1029,7 @@ sub _strftimeWrapper {
 | 
			
		||||
	  ],
 | 
			
		||||
  "release_status": "stable",
 | 
			
		||||
  "license": "GPL_2",
 | 
			
		||||
  "version": "v3.2.6",
 | 
			
		||||
  "version": "v3.2.8",
 | 
			
		||||
  "author": [
 | 
			
		||||
    "Marko Oldenburg <fhemdevelopment@cooltux.net>"
 | 
			
		||||
  ],
 | 
			
		||||
 
 | 
			
		||||
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										1149
									
								
								lib/FHEM/Core/Weather.pm
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1149
									
								
								lib/FHEM/Core/Weather.pm
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
		Reference in New Issue
	
	Block a user