Whisperfish - The unofficial SailfishOS Signal client

FWIF, I’ve been running 3.4 and now 4.0 EA and I can’t recall anything important getting broken since 3.1… I think the newer glibc was introduced in 3.3…

I suggest upgrading anyway (up to 3.4 that is), the older versions have (more) unpatched vulnerabilities. Backup your data, of course :slight_smile:

Yeh, we’re also using some functionality that’s only available starting in 3.3, so even if I wanted to compile against 3.1, it wouldn’t really be possible without backporting some stuff.

1 Like

I have now pushed alpha.8 to OpenRepos, with very minimal changes (current master contains an important performance bug):

Fixes in alpha.8:

  • Many hours have been spent in implementing the reCAPTCHA functionality. It works, with a LOT of thanks to @gamag for figuring out what went wrong and for actually fixing it. Jolla is shipping an old version of sqlcipher, which interfered with qt5-mozembed, and we now ship our own sqlcipher for this. Registration should hereby be fixed, so please file an issue if it is not.
  • SailfishOS 4.0 stopped shipping the (non-public) BubbleBackground, and replaced it with a ColorBackground. We now ship our own ColorRect, thanks to @ichthyosaurus . Viewing messages on 4.0.1.45EA should be fixed.

Notable bug: reCAPTCHA rendering on SailfishOS 4.0.1.45EA currently does not work. We think this is a regression in mozembed, and filed a bug with Jolla. We hope this is resolved before SailfishOS 4.0 hits the masses.

Another pair of issues just came to light:

  • Newly registered Android/iOS accounts might not be reachable from Whisperfish. This will be addressed when we finally migrate to UUID sessions.
  • Contact names may not show up and will not update. This is the same regression that @Ygriega noticed. #231

Many hours have been sunk into getting the reCAPTCHA rendered. Your patience is now finally awarded :slight_smile: The Whisperfish beta is getting in good shape, and there are many treats coming your way in a few weeks™! :partying_face:

PS: for about two hours, there has been a “new alpha.7 aarch64” on OpenRepos. This was a mistagged alpha.8, and has now been removed. No damage should’ve been done.

14 Likes

Just updated to alpha.8 a few hours ago, and basic messaging at least is working fine with SFOS 4.0 EA. Thank you so much!

1 Like

Actually, I completed the Finnish translation yesterday evening, but it’s not included in alpha.8. I guess it gets pulled when it gets pulled :slight_smile:

3 Likes

It’ll be in in beta.1, and it’s in current master (or soon to be)! I’ve backported the two changes that I listed to an older state, because of some bugs in current master that would make Whisperfish unusable to some. Thanks for the :finland: translation :slight_smile:

2 Likes

Since 3.1 is quite old I am not that surprised that nobody tested it. And supporting old systems limits the potential for improvement (at least in my experience).
And I now know that I will have to update my system somehow …

Thanks for the answer.

I had a look an it seems there is no one who is developing the OnePlus X community port of SFOS anymore and 3.1.0.12 is the last available version :(. I will check next weekend when there is hopefully some time and will be back, once I can install the current whisperfish.

For now thank you all for the help

That is unfortunate :slightly_frowning_face: OnePlus X is a fine device, for what I can recall!

Let’s hope SFOS 4.0 gets the wheels turning again!

FWIW, the only thing that really requires SailfishOS 3.3+ is the contact name lookup. I will have to rewrite that for 4.0 anyway, so I may as well keep in mind that we could support slightly older versions, and make you an older build. No promises though, and no timeline for this unfortunately.

1 Like

The alpha.8 version is still working, but I think I found a bug: my friend replied to a message of mine, and I got a message that looked something like this:

R@5623867283678: Yeah buy eggs and milk.

We figured out that it was a reply to an earlier message of mine. I guess the R@5623867283678 part is a reference to the earlier message.

I couldn’t find an existing issue about this that at a glance. Is this known or did I discover a bug? :slight_smile:

It’s an indication that your friend added a ‘reaction’ to your message (i.e. an emoticon, like a heart or a thumbs-up), but reactions aren’t implemented in the UI yet.

2 Likes

To elaborate on @nthn: it’s indeed a feature, not a bug. Previous versions silently dropped any reaction to a message. Our database, back-end and UI currently do not support reactions, but we’re actively working on having this supported. When it is implemented, we will run a migration that looks in the DB for these messages, and actually put them as the correct reactions.

7 Likes

Hello @rubdos!

I have a problem sending a message to one friend with a new phone.
Here is the censored log (XXXXXXXXXXX…his number, YYYYY…my number, some other numbers CENSORED) by RUST_LOG=trace harbour-whisperfish:

[2021-02-10T22:40:14Z TRACE harbour_whisperfish::actor::messageactor] MessageActor::handle(QueueMessage { source: "+43XXXXXXXXXXX", message: "TEST", attachment: "", group: "" })
[2021-02-10T22:40:14Z TRACE harbour_whisperfish::store] Called fetch_session_by_source(+43XXXXXXXXXXX)
[2021-02-10T22:40:14Z TRACE harbour_whisperfish::store] Called update_session()
[2021-02-10T22:40:14Z TRACE harbour_whisperfish::store] Called update_message_if_needed(3)
[2021-02-10T22:40:14Z TRACE harbour_whisperfish::store] Called create_message()
[2021-02-10T22:40:14Z TRACE harbour_whisperfish::store] Called fetch_latest_message()
[2021-02-10T22:40:14Z TRACE harbour_whisperfish::store] Inserted message id 1052
[2021-02-10T22:40:14Z INFO  harbour_whisperfish::worker::client] ClientActor::SendMessage(1052)
[2021-02-10T22:40:14Z TRACE harbour_whisperfish::store] Called fetch_message(1052)
[2021-02-10T22:40:14Z TRACE harbour_whisperfish::store] SELECT `message`.`id`, `message`.`session_id`, `message`.`source`, `message`.`message`, `message`.`timestamp`, `message`.`sent`, `message`.`received`, `message`.`flags`, `message`.`attachment`, `message`.`mime_type`, `message`.`has_attachment`, `message`.`outgoing`, CASE WHEN sentq.message_id > 0 THEN 1 ELSE 0 END AS queued FROM (`message` LEFT OUTER JOIN `sentq` ON `sentq`.`message_id` = `message`.`id`) WHERE `message`.`id` = ? -- binds: [1052]
[2021-02-10T22:40:14Z TRACE harbour_whisperfish::store] Called fetch_session(3)
[2021-02-10T22:40:14Z TRACE harbour_whisperfish::worker::client] Sending for session: Session { id: 3, source: "XXXXXXXXXXX", message: "TEST", timestamp: 1612996814443, sent: false, received: false, unread: false, is_group: false, group_members: None, group_id: None, group_name: None, has_attachment: false }
[2021-02-10T22:40:14Z TRACE harbour_whisperfish::worker::client] Sending message: Message { id: 1052, sid: 3, source: "+43XXXXXXXXXXX", message: "TEST", timestamp: 1612996814443, sent: false, received: false, flags: 0, attachment: None, mimetype: None, hasattachment: false, outgoing: true, queued: true }
[2021-02-10T22:40:14Z TRACE harbour_whisperfish::worker::client] Transmitting DataMessage { body: Some("TEST"), attachments: [], group: None, group_v2: None, flags: None, expire_timer: None, profile_key: None, timestamp: Some(1612996814443), quote: None, contact: [], preview: [], sticker: None, required_protocol_version: Some(0), is_view_once: None, reaction: None, delete: None, body_ranges: [] }
[2021-02-10T22:40:14Z TRACE libsignal_service::sender] encrypting message for Address { name: "+43XXXXXXXXXXX", device_id: 1 }
[2021-02-10T22:40:14Z TRACE harbour_whisperfish::store::protocol_store] contains_session(+43XXXXXXXXXXX)
[2021-02-10T22:40:14Z INFO  libsignal_service::sender] establishing new session with Address { name: "+43XXXXXXXXXXX", device_id: 1 }
[2021-02-10T22:40:14Z DEBUG libsignal_service_actix::push_service] AwcPushService::get(Url { scheme: "https", host: Some(Domain("textsecure-service.whispersystems.org")), port: None, path: "/v2/keys/+43XXXXXXXXXXX/*", query: None, fragment: None })
[2021-02-10T22:40:14Z TRACE actix_connect::resolve] DNS resolver: resolving host "textsecure-service.whispersystems.org"
[2021-02-10T22:40:14Z DEBUG trust_dns_proto::xfer::dns_handle] querying: textsecure-service.whispersystems.org A
[2021-02-10T22:40:14Z DEBUG trust_dns_resolver::name_server::name_server_pool] sending request: [Query { name: Name { is_fqdn: false, labels: [textsecure-service, whispersystems, org] }, query_type: A, query_class: IN }]
[2021-02-10T22:40:14Z DEBUG trust_dns_resolver::name_server::name_server] existing connection: NameServerConfig { socket_addr: [::1]:53, protocol: Udp, tls_dns_name: None }
[2021-02-10T22:40:14Z DEBUG trust_dns_proto::xfer] enqueueing message: [Query { name: Name { is_fqdn: false, labels: [textsecure-service, whispersystems, org] }, query_type: A, query_class: IN }]
[2021-02-10T22:40:14Z TRACE trust_dns_resolver::name_server::connection_provider] polling response inner
[2021-02-10T22:40:14Z DEBUG trust_dns_resolver::name_server::name_server] existing connection: NameServerConfig { socket_addr: 127.0.0.1:53, protocol: Udp, tls_dns_name: None }
[2021-02-10T22:40:14Z DEBUG trust_dns_proto::xfer] enqueueing message: [Query { name: Name { is_fqdn: false, labels: [textsecure-service, whispersystems, org] }, query_type: A, query_class: IN }]
[2021-02-10T22:40:14Z TRACE trust_dns_resolver::name_server::connection_provider] polling response inner
[2021-02-10T22:40:14Z DEBUG rustls::session] Sending warning alert CloseNotify
[2021-02-10T22:40:14Z TRACE mio::poll] deregistering handle with poller
[2021-02-10T22:40:14Z TRACE trust_dns_resolver::name_server::connection_provider] polling response inner
[2021-02-10T22:40:14Z TRACE trust_dns_resolver::name_server::connection_provider] polling response inner
[2021-02-10T22:40:14Z TRACE trust_dns_resolver::name_server::connection_provider] polling response inner
[2021-02-10T22:40:14Z TRACE mio::poll] registering with poller
[2021-02-10T22:40:14Z DEBUG trust_dns_proto::udp::udp_stream] created socket successfully
[2021-02-10T22:40:14Z TRACE trust_dns_resolver::name_server::connection_provider] polling response inner
[2021-02-10T22:40:14Z TRACE mio::poll] registering with poller
[2021-02-10T22:40:14Z DEBUG trust_dns_proto::udp::udp_stream] created socket successfully
[2021-02-10T22:40:14Z TRACE trust_dns_resolver::name_server::connection_provider] polling response inner
[2021-02-10T22:40:14Z TRACE trust_dns_resolver::name_server::connection_provider] polling response inner
[2021-02-10T22:40:14Z TRACE trust_dns_resolver::name_server::connection_provider] polling response inner
[2021-02-10T22:40:14Z TRACE trust_dns_resolver::name_server::connection_provider] polling response inner
[2021-02-10T22:40:14Z TRACE trust_dns_resolver::name_server::connection_provider] polling response inner
[2021-02-10T22:40:14Z DEBUG trust_dns_proto::rr::record_data] reading A
[2021-02-10T22:40:14Z DEBUG trust_dns_proto::rr::record_data] reading A
[2021-02-10T22:40:14Z DEBUG trust_dns_proto::udp::udp_client_stream] received message id: 47428
[2021-02-10T22:40:14Z TRACE mio::poll] deregistering handle with poller
[2021-02-10T22:40:14Z TRACE mio::poll] deregistering handle with poller
[2021-02-10T22:40:14Z DEBUG trust_dns_resolver::name_server::name_server_pool] mDNS responsed for query: NoError
[2021-02-10T22:40:14Z TRACE actix_connect::resolve] DNS resolver: host "textsecure-service.whispersystems.org" resolved to [13.248.212.111:443, 76.223.92.165:443]
[2021-02-10T22:40:14Z TRACE actix_connect::connector] TCP connector - connecting to "textsecure-service.whispersystems.org" port:443
[2021-02-10T22:40:14Z TRACE mio::poll] registering with poller
[2021-02-10T22:40:14Z TRACE actix_connect::connector] TCP connector - successfully connected to connecting to "textsecure-service.whispersystems.org" - Ok(13.248.212.111:443)
[2021-02-10T22:40:14Z TRACE actix_connect::ssl::rustls] SSL Handshake start for: "textsecure-service.whispersystems.org"
[2021-02-10T22:40:14Z DEBUG rustls::client::hs] Resuming session
[2021-02-10T22:40:14Z TRACE rustls::client::hs] Sending ClientHello Message {
        typ: Handshake,
        version: TLSv1_0,
        payload: Handshake(
            HandshakeMessagePayload {
                typ: ClientHello,
                payload: ClientHello(
                    ClientHelloPayload {
                        client_version: TLSv1_2,
                        random: Random(
                            [
                                43,
                                204,
                                19,
                                118,
                                76,
                                131,
                                48,
                                182,
                                146,
                                59,
                                170,
                                68,
                                229,
                                145,
                                43,
                                133,
                                6,
                                185,
                                30,
                                194,
                                77,
                                77,
                                214,
                                136,
                                172,
                                91,
                                67,
                                207,
                                111,
                                140,
                                116,
                                55,
                            ],
                        ),
                        session_id: SessionID(
                            142,
                            188,
                            56,
                            19,
                            62,
                            101,
                            227,
                            173,
                            44,
                            22,
                            241,
                            200,
                            215,
                            9,
                            172,
                            26,
                            41,
                            169,
                            6,
                            0,
                            197,
                            211,
                            173,
                            209,
                            172,
                            238,
                            29,
                            206,
                            225,
                            14,
                            174,
                            27,
                        ),
                        cipher_suites: [
                            TLS13_CHACHA20_POLY1305_SHA256,
                            TLS13_AES_256_GCM_SHA384,
                            TLS13_AES_128_GCM_SHA256,
                            TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256,
                            TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256,
                            TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,
                            TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,
                            TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,
                            TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,
                            TLS_EMPTY_RENEGOTIATION_INFO_SCSV,
                        ],
                        compression_methods: [
                            Null,
                        ],
                        extensions: [
                            SupportedVersions(
                                [
                                    TLSv1_3,
                                    TLSv1_2,
                                ],
                            ),
                            ServerName(
                                [
                                    ServerName {
                                        typ: HostName,
                                        payload: HostName(
                                            DNSName(
                                                "textsecure-service.whispersystems.org",
                                            ),
                                        ),
                                    },
                                ],
                            ),
                            ECPointFormats(
                                [
                                    Uncompressed,
                                ],
                            ),
                            NamedGroups(
                                [
                                    X25519,
                                    secp384r1,
                                    secp256r1,
                                ],
                            ),
                            SignatureAlgorithms(
                                [
                                    ECDSA_NISTP384_SHA384,
                                    ECDSA_NISTP256_SHA256,
                                    ED25519,
                                    RSA_PSS_SHA512,
                                    RSA_PSS_SHA384,
                                    RSA_PSS_SHA256,
                                    RSA_PKCS1_SHA512,
                                    RSA_PKCS1_SHA384,
                                    RSA_PKCS1_SHA256,
                                ],
                            ),
                            ExtendedMasterSecretRequest,
                            CertificateStatusRequest(
                                OCSP(
                                    OCSPCertificateStatusRequest {
                                        responder_ids: [],
                                        extensions: PayloadU16(
                                            [],
                                        ),
                                    },
                                ),
                            ),
                            KeyShare(
                                [
                                    KeyShareEntry {
                                        group: X25519,
                                        payload: PayloadU16(
                                            [
                                                34,
                                                52,
                                                25,
                                                168,
                                                24,
                                                72,
                                                102,
                                                148,
                                                240,
                                                171,
                                                254,
                                                157,
                                                246,
                                                187,
                                                93,
                                                204,
                                                124,
                                                168,
                                                239,
                                                36,
                                                6,
                                                38,
                                                77,
                                                116,
                                                128,
                                                7,
                                                246,
                                                143,
                                                150,
                                                235,
                                                88,
                                                13,
                                            ],
                                        ),
                                    },
                                ],
                            ),
                            PresharedKeyModes(
                                [
                                    PSK_DHE_KE,
                                ],
                            ),
                            Protocols(
                                [
                                    PayloadU8(
                                        [
                                            104,
                                            116,
                                            116,
                                            112,
                                            47,
                                            49,
                                            46,
                                            49,
                                        ],
                                    ),
                                ],
                            ),
                            SessionTicketOffer(
                                Payload(
                                    [
                                        245,
                                        224,
                                        150,
                                        179,
                                        23,
                                        175,
                                        246,
                                        189,
                                        116,
                                        59,
                                        151,
                                        187,
                                        160,
                                        131,
                                        119,
                                        39,
                                        56,
                                        217,
                                        79,
                                        188,
                                        78,
                                        16,
                                        153,
                                        16,
                                        172,
                                        205,
                                        69,
                                        188,
                                        103,
                                        36,
                                        122,
                                        185,
                                        72,
                                        228,
                                        29,
                                        16,
                                        115,
                                        67,
                                        96,
                                        138,
                                        78,
                                        103,
                                        4,
                                        165,
                                        218,
                                        91,
                                        187,
                                        212,
                                        0,
                                        243,
                                        195,
                                        176,
                                        46,
                                        61,
                                        8,
                                        86,
                                        133,
                                        82,
                                        48,
                                        114,
                                        143,
                                        186,
                                        166,
                                        246,
                                        236,
                                        174,
                                        95,
                                        70,
                                        162,
                                        60,
                                        36,
                                        11,
                                        37,
                                        255,
                                        71,
                                        181,
                                        13,
                                        93,
                                        152,
                                        138,
                                        185,
                                        177,
                                        23,
                                        1,
                                        65,
                                        2,
                                        161,
                                        109,
                                        61,
                                        39,
                                        89,
                                        245,
                                        102,
                                        4,
                                        160,
                                        35,
                                        188,
                                        24,
                                        142,
                                        1,
                                        61,
                                        55,
                                        170,
                                        129,
                                        103,
                                        83,
                                        158,
                                        115,
                                        228,
                                        149,
                                        66,
                                        193,
                                        82,
                                        104,
                                        123,
                                        211,
                                        3,
                                        33,
                                        231,
                                        90,
                                        5,
                                        11,
                                        6,
                                        132,
                                        123,
                                        73,
                                        152,
                                        248,
                                        85,
                                        250,
                                        21,
                                        161,
                                        251,
                                        114,
                                        95,
                                        242,
                                        139,
                                        41,
                                        190,
                                        62,
                                        198,
                                        237,
                                        125,
                                        131,
                                        48,
                                        34,
                                        23,
                                        111,
                                        2,
                                        65,
                                        42,
                                        25,
                                        45,
                                        59,
                                        167,
                                        230,
                                        113,
                                        132,
                                        88,
                                        16,
                                        59,
                                        82,
                                        62,
                                        34,
                                        113,
                                        76,
                                        231,
                                        244,
                                        108,
                                        184,
                                        253,
                                        219,
                                        53,
                                        111,
                                        37,
                                        102,
                                        43,
                                        167,
                                        16,
                                        231,
                                        45,
                                        123,
                                        132,
                                        86,
                                        7,
                                        191,
                                        209,
                                        234,
                                        18,
                                        238,
                                        229,
                                        57,
                                        247,
                                        36,
                                        194,
                                        202,
                                        206,
                                        42,
                                        59,
                                        180,
                                        148,
                                        96,
                                        97,
                                        177,
                                        69,
                                        25,
                                        118,
                                        85,
                                        23,
                                        82,
                                        132,
                                        242,
                                        75,
                                        166,
                                        28,
                                        133,
                                        174,
                                        184,
                                        18,
                                        87,
                                        242,
                                        217,
                                        230,
                                        231,
                                    ],
                                ),
                            ),
                        ],
                    },
                ),
            },
        ),
    }
[2021-02-10T22:40:14Z TRACE rustls::client::hs] We got ServerHello ServerHelloPayload {
        legacy_version: TLSv1_2,
        random: Random(
            [
                204,
                138,
                209,
                119,
                137,
                146,
                129,
                237,
                166,
                121,
                6,
                219,
                224,
                81,
                100,
                24,
                97,
                214,
                208,
                76,
                10,
                202,
                142,
                78,
                46,
                204,
                113,
                130,
                7,
                226,
                37,
                1,
            ],
        ),
        session_id: SessionID,
        cipher_suite: TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,
        compression_method: Null,
        extensions: [
            RenegotiationInfo(
                PayloadU8(
                    [],
                ),
            ),
            ECPointFormats(
                [
                    Uncompressed,
                    ANSIX962CompressedPrime,
                    ANSIX962CompressedChar2,
                ],
            ),
            SessionTicketAck,
            Protocols(
                [
                    PayloadU8(
                        [
                            104,
                            116,
                            116,
                            112,
                            47,
                            49,
                            46,
                            49,
                        ],
                    ),
                ],
            ),
        ],
    }
[2021-02-10T22:40:14Z DEBUG rustls::client::hs] ALPN protocol is Some([104, 116, 116, 112, 47, 49, 46, 49])
[2021-02-10T22:40:14Z DEBUG rustls::client::hs] Using ciphersuite TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
[2021-02-10T22:40:14Z DEBUG rustls::client::hs] Server supports tickets
[2021-02-10T22:40:14Z DEBUG rustls::client::tls12] ECDHE curve is ECParameters { curve_type: NamedCurve, named_group: secp256r1 }
[2021-02-10T22:40:14Z TRACE rustls::client::tls12] Server cert is [Certificate(b"0\x82\x03\xe30\x82\x02\xcb\xa0\x03\x02\x01\x02\x02\x02\x10\x180\r\x06\t*\x86H\x86\xf7\r\x01\x01\x0b\x05\00\x81\x8d1\x0b0\t\x06\x03U\x04\x06\x13\x02US1\x130\x11\x06\x03U\x04\x08\x0c\nCalifornia1\x160\x14\x06\x03U\x04\x07\x0c\rSan Francisco1\x1d0\x1b\x06\x03U\x04\n\x0c\x14Open Whisper Systems1\x1d0\x1b\x06\x03U\x04\x0b\x0c\x14Open Whisper Systems1\x130\x11\x06\x03U\x04\x03\x0c\nTextSecure0\x1e\x17\r190215173817Z\x17\r290312182020Z0\x81\x901\x0b0\t\x06\x03U\x04\x06\x13\x02US1\x130\x11\x06\x03U\x04\x08\x0c\nCalifornia1\x1d0\x1b\x06\x03U\x04\n\x0c\x14Open Whisper Systems1\x1d0\x1b\x06\x03U\x04\x0b\x0c\x14Open Whisper Systems1.0,\x06\x03U\x04\x03\x0c%textsecure-service.whispersystems.org0\x82\x01\"0\r\x06\t*\x86H\x86\xf7\r\x01\x01\x01\x05\0\x03\x82\x01\x0f\00\x82\x01\n\x02\x82\x01\x01\0\xac\xc8\x11\xb5\xd1E\xb7\xc0\xa2\xcb\xcf\x93\x89\x9a\x80u\xb3\xb0xp;;\xbb:~\xc4\x03\x8cq\xa9X\x87l\xde(\xc7\x88\xe5\xe4\xb8}\x9a\xee\xa7Um\x1e\x06\xfc\\\xf74\n<m\"\x8e\x04\t7\xf4\x95\xe7x\xc5\xc2:\xaa\xb6\xbe\ta;\x07\xcc\xab:n\x01\xe5`~\xac[u\xc7\xc5\xe3\xe3\xe4\x91JI%\xd6c\xb9J4\x04\x95\x97\x92\xa4JhZ\x89\x82-\x10\xf11\xbd*\x0f\x07\xd6\xcd\xc2\xeab\xc5\x9e@{H\x88\x13\xf3X@\x0e\xb2ezPM\x8d\x1d\x05M%\xd6\xad)A\xe5\xf3-z\xa0%\xebS\x874\x97\xaf\xa8\xf9\xb2\x83N\xd8\xac\x91\xa0\xc0Ml\x8e6|\xf5\x18\xbddB9G\xf2P\xd26}\xbd\xea\xb2\xe6C\xf9\x04;`\xace\xe6\x18\x03\x05O(4#M\xf3K\rZ8a\xe6qD9a\xa3\xe6\\e\xd6\xa6\x13\x92\x9d\xecX\x92F`>\x9c\xb9\0\xc9\xd4:\xd2(\xd6\xc3Qi\xec\x94\x87\xbe\xc2\xf6_O\x1f~\x92m\x02\x03\x01\0\x01\xa3H0F0D\x06\x03U\x1d\x11\x04=0;\x82%textsecure-service.whispersystems.org\x82\x12service.signal.org0\r\x06\t*\x86H\x86\xf7\r\x01\x01\x0b\x05\0\x03\x82\x01\x01\0)k.G\xbc\xf7\x0c?\xe1\xc4\xda\xf4\xb7X\xecK\xff(\x06\xd6\x8f\xea\xe37\x0e\xfdV\x0e|\x0e\xea\xdb(\x857aC\x17\xc9Ds\x01*p3\0\xcfo\xa1\x18\xaf\xdf^-\xa0h\x86*\xe9\xfaw|\xbfN\xb72+^e\r\x08\x1d\x88\xf4\xfan#\x88\xe3\xeb\x15-\x11\x17\x9c9t\x9a\x1cM\x82\xdd27\xb7\xb0\x88r\xf8[\x19MN\xac\x98\x83-\xb5E\x1cO\x11\x01\xebl$\x9c\x9d\xd9\x85\xae\xcc\x1c\x1d\xf5M\xe8Y.\x1978\xe5\xc1\x02\xd3:\"i\xa0\nR*c%C\xa3\x95~\x07k\xea\xb4S#Z\x1c\xc3\xea\xb8\xff\0\xf1q\x81!\x88\xba\x0c\x96<\xb8\xd8\x0f\xd6\xaf\x05\xf3\xc9C\x03\x91\xc0-dt\xe3\x91@.H\xb8\xaf\x9f\x8d\xf8\x9c\xb7\x18]\xa9LP\x85\xbc\xb1\x03K\x92\xc2\x93\xa9Q\xf6\xe8\xc2\x92\xda\xdd\x87E[8s\0\xdf\x9a\xd1\xb3\x99d\x8bn\x04A\x97\xff\x0e\xaa\xea\xb9\\\xb2\xcd\x11B\x0c\xdfSUp\x15\x05\xa4\xa8I"), Certificate(b"0\x82\x03\xef0\x82\x02\xd7\xa0\x03\x02\x01\x02\x02\t\0\x89\xba-\xabJ\xe4\xf3b0\r\x06\t*\x86H\x86\xf7\r\x01\x01\x05\x05\00\x81\x8d1\x0b0\t\x06\x03U\x04\x06\x13\x02US1\x130\x11\x06\x03U\x04\x08\x0c\nCalifornia1\x160\x14\x06\x03U\x04\x07\x0c\rSan Francisco1\x1d0\x1b\x06\x03U\x04\n\x0c\x14Open Whisper Systems1\x1d0\x1b\x06\x03U\x04\x0b\x0c\x14Open Whisper Systems1\x130\x11\x06\x03U\x04\x03\x0c\nTextSecure0\x1e\x17\r130325221835Z\x17\r230323221835Z0\x81\x8d1\x0b0\t\x06\x03U\x04\x06\x13\x02US1\x130\x11\x06\x03U\x04\x08\x0c\nCalifornia1\x160\x14\x06\x03U\x04\x07\x0c\rSan Francisco1\x1d0\x1b\x06\x03U\x04\n\x0c\x14Open Whisper Systems1\x1d0\x1b\x06\x03U\x04\x0b\x0c\x14Open Whisper Systems1\x130\x11\x06\x03U\x04\x03\x0c\nTextSecure0\x82\x01\"0\r\x06\t*\x86H\x86\xf7\r\x01\x01\x01\x05\0\x03\x82\x01\x0f\00\x82\x01\n\x02\x82\x01\x01\0\xc1I`i8 C\x17H\xb8\xabgx\x8c\x05\xe4Iu\x06\xa5\xb7\x96\xba\x05O@(\xda/\xaa\x83\xf5\0\xce\xc5\xe5\xb5i\xfb\xdf>\x8f:\xde.\x82\xae\xadJ\x0f\x11\xe9\x07~\x84\xc35\\\x8f\x02\xe4\x152\x0cz\x8e\xed\xf6\xcdEB\x89@\xb7y\x84\xad]\x94\xd2\xf8\x9e\xe9W\xac\xfb(\xfa\x82\xb4\x9f\xc7\x02\x03\x01\xc7l*b4kT\x90\t\x99k\xdd\rmpp$\0\xa1Q\xc5\x83Z\xc0\0\xf2\xa6\xceA\xf9\x99\xaar\x07\xfa\xe7t\xd7K\x9f\xf4 \xf3\xd0.\x87\x0b\x9f\xc1\x96/\x03\x986v\x1f\x06\xf2\x0b(3\x08\xb6fS\xb4F\xeeq\xd8\xa0\xc4@=\x99\xf2/\xbcp\x03\x11\xbb^.\xd5`\xc0\x19\xbdG\x9b\xd5\xbe\xdc+\x0f\xa0\x82\xc4\x8d\xe9\x80~\xc4\x1f\xb9\x0c?C\x9d\xf7|\x0b\x8a\xcb\xe7\xd7(Gc\xb1nbZ\xe4b\xa7d2\xf5\x94\xac\xaa\0I\\8\x8d\xbe\xbd\xbd\xa7\x89\tGT\xf8p\xa8\\\xe4\x8f\xd4\xf4\x1c/\xa5\x9e\x9c\xd0\x87\x02\x03\x01\0\x01\xa3P0N0\x1d\x06\x03U\x1d\x0e\x04\x16\x04\x14\x01\x8b\x18\xf1?\xfb9\x19Dn\x85\x86\xbe\x94e2\xa72<\x900\x1f\x06\x03U\x1d#\x04\x180\x16\x80\x14\x01\x8b\x18\xf1?\xfb9\x19Dn\x85\x86\xbe\x94e2\xa72<\x900\x0c\x06\x03U\x1d\x13\x04\x050\x03\x01\x01\xff0\r\x06\t*\x86H\x86\xf7\r\x01\x01\x05\x05\0\x03\x82\x01\x01\0~\x1e\xbe!\x0b\x9e\xa6\xd0\xbb\xc9\x02\xedQ+\xa3n<6\xd30C{\xfe3(\x8cQ\xf1\x1f\x83\xf7\\\xf1_\xba\x98\xd1\xf9\xb9\x03\xabJO9N\x89\x8c\x8cg\xac=W\x0f\xf1\x15\x994\xdaMV9\x88\xe8^\xca\xfe\xd4\xcc\x93\x9e}\xbd\xa9,\xe7=\xaa\xcb\xaf#\x87\xe7hD\xa1\xf5\xb8s\x96\x7f\x8b_\x1bB\xad\x13\xc6\x86L@\xd4\x83\x08\xa3r\x7f\xb3e\x85\xfc\xa5Xg'\"\xbb\xa6\xf8\xb9\xb2}\xd5s\xc0\xb8\x13Y\xc0\x89\xae\x83\xbf\xec\xadk\xdb\xa6M!\xab\xa0:\xcf^4Y5R*\xd2F\xecC\xf8\xd6B^\xfe\x81x\xba\xc69'\xb2\xcf\x93\x12\xb7-l\xcc&v\xf9\x10\x82C\x99\x1b\xf2\x1f\xcarG\x05\xa0\xe9\t\xba\xaa!\x85h\x8e'/\xc4\x14\xe0\xb6\xb5\xc7g\xa7\xe01\x97E\xa2\xcc=\x1c#\x10\xb3`@\xfa\x1dG\x7f3\xa0#.\x03\xc8\x07e\xf6Xb\x86{\x0f\xb45\xc0\xd5\"Tw1\xb8Z\xc4x\x16\x98%\xb2\xc4\xaf\x02\xd5")]
[2021-02-10T22:40:14Z DEBUG rustls::client::tls12] Server DNS name is DNSName("textsecure-service.whispersystems.org")
[2021-02-10T22:40:15Z DEBUG rustls::client::tls12] Session saved
[2021-02-10T22:40:15Z TRACE actix_connect::ssl::rustls] SSL Handshake success: "textsecure-service.whispersystems.org"
[2021-02-10T22:40:15Z TRACE actix_codec::framed] flushing framed transport
[2021-02-10T22:40:15Z TRACE actix_codec::framed] writing; remaining=313
[2021-02-10T22:40:15Z TRACE actix_codec::framed] framed transport flushed
[2021-02-10T22:40:15Z TRACE actix_codec::framed] attempting to decode a frame
[2021-02-10T22:40:15Z TRACE actix_codec::framed] frame decoded from buffer
[2021-02-10T22:40:15Z DEBUG libsignal_service_actix::push_service] AwcPushService::get response: 
    ClientResponse HTTP/1.1 413 Payload Too Large
      headers:
        "cache-control": "must-revalidate,no-cache,no-store"
        "date": "Wed, 10 Feb 2021 22:40:15 GMT"
        "content-type": "text/html;charset=iso-8859-1"
        "x-signal-timestamp": "1612996815244"
        "connection": "keep-alive"
        "content-length": "476"
    
[2021-02-10T22:40:15Z TRACE mio::poll] deregistering handle with poller
[2021-02-10T22:40:15Z ERROR harbour_whisperfish::worker::client] Error sending message: Rate limit exceeded
[2021-02-10T22:40:15Z DEBUG harbour_whisperfish::store] [refresh_session] Fetching session
[2021-02-10T22:40:15Z TRACE harbour_whisperfish::store] Called fetch_session_by_source(+43XXXXXXXXXXX)
[2021-02-10T22:40:15Z DEBUG harbour_whisperfish::store] [refresh_session] 1052 +43XXXXXXXXXXX
[2021-02-10T22:40:15Z TRACE harbour_whisperfish::store] Called update_session()
[2021-02-10T22:40:15Z DEBUG harbour_whisperfish::store] [refresh_session] Updated
[2021-02-10T22:40:15Z TRACE harbour_whisperfish::model::session] STUB: Mark sent called
[2021-02-10T22:40:15Z TRACE harbour_whisperfish::model::message] Mark message 1052 sent 'true'
[2021-02-10T22:40:15Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
[2021-02-10T22:40:15Z TRACE harbour_whisperfish::model::contact] Formatted phone number: PhoneNumber { code: Code { value: 43, source: Plus }, national: NationalNumber { value: XXXXXXXXXXX, zeros: 0 }, extension: None, carrier: None }
[2021-02-10T22:40:15Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
[2021-02-10T22:40:15Z TRACE harbour_whisperfish::model::contact] Formatted phone number: PhoneNumber { code: Code { value: 43, source: Plus }, national: NationalNumber { value: XXXXXXXXXXX, zeros: 0 }, extension: None, carrier: None }
[2021-02-10T22:40:15Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
[2021-02-10T22:40:15Z TRACE harbour_whisperfish::model::contact] Formatted phone number: PhoneNumber { code: Code { value: 43, source: Plus }, national: NationalNumber { value: YYYYY, zeros: 0 }, extension: None, carrier: None }
[2021-02-10T22:40:15Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
[2021-02-10T22:40:15Z TRACE harbour_whisperfish::model::contact] Formatted phone number: PhoneNumber { code: Code { value: 43, source: Plus }, national: NationalNumber { value: YYYYY, zeros: 0 }, extension: None, carrier: None }
...
CENSORED
...
[2021-02-10T22:40:31Z TRACE libsignal_service_actix::websocket] Triggering keep-alive
[2021-02-10T22:40:31Z TRACE libsignal_service::messagepipe] Sending request WebSocketRequestMessage { verb: Some("GET"), path: Some("/v1/keepalive"), body: None, headers: [], id: Some(1612996831492) }
[2021-02-10T22:40:31Z TRACE actix_codec::framed] flushing framed transport
[2021-02-10T22:40:31Z TRACE actix_codec::framed] writing; remaining=37
[2021-02-10T22:40:31Z TRACE actix_codec::framed] framed transport flushed
[2021-02-10T22:40:31Z TRACE libsignal_service::messagepipe] request on route.
[2021-02-10T22:40:31Z TRACE actix_codec::framed] attempting to decode a frame
[2021-02-10T22:40:31Z TRACE actix_codec::framed] frame decoded from buffer
[2021-02-10T22:40:31Z TRACE actix_codec::framed] attempting to decode a frame
[2021-02-10T22:40:31Z TRACE libsignal_service::messagepipe] Decoded WebSocketMessage { r#type: Some(Response), request: None, response: Some(WebSocketResponseMessage { id: Some(1612996831492), status: Some(200), message: Some("OK"), headers: ["Content-Length:0"], body: None }) }
^A[2021-02-10T22:41:26Z TRACE libsignal_service_actix::websocket] Triggering keep-alive
[2021-02-10T22:41:26Z TRACE libsignal_service::messagepipe] Sending request WebSocketRequestMessage { verb: Some("GET"), path: Some("/v1/keepalive"), body: None, headers: [], id: Some(1612996886495) }
[2021-02-10T22:41:26Z TRACE actix_codec::framed] flushing framed transport
[2021-02-10T22:41:26Z TRACE actix_codec::framed] writing; remaining=37
[2021-02-10T22:41:26Z TRACE actix_codec::framed] framed transport flushed
[2021-02-10T22:41:26Z TRACE libsignal_service::messagepipe] request on route.
[2021-02-10T22:41:26Z TRACE actix_codec::framed] attempting to decode a frame
[2021-02-10T22:41:26Z TRACE actix_codec::framed] frame decoded from buffer
[2021-02-10T22:41:26Z TRACE actix_codec::framed] attempting to decode a frame
[2021-02-10T22:41:26Z TRACE libsignal_service::messagepipe] Decoded WebSocketMessage { r#type: Some(Response), request: None, response: Some(WebSocketResponseMessage { id: Some(1612996886495), status: Some(200), message: Some("OK"), headers: ["Content-Length:0"], body: None }) }




Version: v0.6.0-alpha.8 on SailfishOS X 4.0.1.45.

Now I thought that maybe I have to start a “New Message”… I did but accidentally sent “Test” to some number that does not exist. Result: I only see phone numbers and no names in the app anymore. Even after restart!

I have the trace copied (again censored) until I restarted:

2021-02-10T22:56:41Z TRACE harbour_whisperfish::actor::messageactor] MessageActor::handle(QueueMessage { source: "+62884427", message: "Test", attachment: "", group: "" })
[2021-02-10T22:56:41Z TRACE harbour_whisperfish::store] Called fetch_session_by_source(+62884427)
[2021-02-10T22:56:41Z TRACE harbour_whisperfish::store] Called create_session()
[2021-02-10T22:56:41Z TRACE harbour_whisperfish::store] Called fetch_latest_session()
[2021-02-10T22:56:41Z TRACE harbour_whisperfish::store] Called update_message_if_needed(14)
[2021-02-10T22:56:41Z TRACE harbour_whisperfish::store] Called create_message()
[2021-02-10T22:56:41Z TRACE harbour_whisperfish::store] Called fetch_latest_message()
[2021-02-10T22:56:41Z TRACE harbour_whisperfish::store] Inserted message id 1053
[2021-02-10T22:56:41Z INFO  harbour_whisperfish::worker::client] ClientActor::SendMessage(1053)
[2021-02-10T22:56:41Z TRACE harbour_whisperfish::store] Called fetch_message(1053)
[2021-02-10T22:56:41Z TRACE harbour_whisperfish::store] SELECT `message`.`id`, `message`.`session_id`, `message`.`source`, `message`.`message`, `message`.`timestamp`, `message`.`sent`, `message`.`received`, `message`.`flags`, `message`.`attachment`, `message`.`mime_type`, `message`.`has_attachment`, `message`.`outgoing`, CASE WHEN sentq.message_id > 0 THEN 1 ELSE 0 END AS queued FROM (`message` LEFT OUTER JOIN `sentq` ON `sentq`.`message_id` = `message`.`id`) WHERE `message`.`id` = ? -- binds: [1053]
[2021-02-10T22:56:41Z TRACE harbour_whisperfish::store] Called fetch_session(14)
[2021-02-10T22:56:41Z TRACE harbour_whisperfish::worker::client] Sending for session: Session { id: 14, source: "+62884427", message: "Test", timestamp: 1612997801578, sent: false, received: false, unread: false, is_group: false, group_members: None, group_id: None, group_name: None, has_attachment: false }
[2021-02-10T22:56:41Z TRACE harbour_whisperfish::worker::client] Sending message: Message { id: 1053, sid: 14, source: "+62884427", message: "Test", timestamp: 1612997801578, sent: false, received: false, flags: 0, attachment: None, mimetype: None, hasattachment: false, outgoing: true, queued: true }
[2021-02-10T22:56:41Z TRACE harbour_whisperfish::worker::client] Transmitting DataMessage { body: Some("Test"), attachments: [], group: None, group_v2: None, flags: None, expire_timer: None, profile_key: None, timestamp: Some(1612997801578), quote: None, contact: [], preview: [], sticker: None, required_protocol_version: Some(0), is_view_once: None, reaction: None, delete: None, body_ranges: [] }
[2021-02-10T22:56:41Z TRACE libsignal_service::sender] encrypting message for Address { name: "+62884427", device_id: 1 }
[2021-02-10T22:56:41Z TRACE harbour_whisperfish::store::protocol_store] contains_session(+62884427)
[2021-02-10T22:56:41Z INFO  libsignal_service::sender] establishing new session with Address { name: "+62884427", device_id: 1 }
[2021-02-10T22:56:41Z DEBUG libsignal_service_actix::push_service] AwcPushService::get(Url { scheme: "https", host: Some(Domain("textsecure-service.whispersystems.org")), port: None, path: "/v2/keys/+62884427/*", query: None, fragment: None })
[2021-02-10T22:56:41Z TRACE actix_connect::resolve] DNS resolver: resolving host "textsecure-service.whispersystems.org"
[2021-02-10T22:56:41Z TRACE actix_connect::resolve] DNS resolver: host "textsecure-service.whispersystems.org" resolved to [76.223.92.165:443, 13.248.212.111:443]
[2021-02-10T22:56:41Z TRACE actix_connect::connector] TCP connector - connecting to "textsecure-service.whispersystems.org" port:443
[2021-02-10T22:56:41Z TRACE mio::poll] registering with poller
[2021-02-10T22:56:41Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
...
CENSORED
...
[2021-02-10T22:56:41Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
[2021-02-10T22:56:41Z TRACE harbour_whisperfish::model::contact] Formatted phone number: PhoneNumber { code: Code { value: 43, source: Plus }, national: NationalNumber { value: YYYYYYYY, zeros: 0 }, extension: None, carrier: None }
[2021-02-10T22:56:41Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
[2021-02-10T22:56:41Z TRACE harbour_whisperfish::model::contact] Formatted phone number: PhoneNumber { code: Code { value: 43, source: Plus }, national: NationalNumber { value: YYYYYYYY, zeros: 0 }, extension: None, carrier: None }
[2021-02-10T22:56:41Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
...
CENSORED
...
[2021-02-10T22:56:42Z TRACE actix_connect::connector] TCP connector - successfully connected to connecting to "textsecure-service.whispersystems.org" - Ok(76.223.92.165:443)
[2021-02-10T22:56:42Z TRACE actix_connect::ssl::rustls] SSL Handshake start for: "textsecure-service.whispersystems.org"
[2021-02-10T22:56:42Z DEBUG rustls::client::hs] Resuming session
[2021-02-10T22:56:42Z TRACE rustls::client::hs] Sending ClientHello Message {
        typ: Handshake,
        version: TLSv1_0,
        payload: Handshake(
            HandshakeMessagePayload {
                typ: ClientHello,
                payload: ClientHello(
                    ClientHelloPayload {
                        client_version: TLSv1_2,
                        random: Random(
                            [
                                48,
                                128,
                                69,
                                204,
                                238,
                                153,
                                45,
                                130,
                                146,
                                216,
                                185,
                                2,
                                30,
                                225,
                                56,
                                144,
                                236,
                                220,
                                48,
                                196,
                                8,
                                38,
                                222,
                                98,
                                164,
                                7,
                                144,
                                73,
                                154,
                                19,
                                123,
                                166,
                            ],
                        ),
                        session_id: SessionID(
                            205,
                            143,
                            66,
                            191,
                            155,
                            80,
                            162,
                            217,
                            36,
                            49,
                            197,
                            48,
                            238,
                            131,
                            55,
                            109,
                            56,
                            232,
                            164,
                            223,
                            138,
                            208,
                            119,
                            86,
                            220,
                            242,
                            180,
                            230,
                            7,
                            47,
                            244,
                            198,
                        ),
                        cipher_suites: [
                            TLS13_CHACHA20_POLY1305_SHA256,
                            TLS13_AES_256_GCM_SHA384,
                            TLS13_AES_128_GCM_SHA256,
                            TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256,
                            TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256,
                            TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,
                            TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,
                            TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,
                            TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,
                            TLS_EMPTY_RENEGOTIATION_INFO_SCSV,
                        ],
                        compression_methods: [
                            Null,
                        ],
                        extensions: [
                            SupportedVersions(
                                [
                                    TLSv1_3,
                                    TLSv1_2,
                                ],
                            ),
                            ServerName(
                                [
                                    ServerName {
                                        typ: HostName,
                                        payload: HostName(
                                            DNSName(
                                                "textsecure-service.whispersystems.org",
                                            ),
                                        ),
                                    },
                                ],
                            ),
                            ECPointFormats(
                                [
                                    Uncompressed,
                                ],
                            ),
                            NamedGroups(
                                [
                                    X25519,
                                    secp384r1,
                                    secp256r1,
                                ],
                            ),
                            SignatureAlgorithms(
                                [
                                    ECDSA_NISTP384_SHA384,
                                    ECDSA_NISTP256_SHA256,
                                    ED25519,
                                    RSA_PSS_SHA512,
                                    RSA_PSS_SHA384,
                                    RSA_PSS_SHA256,
                                    RSA_PKCS1_SHA512,
                                    RSA_PKCS1_SHA384,
                                    RSA_PKCS1_SHA256,
                                ],
                            ),
                            ExtendedMasterSecretRequest,
                            CertificateStatusRequest(
                                OCSP(
                                    OCSPCertificateStatusRequest {
                                        responder_ids: [],
                                        extensions: PayloadU16(
                                            [],
                                        ),
                                    },
                                ),
                            ),
                            KeyShare(
                                [
                                    KeyShareEntry {
                                        group: X25519,
                                        payload: PayloadU16(
                                            [
                                                234,
                                                6,
                                                138,
                                                219,
                                                191,
                                                51,
                                                135,
                                                178,
                                                13,
                                                224,
                                                37,
                                                69,
                                                128,
                                                171,
                                                246,
                                                155,
                                                88,
                                                177,
                                                191,
                                                87,
                                                34,
                                                236,
                                                50,
                                                101,
                                                100,
                                                159,
                                                86,
                                                122,
                                                19,
                                                88,
                                                20,
                                                87,
                                            ],
                                        ),
                                    },
                                ],
                            ),
                            PresharedKeyModes(
                                [
                                    PSK_DHE_KE,
                                ],
                            ),
                            Protocols(
                                [
                                    PayloadU8(
                                        [
                                            104,
                                            116,
                                            116,
                                            112,
                                            47,
                                            49,
                                            46,
                                            49,
                                        ],
                                    ),
                                ],
                            ),
                            SessionTicketOffer(
                                Payload(
                                    [
                                        164,
                                        169,
                                        229,
                                        42,
                                        158,
                                        97,
                                        234,
                                        94,
                                        96,
                                        32,
                                        67,
                                        30,
                                        93,
                                        204,
                                        224,
                                        192,
                                        71,
                                        106,
                                        134,
                                        240,
                                        77,
                                        24,
                                        219,
                                        157,
                                        244,
                                        72,
                                        177,
                                        212,
                                        25,
                                        100,
                                        66,
                                        219,
                                        147,
                                        11,
                                        97,
                                        13,
                                        13,
                                        199,
                                        2,
                                        67,
                                        247,
                                        165,
                                        193,
                                        94,
                                        202,
                                        120,
                                        180,
                                        42,
                                        97,
                                        55,
                                        8,
                                        175,
                                        25,
                                        172,
                                        78,
                                        143,
                                        38,
                                        23,
                                        22,
                                        253,
                                        71,
                                        135,
                                        77,
                                        229,
                                        245,
                                        6,
                                        55,
                                        189,
                                        44,
                                        220,
                                        45,
                                        245,
                                        20,
                                        28,
                                        183,
                                        38,
                                        202,
                                        39,
                                        198,
                                        31,
                                        236,
                                        225,
                                        227,
                                        80,
                                        249,
                                        238,
                                        169,
                                        244,
                                        163,
                                        231,
                                        87,
                                        205,
                                        224,
                                        211,
                                        133,
                                        175,
                                        232,
                                        14,
                                        253,
                                        95,
                                        43,
                                        214,
                                        129,
                                        91,
                                        123,
                                        178,
                                        165,
                                        2,
                                        76,
                                        238,
                                        81,
                                        30,
                                        97,
                                        140,
                                        225,
                                        5,
                                        218,
                                        107,
                                        127,
                                        77,
                                        230,
                                        49,
                                        139,
                                        183,
                                        158,
                                        129,
                                        164,
                                        29,
                                        7,
                                        37,
                                        86,
                                        203,
                                        120,
                                        153,
                                        17,
                                        188,
                                        233,
                                        94,
                                        66,
                                        109,
                                        41,
                                        114,
                                        106,
                                        73,
                                        179,
                                        84,
                                        92,
                                        248,
                                        238,
                                        185,
                                        191,
                                        87,
                                        87,
                                        7,
                                        18,
                                        27,
                                        179,
                                        136,
                                        176,
                                        165,
                                        55,
                                        16,
                                        108,
                                        38,
                                        14,
                                        28,
                                        92,
                                        14,
                                        235,
                                        80,
                                        215,
                                        35,
                                        142,
                                        133,
                                        47,
                                        172,
                                        112,
                                        181,
                                        127,
                                        131,
                                        224,
                                        28,
                                        152,
                                        20,
                                        94,
                                        114,
                                        180,
                                        102,
                                        55,
                                        54,
                                        30,
                                        72,
                                        60,
                                        96,
                                        54,
                                        90,
                                        171,
                                        61,
                                        187,
                                        130,
                                        175,
                                        10,
                                        133,
                                        185,
                                        154,
                                        22,
                                        131,
                                        186,
                                        171,
                                        158,
                                        36,
                                        54,
                                        25,
                                        178,
                                        63,
                                        192,
                                        32,
                                        87,
                                        98,
                                        126,
                                        212,
                                        118,
                                        102,
                                        21,
                                    ],
                                ),
                            ),
                        ],
                    },
                ),
            },
        ),
    }
[2021-02-10T22:56:42Z TRACE rustls::client::hs] We got ServerHello ServerHelloPayload {
        legacy_version: TLSv1_2,
        random: Random(
            [
                139,
                185,
                110,
                60,
                114,
                105,
                62,
                98,
                124,
                35,
                42,
                27,
                198,
                215,
                88,
                17,
                148,
                189,
                75,
                41,
                72,
                159,
                208,
                70,
                227,
                236,
                106,
                132,
                238,
                115,
                149,
                155,
            ],
        ),
        session_id: SessionID,
        cipher_suite: TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,
        compression_method: Null,
        extensions: [
            RenegotiationInfo(
                PayloadU8(
                    [],
                ),
            ),
            ECPointFormats(
                [
                    Uncompressed,
                    ANSIX962CompressedPrime,
                    ANSIX962CompressedChar2,
                ],
            ),
            SessionTicketAck,
            Protocols(
                [
                    PayloadU8(
                        [
                            104,
                            116,
                            116,
                            112,
                            47,
                            49,
                            46,
                            49,
                        ],
                    ),
                ],
            ),
        ],
    }
[2021-02-10T22:56:42Z DEBUG rustls::client::hs] ALPN protocol is Some([104, 116, 116, 112, 47, 49, 46, 49])
[2021-02-10T22:56:42Z DEBUG rustls::client::hs] Using ciphersuite TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
[2021-02-10T22:56:42Z DEBUG rustls::client::hs] Server supports tickets
[2021-02-10T22:56:42Z DEBUG rustls::client::tls12] ECDHE curve is ECParameters { curve_type: NamedCurve, named_group: secp256r1 }
[2021-02-10T22:56:42Z TRACE rustls::client::tls12] Server cert is [Certificate(b"0\x82\x03\xe30\x82\x02\xcb\xa0\x03\x02\x01\x02\x02\x02\x10\x180\r\x06\t*\x86H\x86\xf7\r\x01\x01\x0b\x05\00\x81\x8d1\x0b0\t\x06\x03U\x04\x06\x13\x02US1\x130\x11\x06\x03U\x04\x08\x0c\nCalifornia1\x160\x14\x06\x03U\x04\x07\x0c\rSan Francisco1\x1d0\x1b\x06\x03U\x04\n\x0c\x14Open Whisper Systems1\x1d0\x1b\x06\x03U\x04\x0b\x0c\x14Open Whisper Systems1\x130\x11\x06\x03U\x04\x03\x0c\nTextSecure0\x1e\x17\r190215173817Z\x17\r290312182020Z0\x81\x901\x0b0\t\x06\x03U\x04\x06\x13\x02US1\x130\x11\x06\x03U\x04\x08\x0c\nCalifornia1\x1d0\x1b\x06\x03U\x04\n\x0c\x14Open Whisper Systems1\x1d0\x1b\x06\x03U\x04\x0b\x0c\x14Open Whisper Systems1.0,\x06\x03U\x04\x03\x0c%textsecure-service.whispersystems.org0\x82\x01\"0\r\x06\t*\x86H\x86\xf7\r\x01\x01\x01\x05\0\x03\x82\x01\x0f\00\x82\x01\n\x02\x82\x01\x01\0\xac\xc8\x11\xb5\xd1E\xb7\xc0\xa2\xcb\xcf\x93\x89\x9a\x80u\xb3\xb0xp;;\xbb:~\xc4\x03\x8cq\xa9X\x87l\xde(\xc7\x88\xe5\xe4\xb8}\x9a\xee\xa7Um\x1e\x06\xfc\\\xf74\n<m\"\x8e\x04\t7\xf4\x95\xe7x\xc5\xc2:\xaa\xb6\xbe\ta;\x07\xcc\xab:n\x01\xe5`~\xac[u\xc7\xc5\xe3\xe3\xe4\x91JI%\xd6c\xb9J4\x04\x95\x97\x92\xa4JhZ\x89\x82-\x10\xf11\xbd*\x0f\x07\xd6\xcd\xc2\xeab\xc5\x9e@{H\x88\x13\xf3X@\x0e\xb2ezPM\x8d\x1d\x05M%\xd6\xad)A\xe5\xf3-z\xa0%\xebS\x874\x97\xaf\xa8\xf9\xb2\x83N\xd8\xac\x91\xa0\xc0Ml\x8e6|\xf5\x18\xbddB9G\xf2P\xd26}\xbd\xea\xb2\xe6C\xf9\x04;`\xace\xe6\x18\x03\x05O(4#M\xf3K\rZ8a\xe6qD9a\xa3\xe6\\e\xd6\xa6\x13\x92\x9d\xecX\x92F`>\x9c\xb9\0\xc9\xd4:\xd2(\xd6\xc3Qi\xec\x94\x87\xbe\xc2\xf6_O\x1f~\x92m\x02\x03\x01\0\x01\xa3H0F0D\x06\x03U\x1d\x11\x04=0;\x82%textsecure-service.whispersystems.org\x82\x12service.signal.org0\r\x06\t*\x86H\x86\xf7\r\x01\x01\x0b\x05\0\x03\x82\x01\x01\0)k.G\xbc\xf7\x0c?\xe1\xc4\xda\xf4\xb7X\xecK\xff(\x06\xd6\x8f\xea\xe37\x0e\xfdV\x0e|\x0e\xea\xdb(\x857aC\x17\xc9Ds\x01*p3\0\xcfo\xa1\x18\xaf\xdf^-\xa0h\x86*\xe9\xfaw|\xbfN\xb72+^e\r\x08\x1d\x88\xf4\xfan#\x88\xe3\xeb\x15-\x11\x17\x9c9t\x9a\x1cM\x82\xdd27\xb7\xb0\x88r\xf8[\x19MN\xac\x98\x83-\xb5E\x1cO\x11\x01\xebl$\x9c\x9d\xd9\x85\xae\xcc\x1c\x1d\xf5M\xe8Y.\x1978\xe5\xc1\x02\xd3:\"i\xa0\nR*c%C\xa3\x95~\x07k\xea\xb4S#Z\x1c\xc3\xea\xb8\xff\0\xf1q\x81!\x88\xba\x0c\x96<\xb8\xd8\x0f\xd6\xaf\x05\xf3\xc9C\x03\x91\xc0-dt\xe3\x91@.H\xb8\xaf\x9f\x8d\xf8\x9c\xb7\x18]\xa9LP\x85\xbc\xb1\x03K\x92\xc2\x93\xa9Q\xf6\xe8\xc2\x92\xda\xdd\x87E[8s\0\xdf\x9a\xd1\xb3\x99d\x8bn\x04A\x97\xff\x0e\xaa\xea\xb9\\\xb2\xcd\x11B\x0c\xdfSUp\x15\x05\xa4\xa8I"), Certificate(b"0\x82\x03\xef0\x82\x02\xd7\xa0\x03\x02\x01\x02\x02\t\0\x89\xba-\xabJ\xe4\xf3b0\r\x06\t*\x86H\x86\xf7\r\x01\x01\x05\x05\00\x81\x8d1\x0b0\t\x06\x03U\x04\x06\x13\x02US1\x130\x11\x06\x03U\x04\x08\x0c\nCalifornia1\x160\x14\x06\x03U\x04\x07\x0c\rSan Francisco1\x1d0\x1b\x06\x03U\x04\n\x0c\x14Open Whisper Systems1\x1d0\x1b\x06\x03U\x04\x0b\x0c\x14Open Whisper Systems1\x130\x11\x06\x03U\x04\x03\x0c\nTextSecure0\x1e\x17\r130325221835Z\x17\r230323221835Z0\x81\x8d1\x0b0\t\x06\x03U\x04\x06\x13\x02US1\x130\x11\x06\x03U\x04\x08\x0c\nCalifornia1\x160\x14\x06\x03U\x04\x07\x0c\rSan Francisco1\x1d0\x1b\x06\x03U\x04\n\x0c\x14Open Whisper Systems1\x1d0\x1b\x06\x03U\x04\x0b\x0c\x14Open Whisper Systems1\x130\x11\x06\x03U\x04\x03\x0c\nTextSecure0\x82\x01\"0\r\x06\t*\x86H\x86\xf7\r\x01\x01\x01\x05\0\x03\x82\x01\x0f\00\x82\x01\n\x02\x82\x01\x01\0\xc1I`i8 C\x17H\xb8\xabgx\x8c\x05\xe4Iu\x06\xa5\xb7\x96\xba\x05O@(\xda/\xaa\x83\xf5\0\xce\xc5\xe5\xb5i\xfb\xdf>\x8f:\xde.\x82\xae\xadJ\x0f\x11\xe9\x07~\x84\xc35\\\x8f\x02\xe4\x152\x0cz\x8e\xed\xf6\xcdEB\x89@\xb7y\x84\xad]\x94\xd2\xf8\x9e\xe9W\xac\xfb(\xfa\x82\xb4\x9f\xc7\x02\x03\x01\xc7l*b4kT\x90\t\x99k\xdd\rmpp$\0\xa1Q\xc5\x83Z\xc0\0\xf2\xa6\xceA\xf9\x99\xaar\x07\xfa\xe7t\xd7K\x9f\xf4 \xf3\xd0.\x87\x0b\x9f\xc1\x96/\x03\x986v\x1f\x06\xf2\x0b(3\x08\xb6fS\xb4F\xeeq\xd8\xa0\xc4@=\x99\xf2/\xbcp\x03\x11\xbb^.\xd5`\xc0\x19\xbdG\x9b\xd5\xbe\xdc+\x0f\xa0\x82\xc4\x8d\xe9\x80~\xc4\x1f\xb9\x0c?C\x9d\xf7|\x0b\x8a\xcb\xe7\xd7(Gc\xb1nbZ\xe4b\xa7d2\xf5\x94\xac\xaa\0I\\8\x8d\xbe\xbd\xbd\xa7\x89\tGT\xf8p\xa8\\\xe4\x8f\xd4\xf4\x1c/\xa5\x9e\x9c\xd0\x87\x02\x03\x01\0\x01\xa3P0N0\x1d\x06\x03U\x1d\x0e\x04\x16\x04\x14\x01\x8b\x18\xf1?\xfb9\x19Dn\x85\x86\xbe\x94e2\xa72<\x900\x1f\x06\x03U\x1d#\x04\x180\x16\x80\x14\x01\x8b\x18\xf1?\xfb9\x19Dn\x85\x86\xbe\x94e2\xa72<\x900\x0c\x06\x03U\x1d\x13\x04\x050\x03\x01\x01\xff0\r\x06\t*\x86H\x86\xf7\r\x01\x01\x05\x05\0\x03\x82\x01\x01\0~\x1e\xbe!\x0b\x9e\xa6\xd0\xbb\xc9\x02\xedQ+\xa3n<6\xd30C{\xfe3(\x8cQ\xf1\x1f\x83\xf7\\\xf1_\xba\x98\xd1\xf9\xb9\x03\xabJO9N\x89\x8c\x8cg\xac=W\x0f\xf1\x15\x994\xdaMV9\x88\xe8^\xca\xfe\xd4\xcc\x93\x9e}\xbd\xa9,\xe7=\xaa\xcb\xaf#\x87\xe7hD\xa1\xf5\xb8s\x96\x7f\x8b_\x1bB\xad\x13\xc6\x86L@\xd4\x83\x08\xa3r\x7f\xb3e\x85\xfc\xa5Xg'\"\xbb\xa6\xf8\xb9\xb2}\xd5s\xc0\xb8\x13Y\xc0\x89\xae\x83\xbf\xec\xadk\xdb\xa6M!\xab\xa0:\xcf^4Y5R*\xd2F\xecC\xf8\xd6B^\xfe\x81x\xba\xc69'\xb2\xcf\x93\x12\xb7-l\xcc&v\xf9\x10\x82C\x99\x1b\xf2\x1f\xcarG\x05\xa0\xe9\t\xba\xaa!\x85h\x8e'/\xc4\x14\xe0\xb6\xb5\xc7g\xa7\xe01\x97E\xa2\xcc=\x1c#\x10\xb3`@\xfa\x1dG\x7f3\xa0#.\x03\xc8\x07e\xf6Xb\x86{\x0f\xb45\xc0\xd5\"Tw1\xb8Z\xc4x\x16\x98%\xb2\xc4\xaf\x02\xd5")]
[2021-02-10T22:56:42Z DEBUG rustls::client::tls12] Server DNS name is DNSName("textsecure-service.whispersystems.org")
[2021-02-10T22:56:42Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
[2021-02-10T22:56:42Z TRACE harbour_whisperfish::model::contact] Formatted phone number: PhoneNumber { code: Code { value: 43, source: Plus }, national: NationalNumber { value: CENSORED, zeros: 0 }, extension: None, carrier: None }
[2021-02-10T22:56:42Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
[2021-02-10T22:56:42Z TRACE harbour_whisperfish::model::contact] Formatted phone number: PhoneNumber { code: Code { value: 43, source: Plus }, national: NationalNumber { value: CENSORED, zeros: 0 }, extension: None, carrier: None }
[2021-02-10T22:56:42Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
[2021-02-10T22:56:42Z TRACE harbour_whisperfish::model::contact] Formatted phone number: PhoneNumber { code: Code { value: 43, source: Plus }, national: NationalNumber { value: CENSORED, zeros: 0 }, extension: None, carrier: None }
[2021-02-10T22:56:42Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
[2021-02-10T22:56:42Z TRACE harbour_whisperfish::model::contact] Formatted phone number: PhoneNumber { code: Code { value: 43, source: Plus }, national: NationalNumber { value: CENSORED, zeros: 0 }, extension: None, carrier: None }
[2021-02-10T22:56:42Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
[2021-02-10T22:56:42Z TRACE harbour_whisperfish::model::contact] Formatted phone number: PhoneNumber { code: Code { value: 43, source: Plus }, national: NationalNumber { value: CENSORED, zeros: 0 }, extension: None, carrier: None }
[2021-02-10T22:56:42Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
[2021-02-10T22:56:42Z TRACE harbour_whisperfish::model::contact] Formatted phone number: PhoneNumber { code: Code { value: 43, source: Plus }, national: NationalNumber { value: CENSORED, zeros: 0 }, extension: None, carrier: None }
[2021-02-10T22:56:42Z DEBUG rustls::client::tls12] Session saved
[2021-02-10T22:56:42Z TRACE actix_connect::ssl::rustls] SSL Handshake success: "textsecure-service.whispersystems.org"
[2021-02-10T22:56:42Z TRACE actix_codec::framed] flushing framed transport
[2021-02-10T22:56:42Z TRACE actix_codec::framed] writing; remaining=309
[2021-02-10T22:56:42Z TRACE actix_codec::framed] framed transport flushed
[2021-02-10T22:56:42Z TRACE actix_codec::framed] attempting to decode a frame
[2021-02-10T22:56:42Z TRACE actix_codec::framed] frame decoded from buffer
[2021-02-10T22:56:42Z DEBUG libsignal_service_actix::push_service] AwcPushService::get response: 
    ClientResponse HTTP/1.1 404 Not Found
      headers:
        "date": "Wed, 10 Feb 2021 22:56:42 GMT"
        "content-type": "application/json"
        "x-signal-timestamp": "1612997802849"
        "connection": "keep-alive"
        "content-length": "43"
    
[2021-02-10T22:56:42Z TRACE actix_codec::framed] attempting to decode a frame
[2021-02-10T22:56:42Z TRACE actix_http::h1::decoder] Length read: 43
[2021-02-10T22:56:42Z TRACE actix_codec::framed] frame decoded from buffer
[2021-02-10T22:56:42Z TRACE actix_codec::framed] attempting to decode a frame
[2021-02-10T22:56:42Z TRACE actix_codec::framed] frame decoded from buffer
[2021-02-10T22:56:42Z TRACE libsignal_service_actix::push_service] Unhandled response with body: Ok(b"{\"code\":404,\"message\":\"HTTP 404 Not Found\"}")
[2021-02-10T22:56:42Z ERROR harbour_whisperfish::worker::client] Error sending message: Unexpected response: HTTP 404
[2021-02-10T22:56:42Z DEBUG harbour_whisperfish::store] [refresh_session] Fetching session
[2021-02-10T22:56:42Z TRACE harbour_whisperfish::store] Called fetch_session_by_source(+62884427)
[2021-02-10T22:56:42Z DEBUG harbour_whisperfish::store] [refresh_session] 1053 +62884427
[2021-02-10T22:56:42Z TRACE harbour_whisperfish::store] Called update_session()
[2021-02-10T22:56:42Z DEBUG harbour_whisperfish::store] [refresh_session] Updated
[2021-02-10T22:56:42Z TRACE harbour_whisperfish::model::session] STUB: Mark sent called
[2021-02-10T22:56:43Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
[2021-02-10T22:56:43Z TRACE harbour_whisperfish::model::contact] Formatted phone number: PhoneNumber { code: Code { value: 62, source: Plus }, national: NationalNumber { value: CENSORED, zeros: 0 }, extension: None, carrier: None }
[2021-02-10T22:56:43Z WARN  harbour_whisperfish::model::contact] Phone number is invalid according to the `phonenumber` library. Proceed with caution
[2021-02-10T22:56:43Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
[2021-02-10T22:56:43Z TRACE harbour_whisperfish::model::contact] Formatted phone number: PhoneNumber { code: Code { value: 62, source: Plus }, national: NationalNumber { value: CENSORED, zeros: 0 }, extension: None, carrier: None }
[2021-02-10T22:56:43Z WARN  harbour_whisperfish::model::contact] Phone number is invalid according to the `phonenumber` library. Proceed with caution
[2021-02-10T22:56:43Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
[2021-02-10T22:56:43Z TRACE harbour_whisperfish::model::contact] Formatted phone number: PhoneNumber { code: Code { value: 43, source: Plus }, national: NationalNumber { value: CENSORED, zeros: 0 }, extension: None, carrier: None }
[2021-02-10T22:56:43Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
[2021-02-10T22:56:43Z TRACE harbour_whisperfish::model::contact] Formatted phone number: PhoneNumber { code: Code { value: 43, source: Plus }, national: NationalNumber { value: CENSORED, zeros: 0 }, extension: None, carrier: None }
[2021-02-10T22:56:43Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
[2021-02-10T22:56:43Z TRACE harbour_whisperfish::model::contact] Formatted phone number: PhoneNumber { code: Code { value: 43, source: Plus }, national: NationalNumber { value: YYYYYYYY, zeros: 0 }, extension: None, carrier: None }
[2021-02-10T22:56:43Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
[2021-02-10T22:56:43Z TRACE harbour_whisperfish::model::contact] Formatted phone number: PhoneNumber { code: Code { value: 43, source: Plus }, national: NationalNumber { value: YYYYYYYY, zeros: 0 }, extension: None, carrier: None }
...
CENSORED
...
[2021-02-10T22:56:43Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
[2021-02-10T22:56:43Z TRACE harbour_whisperfish::model::contact] Formatted phone number: PhoneNumber { code: Code { value: 43, source: Plus }, national: NationalNumber { value: CENSORED, zeros: 0 }, extension: None, carrier: None }
[D] onClicked:142 - Activating session: 3
[2021-02-10T22:56:46Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
[2021-02-10T22:56:46Z TRACE harbour_whisperfish::model::contact] Formatted phone number: PhoneNumber { code: Code { value: 43, source: Plus }, national: NationalNumber { value: CENSORED, zeros: 0 }, extension: None, carrier: None }
[2021-02-10T22:56:46Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
[2021-02-10T22:56:46Z TRACE harbour_whisperfish::model::contact] Formatted phone number: PhoneNumber { code: Code { value: 43, source: Plus }, national: NationalNumber { value: CENSORED, zeros: 0 }, extension: None, carrier: None }
[W] unknown:25 - file:///usr/share/harbour-whisperfish/qml/pages/Conversation.qml:25:25: Unable to assign [undefined] to QString
[2021-02-10T22:56:46Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
[2021-02-10T22:56:46Z TRACE harbour_whisperfish::model::contact] Formatted phone number: PhoneNumber { code: Code { value: 43, source: Plus }, national: NationalNumber { value: CENSORED, zeros: 0 }, extension: None, carrier: None }
[2021-02-10T22:56:46Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
[2021-02-10T22:56:46Z TRACE harbour_whisperfish::model::contact] Formatted phone number: PhoneNumber { code: Code { value: 43, source: Plus }, national: NationalNumber { value: CENSORED, zeros: 0 }, extension: None, carrier: None }
[2021-02-10T22:56:46Z TRACE harbour_whisperfish::model::message] Dispatched actor::FetchSession(3)
[2021-02-10T22:56:46Z TRACE harbour_whisperfish::store] Called fetch_session(3)
[2021-02-10T22:56:46Z TRACE harbour_whisperfish::model::message] handle_fetch_session(TEST)
[2021-02-10T22:56:46Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
[2021-02-10T22:56:46Z TRACE harbour_whisperfish::model::contact] Formatted phone number: PhoneNumber { code: Code { value: 43, source: Plus }, national: NationalNumber { value: CENSORED, zeros: 0 }, extension: None, carrier: None }
[2021-02-10T22:56:46Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
[2021-02-10T22:56:46Z TRACE harbour_whisperfish::model::contact] Formatted phone number: PhoneNumber { code: Code { value: 43, source: Plus }, national: NationalNumber { value: CENSORED, zeros: 0 }, extension: None, carrier: None }
[W] unknown:25 - file:///usr/share/harbour-whisperfish/qml/pages/Conversation.qml:25:25: Unable to assign [undefined] to QString
[2021-02-10T22:56:46Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
[2021-02-10T22:56:46Z TRACE harbour_whisperfish::model::contact] Formatted phone number: PhoneNumber { code: Code { value: 43, source: Plus }, national: NationalNumber { value: CENSORED, zeros: 0 }, extension: None, carrier: None }
[2021-02-10T22:56:46Z TRACE harbour_whisperfish::model::contact] Formatting phone number with country Some(AT)
[2021-02-10T22:56:46Z TRACE harbour_whisperfish::model::contact] Formatted phone number: PhoneNumber { code: Code { value: 43, source: Plus }, national: NationalNumber { value: CENSORED, zeros: 0 }, extension: None, carrier: None }
[W] unknown:25 - file:///usr/share/harbour-whisperfish/qml/pages/Conversation.qml:25:25: Unable to assign [undefined] to QString
[2021-02-10T22:56:46Z TRACE harbour_whisperfish::model::message] Dispatched actor::FetchAllMessages(3)
[2021-02-10T22:56:46Z TRACE harbour_whisperfish::store] Called fetch_all_messages(3)
[2021-02-10T22:56:46Z TRACE harbour_whisperfish::store] SELECT `message`.`id`, `message`.`session_id`, `message`.`source`, `message`.`message`, `message`.`timestamp`, `message`.`sent`, `message`.`received`, `message`.`flags`, `message`.`attachment`, `message`.`mime_type`, `message`.`has_attachment`, `message`.`outgoing`, CASE WHEN sentq.message_id > 0 THEN 1 ELSE 0 END AS queued FROM (`message` LEFT OUTER JOIN `sentq` ON `sentq`.`message_id` = `message`.`id`) WHERE `message`.`session_id` = ? ORDER BY `message`.`id` DESC -- binds: [3]
[2021-02-10T22:56:46Z TRACE harbour_whisperfish::model::message] handle_fetch_all_messages(3) count 35
[2021-02-10T22:56:47Z TRACE libsignal_service_actix::websocket] Triggering keep-alive
[2021-02-10T22:56:47Z TRACE libsignal_service::messagepipe] Sending request WebSocketRequestMessage { verb: Some("GET"), path: Some("/v1/keepalive"), body: None, headers: [], id: Some(1612997807332) }
[2021-02-10T22:56:47Z TRACE actix_codec::framed] flushing framed transport
[2021-02-10T22:56:47Z TRACE actix_codec::framed] writing; remaining=37
[2021-02-10T22:56:47Z TRACE actix_codec::framed] framed transport flushed
[2021-02-10T22:56:47Z TRACE libsignal_service::messagepipe] request on route.
[2021-02-10T22:56:47Z TRACE actix_codec::framed] attempting to decode a frame
[2021-02-10T22:56:47Z TRACE actix_codec::framed] frame decoded from buffer
[2021-02-10T22:56:47Z TRACE actix_codec::framed] attempting to decode a frame
[2021-02-10T22:56:47Z TRACE libsignal_service::messagepipe] Decoded WebSocketMessage { r#type: Some(Response), request: None, response: Some(WebSocketResponseMessage { id: Some(1612997807332), status: Some(200), message: Some("OK"), headers: ["Content-Length:0"], body: None }) }
[2021-02-10T22:56:52Z ERROR harbour_whisperfish::sfos::tokio_qt] unregisterTimers
[2021-02-10T22:56:52Z INFO  harbour_whisperfish] Shut down.
[2021-02-10T22:56:52Z TRACE mio::poll] deregistering handle with poller
[2021-02-10T22:56:52Z TRACE mio::poll] deregistering handle with poller


The contact names not showing up (correctly) is a known issue and the cause is a change in Sailfish OS 4.0. It will be fixed in a later release of Whisperfish.

(I have a dirty workaround bubbling in the back of my head, but more research is needed…)

3 Likes

You tried too often to send a message to this new person, the actual error is hidden behind “413 rate limit exceeded” :crazy_face:

What is happening here is we’re bouncing on a new version of Signal’s registration procedure (which is not yet enforced on us): Signal now only allows to download pre-keys via the UUID path.

I made a “known issues” section on the Wiki because both of these issues will continue to show up everywhere now.

The good news is: everything boils down to implementing the UUID stuff. GroupV2, Sealed Sessions, new contacts, … The bad news is this is quite a bit of work :slight_smile:

5 Likes

I was using Whisperfish todat and I noticed that Read Receipts isn’t implemented yet. I didn’t find it in issues, either. It would be nice to have, but also completely “non-critical” feature - and optional, too. Just thought I’d mention it here anyway :slight_smile:

I thougt that it is shown at the overview page.

Noted

It’s shown both there and on the conversation page, but it’s only halfly implemented at this point.