Software /
code /
prosody-modules
Comparison
mod_pubsub_twitter/mod_pubsub_twitter.lua @ 978:c8f4502c764f
mod_pubsub_twitter: Wrap published item in an <item> element for pubsub
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Mon, 08 Apr 2013 14:45:00 +0100 |
parent | 945:dbcbcec37d24 |
child | 1343:7dbde05b48a9 |
comparison
equal
deleted
inserted
replaced
977:f178318c9aeb | 978:c8f4502c764f |
---|---|
43 local timestamp_date, timestamp_month, timestamp_year, timestamp_time = | 43 local timestamp_date, timestamp_month, timestamp_year, timestamp_time = |
44 result.created_at:match(" (%d+) (%a+) (%d+) (%d%d:%d%d:%d%d)"); | 44 result.created_at:match(" (%d+) (%a+) (%d+) (%d%d:%d%d:%d%d)"); |
45 | 45 |
46 local timestamp = ("%s-%s-%sT%sZ"):format(timestamp_year, month_number[timestamp_month], timestamp_date, timestamp_time); | 46 local timestamp = ("%s-%s-%sT%sZ"):format(timestamp_year, month_number[timestamp_month], timestamp_date, timestamp_time); |
47 | 47 |
48 local item = st.stanza("entry", { xmlns = xmlns_atom }) | 48 local item = st.stanza("item", { xmlns = "http://jabber.org/protocol/pubsub", id = id }) |
49 :tag("id"):text(id):up() | 49 :tag("entry", { xmlns = xmlns_atom }) |
50 :tag("author") | 50 :tag("id"):text(id):up() |
51 :tag("name"):text(result.from_user_name.." (@"..result.from_user..")"):up() | 51 :tag("author") |
52 :tag("uri"):text("http://twitter.com/"..result.from_user):up() | 52 :tag("name"):text(result.from_user_name.." (@"..result.from_user..")"):up() |
53 :up() | 53 :tag("uri"):text("http://twitter.com/"..result.from_user):up() |
54 :tag("published"):text(timestamp):up() | 54 :up() |
55 :tag("title"):text(result.text):up() | 55 :tag("published"):text(timestamp):up() |
56 :tag("link", { rel = "alternate" , href = "https://twitter.com/"..result.from_user.."/status/"..id}):up(); | 56 :tag("title"):text(result.text):up() |
57 :tag("link", { rel = "alternate" , href = "https://twitter.com/"..result.from_user.."/status/"..id}):up(); | |
57 | 58 |
58 module:log("debug", "Publishing Twitter result: %s", tostring(item)); | 59 module:log("debug", "Publishing Twitter result: %s", tostring(item)); |
59 | 60 |
60 local ok, err = pubsub.service:publish(node, true, id, item); | 61 local ok, err = pubsub.service:publish(node, true, id, item); |
61 if not ok then | 62 if not ok then |