Software /
code /
verse
File
plugins/browsing.lua @ 501:419c248919e8
util.dataforms: Remove local copy
The main difference was the from_stanza() function, which was used in
by 'clix adhoc', so moving it there seems sensible. Maybe reconsider
upstreaming it to Prosody, but it's not used anywhere there.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Fri, 23 Jun 2023 12:38:58 +0200 |
parent | 466:1eaec52ff71a |
line wrap: on
line source
local verse = require "verse"; local xmlns_browsing = "urn:xmpp:browsing:0"; function verse.plugins.browsing(stream) stream:add_plugin("pep"); function stream:browsing(infos, callback) if type(infos) == "string" then infos = {uri = infos}; end local link = verse.stanza("page", {xmlns = xmlns_browsing}) for info, value in pairs(infos) do link:tag(info):text(value):up(); end return stream:publish_pep(link, callback); end stream:hook_pep(xmlns_browsing, function(event) local item = event.item; return stream:event("browsing", { from = event.from; description = item:get_child_text "description"; keywords = item:get_child_text "keywords"; title = item:get_child_text "title"; uri = item:get_child_text "uri"; }); end); end