A simple command-line Jami (jami.net) client
Project description
PRE-INSTALLATION
Before you install jami-commander with pip install jami-commander
you must have followed these prerequisites steps!
- You must have Python 3.12+ installed. 3.11 might work.
- Run
python -Vto get your Python version number. - Read the README.md file to see how to install and run Jami daemon
jamid.
jami-commander
Jami (https://jami.net) is a privacy-preserving peer-to-peer communication application available on many platforms. Jami is in concept similar to Keet (https://keet.io), both are peer-to-peer and use servers as little as possible. As a chat app it is similar to Matrix (https://http://matrix.org) as both can be self-hosted.
jami-commander (jc for short) is a simple but convenient CLI-based Jami client app for setting up accounts and swarms as well as sending.
jami-commander helps to set up a Jami account, configure the account and send messages and files to Jami peers. It provides the minimal set of commands to use Jami from the CLI.
The objective of jami-commander is to:
- be able to use
Jamifrom the terminal, the CLI, via SSH, and on head-less servers without monitor. - to use minimal resources. No Jami front-end (GUI) needs to be installed.
- to be able to perform minimal operations to run a bot, e.g. to publish daily weather information
- be simple. It is written in Python.
Functionality is minimal. You are invited to help to improve jami-commander. Pull requests are welcome.
Installation and Prerequisites
jami-commanderis only a client. It requires the Jamijamiddaemon to run to performs the work.- first install Jami daemon
jamidas follows:- e.g. on Fedora 40 (see https://jami.net/download-jami-linux/ for details)
sudo dnf-3 config-manager --add-repo https://dl.jami.net/stable/fedora_40/jami-stable.repo # add the Jami reposudo dnf install jami-daemon # install only the jamid daemon- e.g. on Ubuntu 24.04 (see https://jami.net/download-jami-linux/ for details)
-
</code></pre> </li> </ul> </li> </ul> <p>curl -s <a href="https://dl.jami.net/public-key.gpg">https://dl.jami.net/public-key.gpg</a> | sudo tee /usr/share/keyrings/jami-archive-keyring.gpg > /dev/null sudo sh -c "echo 'deb [signed-by=/usr/share/keyrings/jami-archive-keyring.gpg] <a href="https://dl.jami.net/stable/ubuntu_24.04/">https://dl.jami.net/stable/ubuntu_24.04/</a> jami main' > /etc/apt/sources.list.d/jami.list" sudo apt-get update && sudo apt-get install jami-daemon # install only the jamid daemon```</p> <ul> <li>This installs around 204MB on Ubuntu</li> <li>second install dependencies <ul> <li>e.g. Ubuntu 24.04</li> <li><code>sudo apt install libdbus-1-dev libglib2.0-dev libcairo2-dev libgirepository1.0-dev</code></li> </ul> </li> <li>third install <code>jami-commander</code> <ul> <li><code>pip install jami-commander</code></li> <li>see also <a href="https://pypi.org/pypi/jami-commander">https://pypi.org/pypi/jami-commander</a></li> </ul> </li> <li>run the <code>jamid</code> daemon: <ul> <li>e.g. on Fedora 40, similar on Ubuntu 24.04, etc.</li> <li><code>/usr/libexec/jamid -p & # start the jamid daemon</code></li> </ul> </li> <li>now you can start and run the <code>jami-commander</code> <ul> <li>try <code>jami-commander -h</code> first to see what is available</li> </ul> </li> </ul> <h1>Features</h1> <pre><code>jami-commander supports these arguments: --usage Print usage. -h, --help Print help. --manual Print manual. --readme Print README.md file. -d, --debug Print debug information. --log-level DEBUG|INFO|WARNING|ERROR|CRITICAL [DEBUG|INFO|WARNING|ERROR|CRITICAL ...] Set the log level(s). --verbose Set the verbosity level. --get-enabled-accounts List all enabled accounts by ids. --add-account ALIAS HOSTNAME USERNAME PASSWORD Add a new Jami account. --remove-account ACCOUNTID [ACCOUNTID ...] Remove a Jami account. --get-conversations List all swarm conversations by ids. --add-conversation Add a conversation to an account. --remove-conversation Remove one or multiple conversations from an account. --get-conversation-members List all members of one or multiple swarm conversations by ids. --add-conversation-member USERID [USERID ...] Add member(s) to one or multiple swarm conversations. --remove-conversation-member USERID [USERID ...] Remove member(s) from one or multiple swarm conversations. -a ACCOUNTID, --account ACCOUNTID Connect to and use the specified account. -c CONVERSATIONID [CONVERSATIONID ...], --conversations CONVERSATIONID [CONVERSATIONID ...] Specify one or multiple swarm conversations. -m TEXT [TEXT ...], --message TEXT [TEXT ...] Send one or multiple text messages. -f FILE [FILE ...], --file FILE [FILE ...] Send one or multiple files (e.g. PDF, DOC, MP4). -w, --html Send message as format "HTML". -z, --markdown Send message as format "MARKDOWN". -k, --code Send message as format "CODE". -j, --emojize Send message after emojizing. --split SEPARATOR Split message text into multiple Jami messages. --separator SEPARATOR Set a custom separator used for certain print outs. -o TEXT|JSON, --output TEXT|JSON Select an output format. -v [PRINT|CHECK], -V [PRINT|CHECK], --version [PRINT|CHECK] Print version information or check for updates.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file jami_commander-0.8.0.tar.gz.
File metadata
- Download URL: jami_commander-0.8.0.tar.gz
- Upload date:
- Size: 43.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ec2b898054fe172ede641aa4cfe4b64a3e45894b1154fe1fc1a432b63f4306ae
|
|
| MD5 |
3e0db9d03a252de8606ddddfffafd4c7
|
|
| BLAKE2b-256 |
81cbd9600cdce4f62df32d2e59e13358e07b6a3d52b0db9e2122b4e78ca38f0e
|
File details
Details for the file jami_commander-0.8.0-py3-none-any.whl.
File metadata
- Download URL: jami_commander-0.8.0-py3-none-any.whl
- Upload date:
- Size: 43.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f513b96fc288d683cae3cf1398956f954940f4fe794cf9050cdf05870674a554
|
|
| MD5 |
e5394d178242c082bf59007c90a42ffc
|
|
| BLAKE2b-256 |
16d1eed1484479c80058eef30598e5e24801e988dde7f4dda2def2bb079efa6b
|