ATTENTION: the snap might be fixed with the latest version. Please let me know if it works for you so I can remove this banner.
IMPORTANT: Make sure to plug all the available slots with sudo snap connect bark-monitor:XXX
. See available slots with snap connections 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:
To setup the program:
Create a [Telegram bot](https://www.rowy.io/blog/create-telegram-bot) and obtain the api key.
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" }
```
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).
Thank you for your report. Information you provided will help us investigate further.
There was an error while sending your report. Please try again later.
You are about to open
Do you wish to proceed?
Snaps are applications packaged with all their dependencies to run on all popular Linux distributions from a single build. They update automatically and roll back gracefully.
Snaps are discoverable and installable from the Snap Store, an app store with an audience of millions.
If you’re running Kubuntu 16.04 LTS (Xenial Xerus) or later, including Kubuntu 18.04 LTS (Bionic Beaver) and Kubuntu 18.10 (Cosmic Cuttlefish), you don’t need to do anything. Snap is already installed and ready to go.
Versions of Kubuntu between 14.04 LTS (Trusty Tahr) and 15.10 (Wily Werewolf) don’t include snap by default, but snap can be installed from the command line as follows:
sudo apt update
sudo apt install snapd
To install bark-monitor, simply use the following command:
sudo snap install bark-monitor
Browse and find snaps from the convenience of your desktop using the snap store snap.
Interested to find out more about snaps? Want to publish your own application? Visit snapcraft.io now.
Get to know Canonical, the company behind the products.
The world's favourite Linux OS for servers, desktops and IoT.
One subscription for security maintenance, support, FIPS and other compliance certifications.
The app store for Linux: secure packages and ultra-reliable updates.
A pure-container hypervisor. Run system containers and VMs at scale.
Build a bare metal cloud with super fast server provisioning.
Upgrades, maintenance, support, and fully managed options for long-term, low-cost infra.
Software-defined storage that lowers your total cost of ownership.
App portability for K8s on VMware, Amazon, Azure, Google, Oracle, IBM and bare metal.
Deploy, integrate and manage applications at any scale, on any infrastructure.
Stream Android applications to any device.
The software collaboration platform behind Ubuntu.
Optimised Ubuntu for public clouds.
Spin up Ubuntu VMs on Windows, Mac and Linux.
Control and customise your cloud instances.
Systems management and security patching for Ubuntu.
Simplify and standardise complex network configuration.
AI and MLOps at any scale, on any cloud.
Deploy a fully functional cloud in minutes.