bark-monitor

Install latest/edge of bark-monitor

Ubuntu 16.04 or later?

Make sure snap support is enabled in your Desktop store.


Install using the command line

sudo snap install bark-monitor --edge

Don't have snapd? Get set up for snaps.

bark-monitor is only available on the unstable edge channel. It could break and change often.

Channel Version Published

Monitor your dog's barks

ATTENTION: this snap is broken for now as I can't seem to access alsa in the snap. Please come help on the [repo](https://codeberg.org/MalcolmMielle/bark_monitor)!

Do you also have neighbor who accuses your dog of barking all the time, want to kick you out of your flat because of it, even though you know it's not true? Do you want to know if your dog is actually noisy when you are gone but you don't (and don't want to buy) a baby cam?

Then this project is for you!

How to use the bark monitor

The bark monitor will:

  • Record your dog while you are gone. The recordings are saved in a folder to enable you to really show that neighbor they are full of shit.
  • Monitor its barking real time and send you notification through a Telegram bot when your neighbor drives the dog crazy and they barks. Detection of the bark can be done using the [Yamnet](https://www.tensorflow.org/hub/tutorials/yamnet) neural network implemented in tensorflow, or the amplitude of the signal. Using Yamnet, cats are also tracked ;).

To setup the program:

  1. Create a [Telegram bot](https://www.rowy.io/blog/create-telegram-bot) and obtain the api key.

  2. Create a config file somewhere with this content:

    ``` { "api_key": "you api key", "output_folder": "where to save the recordings", "config_folder": "where to save the telegram bot configuration" }

    ```

  3. Start the program by running python3 scripts/yamnet_record.py --config-file <path to config file> to launch the NN based detection. If you are launching the program for the first time and went to register new users to the bot add the flag --accept-new-users and send \register to the telegram bot

Recordings

Recordings are saved in output_folder in different folder for each day and time stamped:

 ```bash
 output_folder
   |--18-05-2026
       |--18-05-2023-14-12.wav
       |--18-05-2023-15-10.wav
       |--recording.json
 ```

recording.json contains info about the day: when was the recorder on, how long has the dog barked.

Telegram bot

Commands available to the bot are:

  • \register: register to receive updates from the bot.
  • \start: start the recorder
  • \stop: stop the recorder
  • \status: get the current status of the recorder -> is it recording and how long as the animal barked today.
  • \pause: pause the current recording without stopping it---on/off time won't be registered in the app state.
  • \unpause: restart a paused recorder.
  • \bark_level: return the threshold for amplitude if using the amplitude based detection.

See in the file bark_monitor/very_bark_bot.py to see the commands available to the bot.

Contributions

Contributions are always welcome to help show my neighbor is wrong!

Code submitted should be formatted with [black](https://pypi.org/project/black/) and pass flake8 . with no errors. All methods should be type hinted and return types should always be present even when it's None.

If possible, submit unit tests and a picture of your dog with your PR (I also accept cat pictures as payments).

Details for bark-monitor

License
  • AGPL-3.0

Last updated
  • 13 May 2023 - latest/edge
  • 13 May 2023 - latest/edge

Websites

Share this snap

Generate an embeddable card to be shared on external websites.


Install bark-monitor on your Linux distribution

Choose your Linux distribution to get detailed installation instructions. If yours is not shown, get more details on the installing snapd documentation.


Where people are using bark-monitor

Users by distribution (log)

Ubuntu 22.04

Is there a problem with bark-monitor? Report this app