Skip to content

Personalized push alerts for new iNaturalist identifications between friends

Notifications You must be signed in to change notification settings

unaschneck/intaturalist-push-notifications

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

intaturalist-push-notifications

retrieve-observations

Receive personalized push alerts on a phone/desktop for new iNaturalist identifications between friends

iphone_notification_example

How it Works

Push notifications are collected via the iNaturalist API. New observations are collected from the current time to the most recent workflow run in Github Actions. The new observations are collected and sent to a phone/desktop through custom ntfy topics

  • iNaturalist API: Collect recent observations from iNaturalist based on username
  • GitHub Actions: Schedule how often observations are collected and sent
  • ntfy: Sends push notifications to a Phone/Desktop

How to Setup

  1. Fork this repository

  2. Set Github Secrets for INaturalist username and ntfy topic

  3. Add lines for each INaturalist username at the end of the observation_reporter.yml

# Username (example: EXAMPLE_USERNAME) and NTFY (example: EXAMPLE_NTFY) stored in secrets 

python notifications_for_user.py ${{ secrets.EXAMPLE_USERNAME }} ${{ secrets.EXAMPLE_NTFY }} ${{ env.LAST_CREATED_AT }} 

Github Action scheduled to retrieve recent observations on a schedule during (day) UTC time

Currently scheduled to check for new observations every ten minutes during UTC North American Daytime (16-23 UTC)

*/10 16-23,0-2 * * *

Note

Every 30 minutes in the northern hemisphere winter months */30 16-23,0-2 * * *

Each observation since previous check is sent as an individual observation to the nfty topic that will be received by a phone/desktop as a custom alert

Note

Github Actions do not always run exactly every ten/thirty minutes (depends on internal Github Runners), but observations will be collected from when the last collection of observations were collected

Important

Github Actions workflows in a public repository are automatically disabled when no repository activity has occurred in 60 days

Development Environment

For developers, to run or test against intaturalist-push-notifications Github fork, a development environment can be created via conda

First, install Miniconda

Then, using the existing environment.yml, a new conda environment can be create to run/test scripts against

conda env create --file environment.yml

Once the environment has been built, activate the environment:

conda activate push_notifications

About

Personalized push alerts for new iNaturalist identifications between friends

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages