Software /
code /
verse
Changeset
403:6f4f60ebb796
Add plugin for XEP-0195: User Browsing
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sun, 15 May 2016 16:23:54 +0200 |
parents | 402:81b109281879 |
children | 404:7c6a610c3ff5 |
files | plugins/browsing.lua |
diffstat | 1 files changed, 30 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/plugins/browsing.lua Sun May 15 16:23:54 2016 +0200 @@ -0,0 +1,30 @@ +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 +