Commit graph

668 commits

Author SHA1 Message Date
Zev Benjamin 98a8680af7 jabber_mirror: Take a JID on the commandline instead of a separate Jabber username and domain
We also take the opportunity to use the sleekxmpp JID parsing more instead of
doing string manipulation.

(imported from commit 6e4ba0bd2c241666fcde42333ff68b879d8ab2b7)
2014-03-04 23:02:26 -05:00
Zev Benjamin 54695684d9 jabber_mirror: Allow Jabber options to be specified in the Zulip config file
(imported from commit 7911fdd4c8a2e8668c01627697a3cd8a153d4612)
2014-03-03 17:30:58 -05:00
Zev Benjamin c90913850a jabber_mirror: Clean up help text
(imported from commit bd9a4682c754423047a993b8914d965c2e12fdf4)
2014-03-03 17:30:58 -05:00
Zev Benjamin de1432aedc api: Expose function for getting the default Zulip config file
(imported from commit 89d6b48f9393670429aa960ad0ff27f030166e34)
2014-03-03 17:30:58 -05:00
Zev Benjamin 2d311b93df jabber_mirror: Ignore attempts to join invalid MUCs
(imported from commit a82d53af1f581d059b6457a1bf7afe92af5d42d9)
2014-03-03 17:30:58 -05:00
Zev Benjamin 2d8910dc7e jabber_mirror: Configure rooms after joining
(imported from commit d4c6e895dca1c7002ce39db81b671ba1c975d517)
2014-03-03 17:30:58 -05:00
Zev Benjamin 32ec19cb12 jabber_mirror: Don't try to mirror messages from rooms themselves
These are usually administrative messages.

(imported from commit 58cbbc739fdd47acc586c235aedd2fccc83654fd)
2014-03-03 17:30:58 -05:00
Zev Benjamin 6609291d54 jabber_mirror: Change character used for loop detection
Previously, we were using U+1B80, which is 'SUNDANESE SIGN PANYECEK' (i.e., an
assigned character).  U+1FFFE is a non-character (i.e., free for internal use)
on Plane 1.

(imported from commit f93d2401733afb96b6d717a7f659c011299071df)
2014-03-03 17:30:58 -05:00
Zev Benjamin f239b02027 jabber_mirror: Dynamically join and leave MUCs
For personal mirrors, this means that the mirror should join all Jabber rooms
corresponding to their Zulip subscriptions.  For the public mirror, this means
that the mirror should join all Jabber rooms corresponding to Zulip streams that
end in "/xmpp".

(imported from commit 16ed9e3deee7e02b2ae0dd79925f0ed5c4acd044)
2014-03-03 17:30:58 -05:00
Zev Benjamin 2045b73ea4 api: Add get_subscribers method
(imported from commit 801021768431a04cfecf146b58f4d118e1dc7508)
2014-03-03 17:29:54 -05:00
Zev Benjamin f87e410787 jabber_mirror: Pull rooms to join from Zulip based on mode
(imported from commit 115d4d4732d8ff4f12d336cfc42a056183251d87)
2014-03-03 17:29:53 -05:00
Zev Benjamin d476547319 jabber_mirror: Document which mode handles which kinds of messages
(imported from commit 983224ac58bce724529806f6b8eaa3ea30cc730b)
2014-03-03 17:29:53 -05:00
Zev Benjamin 810b219f8c jabber_mirror: Only mirror messages from streams that end in '/xmpp'
(imported from commit 5213d40063361ffcf073772580ac0f699228cb3f)
2014-03-03 17:29:53 -05:00
Zev Benjamin 1b946b8565 jabber_mirror: Mirror Jabber room 'foo' to stream 'foo/xmpp'
(imported from commit db771b5b5056cdca5780b90f66924c6f9ae3e84d)
2014-03-03 17:29:53 -05:00
Zev Benjamin 2bf61eea89 jabber_mirror: Use new-style client name
(imported from commit a1bc5b076a9c0384c1abdc2377183b0eac19f450)
2014-03-03 17:29:53 -05:00
Zev Benjamin 26f4849af2 jabber_mirror: Add --debug option
(imported from commit 8d6986ba97f464359a1fe214d5605fa744660a9b)
2014-03-03 17:29:53 -05:00
Zev Benjamin 0d5d37a211 jabber_mirror: Exit if we fail to connect to the Jabber server
(imported from commit f5cc600325a3547412cf0b05239c988410354c10)
2014-03-03 17:29:53 -05:00
Zev Benjamin 52be065eda jabber_mirror: Respond to XMPP pings
Other clients like Pidgin sends these.

(imported from commit 61c69a080accda939b82ce8701b10ffc6dda672e)
2014-03-03 17:29:53 -05:00
Zev Benjamin 84412572a1 jabber_mirror: Working PM mirroring
(imported from commit 34617f989e83029c6591461adc3ffa18ddea2037)
2014-03-03 17:29:53 -05:00
Zev Benjamin 2185d42a90 jabber_mirror: Working room/stream mirroring
(imported from commit 5d0a33423e90edaee3a1094b1d48fae73cfb54ca)
2014-03-03 17:29:53 -05:00
Zev Benjamin f1e3d9ab76 jabber_mirror: Require the --conference-domain option when running in 'public' mode
(imported from commit 1dd564a212538e292ffc8b7a52caf7eae66d4475)
2014-03-03 17:29:53 -05:00
Zev Benjamin e9684a01fd jabber_mirror: Clarify the two modes the mirror can run in
(imported from commit 8084e0552b06c6763f2f13a63c90c9dc73d6bf90)
2014-03-03 17:29:53 -05:00
Zev Benjamin e5dca4a1a2 zephyr_mirror: Fix comment
(imported from commit aed76ecc3b4fd8bb01c299169a8e4eefd35f7cd8)
2014-03-03 17:29:53 -05:00
Zev Benjamin 8a4891aff7 jabber_mirror: Take the Jabber username as a separate option
(imported from commit 86131c7502df7b841c34b09c0e94b071c89b3fde)
2014-03-03 17:29:52 -05:00
Zev Benjamin d0a875f88a jabber_mirror: Use zulip.init_from_options
(imported from commit 5839c5308a948d2c060d1eb5688b9cf0bd9ed3a2)
2014-03-03 17:29:52 -05:00
Zev Benjamin 5fe2caeb5e jabber_mirror: Separate Jabber options into their own group
(imported from commit 223ecceee956ab30b1647eb0925d11982b2ef37d)
2014-03-03 17:29:52 -05:00
Zev Benjamin 0c9a5179ae jabber_mirror: Use the Zulip API option group
(imported from commit 68243e4ebd44cd3b08bf0789c34bb85016d0d1b9)
2014-03-03 17:29:52 -05:00
Zev Benjamin 4db2dab645 api: Disambiguate the names of Zulip options
(imported from commit 67525764cc2f2a26081640063e2d78852f6229ca)
2014-03-03 17:29:52 -05:00
Zev Benjamin 314f03a5bb api: Let generate_option_group prepend a prefix to added options
(imported from commit 41cdd90a83914139c92cb3ea649cb5653f56d4ca)
2014-03-03 17:29:52 -05:00
Zev Benjamin 744ca9ac72 api: Clarify that the API option group is for the Zulip API
(imported from commit e471fb60c04c4cf8d5e1ceb8cbd639dc3460fc48)
2014-03-03 17:29:52 -05:00
Zev Benjamin 6fa0cb3b96 jabber_mirror: Use consistent casing for commandline arguments
(imported from commit e30aedc2f626d64b79a9b36b7f3a0fbee84a8ada)
2014-03-03 17:29:52 -05:00
Zev Benjamin 08e2639fa9 jabber_mirror: Remove dead code
(imported from commit a8802340e1a624934a92d5bdd4ba8ad26faaadbf)
2014-03-03 17:29:52 -05:00
Zev Benjamin afea89d717 jabber_mirror: Fix anti-looping
(imported from commit 5b0ee18b3ec4fd73912fde83b14083e77940ab6e)
2014-03-03 17:29:52 -05:00
Zev Benjamin f18525acd1 jabber_mirror: Do domain replacement more safely
(imported from commit 1a6a3d23120f06d54bc954d4e89d5fccf666332e)
2014-03-03 17:29:52 -05:00
Zev Benjamin 8d787f888f jabber_mirror: Use str.replace instead of re.sub
(imported from commit 55798a06951366f0c3d246a243dbb3d41ee5b4f7)
2014-03-03 17:29:52 -05:00
Zev Benjamin 033e821963 jabber_mirror: Use consistent method name casing
(imported from commit 0f68b94bab992ba20aa7c185fa40eafeea22f92e)
2014-03-03 17:29:52 -05:00
Zev Benjamin e7a1d3b0d7 jabber_mirror: Factor out jid_to_zulip and use str.rpartition
(imported from commit 435f076d7125676b5b964c73ec1e3753496c32af)
2014-03-03 17:29:52 -05:00
Zev Benjamin 36f8957b36 jabber_mirror: Make copyright date clearer
(imported from commit a97382d174994be0592fbd98cdef1ed39c1b0400)
2014-03-03 17:29:51 -05:00
Tim Abbott 26bc53d123 Add Jabber mirroring bot.
(imported from commit a539e1e9322bfbef4d93efce951f058d09fc58fe)
2014-03-03 17:29:51 -05:00
Jessica McKellar 5c4d22fe2c nagios: give digest emails even more processing time before alerting.
(imported from commit 057511c22af39d147e4c4c499fee5a3fb7392786)
2014-02-18 16:07:31 -05:00
Jessica McKellar 0b1cd703dd Update copyright to 2014.
(imported from commit 733baed61e26be0c07a7e7a605618087df6b0866)
2014-02-04 15:51:53 -05:00
Jessica McKellar a86dc0edae nagios: give digest emails more processing time before alerting.
(imported from commit ed4c005bc8d0ab2d7ad3ec9e05e3f3110c9fd024)
2014-01-29 14:02:09 -05:00
Jessica McKellar 5e38e2f0a0 Don't alert on elevated mail queues during digest sends.
(imported from commit 2074b08c0f402c147bfdd1f0a4f0663081d5e55d)
2014-01-24 10:07:26 -05:00
Tim Abbott 775b9cc8bb Don't send a Zulip notification about 0 lines.
(imported from commit cc8ce4d95978264cd05bc26f77a5d770abdf5add)
2014-01-16 18:36:19 -05:00
Tim Abbott 2aef11b064 Filter upstream timed out events from log2zulip.
(imported from commit 7a18d7f7ea6cc1be90d436c651eb4bb85598cec9)
2014-01-16 16:51:16 -05:00
Luke Faraone cc6e16b2d1 API release 0.2.4
(imported from commit 42145c829f5bd2282b72c2658f19766cf2346a2b)
2014-01-11 15:52:21 -05:00
Steve Howell be6d71f13d Add summarize_stream.py.
(imported from commit 061b1ccc6649acb9a9fc40370282fa34c645afed)
2014-01-10 21:39:06 -05:00
Jessica McKellar b0c7153107 Document our RSS integration.
(imported from commit 61e956705b526b4bbeb3a0908d00ebd92d216395)
2014-01-02 13:39:32 -05:00
Tim Abbott 2dd1d1c1d1 [puppet] Add log2zulip tool for sending log files to Zulip.
This tool is a little crude; it runs out of a cron job and will
forward to staging a notice about any new lines in the declared log
files, truncating if there are more than 10 lines.

(imported from commit 6748ddff1def0907b061dc278a3a848bd2e933f1)
2013-12-17 11:02:55 -05:00
Tim Abbott 65e6a35f63 Add support for event queues with an included narrow.
This will allow us to substantially decrease the server-side work that
we do to support our Mirroring systems (since the personal mirrors can
request only messages that user sent) and also is what we need to
support a single-stream Zulip widget that we embed in webpages.

(imported from commit 055f2e9a523920719815181f8fdb44d3384e4a34)
2013-12-12 17:36:39 -05:00