summaryrefslogtreecommitdiff
path: root/src/util.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/util.h')
-rw-r--r--src/util.h67
1 files changed, 35 insertions, 32 deletions
diff --git a/src/util.h b/src/util.h
index 15f28519d..c86763f58 100644
--- a/src/util.h
+++ b/src/util.h
@@ -27,19 +27,13 @@
#include <glib.h>
#include <telepathy-glib/handle-repo.h>
#include <telepathy-glib/util.h>
-#include <loudmouth/loudmouth.h>
-#include <wocky/wocky-bare-contact.h>
+#include <wocky/wocky.h>
#include "jingle-factory.h"
#include "jingle-content.h"
#include "types.h"
-typedef GSList * NodeIter;
-#define node_iter(node) (node->children)
-#define node_iter_next(i) (g_slist_next (i))
-#define node_iter_data(i) ((LmMessageNode *) i->data)
-
/* Guarantees that the resulting hash is in lower-case */
gchar *sha1_hex (const gchar *bytes, guint len);
@@ -49,19 +43,8 @@ void sha1_bin (const gchar *bytes, guint len, guchar out[SHA1_HASH_SIZE]);
gchar *gabble_generate_id (void);
-void lm_message_node_add_own_nick (LmMessageNode *node,
+void lm_message_node_add_own_nick (WockyNode *node,
GabbleConnection *conn);
-void lm_message_node_steal_children (LmMessageNode *snatcher,
- LmMessageNode *mum);
-gboolean lm_message_node_has_namespace (LmMessageNode *node, const gchar *ns,
- const gchar *tag);
-LmMessageNode *lm_message_node_get_child_with_namespace (LmMessageNode *node,
- const gchar *name, const gchar *ns);
-G_GNUC_NULL_TERMINATED LmMessage *lm_message_build (const gchar *to,
- LmMessageType type, guint spec, ...);
-G_GNUC_NULL_TERMINATED LmMessage * lm_message_build_with_sub_type (
- const gchar *to, LmMessageType type, LmMessageSubType sub_type,
- guint spec, ...);
G_GNUC_WARN_UNUSED_RESULT
gchar *gabble_encode_jid (const gchar *node, const gchar *domain,
@@ -75,27 +58,16 @@ gchar *gabble_normalize_room (TpHandleRepoIface *repo, const gchar *jid,
TpHandle gabble_get_room_handle_from_jid (TpHandleRepoIface *room_repo,
const gchar *jid);
-GHashTable *lm_message_node_extract_properties (LmMessageNode *node,
+GHashTable *lm_message_node_extract_properties (WockyNode *node,
const gchar *prop);
void
-lm_message_node_add_children_from_properties (LmMessageNode *node,
+lm_message_node_add_children_from_properties (WockyNode *node,
GHashTable *properties, const gchar *prop);
-const gchar * lm_message_node_get_namespace (LmMessageNode *node);
-const gchar * lm_message_node_get_name (LmMessageNode *node);
-LmMessageNode * lm_message_node_get_child_any_ns (LmMessageNode *node,
- const gchar *name);
-
-LmMessage *
-lm_iq_message_make_result (LmMessage *iq_message);
void gabble_signal_connect_weak (gpointer instance, const gchar *detailed_signal,
GCallback c_handler, GObject *user_data);
guint gabble_idle_add_weak (GSourceFunc function, GObject *object);
-const gchar * lm_message_node_get_attribute_with_namespace (LmMessageNode *node,
- const gchar *attribute,
- const gchar *ns);
-
GPtrArray *gabble_g_ptr_array_copy (GPtrArray *source);
WockyBareContact * ensure_bare_contact_from_jid (GabbleConnection *conn,
@@ -138,4 +110,35 @@ GSimpleAsyncResult *gabble_simple_async_countdown_new (gpointer self,
void gabble_simple_async_countdown_inc (GSimpleAsyncResult *simple);
void gabble_simple_async_countdown_dec (GSimpleAsyncResult *simple);
+/* Boilerplate for telling servers which implement XEP-0079 not to store these
+ * messages for delivery later. Include it in your call to wocky_stanza_build()
+ * like so:
+ *
+ * wocky_stanza_build (WOCKY_STANZA_TYPE_MESSAGE, WOCKY_STANZA_SUB_TYPE_NONE,
+ * NULL, jid,
+ * '(', "close",
+ * ':', NS_TUBES,
+ * '@', "tube", id_str,
+ * ')',
+ * GABBLE_AMP_DO_NOT_STORE_SPEC,
+ * NULL);
+ *
+ * Every 1000th user will win a Marshall amplifier!
+ */
+#define GABBLE_AMP_DO_NOT_STORE_SPEC \
+ '(', "amp", \
+ ':', NS_AMP, \
+ '(', "rule", \
+ '@', "condition", "deliver-at", \
+ '@', "value", "stored", \
+ '@', "action", "error", \
+ ')', \
+ '(', "rule", \
+ '@', "condition", "match-resource", \
+ '@', "value", "exact", \
+ '@', "action", "error", \
+ ')', \
+ ')'
+
+
#endif /* __GABBLE_UTIL_H__ */