aboutsummaryrefslogtreecommitdiff
path: root/xmpp-vala/src/module/util.vala
diff options
context:
space:
mode:
authorfiaxh <git@lightrise.org>2025-06-14 17:50:07 +0200
committerfiaxh <git@lightrise.org>2025-06-14 17:50:07 +0200
commitbd8f277b9129a48a95ee19a2a3ec41d13aa66d4a (patch)
treed3538411c045c8245e81a32237039e924dd4efa4 /xmpp-vala/src/module/util.vala
parent1dae4e1abd2b49fdfb64eecf068d1085dcd7e125 (diff)
Add basic support for BOB thumbnails in SFS
Diffstat (limited to 'xmpp-vala/src/module/util.vala')
-rw-r--r--xmpp-vala/src/module/util.vala12
1 files changed, 12 insertions, 0 deletions
diff --git a/xmpp-vala/src/module/util.vala b/xmpp-vala/src/module/util.vala
index 28f1a5f8..076c327f 100644
--- a/xmpp-vala/src/module/util.vala
+++ b/xmpp-vala/src/module/util.vala
@@ -12,6 +12,18 @@ public string random_uuid() {
return "%08x-%04x-%04x-%04x-%04x%08x".printf(b1, b2, b3, b4, b5_1, b5_2);
}
+public Bytes? get_data_for_uri(string uri) {
+ if (uri.has_suffix("@bob.xmpp.org")) {
+ string cid = uri.replace("cid:", "");
+ return Xep.BitsOfBinary.known_bobs[cid];
+ } else if (uri.has_prefix("data:image/png;base64,")) {
+ return new Bytes.take(Base64.decode(uri.replace("data:image/png;base64,", "")));
+ } else {
+ warning("Couldn't parse data from uri %s", uri);
+ return null;
+ }
+}
+
public abstract class StanzaListener<T> : OrderedListener {
public abstract async bool run(XmppStream stream, T stanza);