After an upgrade to 2.1.2, the android client can receive messages from gajim. However any message sent from conversations results in 'Delivery failed'.
Please post the output of adb logcat. The log should begin with the start of Conversations and include all the
steps it takes to reproduce the problem.
````
adb logcat -s conversations
# logcat -s conversations
--------- beginning of system
--------- beginning of main
04-20 23:28:03.424 7135 7135 D conversations: app switched into background
04-20 23:28:04.514 7135 7135 D conversations: app switched into foreground
04-20 23:28:11.264 7135 7135 D conversations: [email protected] sending csi//active
04-20 23:28:11.264 7135 7135 D conversations: attempting to write stanza to finished TagWriter
04-20 23:28:11.284 7135 7135 D conversations: stopped foreground service
04-20 23:28:11.284 7135 3200 D conversations: [email protected]: sending offline presence
04-20 23:28:11.284 7135 3200 D conversations: attempting to write stanza to finished TagWriter
04-20 23:28:11.284 7135 3200 D conversations: [email protected]: disconnecting force=false
04-20 23:28:12.284 7135 3200 D conversations: [email protected]: closing stream
04-20 23:28:12.284 7135 3200 D conversations: [email protected]: io exception during disconnect (Socket is closed)
04-20 23:28:12.314 7135 3201 D conversations: [email protected]: connecting
04-20 23:28:12.454 7135 3201 D conversations: Resolver: [Result{ip='192.168.1.7', hostame='chat.mydomain.com', port=5222, directTls=false, authenticated=false, priority=5}]
04-20 23:28:12.464 7135 3201 D conversations: [email protected]: using values from dns chat.mydomain.com/192.168.1.7:5222 tls: false
04-20 23:28:12.674 7135 3201 D conversations: [email protected]: TLS connection established
04-20 23:28:12.674 7135 3201 D conversations: [email protected]/Conversations.aAQa: Authenticating with SCRAM-SHA-1
04-20 23:28:12.684 7135 3201 D conversations: [email protected]: logged in
04-20 23:28:12.704 7135 3201 D conversations: [email protected]: not counting stanza(IqPacket). Not in smacks session.
04-20 23:28:12.714 7135 3201 D conversations: [email protected]: starting service discovery
04-20 23:28:12.724 7135 3201 D conversations: [email protected]: server caps came from cache
04-20 23:28:12.724 7135 3201 D conversations: [email protected]: stream management(3) enabled (resumable)
04-20 23:28:12.734 7135 3201 D conversations: [email protected]: Requesting block list
04-20 23:28:12.734 7135 3201 D conversations: [email protected]: has pep but is not persistent
04-20 23:28:12.764 7135 3201 D conversations: [email protected]: successfully enabled carbons
04-20 23:28:12.764 7135 3201 D conversations: Received blocklist update from server
04-20 23:28:12.884 7135 3201 D conversations: AxolotlService ([email protected]): Bundle 2104764135 in PEP was current
04-20 23:28:12.884 7135 3201 D conversations: AxolotlService ([email protected]): Announcing device 2104764135
04-20 23:28:12.894 7135 3201 D conversations: [email protected]: online with resource Conversations.aAQa
04-20 23:28:12.894 7135 3201 D conversations: [email protected]: fetching roster version 26
04-20 23:28:12.894 7135 3201 D conversations: [email protected]: has push support
04-20 23:28:12.894 7135 3201 D conversations: [email protected]: running mam query with=*, end=2018-04-21T04:28:12.736Z, order=NORMAL, after=ur2gYvcw9Z8yNArJ, catchup=true
04-20 23:28:12.894 7135 3201 D conversations: [email protected] sending csi//active
04-20 23:28:12.944 7135 3201 D conversations: [email protected]: retrieved own device list: [2104764135, 1909357886]
04-20 23:28:12.954 7135 3201 D conversations: AxolotlService ([email protected]): Received PEP device list [2104764135, 1909357886] update from [email protected], processing...
04-20 23:28:12.954 7135 3201 D conversations: [email protected]: ignoring duplicate own device id list
04-20 23:28:12.964 7135 3201 D conversations: AxolotlService ([email protected]): Received PEP device list [1238657531] update from [email protected], processing...
04-20 23:28:12.964 7135 3201 D conversations: reactivating device with fingerprint **longstrings of number**
04-20 23:28:12.974 7135 3201 D conversations: [email protected]: finished mam after 9(0) messages. messages left=true count=41
04-20 23:28:12.974 7135 3201 D conversations: [email protected]: found 0 pending receipt requests
04-20 23:28:16.254 7135 7135 D conversations: ConversationsOverviewFragment.onStart()
04-20 23:28:16.254 7135 7135 D conversations: ConversationsOverviewFragment.onResume()
04-20 23:28:19.924 7135 7135 D conversations: ConversationsOverviewFragment.onPause()
04-20 23:28:19.924 7135 7135 D conversations: ConversationFragment.onAttach()
04-20 23:28:19.944 7135 7135 D conversations: reInit(hasExtras=true)
04-20 23:28:19.944 7135 7135 D conversations: trimming conversation
04-20 23:28:19.964 7135 7135 D conversations: scrolledToBottomAndNoPending=true
04-20 23:28:19.964 7135 7135 D conversations: jump to first unread message
04-20 23:28:24.504 7135 7135 D conversations: AxolotlService ([email protected]): Finding devices without session for [email protected]
04-20 23:28:24.504 7135 7135 D conversations: AxolotlService ([email protected]): Cache miss: 58d607d2-da8e-480b-8c11-82572704071f
04-20 23:28:24.554 7135 21787 D conversations: AxolotlService ([email protected]): Generated message, caching: 58d607d2-da8e-480b-8c11-82572704071f
04-20 23:28:24.554 7135 21787 D conversations: AxolotlService ([email protected]): Cache hit: 58d607d2-da8e-480b-8c11-82572704071f
```````
Prosody modules:
-- Generally required
"roster"; -- Allow users to have a roster. Recommended ;)
"saslauth"; -- Authentication for clients and servers. Recommended if you want to log in.
"tls"; -- Add support for secure TLS on c2s/s2s connections
"dialback"; -- s2s dialback support
"disco"; -- Service discovery
-- Not essential, but recommended
"private"; -- Private XML storage (for room bookmarks, etc.)
"vcard"; -- Allow users to set vCards
-- These are commented by default as they have a performance impact
--"privacy"; -- Support privacy lists
--"compression"; -- Stream compression
-- Nice to have
"version"; -- Replies to server version requests
"uptime"; -- Report how long server has been running
"time"; -- Let others know the time here on this server
"ping"; -- Replies to XMPP pings with pongs
"pep"; -- Enables users to publish their mood, activity, playing music and more
"register"; -- Allow users to register on this server using a client and change passwords
-- Admin interfaces
"admin_adhoc"; -- Allows administration via an XMPP client that supports ad-hoc commands
--"admin_telnet"; -- Opens telnet console interface on localhost port 5582
-- HTTP modules
--"bosh"; -- Enable BOSH clients, aka "Jabber over HTTP"
--"http_files"; -- Serve static files from a directory over HTTP
-- Other specific functionality
"posix"; -- POSIX functionality, sends server to background, enables syslog, etc.
--"groups"; -- Shared roster support
--"announce"; -- Send announcement to all online users
--"welcome"; -- Welcome users who register accounts
--"watchregistrations"; -- Alert admins of registrations
--"motd"; -- Send a message to users when they log in
--"legacyauth"; -- Legacy authentication. Only used by some old clients and bots.
-- Enabled for conversations
"smacks";
"carbons";
"http"; -- upload files to server
"http_upload";
"cloud_notify";
"blocklist";
"csi";
"mam";
"muc_ban_ip";
"require_otr";
"csi_battery_saver";
```
Is 'require_otr' causing this to fail?
Can confirm this, from 2.1.1 conversations sending unencrypted messages even omemo enabled.
Rolled back to 2.0. So from 2.1.1 conversations unusable on security minded servers like calyxinstitute
@rajil So it did work on 2.1.1 ? On 2.1.0 ? On 2.0 ?
OTR was removed on 2.0.
@canary5 What device? Android version? Server? F-Droid or Google Play store? Logs? Does it do the same of other servers? (The Calyx server misses so many features, do test with one of the top ones with an all green row: https://conversations.im/compliance/ )
It has nothing to do with otr. Its a script blocking unencrypted traffic. It works perfect on 2.0beta3. I have updated to 2.1.1 and it causing problems. Seems same on 2.1.2.
All servers. On my own server with all features+otr_required script. If you click display error message, its otr_required message from that script that blocking. If i allow unencrypted traffic it works.
Seems when you introduced new setting feature about omemo on/off/default causing. Maybe first message unencrypted to test other side omemo?
My guess is that it trips over OMEMO fallback message (This is an OMEMO encrypted message). If you are using prosody I recommend you switch to mod_e2e_policy instead as this is able to properly handle PGP and OMEMO encrypted messages instead of just OTR.
Ok thank you for the hint
@licaon-kter I received an Android update for 2.1.2, not sure whether it was 1.23.8 before that or 2.x releases. Nevertheless after commenting out 'require_otr' it started to work. Also enabled 'e2e_policy' as suggested above. The documentation does not mention mod_e2e_policy at https://github.com/siacs/Conversations#xmpp-features
@rajil Your server, your config, your server software docs...
Most helpful comment
My guess is that it trips over OMEMO fallback message (This is an OMEMO encrypted message). If you are using prosody I recommend you switch to
mod_e2e_policyinstead as this is able to properly handle PGP and OMEMO encrypted messages instead of just OTR.