Skip to main content

Meerk

Mit License Python 3.6 PyPI version Build Status

Simple bot which notifies your chats that you are in a meeting

How to run

Firstly ensure you use python 3.6.

Clone project:

git clone https://github.com/nikialeksey/meerk.git

Install dependencies and

pip install -r requirements.txt

Configure and run:

python main.py

Or you can use it as library for your service or app, see example in main.py.

How to configure

In order to configure you need to make a copy of file local.cfg_template with name local.cfg and change content of it.

CalDav calendars

To add calendar supports CalDav format you need to uncomment caldav-calendar section and fill with your personal data. If you have a multiple calendars supports CalDav you may create a new section in local.cfg with the same fields and section name prefix caldav, but with other data, for example:

[caldav-another]
url: <another caldav url>
username: <another caldav username>
password: <another caldav password>

Important! Google Calendar does not support cal dav, and you have only one way to make it work - using *.ics files.

Ics calendars

To add calendar using ics file you need to uncomment ics-calendar section and fill with your public ics file link. Again, if you have a few ics calendars, you may create a few sections in local.cfg with section name prefix ics, for example:

[ics-another]
url: <another ics url>

[ics-yet-another]
url: <yet another ics url>

To find your calendar *.ics file link usually you need to open calendar settings, make it public, and find link to calendar *.ics file.

Slack

It supports only slack, but you can contribute for more chats. To configure slack, you guessed it, you need to uncomment slack-app section and fill, for example:

[slack-app]
token: xoxp-3165681461-*****6099680-*****3333042-*****007685996b538e88cbe92a6098b
busy_text: I am in a meeting
busy_emoji: :shushing_face:
available_text: Android development 09.00 - 17.00
available_emoji: :computer:

Slack has a legacy tokens which you need to generate in order to update your slack status and fill the token in section slack*. In feature, Meerk migrates to slack app.

How it works

Meerk periodically synchronizes specified in local.cfg calendars and periodically verifies if there is a meeting now, then update chat status to Busy, else Available.

Thanks

Thanks to @tobixen and his project caldav. I use it in the Meerk temporary. When #11 appears in release build I get rid of the immediate code of project caldav and will be use as dependency or write my own CalDav implementation.

Release files for meerk 0.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for meerk 0.3.1
File Size Uploaded
meerk-0.3.1.tar.gz 27.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for meerk 0.3.1
File Interpreter ABI Platform
meerk-0.3.1-py3-none-any.whl Python 3 none any Details

Total release size: 83.1 kB

Release files / meerk-0.3.1.tar.gz

Download URL meerk-0.3.1.tar.gz
Size 27.5 kB
Tags Source
SHA-256 checksum
How to use checksums
c184d485c857b6138ae106b63d83c3a0b9cabe02ddfa13d9f6ad021d600e3582
BLAKE2b-256 checksum
How to use checksums
3248a5a681605a4cae485f07974c5e9bf88abfff84ecd3cbbfa875cb2b902c2d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.7.0

Release files / meerk-0.3.1-py3-none-any.whl

Download URL meerk-0.3.1-py3-none-any.whl
Size 55.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c736574b6ee7e104815ccef28214bde3a5cfbdcc91350664d881e03fcbe92581
BLAKE2b-256 checksum
How to use checksums
5da0a98a52619fe26b7b4f18ed934530113a7f6be021803ca46f596bb1e11ded
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.7.0

Release history Release notifications | RSS feed

This release

0.3.1 This release

2 release files

0.3.0

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page