The Discourse Login Bot - login to this forum with just a QR code!

The Discourse Login Bot - login to this forum with just a QR code!

At our Delta Chat hackathon in November, we developed a neat authentication tool. It enables you to easily login to this forum or create an account by just scanning a QR code with your Delta Chat app. This works with other discourse forums as well.

What is it good for?

Imagine you need help with Delta Chat, found a bug, or want to propose a feature. You go to this forum, and want to open a topic to discuss it with the others from the community. But first you need to create an account, make up a password, wait for a verification mail - it’s just too much of an effort.

If you have a GitHub account, like many Open Source developers do, you can click on “Login with GitHub”. It’s the same as “Login with Facebook, Twitter, etc.” on other platforms, which we don’t offer for privacy reasons. But now you can also choose “Login with Delta Chat”.

How can you use it?

An account creation form - on the right, it says "With Delta Chat".

On support.delta.chat, click on “Sign Up” to create an account.

Then you get redirected to login.testrun.org, our authentication server. It shows you a QR code. Scan it with your Delta Chat Android/iOS app:

Scan the QR code with your Delta Chat Android/iOS app to authenticate yourself.

Now you get prompted on your phone, whether you want to join a group - that’s normal for now. You can just tap on “OK”. In the background, it exchanges some mails to verify you - a bit like a verification link in an E-Mail, but fully automated. Afterwards you have two more chats in your chat list - you can leave them, ignore them, for now it’s only necessary that they are created.

The steps it takes on Android - in our current prototype, this is not yet optimized.

It takes a few seconds, then you get redirected to the forum, where you can choose a username. It suggests the username you use for Delta Chat, but if you want to pick a different one, go for it:

It takes only one click to create your account, the username is the same as in Delta Chat.

That’s it! Now you can use the forum as you want. Ask questions, help others, discuss feature requests.

What’s the innovation behind this?

Most of this is not very new. OAuth2 is an established standard and has been around for a while. “Login with Delta Chat” uses it just as well as “Login with GitHub”.

The main innovation is the QR code - you can use your phone to login quickly, on other computers as well. This gives a whole different feeling to logging in; just scan a QR code and you’re done. No passwords necessary.

With this authentication method, the E-Mail address of the contact is available directly, which is used by almost every internet service for identification. The biggest difference between Delta Chat and other messengers has always been that we can use the advantages of the E-Mail network.

For now we only set it up with our Discourse Forum - setting it up for other Discourse instances is easy though. (If you want to set it up for your forum, take a look at the installation docs). In theory, it could be used for any web service - ownCloud, Mastodon, or other decentralized services are well suited for this.

But the most important advantage is in terms of privacy. You don’t have to tell Facebook or GitHub (Microsoft) that you are using our Forum. You don’t have to give any application access to your Facebook or GitHub account. This is just between your E-Mail account and us.

Try it out: sign up for this forum or connect to OAuth2 in your account preferences!

8 Likes

Can I use the notification feature described in GitHub - deltachat-bot/discourse-login-bot: This Delta Chat bot allows people to authenticate at a Discourse instance using their Delta Chat app. on this instance?

This was written when Delta Chat did not support mailing lists and ignored notifications sent by discourse. Maybe you can simply enable classic emails in your DC and receive messages this way? You will not be able to reply though.

Does not work. Endless loading. It’s a pity.
The dream messenger should include the ability to extend functionality with python scripts. For lamers: “add a script” and just a code file, for advanced ones, instructions on how to write this file. Access to messages, filtering, requests for information on the network ----- this is a dream

You mean the login functionality? It also took me really long the first time because of greylisting.

I waited a long time, and tired)

I just tested with my mailo account, it takes really long time (several minutes) but succeeds eventually.

mailo? Please discard the connection settings, I can enter my account, but I can not send a letter…

@brabo I managed to login with deltachat in a private firefox window, so I can confirm it’s a NoScript issue. But now it created a new account, merging welcome :slight_smile:

No sure if useful to comment: Either my person does not understand anything here, or it does not work as thought, the login via dc. Just getting a chat with a later mail that the chat is now already useless.

Login than as usual… (email, PW, sending link…)

Maybe it’s just thought for new account creation. But even there, what’s the different to common verification mail.