Ejabberd Carbon Copy


(Mark Edworthy) #1

Hi, I know that I have been away for a while (I have been very busy over the last couple of months).

I have been using the ejabberd daemon as an instant messaging service for various users and have used this on my workstations and phone. Only problem I have found is that I can’t use the XEP-0280 standard (which allows for syncing / carbon copy of messages between multiple devices / client software)

This feature is essential for my day-to-day operations (as I am not always sitting at my desktop and need to be able to send / receive messages on both devices).

I have had a look at various forums and can’t seem to find very much information about this feature.

If ejabberd can’t support XEP-0280 standards, could somebody suggest an alternative XMPP service?

Also I am using Kopete as my desktop client and Conversations as my Android / Phone client, whilst the phone client can support OTR and PGP encryption, Kopete can only support OTR encryption methods. Could somebody suggest a Linux client that support PGP keys (preferably a KDE based client app).


Community Digest 6 - October 2015
(Artem Fedai) #2

Try to implement and test :slight_smile:


(Mark Edworthy) #3

Tried downloading and building from the above Git link and got a number of errors / missing files:

src/mod_message_carbon.erl:12: can’t find include file "ejabberd.hrl"
src/mod_message_carbon.erl:13: can’t find include file "jlib.hrl"
src/mod_message_carbon.erl:61: record iq undefined
src/mod_message_carbon.erl:62: record jid undefined
src/mod_message_carbon.erl:62: record jid undefined
src/mod_message_carbon.erl:62: record jid undefined
src/mod_message_carbon.erl:63: record iq undefined
src/mod_message_carbon.erl:64: record iq undefined
src/mod_message_carbon.erl:65: record jid undefined
src/mod_message_carbon.erl:65: record jid undefined
src/mod_message_carbon.erl:65: record jid undefined
src/mod_message_carbon.erl:66: record iq undefined
src/mod_message_carbon.erl:74: record jid undefined
src/mod_message_carbon.erl:92: record jid undefined
src/mod_message_carbon.erl:93: record jid undefined
src/mod_message_carbon.erl:95: record jid undefined
src/mod_message_carbon.erl:96: record jid undefined
src/mod_message_carbon.erl:96: record jid undefined
src/mod_message_carbon.erl:107: record jid undefined
src/mod_message_carbon.erl:107: record jid undefined
src/mod_message_carbon.erl:10: Warning: behaviour gen_mod undefined

The src directory only contains the file: mod_message_carbon.erl


(Artem Fedai) #4

You could copy from there :

   /usr/lib64/ejabberd/include/ejabberd.hrl
    /usr/lib64/ejabberd/include/jlib.hrl

(Mark Edworthy) #5

Copied those files to the src dir and run build.sh
Still getting the following error:
src/mod_message_carbon.erl:10: Warning: behaviour gen_mod undefined


(Artem Fedai) #6

in build sh change th location of /usr/lib64/ejabberd/ebin


(Mark Edworthy) #7

Ok, built successfully.

I am guessing that the ebin/mod_message_carbon.beam should be copied to /usr/lib64/ejabberd/ebin/

And then restart the ejabbrd daemon?


(Artem Fedai) #8

yes :slight_smile: and after it it should be configured in ejabberd config )


(Mark Edworthy) #9

Ok, thanks (can’t test it at the moment but will report back after I get my next message)


(Artem Fedai) #10

add {mod_message_carbon, []} to modules in /etc/ejabberd/ejabberd.cfg
and restart ejabberd for make shure that module doesnot crash the service :slight_smile:


(Mark Edworthy) #11

Inserted it into line 153 – between mod_admin_extra and mod_echo, [{host…


(Artem Fedai) #12

I’m on same line with you i have added it to config and restart server, no crashes sound module compiled successfully.
Have a test with jabber clients and write to this page:)


(Mark Edworthy) #13

Tried sending and receiving via the two IM clients, still not receiving a CC on the unused client app.


(Artem Fedai) #14

does this client support Carbon ?


(Artem Fedai) #15

make test acount for me on your server


(Mark Edworthy) #16

According the documents, Conversations does –
https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cad=rja&uact=8&ved=0CCkQFjABahUKEwiwtOKykJjIAhXH6CwKHU7PD-8&url=https%3A%2F%2Fplay.google.com%2Fstore%2Fapps%2Fdetails%3Fid%3Deu.siacs.conversations%26hl%3Den&usg=AFQjCNHE5Uvqn-B5gZLyLKIrov-bG4GIyw&sig2=tvLhdbG_pjS2tum3LUoiIQ

And I guessing that Kopete does (it should, as it is the primary / default IM app that is shipped with the KDE desktop UI)


(Mark Edworthy) #17

Ok, I have created a user test@medworthy.co.uk
Password: NethServer1!
Port: 5222

There is a self-signed SSL / CA cert, I am guessing that you may need access to?

My user is Mark (mark@medworthy.co.uk)


(Artem Fedai) #18

i have jabber Server 14.07
i make 2 test accounts :
log: ns@jabber.sumy.org pass : nethserver
log: ns1@jabber.sumy.org pass : nethserver


(Mark Edworthy) #19

I configured both of my clients with the ns1 user.


(Artem Fedai) #20

nas@jabber.sumy.org