Commit Graph

50 Commits

Author SHA1 Message Date
Evan Prodromou
f5fe013657 many jabber queue management changes
Added a method to QueueManager to let subclasses do stuff when idle.
Needed so that XMPP queue manager can service its message queue.

Cleaned up jabber_broadcast_message quite a bit. Use custom joins
instead of loop-and-query, should fix some problems with users who are
getting messages even after turning off notification. Only build $msg
and $entry once, and use the XMPPHP function for messages with a
payload, rather than rolling our own.

darcs-hash:20080829200352-84dde-427e4ca8c81d4222a36f78e7c580b611ff0bf765.gz
2008-08-29 16:03:52 -04:00
Evan Prodromou
c4d6789275 split public stream to its own queue handler
Add another queue handler for the public stream. Should further
parallelize the work of sending out messages.

darcs-hash:20080829181702-84dde-594505aa73d2380b13bd98917b70b02bac597d12.gz
2008-08-29 14:17:02 -04:00
Evan Prodromou
2be3be1c29 correct presence in jabber function
darcs-hash:20080828001936-84dde-e4ec2fef30c49d1254d5358624a4391930811832.gz
2008-08-27 20:19:36 -04:00
Evan Prodromou
b9f0ea6f0e break up monolithic xmppdaemon into multiple queue handlers
Eventually, the poor xmppdaemon has become overloaded with extra
tasks. So, I've broken it up. Now, we have 5 background scripts, and
more coming:

* xmppdaemon.php - handles incoming XMPP messages only.
* xmppqueuehandler.php - sends notices from the queue out through XMPP.
* smsqueuehandler.php - sends notices from the queue out over SMS
* ombqueuehandler.php - sends notices from the queue out over OMB
* xmppconfirmhandler.php - sends confirmation requests out over XMPP.

This is in addition to maildaemon.php, which takes incoming messages.

None of these are "true" daemons -- they don't daemonize themselves
automatically. Use nohup or another tool to background them. monit can
also be useful to keep them running.

At some point, these might become fork()'ing daemons, able to handle
more than one notice at a time. For now, I'm just running multiple
instances, hoping they don't interfere.

darcs-hash:20080827205407-84dde-97884a12f5f4e54c93bc785bd280683d1ee7e749.gz
2008-08-27 16:54:07 -04:00
Evan Prodromou
0bc0568e66 only send local messages to public XMPP stream
darcs-hash:20080826205341-84dde-04c1641f4b9c5aa5318b76512664ee9df170d779.gz
2008-08-26 16:53:41 -04:00
Evan Prodromou
782fe0130f optionally turn encryption on or off in the XMPP connection
For identi.ca, we had some problems with the XMPP daemon getting
"stuck" in I/O through the encrypted (by default) XMPP socket. Turning
off encryption helped. So, now it's an option.

darcs-hash:20080826131814-84dde-2c4a809c6fb666dfb4b96d0d61205fe418f4e4b4.gz
2008-08-26 09:18:14 -04:00
CiaranG
192a673472 Prevent jabber.php error by checking key exists
darcs-hash:20080823053548-f6e2c-dfc8a0acd9fb8589ed37e54c7d0d3d38afff34f5.gz
2008-08-23 01:35:48 -04:00
CiaranG
6593092bfd Escape profile url in xmpp in case fancy urls off (Ticket #521)
darcs-hash:20080823052534-f6e2c-aa452a8c2c6ee33399f4079d0bf2224847e1450a.gz
2008-08-23 01:25:34 -04:00
CiaranG
1e68183377 Fixed attempt to read nonexistent match in JID regex
darcs-hash:20080822191751-f6e2c-578869b8524e3238c461872981a5dd8c285937e3.gz
2008-08-22 15:17:51 -04:00
Mike Cochrane
bdfe3ca524 Only try sending xmpp notices if xmpp is enabled
darcs-hash:20080722082653-533db-14e277869986f0c4f0df0f84eec9c5d39626956d.gz
2008-07-22 04:26:53 -04:00
Evan Prodromou
03a84f45fd forgot the user's name in HTML output
darcs-hash:20080718070252-84dde-27b01cd01b309ba079c38e9bd09a97b1626d479b.gz
2008-07-18 03:02:52 -04:00
Evan Prodromou
5f55c96157 add an HTML payload to outgoing notices
darcs-hash:20080718063130-84dde-01cc0d9d9cf92e5ad9f5c079c771e2ea64c8d5f2.gz
2008-07-18 02:31:30 -04:00
Evan Prodromou
753a03d895 public indexers in config file
darcs-hash:20080717134331-84dde-b63c9b7e318d74e2cfea14cc962ec2d519f20d43.gz
2008-07-17 09:43:31 -04:00
Evan Prodromou
3d96d6f5f7 slightly better error handling
darcs-hash:20080716064736-5a68a-b57c978702037f380e31d2d8825109821a01cef5.gz
2008-07-16 02:47:36 -04:00
Evan Prodromou
dd96edde77 add some warnings and stuff
darcs-hash:20080716061933-84dde-7bb5f28c9263782bc0535cd8303a9fcad3820134.gz
2008-07-16 02:19:33 -04:00
Evan Prodromou
9e5a8b7e1f lost else
darcs-hash:20080716053532-84dde-0a53cc573ee9a0c20ff88e011d83f15e60f7c825.gz
2008-07-16 01:35:32 -04:00
Evan Prodromou
499afd8c22 replies from people you're not subscribed to over Jabber
darcs-hash:20080715195513-84dde-454419c971015be385d9c4c35f7acbee419031f9.gz
2008-07-15 15:55:13 -04:00
Evan Prodromou
3f59000e73 work around probs with XMPPHP library
darcs-hash:20080715190519-84dde-766a45bc05fff8682843323145c1bd2460f8c308.gz
2008-07-15 15:05:19 -04:00
Evan Prodromou
7ad21d3cc1 build stanza ourselves, without library
darcs-hash:20080715033711-84dde-f4a4583d8182dc18fec6f7ea7e2e27ff4958cb90.gz
2008-07-14 23:37:11 -04:00
Evan Prodromou
37baa03880 encode special chars in atom payload
darcs-hash:20080714143042-84dde-8da6275ea2bf0e0ce4691d8f56e1b932727efcd8.gz
2008-07-14 10:30:42 -04:00
Evan Prodromou
e81361812f debugging changes on development server
darcs-hash:20080714140209-d018c-02b3372603f4a012c230f0fffb6e7f29e43e013a.gz
2008-07-14 10:02:09 -04:00
Evan Prodromou
71afb53de6 get the msg to format
darcs-hash:20080714044153-84dde-8043ee7e32936f468b2cfa096a1a1846eddfba88.gz
2008-07-14 00:41:53 -04:00
Evan Prodromou
df126bf538 forgot to send a null for subject in XMPP message
darcs-hash:20080714043459-84dde-cd80f2558432b901944d32e71234eb95f6dc47fb.gz
2008-07-14 00:34:59 -04:00
Evan Prodromou
d0e5fe535e make broadcast send notice with extra Twitter cruft
darcs-hash:20080714034647-84dde-8cee5c041927eb7d3f47cf14410c6ce09752dd2f.gz
2008-07-13 23:46:47 -04:00
Evan Prodromou
fb00708284 add extra Twitter cruft to jabber messages
darcs-hash:20080714034503-84dde-c06198f9d7b8b1c11f6c57e518dcf49b863ee6f3.gz
2008-07-13 23:45:03 -04:00
Mike Cochrane
4b656f47df Merge conflicts and kill a whole lot of trailing whitespace on lines.
darcs-hash:20080709224630-533db-b5399baef280133858dac9b89c2cd6a2aba9f861.gz
2008-07-09 18:46:30 -04:00
Evan Prodromou
680738e053 fixup required XMPP library
darcs-hash:20080709070012-84dde-5fa51b1dba00a6299170fd4b44eea34c01f388e0.gz
2008-07-09 03:00:12 -04:00
mike
606297e453 replybutton.darc
Add a simple reply button to notices

darcs-hash:20080708112016-f7d30-321142883159fa91338754140ac4ea37e54bb746.gz
2008-07-08 07:20:16 -04:00
Evan Prodromou
ada9835470 autosubscribe for jabber
darcs-hash:20080707234050-84dde-b8bb3e4af8dad740e48372e8fa059cdba460a382.gz
2008-07-07 19:40:50 -04:00
Evan Prodromou
e4a1b9cde9 optionally queue jabber confirmations
darcs-hash:20080706035707-84dde-5403fe9bcb017c401fe5847527628df548e54499.gz
2008-07-05 23:57:07 -04:00
Evan Prodromou
ec76d448de change to use SVN version of XMPPHP
darcs-hash:20080705174045-d018c-84a84f72a3f371fe767ccca890d67be3b8a127af.gz
2008-07-05 13:40:45 -04:00
Evan Prodromou
25e93288ba a little more error-checking in the queuedaemon
darcs-hash:20080705002207-84dde-c5bc4da7dbca8a32ea4126badb772e99bd4f8bf1.gz
2008-07-04 20:22:07 -04:00
Evan Prodromou
d437fcfac9 wasn't checking for notify flag
darcs-hash:20080630152415-84dde-7ee73e1b9b8684ebcfb957c2c33b20a8265e1e74.gz
2008-06-30 11:24:15 -04:00
Evan Prodromou
5527d6b535 lost a couple of variables
darcs-hash:20080626203935-34904-bf73b91cc008b28a0d0d2187dfaa346784c23afd.gz
2008-06-26 16:39:35 -04:00
Evan Prodromou
48cac45fd9 don't bother with subscription hoohaw; just ask the user to do it
darcs-hash:20080626203103-34904-19ef53bc734622a310a705608f3e227e2f387904.gz
2008-06-26 16:31:03 -04:00
Evan Prodromou
7a973f93a3 add a function to show current address
darcs-hash:20080626184055-34904-05d1ef61bcf973b4b2c234b08708fd8c62805c2a.gz
2008-06-26 14:40:55 -04:00
Evan Prodromou
faf02d5126 stub for jabber_is_subscribed
darcs-hash:20080626183117-34904-62bd1ba2aab5cf8a0d351b3b600369fec7956b3f.gz
2008-06-26 14:31:17 -04:00
Evan Prodromou
db2d79cd31 some UI changes to the IM settings
darcs-hash:20080626181144-34904-87503e70e6705b06ebb6c19910583f4fba1b22e0.gz
2008-06-26 14:11:44 -04:00
Evan Prodromou
b7d927cd41 correct confirm code
darcs-hash:20080626152044-34904-2724922671149ab7ee40241d96199d80e2ecc1fe.gz
2008-06-26 11:20:44 -04:00
Evan Prodromou
d195c49d96 use jabber.php more from xmppdaemon
darcs-hash:20080626150336-34904-bfa5ec8740ba1edf60c34e1ef6aafdfd73fc99a2.gz
2008-06-26 11:03:36 -04:00
Evan Prodromou
6910737760 misunderstood host versus server
darcs-hash:20080626080626-34904-e6783597cc1317894d9f6a301edf3ef69c529ce9.gz
2008-06-26 04:06:26 -04:00
Evan Prodromou
64ba09f9a3 handle host !
darcs-hash:20080626075920-34904-0aad06d788f8dbf3a03d17752ba49d866322594e.gz
2008-06-26 03:59:20 -04:00
Evan Prodromou
cdcfdc8cb4 confirmation code sent by web user, not xmppdaemon
darcs-hash:20080626073530-34904-e56c156737db036b0de4bd6e396833bf044cb865.gz
2008-06-26 03:35:30 -04:00
Evan Prodromou
510ae5f3fb use jabber library from xmppdaemon program
darcs-hash:20080626070703-34904-b6c6a9b1df39f09221c450dcb3d32f6da6e2df5e.gz
2008-06-26 03:07:03 -04:00
Evan Prodromou
b560759df1 subscribe before sending confirmation message
darcs-hash:20080626064646-34904-d9b9bba1994626cc242e1ed7222762e8e3a90543.gz
2008-06-26 02:46:46 -04:00
Evan Prodromou
e330eb50d2 more robust handling of new JIDs
darcs-hash:20080624015616-34904-c1ff985257c8c57aacf68439488d628a8b4d2e38.gz
2008-06-23 21:56:16 -04:00
Evan Prodromou
939a3e48d8 syntax error in jabber_format_notice
darcs-hash:20080624015001-34904-5ce1e31677627baa3b4241530cfe2ae0e385c541.gz
2008-06-23 21:50:01 -04:00
Evan Prodromou
a8a2f40696 broadcast notices to jabber
darcs-hash:20080624014241-34904-39ace8e82e50e5f50c5980b5fb3256184a7c9050.gz
2008-06-23 21:42:41 -04:00
Evan Prodromou
d1e55b3777 jabber send and confirmation code
darcs-hash:20080624013203-34904-fe87dc6b3b991e9753512b8b7cc192f7610eb1dc.gz
2008-06-23 21:32:03 -04:00
Evan Prodromou
63dcbe1e6e add jabber library and use it
darcs-hash:20080624001523-34904-8d0c052f12301d86aeb9107149b34f22c94da1c4.gz
2008-06-23 20:15:23 -04:00