You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Right now email is the only way to reach a user: it is used for verification, password resets and notifications. For self-hosted setups this is often the hardest part. You need a dedicated mail account or your own SMTP server, and then you run into blocked ports and spam filtering. On top of that, some users don't have an email address they actually use.
Proposal
Make email one case of a more general concept: a contact. A user can have several contacts of different types, each verified separately. Verification, password resets and notifications go to any verified contact.
Email stays the default type and works exactly as it does now. Existing installations, settings and the OIDC email / email_verified claims don't change, and new contact types are opt-in.
Example: Telegram
Many people now find it easier to be reached through a messenger, and setting up a Telegram bot is simpler than setting up email: you only provide TELEGRAM_BOT_TOKEN.
A bot can't message a user first by username, so linking goes through a t.me/<bot>?start=<token> link. The user presses Start and the bot links the chat to the account. This also proves the Telegram account belongs to the user. After that the bot can send codes and links.
Another possible type is a generic webhook. voidauth sends a signed request with the message, and an external handler (n8n, Apprise, etc.) takes care of delivery: Matrix, Discord, SMS or anything else.
Question
Would this idea fit the project? If so, I'm happy to implement it in small PRs, starting with an internal contacts abstraction that doesn't change current behavior.
P.s.
My suggestion stemmed from a problem I encountered. I wasn't keen on setting up an SMTP server or using a Google bot, for instance.
Unfortunately, I lack the necessary skills to meet the project's contribution guidelines.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Idea: user contacts instead of a single email
Right now email is the only way to reach a user: it is used for verification, password resets and notifications. For self-hosted setups this is often the hardest part. You need a dedicated mail account or your own SMTP server, and then you run into blocked ports and spam filtering. On top of that, some users don't have an email address they actually use.
Proposal
Make email one case of a more general concept: a contact. A user can have several contacts of different types, each verified separately. Verification, password resets and notifications go to any verified contact.
Email stays the default type and works exactly as it does now. Existing installations, settings and the OIDC
email/email_verifiedclaims don't change, and new contact types are opt-in.Example: Telegram
Many people now find it easier to be reached through a messenger, and setting up a Telegram bot is simpler than setting up email: you only provide
TELEGRAM_BOT_TOKEN.A bot can't message a user first by username, so linking goes through a
t.me/<bot>?start=<token>link. The user presses Start and the bot links the chat to the account. This also proves the Telegram account belongs to the user. After that the bot can send codes and links.Another possible type is a generic webhook. voidauth sends a signed request with the message, and an external handler (n8n, Apprise, etc.) takes care of delivery: Matrix, Discord, SMS or anything else.
Question
Would this idea fit the project? If so, I'm happy to implement it in small PRs, starting with an internal contacts abstraction that doesn't change current behavior.
P.s.
My suggestion stemmed from a problem I encountered. I wasn't keen on setting up an SMTP server or using a Google bot, for instance.
Unfortunately, I lack the necessary skills to meet the project's contribution guidelines.
All reactions