Kegan Dougal
8684b671e2
Bump sqlite3 dep to make it compile on OSX
8 years ago
Kegsay
d8c1991cf6
Create LICENSE
8 years ago
Kegan Dougal
825b3e74b3
Add github.com/mmcdole/gofeed - Make guggy use DefaultService
8 years ago
Kegsay
c6a15801eb
Merge pull request #76 from matrix-org/kegan/rss
Implement polling for Services
8 years ago
Kegan Dougal
4f91101809
Remove RSS for now
8 years ago
Kegan Dougal
b0c3ecf598
TODO this so I don't make a huge PR
8 years ago
Kegan Dougal
331bdc703f
Add ability to update/stop polling services
All appears to be in working order now. Now time for the RSS feeds!
8 years ago
Kegan Dougal
fe2ab0c8bd
Get polling working
Currently never stops polling so clobbering service IDs does the wrong thing,
and deleting services doesn't stop polling at all!
8 years ago
Luke Barnard
26814a5a53
Guggy: use query sentence as m.image .body
8 years ago
Luke Barnard
2719a3a077
Guggy Integration ( #75 )
* WIP: Initial Guggy
* Finish Guggy integration
* typo & send No GIF Found when GIF string empty
* unused function
* Unused import, HTTPS API and GIFs
* APIKey -> api_key
* Use api_key on the wire, APIKey in structs
8 years ago
Kegan Dougal
65963cd93f
Add stub RSS Service. Add DefaultService. Add Poller interface.
`DefaultService` serves as a useful no-op service to cut down on bloat when
implementing new Services. This means we can add more methods more freely to
the interface of `Service` without bogging down the Service implementation.
`Poller` is an interface which contains a polling interval and a function to
invoke. This will be used for RSS feeds.
Implemented a stub `RSSService`.
8 years ago
Kegsay
d999803456
Merge pull request #73 from brunoqc/patch-1
fix godoc URL in README.md
8 years ago
Bruno Bigras
39f45cd3a0
fix godoc URL in README.md
8 years ago
Kegsay
bd92e24d05
Merge pull request #67 from matrix-org/kegan/better-gh-cmd-regex
Improve !github create parsing
8 years ago
Kegan Dougal
73ea8a705d
Improve !github create parsing
To handle cases where `args[0]` has a `/` but isn't an `owner/repo`.
8 years ago
Kegsay
e5f8402560
Tidy up and finish
8 years ago
Kegsay
f0372a862c
Flesh out GH webhooks
8 years ago
Kegsay
1591d1b0cb
Add realms
8 years ago
Kegsay
73d9f69cc0
Quick start and more info
8 years ago
Kegsay
b307c3ce5e
Begin fleshing out README
8 years ago
Kegsay
2101e49b87
Merge pull request #64 from matrix-org/kegan/gh-logout
Add /admin/removeAuthSession
8 years ago
Kegan Dougal
1fbb579212
Add /admin/removeAuthSession
Allows users to nuke their OAuth credentials. Currently this just does a database
`DELETE` as neither Github nor JIRA need you to hit any special `/logout` API.
8 years ago
Kegsay
e6e859ec48
Merge pull request #62 from matrix-org/kegan/gh-no-webhooks-means-no-service
Delete webhook services when there are no webhooks left
8 years ago
Kegan Dougal
267890503f
Delete webhook services when there are no webhooks left
Else they will show up in the current integration list FOREVAR!
8 years ago
Kegsay
0275069cb8
Merge pull request #61 from matrix-org/kegan/ignore-events-on-join
Do not process /sync responses for rooms the bot has just joined
8 years ago
Kegan Dougal
ce2af7ed71
Add TODO marker
8 years ago
Kegan Dougal
68cb87be66
Do not process /sync responses for rooms the bot has just joined
Else we can process !commands multiple times and/or process !commands from before
we were in the room (if `history_visibility` allows it).
8 years ago
Kegsay
2bb04b3b6d
Merge pull request #60 from matrix-org/kegan/persist-next-batch
Persist next_batch tokens
8 years ago
Kegan Dougal
178ae79e29
Review comments
8 years ago
Kegan Dougal
41f5cdabaf
Remove TODOs which are now done
8 years ago
Kegan Dougal
b59d43b810
Add a `NextBatchStorer` interface to load/save next_batch tokens
Gets around cyclic dependencies.
8 years ago
Kegan Dougal
5f9a065d83
Persist next_batch tokens
Indirect this through a `NextBatchStore` type to get around circular dependencies
which are formed if you try to inline it in the `Sync()` while loop.
Fork out event handlers to separate functions in `Clients` to make gocyclo happy.
Add `UPDATE` query for `next_batch`.
8 years ago
Kegan Dougal
bacc0eebb5
Return Authenticated:false rather than 404ing on missing sessions - it makes life much easier
8 years ago
Kegan Dougal
8fe15076e9
More useful input/output logging please for debugging
8 years ago
Kegsay
70bf4ce5ed
Merge pull request #57 from matrix-org/kegan/gh-explicit-unregister-webhooks
Allow github webhooks to be explicitly removed
8 years ago
Kegan Dougal
8c6445183c
Warn rather than Error
8 years ago
Kegan Dougal
b5e0665c64
Allow github webhooks to be explicitly removed
Removing a repo entirely from a service will now remove the webhook in the
`PostRegister()` function. This function is still within the `configureService`
critical section to prevent another request for the same service racing with
the cleanup process.
8 years ago
Kegsay
635ea03516
Merge pull request #56 from matrix-org/kegan/configure-client-name
Set the desired DisplayName for a client when it is being configured
8 years ago
Kegan Dougal
7bafa40708
Only Sync if told to do so
8 years ago
Kegan Dougal
314b63e900
Set the desired DisplayName for a client when it is being configured
8 years ago
Kegsay
d8b248cb2c
Merge pull request #52 from matrix-org/kegan/split-gh-service
Split up github service into 2 services
8 years ago
Kegan Dougal
aea0e3a104
Split up github service into 2 services
One for commands/expansions, the other for webhooks. Call the type 'github-webhook'.
8 years ago
Kegsay
dc9872bbd8
Merge pull request #48 from matrix-org/kegan/giphy
Add Giphy integration
8 years ago
Kegan Dougal
b2e301651b
Be less excited about logging; use res.ContentLength
8 years ago
Kegan Dougal
fcd4b5adc7
Comments
8 years ago
Kegan Dougal
6f2d9dc72c
Add giphy integration
8 years ago
Kegsay
16e7bf3957
Merge pull request #47 from matrix-org/kegan/bot-options
Support bot options and implement github bot options for default repos
8 years ago
Kegan Dougal
d100d8ddd4
Don't share the matchingGroups array across multiple functions because that's insane
8 years ago
Kegan Dougal
95d8f86fa4
Combine together short and long form regexp matching to avoid expanding twice on long form
8 years ago
Kegan Dougal
8b44f3658c
Support bot options and implement github bot options for default repos
- Add a new `bot_options` table
- Allow github expansions/commands to omit the owner/repo and use a default if set
8 years ago