summaryrefslogtreecommitdiff
path: root/doc/design/assistant/blog/day_122__xmpp_pairing.mdwn
diff options
context:
space:
mode:
authorGravatar Joey Hess <joey@kitenet.net>2012-11-03 18:11:46 -0400
committerGravatar Joey Hess <joey@kitenet.net>2012-11-03 18:11:46 -0400
commit9cc181be3d459a3a55d26d1f344221a63b4e68c8 (patch)
tree96da08ca8eae1b0b02fcd7f44cea162cdc0c6064 /doc/design/assistant/blog/day_122__xmpp_pairing.mdwn
parentbc94dde8f6c5d7ca213fa81a6c03a4c9e22e16d5 (diff)
blog for the day
Diffstat (limited to 'doc/design/assistant/blog/day_122__xmpp_pairing.mdwn')
-rw-r--r--doc/design/assistant/blog/day_122__xmpp_pairing.mdwn29
1 files changed, 29 insertions, 0 deletions
diff --git a/doc/design/assistant/blog/day_122__xmpp_pairing.mdwn b/doc/design/assistant/blog/day_122__xmpp_pairing.mdwn
new file mode 100644
index 000000000..868382725
--- /dev/null
+++ b/doc/design/assistant/blog/day_122__xmpp_pairing.mdwn
@@ -0,0 +1,29 @@
+Reworked my XMPP code, which was still specific to push notification, into
+a more generic XMPP client, that's based on a very generic NetMessager
+class, that the rest of the assistant can access without knowing anything
+about XMPP.
+
+Got pair requests flowing via XMPP ping, over Google Talk! And when the
+webapp receives a pair request, it'll pop up an alert to respond. The rest
+of XMPP pairing should be easy to fill in from here.
+
+To finish XMPP pairing, I'll need git pull over XMPP, which is nontrivial,
+but I think I know basically how to do. And I'll need some way to represent
+an XMPP buddy as a git remote, which is all that XMPP pairing will really
+set up.
+
+It could be a git remote using an `xmpp:user@host` URI for the git url, but
+that would confuse regular git to no end (it'd think it was a ssh host),
+and probably need lots of special casing in the parts of git-annex that
+handle git urls too. Or it could be a git remote without an url set, and
+use another config field to represent the XMPP data. But then git wouldn't
+think it was a remote at all, which would prevent using "git pull
+xmppremote" at all, which I'd like to be able to use when implementing git
+pull over XMPP.
+
+Aha! The trick seems to be to leave the url unset in git config,
+but temporarily set it when pulling:
+
+ GIT_SSH=git-annex git git -c remote.xmppremote.url=xmpp:client pull xmppremote
+
+Runs git-annex with "xmpp git-upload-pack 'client'".. Just what I need.