Mercurial > prosody-modules
annotate mod_unsubscriber/mod_unsubscriber.lua @ 5519:83ebfc367169
mod_http_oauth2: Return Authentication Time per OpenID Core Section 2
Mandatory To Implement, either MUST include or OPTIONAL depending on
things we don't look at, so might as well include it all the time.
Since we do not persist authentication state with cookies or such, the
authentication time will always be some point between the user being
sent to the authorization endpoint and the time they are sent back to
the client application.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Mon, 05 Jun 2023 22:32:44 +0200 |
parents | e00dc913d965 |
children |
rev | line source |
---|---|
5168
e00dc913d965
mod_unsubscriber: Revoke roster subscriptions of unreachable hosts
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
1 assert(module:get_host_type() == "component", "This module should be loaded as a Component"); |
e00dc913d965
mod_unsubscriber: Revoke roster subscriptions of unreachable hosts
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
2 |
e00dc913d965
mod_unsubscriber: Revoke roster subscriptions of unreachable hosts
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
3 local st = require "util.stanza"; |
e00dc913d965
mod_unsubscriber: Revoke roster subscriptions of unreachable hosts
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
4 |
e00dc913d965
mod_unsubscriber: Revoke roster subscriptions of unreachable hosts
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
5 module:hook("presence/bare", function(event) |
e00dc913d965
mod_unsubscriber: Revoke roster subscriptions of unreachable hosts
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
6 local origin, stanza = event.origin, event.stanza; |
e00dc913d965
mod_unsubscriber: Revoke roster subscriptions of unreachable hosts
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
7 if stanza.attr.type == "probe" then |
e00dc913d965
mod_unsubscriber: Revoke roster subscriptions of unreachable hosts
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
8 -- they are subscribed and want our current presence |
e00dc913d965
mod_unsubscriber: Revoke roster subscriptions of unreachable hosts
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
9 -- tell them we denied their subscription |
e00dc913d965
mod_unsubscriber: Revoke roster subscriptions of unreachable hosts
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
10 local reply = st.reply(stanza) |
e00dc913d965
mod_unsubscriber: Revoke roster subscriptions of unreachable hosts
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
11 reply.attr.type = "unsubcribed"; |
e00dc913d965
mod_unsubscriber: Revoke roster subscriptions of unreachable hosts
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
12 origin.send(reply); |
e00dc913d965
mod_unsubscriber: Revoke roster subscriptions of unreachable hosts
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
13 return true; |
e00dc913d965
mod_unsubscriber: Revoke roster subscriptions of unreachable hosts
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
14 elseif stanza.attr.type == nil then |
e00dc913d965
mod_unsubscriber: Revoke roster subscriptions of unreachable hosts
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
15 -- they think we are subscribed and sent their current presence |
e00dc913d965
mod_unsubscriber: Revoke roster subscriptions of unreachable hosts
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
16 -- tell them we unsubscribe |
e00dc913d965
mod_unsubscriber: Revoke roster subscriptions of unreachable hosts
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
17 local reply = st.reply(stanza) |
e00dc913d965
mod_unsubscriber: Revoke roster subscriptions of unreachable hosts
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
18 reply.attr.type = "unsubcribe"; |
e00dc913d965
mod_unsubscriber: Revoke roster subscriptions of unreachable hosts
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
19 origin.send(reply); |
e00dc913d965
mod_unsubscriber: Revoke roster subscriptions of unreachable hosts
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
20 return true; |
e00dc913d965
mod_unsubscriber: Revoke roster subscriptions of unreachable hosts
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
21 end |
e00dc913d965
mod_unsubscriber: Revoke roster subscriptions of unreachable hosts
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
22 -- fall trough to default error |
e00dc913d965
mod_unsubscriber: Revoke roster subscriptions of unreachable hosts
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
23 end); |