Messages encrypted by Gajim with the OMEMO plugin are ignored
I am running Gajim 0.16.7 with OMEMO Plugin 1.2.0 on Windows 10.
The XML console output below shows a message (just "Foo") sent to myself (jid has been replaced).
<!-- Out 11.04.2017 16:00:58 -->
<message xmlns="jabber:client" to="[...]/Gajim" type="chat" id="96be23d9-1d54-4650-a834-db8c2c372592">
<active xmlns="http://jabber.org/protocol/chatstates" />
<request xmlns="urn:xmpp:receipts" />
<thread>xGzUzFWXOjsBuKTLCnDLRiiWfavfyBSl</thread>
<encrypted xmlns="eu.siacs.conversations.axolotl">
<header sid="537974499">
<key rid="1871663839">MwohBShVOBov45wP3uyGm/0bWt9PmINAxAOVaGzu/lPCRQ9kEA4YASIw1ATkYnrgBRlxbqiRdtjriiukr1Dd+fcxyRW9YqXpOuXVUiTf+RDf5l1ifCnX+EcXnocp2DJReKY=</key>
<iv>lPp2PqsNdmSAlQVl/IlwNA==</iv>
</header>
<payload>q1+I</payload>
</encrypted>
<encryption xmlns="urn:xmpp:eme:0" namespace="eu.siacs.conversations.axolotl" name="OMEMO" />
<store xmlns="urn:xmpp:hints" />
</message>
<!-- In 11.04.2017 16:01:01 -->
<message id='6ac1433e-56ec-421f-91f4-615606154855' type='chat' to='[...]/Gajim' from='[...]/Gajim'>
<composing xmlns='http://jabber.org/protocol/chatstates'/>
<thread>xGzUzFWXOjsBuKTLCnDLRiiWfavfyBSl</thread>
</message>
<a h='112' xmlns='urn:xmpp:sm:2'/>
<message id='96be23d9-1d54-4650-a834-db8c2c372592' type='chat' to='[...]/Gajim' from='[...]/Gajim'>
<active xmlns='http://jabber.org/protocol/chatstates'/>
<request xmlns='urn:xmpp:receipts'/>
<thread>xGzUzFWXOjsBuKTLCnDLRiiWfavfyBSl</thread>
<encrypted xmlns='eu.siacs.conversations.axolotl'>
<header sid='537974499'>
<key rid='1871663839'>MwohBShVOBov45wP3uyGm/0bWt9PmINAxAOVaGzu/lPCRQ9kEA4YASIw1ATkYnrgBRlxbqiRdtjriiukr1Dd+fcxyRW9YqXpOuXVUiTf+RDf5l1ifCnX+EcXnocp2DJReKY=</key>
<iv>lPp2PqsNdmSAlQVl/IlwNA==</iv>
</header>
<payload>q1+I</payload>
</encrypted>
<encryption namespace='eu.siacs.conversations.axolotl' name='OMEMO' xmlns='urn:xmpp:eme:0'/>
<store xmlns='urn:xmpp:hints'/>
</message>
Although the message is reflected to the client, the message isn't shown in the chat window. Moreover, the red cross appears and indicates a lost message. If encryption is disabled (xml console output below), the client shows the expected behavior without the red cross and the message is shown.
<!-- Out 11.04.2017 16:01:07 -->
<message xmlns="jabber:client" to="[...]/Gajim" type="chat" id="625a1479-3e81-4b65-afbb-063ed0c6dcfc">
<body>Bar</body>
<active xmlns="http://jabber.org/protocol/chatstates" />
<request xmlns="urn:xmpp:receipts" />
<thread>xGzUzFWXOjsBuKTLCnDLRiiWfavfyBSl</thread>
</message>
<!-- In 11.04.2017 16:01:10 -->
<message id='533b797f-b403-4ff8-bd3b-3e3393c21262' type='chat' to='[...]/Gajim' from='[...]/Gajim'>
<composing xmlns='http://jabber.org/protocol/chatstates'/>
<thread>xGzUzFWXOjsBuKTLCnDLRiiWfavfyBSl</thread>
</message>
<message id='625a1479-3e81-4b65-afbb-063ed0c6dcfc' type='chat' to='[...]/Gajim' from='[...]/Gajim'>
<body>Bar</body>
<active xmlns='http://jabber.org/protocol/chatstates'/>
<request xmlns='urn:xmpp:receipts'/>
<thread>xGzUzFWXOjsBuKTLCnDLRiiWfavfyBSl</thread>
</message>
I have tested this behavior also with another account and Conversation as client. Message sent from that account are decoded and displayed in Gajim. Replies sent from Gajim are ignored by Conversations too.