tphakala / birdnet-go

Realtime BirdNET soundscape analyzer
Other
137 stars 14 forks source link

feat(birdweather) Birdweather location fuzzing #141

Closed tphakala closed 1 month ago

tphakala commented 1 month ago

Added location fuzzing support for BirdWeather uploads, you can add location precision in meters to config.yaml, however this seems to require some support from BirdWeather backend also, request sent to Tim to support this.

Config example

birdweather: enabled: false # true to enable birdweather uploads locationaccuracy: 500 # accuracy of location in meters debug: false # true to enable birdweather api debug mode id: 00000 # birdweather ID

coderabbitai[bot] commented 1 month ago

Walkthrough

The project updates involve enhancing contributor recognition and improving functionality related to location accuracy in the birdweather service. New fields and methods have been introduced to manage location data more precisely, and configuration settings have been adjusted accordingly. The documentation and contributor lists have also been updated to reflect these changes and acknowledge recent contributions.

Changes

File Path Change Summary
AUTHORS, README.md Updated contributor lists and added a call for missing contributors.
internal/.../birdweather.go Added Accuracy field and RandomizeLocation method to BwClient.
internal/.../config.go Included a new LocationAccuracy field in the Birdweather struct.

🐇✨ In the fields of code, where logic does play, A hop and a skip, new updates today! With precision we tweak, with care we refine, For each line we craft, may the outcome be fine. Oh, celebrate the changes, let's dance in the sun, For in the world of code, our work is never done! 🌼🌟


Recent Review Details **Configuration used: CodeRabbit UI** **Review profile: CHILL**
Commits Files that changed from the base of the PR and between 82052fc71d5891712c16b5c41d75724043d6b55f and d8b2d4b0e0570da1e1d52d482872f1e6b27ae085.
Files selected for processing (4) * AUTHORS (1 hunks) * README.md (2 hunks) * internal/birdweather/birdweather.go (5 hunks) * internal/conf/config.go (2 hunks)
Files skipped from review due to trivial changes (1) * AUTHORS
Additional Context Used
LanguageTool (24)
README.md (24)
Near line 1: Possible spelling mistake found. Context: # BirdNET-Go

BirdNET-Go is an AI solution for continuous avian ... --- Near line 15: Possible spelling mistake found. Context: ...n monitoring and identification - 24/7 realtime bird song analysis of soundcard capture... --- Near line 15: Possible spelling mistake found. Context: ... - 24/7 realtime bird song analysis of soundcard capture, analysis output to log file, S... --- Near line 16: Possible spelling mistake found. Context: ...to log file, SQLite or MySQL - Utilizes BirdNET AI model trained with more than 6500 bi... --- Near line 18: Possible spelling mistake. ‘visualisation’ is British English. Context: ...Easy to use Web user interface for data visualisation - BirdWeather.com API integration - Rea... --- Near line 20: Possible spelling mistake found. Context: ...ion - BirdWeather.com API integration - Realtime log file output can be used as overlay ... --- Near line 21: Possible spelling mistake found. Context: ...ms etc. - Minimal runtime dependencies, BirdNET Tensorflow Lite model is embedded in co... --- Near line 21: Possible spelling mistake found. Context: ...- Minimal runtime dependencies, BirdNET Tensorflow Lite model is embedded in compiled bina... --- Near line 26: Possible spelling mistake found. Context: ...single board computers ## Help Improve BirdNET-Go I am seeking web developer with experi... --- Near line 29: Possible spelling mistake found. Context: ...lar frameworks to join in enhancing the BirdNET-Go application web UI. Your expertise can ... --- Near line 78: Possible spelling mistake found. Context: ...t-go/wiki ## License Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International ## Authors Tomi P. ... --- Near line 81: Possible spelling mistake found. Context: ...areAlike 4.0 International ## Authors Tomi P. Hakala Contributions by Hampus Carl... --- Near line 82: Possible spelling mistake found. Context: ... 4.0 International ## Authors Tomi P. Hakala Contributions by Hampus Carlsson, Jan ... --- Near line 84: Possible spelling mistake found. Context: ...thors Tomi P. Hakala Contributions by Hampus Carlsson, Jan Vrska, @twt--, @aster1sk,... --- Near line 84: Possible spelling mistake found. Context: ... Contributions by Hampus Carlsson, Jan Vrska, @twt--, @aster1sk, @hoover67 Please l... --- Near line 86: You might be missing the article “the” here. Context: ...ase let me know if you are missing from contributors list! BirdNET AI model by the K. Lisa ... --- Near line 87: Possible spelling mistake found. Context: ...ou are missing from contributors list! BirdNET AI model by the K. Lisa Yang Center for... --- Near line 88: Possible spelling mistake found. Context: ...he K. Lisa Yang Center for Conservation Bioacoustics at the Cornell Lab of Ornithology in co... --- Near line 88: Possible spelling mistake found. Context: ...emnitz University of Technology. Stefan Kahl, Connor Wood, Maximilian Eibl, Holger K... --- Near line 88: Possible spelling mistake found. Context: ...l, Connor Wood, Maximilian Eibl, Holger Klinck. BirdNET label translations by Patrick... --- Near line 89: Possible spelling mistake found. Context: ... Wood, Maximilian Eibl, Holger Klinck. BirdNET label translations by Patrick Levin for... --- Near line 90: Possible spelling mistake found. Context: ... BirdNET label translations by Patrick Levin for BirdNET-Pi project by Patrick McGui... --- Near line 90: Possible spelling mistake found. Context: ...label translations by Patrick Levin for BirdNET-Pi project by Patrick McGuire.
Additional comments not posted (5)
README.md (1)
`22-22`: LGTM! The addition of the Prometheus data scraping endpoint enhances monitoring capabilities.
internal/birdweather/birdweather.go (3)
`38-38`: LGTM! The addition of the `Accuracy` field supports the new location fuzzing feature. --- `57-77`: Excellent implementation of the `RandomizeLocation` method. The method effectively fuzzes the location while truncating the coordinates to enhance privacy. --- `155-157`: Proper use of the `RandomizeLocation` method in the `PostDetection` function to ensure location privacy.
internal/conf/config.go (1)
`59-59`: LGTM! The addition of the `LocationAccuracy` field enables users to configure the location fuzzing feature.
--- Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
Share - [X](https://twitter.com/intent/tweet?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A&url=https%3A//coderabbit.ai) - [Mastodon](https://mastodon.social/share?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A%20https%3A%2F%2Fcoderabbit.ai) - [Reddit](https://www.reddit.com/submit?title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&text=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code.%20Check%20it%20out%3A%20https%3A//coderabbit.ai) - [LinkedIn](https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fcoderabbit.ai&mini=true&title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&summary=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code)
Tips ### Chat There are 3 ways to chat with [CodeRabbit](https://coderabbit.ai): - Review comments: Directly reply to a review comment made by CodeRabbit. Example: - `I pushed a fix in commit .` - `Generate unit testing code for this file.` - `Open a follow-up GitHub issue for this discussion.` - Files and specific lines of code (under the "Files changed" tab): Tag `@coderabbitai` in a new review comment at the desired location with your query. Examples: - `@coderabbitai generate unit testing code for this file.` - `@coderabbitai modularize this function.` - PR comments: Tag `@coderabbitai` in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples: - `@coderabbitai generate interesting stats about this repository and render them as a table.` - `@coderabbitai show all the console.log statements in this repository.` - `@coderabbitai read src/utils.ts and generate unit testing code.` - `@coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.` Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. ### CodeRabbit Commands (invoked as PR comments) - `@coderabbitai pause` to pause the reviews on a PR. - `@coderabbitai resume` to resume the paused reviews. - `@coderabbitai review` to trigger a review. This is useful when automatic reviews are disabled for the repository. - `@coderabbitai resolve` resolve all the CodeRabbit review comments. - `@coderabbitai help` to get help. Additionally, you can add `@coderabbitai ignore` anywhere in the PR description to prevent this PR from being reviewed. ### CodeRabbit Configration File (`.coderabbit.yaml`) - You can programmatically configure CodeRabbit by adding a `.coderabbit.yaml` file to the root of your repository. - Please see the [configuration documentation](https://docs.coderabbit.ai/guides/configure-coderabbit) for more information. - If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: `# yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json` ### Documentation and Community - Visit our [Documentation](https://coderabbit.ai/docs) for detailed information on how to use CodeRabbit. - Join our [Discord Community](https://discord.com/invite/GsXnASn26c) to get help, request features, and share feedback. - Follow us on [X/Twitter](https://twitter.com/coderabbitai) for updates and announcements.