Problem. Online meetings provide a useful means to communicate with others. With an increasing number of meetings, however, it can get difficult to remember or pick the right meeting location, user id, password and so on.
Goal. Meety aims to provide a quick and easy way to start the right online meeting from a list of predefined meetings. Meetings are defined in YAML, a clean and simple format that is well readable for humans and machines alike. Thus, you can
- view and edit the meetings with your favourite text editor and
- sensibly share them with other users, even if they don't use Meety. (Think of conferences, lectures, ...)
Features. Meety can can load meetings from one or multiple YAML files. The meetings can be filtered by time preferences and/or keywords. After choosing a meeting, Meety will try to connect to it based on the information the meeting provides.
Out of the box, Meety supports meetings via the browser and via the Zoom app. However, the application can easily be configured to handle other types of meetings too, as described in the documentation.
Meety ships with a graphical user interface (program meety
, first screenshot above) and with a command line interface (program cmeety
, second screenshot above).
Just follow the three steps below.
-
Preferred: If you have Python and PIP installed, simply run one of the following commands in your shell:
- user only:
pip3 install --user meety
- system-wide:
sudo pip3 install meety
You may have to take care that the path to the installation directory known to your system.
If the application doesn't run as expected, please consider updating the required packages via the requirements.txt file in this repository:
pip install --upgrade -r requirements.txt
- user only:
-
Alternatively download one of the bundles:
- Linux
- Debian package (Ubuntu, ...):
- RPM package (Fedora, openSUSE, ...):
- MacOS: Right now, there is unfortunately no alternative.
- Windows
- Install the runtime library from Microsoft: Visual C++ 2010 Redistributable Package (x86)
- Download the zip archive that contains
- the graphical user interface (
meety.exe
) and - the required libraries.
- the graphical user interface (
- Extract the archive into a suitable place (e.g. to
C:\Program Files\meety
). Maybe create a shortcut tomeety.exe
(right click on the program and then select "Send to Desktop").
- Linux
Shortcuts. For convenient use of the graphical user interface, you might want to create shortcuts on your desktop and/or menu.
- run
meety
- click on "info" in the bottom right corner
- switch tab "System" and click on "create"
Note: For technical reasons, this is currently not guaranteed to work in all environments. In particular, it does not work for the Windows bundle. Sorry!
Add a YAML file with meeting specifications to your home directory. You may find it helpful to start with a template: you may, for instance,
- GUI: run
meety
and, if no meetings are found, click on the button "Create specification from template" (this button can also be found in the "info" dialog, on tab "Files") - CLI:
- copy the contents of template, also shown below,
- or run
cmeety --init
from the command-line, to create a file namedmeetings.yaml
in your home directory.
Notes on filenames and directories
- With the default options, the filename is of no importance as long it has extension
.yaml
or.yml
. - The home directory is system-specific
/home/<username>/
on Linux,/Users/<username>/
on MacOS andC:\Users\<username>\
on Windows.
- Meety can also load files from other directories than your home directory (and can also ignore those in your home directory). For instance, you can load meetings from file
~/meetings/conferenceA.yaml
only by invoking Meety with arguments-e -f ~/meetings/conferenceA.yaml
. This is described in more detail in the documentation.
Example template
# Example meeting specifications in YAML
# Text after '#' is ignored by the application
# FIRST MEETING (Coffee round with colleagues, every morning)
- name: Coffee
zoom-url: https://zoom.us/j/123456789
prefer: Monday to Friday, 9 to 10 o'clock
# short format for time specifications (also for other languages)
# SECOND MEETING (lecture, each Tuesday and Thursday)
- name: My favourite lecture
url: https://my-university.edu/my-fav-lecture
prefer:
- weekday: Tuesday
time: 12:00 - 14:00
date: 2020-10-01 - 2021-03-31
- weekday: Thursday
time: 14:00 - 16:00
date: 2020-10-01 - 2021-03-31
# explicit format for time specifications (also for other languages)
# THIRD MEETING (without time preferences)
- name: Another meeting
zoom-id: 987-654-321
Some specification details
Syntax overview for meeting specifications.
Each meeting forms a list entry that is introduced with a dash, -
. Such an entry is expected to be a dictionary, which can comprise several attributes of the form key: value
. Meety ignores the case of characters in the key. Values in turn can be text, a list or a dictionary again. To be recognised as a meeting specification, each entry is required to have an attribute with key name
. This attribute has to be provided explicitly or can be derived automatically from other attributes. Other attributes are optional but may affect querying if they have a text value. More importantly, attributes with some keys, like url
, zoom-url
and prefer
have a special meaning for Meety.
Connection attributes.
As an example, Meety can establish connections from values for attributes with keys url
, zoom-url
, or zoom-id
.
It is possible to customise the default connection handlers or register your own ones. You can also ask Meety to infer attributes automatically from existing ones. For instance, if you provide attribute zoom-id: 123-456-789
but no attribute with key zoom-url
, then Meety will add zoom-url: https://zoom.us/j/123456789
(internally, not to the YAML file).
This is described in more detail in the documentation.
Support for other languages. Inferred attributes can also be used to make other words understood by Meety, in particular words from other languages. Meety currently ships with some English, French, German, Italian and Spanish definitions (which can be enabled or disabled via the configuration), see the documentation for more information.
The goal of Meety is to help you to connect to the meeting you're looking for quickly and effortlessly. First, you have to identify a meeting of course. Then, you can try to connect to it.
General notes. Meety rates all meetings and shows meetings sorted by their rating (the best matching first). Meetings with equal ratings are shown in the order they have been loaded. Depending on your options, Meety shows all or only matching meetings.
Meetings can be matching with respect to
- their time preferences and
- keywords, if provided.
Matching keywords contribute more to the rating than matching time preferences by default.
Application usage. Although the idea of meeting ratings and display is the same, usage natuarlly varies with the user interface. Each interface is described on its own:
- Graphical user interface (program
meety
) - Command-line interface (program
cmeety
)
In the docs directory, you can find more information on Meety. In particular on the following topics: