mirror of
https://github.com/chatmail/core.git
synced 2026-05-04 13:56:30 +03:00
This test reproduces a bug preventing joining the group with a QR code if the group already has a contact with inconsistent key state, which means both Autocrypt and verified key exist, but don't match. This can happen when an invite QR code created by this contact is scanned as scanning an invite code creates unprotected group with the inviter for info messages. If securejoin process never finishes because the inviter is offline, group remains in this unprotected state with added inviter. Normally the group becomes verified when a "Member added" (vg-member-added) message is received in the chat. However, current code checks that all members of the chat are verified (have a green checkmark, use verified key in 1:1 chat) before marking the group as verified and fails otherwise.
Delta Chat RPC python client
RPC client connects to standalone Delta Chat RPC server deltachat-rpc-server
and provides asynchronous interface to it.
Getting started
To use Delta Chat RPC client, first build a deltachat-rpc-server with cargo build -p deltachat-rpc-server
or download a prebuilt release.
Install it anywhere in your PATH.
Create a virtual environment if you don't have one already and activate it.
$ python -m venv env
$ . env/bin/activate
Install deltachat-rpc-client from source:
$ cd deltachat-rpc-client
$ pip install .
Testing
- Build
deltachat-rpc-serverwithcargo build -p deltachat-rpc-server. - Run
CHATMAIL_DOMAIN=nine.testrun.org PATH="../target/debug:$PATH" tox.
Additional arguments to tox are passed to pytest, e.g. tox -- -s does not capture test output.
Using in REPL
Setup a development environment:
$ tox --devenv env
$ . env/bin/activate
$ python
>>> from deltachat_rpc_client import *
>>> rpc = Rpc()
>>> rpc.start()
>>> dc = DeltaChat(rpc)
>>> system_info = dc.get_system_info()
>>> system_info["level"]
'awesome'
>>> rpc.close()