diff --git a/python/src/deltachat/message.py b/python/src/deltachat/message.py index 735883763..125c7a19d 100644 --- a/python/src/deltachat/message.py +++ b/python/src/deltachat/message.py @@ -101,6 +101,10 @@ class Message(object): """ return True if this message is a setup message. """ return lib.dc_msg_is_setupmessage(self._dc_msg) + def get_setupcodebegin(self): + """ return the first characters of a setup code in a setup message. """ + return from_dc_charpointer(lib.dc_msg_get_setupcodebegin(self._dc_msg)) + def is_encrypted(self): """ return True if this message was encrypted. """ return bool(lib.dc_msg_get_showpadlock(self._dc_msg)) diff --git a/python/tests/test_account.py b/python/tests/test_account.py index 5c5f5ff15..946c803a8 100644 --- a/python/tests/test_account.py +++ b/python/tests/test_account.py @@ -537,6 +537,7 @@ class TestOnlineAccount: ev = ac2._evlogger.get_matching("DC_EVENT_INCOMING_MSG|DC_EVENT_MSGS_CHANGED") msg = ac2.get_message_by_id(ev[2]) assert msg.is_setup_message() + assert msg.get_setupcodebegin() == setup_code[:2] # first try a bad setup code with pytest.raises(ValueError): msg.continue_key_transfer(str(reversed(setup_code)))