Easy guide for chatting with XMPP

XMPP is an open instant messaging protocol based on XML. XMPP architecture is similar to emails; Anyone can make their XMPP server and do not identify central servers. In general, using XMPP is a little less comfortable and immediate than the typical experience of a commercial app, but this is due to the fact that it is an open protocol and not a service provided by a company.

What do you need:

1. An email box on the autistic server
2. An XMPP client
3. Sign In on the client
4. Add a contact
5. Activing OMEMO cryptography  (optional)

1. Create an email Autistici (if you have already jump it!)
On autistici.org servers (they are comrades!) the XMPP architecture is installed and if you create an email on their server you can start using XMPP. The emails created with the “autistici/inventati” services are anonymous, through them it is not possible to get to your identity. I therefore recommend that you do not use your true names and surnames for the email.
The procedure for requesting a new email is very simple:
1) Go to https://services.authensum.org/new-request/stage1
2) “E -mail – Single Mailbox” should already be selected, then click “Continue”
3) Choose the email, then “continuous”
4) Now a form will open where you can write why you want an autistici email. I recommend writing something sensible, it is truly read by people and considered what you write.
5) Once this is done, you will be returned a link (to be saved, if you lose it you have to get rinted from the beginning) where in a few days you will be communicated the activation of your email. Then save yourself this link somewhere and go back to us the next day or the next one.

2. Install an XMPP client
There are a myriad of software to use XMPP.
For Android I recommend “Conversations”, to install it for free you must download it not from the play store, but you can download and install the apk that you find here (https://f-droid.org/packages/eu.siacs .conversations/), or from F-Droid.

For Windows, Mac or Linux I recommend Gajim (https://gajim.org/)
For iOs  Monal o Beagel (also on Mac)
For Browser Conversejs https://conversejs.org/fullscreen.html
Other clients: Dino for Linux, Cheogram for Android, etc. .. Then maybe you can also find better!


3. Login
If you are using an autistic email, to authenticate you on your XMPP client, the username is your email and the password is the password.

4. Now you can chat with someone
To chat with another person, just let his email pass with which Xmpp uses, and add the contact.

5.
Omemo encryption | Now you can chat with someone using encryption
XMPP supports Omemo encryption. This means that if you activate the omemo encryption the messages will be encrypted, only you and the recipient will be able to read them, even those who have access to the server from where the messages pass (in this case autistici) will not be able to read them. Put simply: better if when this feature is activated! On Conversations, just click on the padlock at the top on a chat screen with someone. On Gajim (PC) it seems to me that you have to install the extension (from the menu at the top: Gajim-> Extensions, select Omemo, click on the square at the bottom to download it and install it)

6. Good chat!

Below other useful information ….

 

Set the ephemeral messages on your clients:

Ephemeral messages are messages that disappear over a certain time.

GAJIM: Click up on the Account menu -> Edit the accounts .. then select the account for which you want to activate ephemeral messages, select Privacy and here click on “Store” Conversations Chronology “then the duration of ephemeral messages.
Conversations: Click on the three points at the top right, then settings, then click on “Security”, then the last item at the bottom “Automatic deletion of messages”.

The ephemeral messages on the clients I have tried cannot be set differently for each individual chat (such as Whatsup, Telegram or Signal), but they can be set for every clients in a global way (same timing for all chats), yes we know, this can be uncomfortable.

Attention the management of ephemeral messages is managed totally differently compared to Signal/WhatsApp/Telegram. The disappearance of the messages is managed locally by its clients. This means for example that you have set up messages with disappear option to a day on your Android client, while on your Windows client you left the ephemeral messages deactivated … it will still appear all the complete chronology on your Windows client, while on yours Android client only messages related to the last day.
So, what do I recommend? If you want to have ephemeral messages you must manually set all your clients with active ephemeral messages (perhaps with the same temporality).
A note: if the person with I’m chatting has not set the ephemeral messages option, all the messages will remain on his client even if you have set all your clients in ephemeral messages! This is an important difference compared to the most famous software (Signal/Whatsup/Telegram), which must be kept in mind!


Delete all the chats chronology on your clients:

Gajim: Click on the menu at the top of Gajim -> preferences, then in the window on “Advanced”, then “Delete conversations chronology” Conversations: it doesn’t seem possible to us, in case you may be convenient to uninstall the app. For the individual chat it is very simple, just enter a chat, click on the 3 dots at the top right, then “empty the chronology”.

 

More common problems: can’t you see a private group they invited you?
This is sometimes solved by making the group send the invitation to the group while you are online. But be careful that seeing the invitation to the group in some clients is not one of the most intuitive things. On Gajim from Windows, a number appears on the symbol of your account on the bottom left, click on it and then you can accept the invitation. On Gajim from Linux a pop-up window should appear.

 


More common problems: can’t you write in a private group they invited you? You see users messages, but when you write and send the message it will return a window like this on the right.

errore nello scrivere in un gruppo privato xmpp

Let’s assume that private chats with OMEMO hardly work well with many participants who do not know each other.
The problem is that you can read messages and even write but if you send the message you are directed to a window where the key reception is disabled (see image on the right of Conversations).
As long as the users listed on the screen are not online so that they can exchange keys, you cannot send encrypted messages.
What the user can do is to write unencrypted (disabling OMEMO). For example, on Conversations just click the lock in the top right and select “clear”.
If you still want to write with the omemo encryption in a private group (not anonymous, therefore, with visible Jid) it is better that participants are contacts saved in the mutual address book and sign up for attendance. To do this, you have to go into the details of a contact and select “Send presence updates”, “Receive presence updates” (at least on Conversations/Cheogram calls them that). These “presence” options also contain OMEMO keys. This facilitates the correct exchange of keys (especially if some participants have multiple devices/clients and some of them are rarely online), but it is not mandatory, it could even be enough that they are online at the moment when the other one tries to write, so as to receive and exchange the key.

Another alternative strategy to being in each other’s addres books is to send a message without omemo at the beginning of the conversation, and then activate OMEMO later. If you want to use OMEMO encryption in the private group, it is recommended after the first messages to activate OMEMO encryption because if a participant is not contact of others and never writes encrypted, does not give others the possibility to understand which keys they use.

 

Most common issues: opening a chat from my new client, the messages are obscured

It’s normal, this happens because no one has ever been able to encrypt that particular device, which was still unknown.

Other more advanced XMPP knowledge:
XMPP (formerly “jabber”) is an XML-based messaging protocol -> XMPP: https://en.wikipedia.org/wiki/XMPP,
The XEP are the XMPP extensions/plugins. Each server decides which XEP to use -> XEP: https://xmpp.org/extensions

OMEMO is the most used encryption on XMPP but there are other protocols of encryption of XMPP such as PGP and OpenPGP -> OMEMO: https://conversations.im/omemo

For work you need one server and at least two clients

– the server part needs to be hosted and maintained on a VPS or physical server -> for example the server (service) offered by https://www.autistici.org
Clients are APP/programs that allow a user to connect to the XMPP network

XMPP is based on a federated structure. In short, there are many XMPP servers (like on Mastodon, emails etc.).
As well as a mail service, you have to have an account on a server that offers the XMPP service . There are many programs (clients) for XMPP because it is open source, anyone can create a program for xmpp.

So, everyone has to find their own server and client or create new ones.

 

Advanced notes: your clients may not be synchronized.
If you use the Autistici server, the various apps (clients) that you use are not synchronized with each other.
You might receive a message on your mobile app, but then if you go to the software you use on your computer you will not find the message. This is due to the fact that on the server of Autistici (other servers work differently such as disroot) messages are saved until the recipient reads them, after they are deleted.

Advanced notes: XMPP is decentralized
To text with a person there is not only the autistici.org server, but there are also many other servers that once registered can provide you with an account (Jid). Here is a list of alternatives: https://providers.xmpp.net/ . If you are going to install Conversations, when you launch it for the first time and need to log in you also have the option to create a free jid from them.

Advanced notes: User contact = Jid

A user’s contact look like an email address, and is called “JID” (Jabber ID). Your JID is your identifier on the XMPP network. It’s like your email, but used for chat.
In xmpp two people can exchange messages without being contacts, that is included in the list of xmpp IDs known to their account (the so-called `roster`).
Inclusion in the contact list is always subject to approval of the candidate for inclusion, who may or may not agree to it. This also gives to the new contact the ability to see their online status (presence), and vice versa. Among the “presence” data to which you give access are also the OMEMO keys of your devices.

This kind of flexibility and confidentiality is generally unknown to other messaging systems, especially those that use the phone number as id and search in the telephone directory assigning anyone they find the status of contact.


Advanced notes: OMEMO encryption
XMPP supports OMEMO encryption. This means that if you activate the OMEMO encryption and the person with whom you are talking supports it, the messages will be encrypted, only you and the recipient will be able to read them, even those who have access to the server where the messages pass (in this case Austici.org) will not be able to read them. In simple words: better if you activate this feature when chatting!

To read each other with OMEMO encryption two users need to exchange keys or called “Fingerprints”.

A user has an Omemo key or fingerprint for each client he uses.

 

Advanced Notes: Private and Public Groups (MUC)
Groups in XMPP are called muc (multi-user-chat).
The private groups that are created are not anonymous because they show user addresses (Jid), so each participant can see the addresses of all other/patecipant* users.
Semi-anonymous groups (or completely anonymous, but there is no possibility to moderate) are public groups where only the admins know the jid of others.
This preserves your privacy.
Since you do not know the jid of participants, you can’t share keys/presence, so it is not activable omemo encryption.
When you create a Public Channel, you can set it in different ways, the owner of the channel can assign various roles to those who subscribe to the channel and can also decide that the only one allowed to write is himself (as on Telegram channels).

Paths designed by MAG for groups

I try to put together the materials: notes, words, definitions, schemes and drawnings by the worshop that i did in the last 3 years with MAG6 – Mutua AutoGestione da Reggio Emilia.

Which I followed, the pathes to help an organization to became stable and horizontal, are:

  1. Business plan – piano di impresa DOWNLOAD ALL THE DOC
  2. Communication training for group in trouble – comunicazione per gruppi in difficoltà DOWNLOAD ALL THE DOC
  3. formal consensus method – metodo del consenso formale DOWNLOAD ALL THE DOC
  4. a simple budget – il bilancino DOWNLOAD ALL THE DOC
  5. advance economic budget – il bilancio preventivo DOWNLOAD ALL THE DOC

1. Business plan – piano di impresa

Summary


Partiamo dai principi:


Who we are?


Strategie


Download the survey: business plan 2020 -ita


SWOT ANALISYS


2. Communication training for group in trouble – comunicazione per gruppi in difficoltà

4 incontri – 4 meetings

Focus on maximum common multiple than minimum comum divisor

to start

an explanation of the 6 hats for thinking:

– turn around expressing how you feel today about the 6 hats for thinking
– basic agreements to contribute:
– time, who measures slots by topic, 20 min blocks
– group well-being, hypothesis 3 breaks
– who takes interventions


About Consensus Method

You are asking us for help with a system that you are not using, we present one of several methods of applying the Consensus Method. One, in a spectrum of possibilities, is the one we have chosen as MAG. Let’s enter this world of the consensus decision method together. We enter a mysterious world, because everyone thinks differently.


A training together: futurospection, The concrete dream

You are not a new group, you are a struggling group, Let’s pick up the initial wish part and nurture it.

Initial dream assignment:

The group in 10 years, but very concretely, where are you, with whom, what are you doing. Write a letter to a loved one telling them about it. BEFORE THE NEXT MEETING

Importance of Imagination, to give birth to action. Without “”seeing”” it, you can’t do it.

Imagining is not easy, take your time, in optimal psycho-physical condition, not tired, nor hungry or cold, influence yourself positively and take care of yourself to do this action of imagination.”


4 positions

Dissent: important to understand when you’re there, because it’s useless to work on content, you have to work on trust. rather propose to move into the…

Technical agreement: agreement written as a law between people who don’t know each other, protect themselves, repeated technical agreements conducted successfully allow to raise trust and possibility to get to…

Unanimity: everyone agrees, it is the party of agreeing, difficult to raise doubts, risky position.

Consensus: different views on content, multiplicative mode, challenges both content and relationships, Understanding other points of view and valuing diversity. Learning how to best express oneself. It is not easy and involves effort. All a balance between “”asking for account””/””giving account””. Not hiding problems. It goes from “”I try to make my opinion win”” to “”we are here to find a shared solution””.


Tips

Example: no, don’t try to apply it in the condominium meeting.

 

Modularity: you can introduce in other group management methods, little by little some practices of the consensus method.

Non-monopoly: it is possible to have agreements to stop it in certain situations and resume it.


Preliminaries

1) Real willingness to share power (and its attributes: decisions, responsibility, damages, money, fame…). And this is where 9 out of 10 groups fall down.

2) Awareness of method, no just listen and be positive and/or inclusive, that’s only half the battle.

3) Have a common planning/goal, that’s why make a business plan.

4) Plan for the day, plan together on a daily basis.

5) The group collectively take charge of the method, and then to have facilitation (not on content) but of relationships/methods.


Common Agreements


Roles


Facilitations


Bibliografia


Secondo incontro – second round

Working together on the common points of the futurospective: dream together

Write the Common agreement of the group


Accept the feedbacks


Observation or evaluation?


Assertive communication


terzo incontro – third meeting

 

How is running with the assembly?  specific discussion in the group


quarto incontro – fourth meeting

Evaluation of the path, feedback and future prospectives


4. A simple economic plan

Download it


5. Advance economic plan

The following topics are explored and explained:
– differences between cash basis and accrual basis
– differences between cost and output and between revenue and income
– what is an investment, what is an amortization
– What are company assets, assets and liabilities?
– What is a balance sheet: income statement and balance sheet, budget and balance sheet, balance sheet in opposing sections, and scalar budgeting (explored in Section 3).

Section 3:
– What the scalar balance sheet is and why it is useful. The scalar budget will be the type of budget used in the TSP pathway , let’s delve into this work tool that we will use in future meetings. The file “WORK 1-1.pdf” presents an example of this type of budget.
– VAT.
– The economic balance.
– The financial balance.
– The balance sheet.
– The tools of economic analysis: income statement, break-even point, cost accounting.