This guide explains how to use the Signal bridge from the EMS Integration Manager to integrate your Signal chats with your EMS server.
It requires your EMS server to have federation on.
The following instructions are done with the Element Desktop on the Element side and on Element iOS for the Signal side. Element Android should be almost identical to Element Web.
Purchase the Signal integration
Open the EMS control panel at: https://ems.element.io/user/hosting
Integrationstab and if you have more than one server, select the server you wish to add the Signal integration to
Signal Bridgein the list of available Bridges
Enter the maximum number of users in
Maximum Signal users.
Please note: this is the maximum number of Signal users who actually send messages over the bridge each month. You are only billed for the number of Signal users who are active. Once you exceed the maximum, then the bridge will be disabled until you increase the maximum.
If you enter less than
5, you will get a warning
If you enter
5or greater in
Maximum Signal users, you will not see a warning
Once you have entered
Maximum Signal users, click
Purchase(remember you can always go back to this step and increase the maximum number of Signal users if you need more in the future).
A dialogue will remind you of the price per user and ask if you wish to proceed. Click
Purchaseif you wish to proceed with the Signal Integration
You will have to wait a few minutes while your host is reprovisioned with the Signal bridge. Once reprovisioning is finished, you are able to bridge Signal to your EMS server using your Element client.
Bridge Signal to your Element account
Once the bridge is running, open your Element app. Click on the
Create a Direct Message conversation by typing
@signalbot:example.ems.host(replace the domain with the one of your homeserver). Then click
The bridge account will join your room and tell you how to use it
Open Signal on your mobile device (iOS or Android) and tap on your avatar to go to
Linked Devicesand then
Link New Deviceto start the Signal QR code scanner. You will use this QR code scanner to scan a QR code displayed by your Element client in the next step
From your Element client, send a
linkmessage to the bot to connect to your Signal account
A QR code will be displayed. Quickly scan the QR code with Signal on your mobile device. You have about a minute before it times out. If it times out, just send the
linkmessage again to generate another QR code
On your Element client, you will see
Successfully logged in as <your_phone_number>e.g.
Successfully logged in as +1 555-555-5555and you will see invitations for each of your Signal chats in your Element client. Each Signal chat is a separate Matrix room. Join one or more chats and start chatting from either your Element app on desktop, iOS or Android or your Signal on mobile.
Sending a message to a Signal User
To send a message to a Signal user, you must first be connected to the bridge (see above).
- On your Element client, open the "Signal bridge bot" room.
pmfollowed by the phone number for your contact.
- You will be invited to a DM with that user, and can send messages to them.
Why do Signal user names show up as phone numbers?
Some signal users may appear as a phone number rather than their real name. This can because of one of the following reasons:
- The user has not spoken to you on Signal yet, and so has not sent their profile information.
- The user has not added you as a contact on their phone.
- The Signal bridge has not yet synchronized the profile information of the user from Signal (this should happen fairly soon after your first interaction).
EMS does not support the bridge as a primary device and the
register command is not supported
The EMS Signal Bridge is implemented as a secondary device bridge in order to prevent Signal from ratelimiting the bridge. This means that
register command is not supported and you still need Signal installed on your iOS or Android device.