17 Commits

Author SHA1 Message Date
Will Hunt
1b5e0a4c21
Add support for Challenge Hound (#924)
* Add challenge hound connection type

* Add config

* Add bridge bindings

* Add reader implementation.

* Obvious renames.

* bit more tidying

* refactor

* fix imports

* fix import

* Start feed reader and recognise service.

* Move to using IDs rather than URLs for better security.

* lint

* Validate that challenge exists.

* Drive-by refactors.

* Add add/remove commands for challenge hound.

* Add challenge hound docs.

* Refactor icons

* add some more activity definitions

* changelog

* cleanup feed work
2024-04-12 13:38:26 +01:00
Will Hunt
1cbd73bb46
Add troubleshooting doc. (#882)
* Add troubleshooting doc.

* Create 882.doc

Signed-off-by: Will Hunt <will@half-shot.uk>

* Rename 882.doc to 882.doc

Signed-off-by: Will Hunt <will@half-shot.uk>

---------

Signed-off-by: Will Hunt <will@half-shot.uk>
2024-01-16 09:43:56 +00:00
Will Hunt
b9313cd140
Add Sentry support (#754)
* Add sentry support

* Add basic listening for errors on express.

* Additional event types

* Add a default config

* changelog

* Improve wording

* Add docs
2023-05-18 11:05:23 +00:00
Will Hunt
ba5b28ab92
Imporve the README for first time readers (#726)
* New README

* Plural feeds

* Add a nice screeny

* Apply wordsmithing

Co-authored-by: Justin Carlson <justinc@element.io>

* Actually reference the screenshot

* Better screenshot

---------

Co-authored-by: Justin Carlson <justinc@element.io>
2023-04-24 14:48:00 +00:00
Justin Carlson
9a7839ce42
Implement separate bot users per service (#573)
* Add service bots config

* Add joined rooms manager and keep track of joined rooms

* Add bot users manager and ensure registration and profiles

* Improve joined rooms manager and set up already joined rooms

* Handle invites with service bots

* Handle messages with service bots

* Use service bots for connections

* Use service bots in widget and provisioning APIs

* Use service bots in setup connections

* Use service bots for feed connections

* Handle admin rooms for service bots

* Fix confused event type and service type in provisioning and widget APIs

* Fix generic webhooks service name

* Fix enabled services config

* Handle power level change

* Create widgets with service scope

* Use service bots for gitlab repo connections

* Use service bots for gitlab issue connections

* Use service bots for generic webhook connections

* Use service bots for figma file connections

* Use service bots when verifying state events

* Use service bots for github repo connections

* Use service bots for github discussion connections

* Use service bots for github discussion space connections

* Use service bots for github project connections

* Use service bots for github issue connections

* Use service bots for github user space connections

* Use service bots for jira connections

* Make sure ghost users are invited for gitlab issue comments

* Configure one service per service bot

* Add changelog

* Update tests

* Fix up following rebase

* Fix comment

* Use getter for enabled services

* Ensure homeserver can be reached before registering bots

* Add intent getter on bot user

* Update config comment

* Merge joined rooms manager with bot users manager

* Remove unused localpart from bot user class

* Refactor to pass in bot users manager

* Improve priority sort function

Co-authored-by: Christian Paul <christianp@matrix.org>

* Fix priority sort

Higher priority should come first

* Add debug log when invites are rejected

* Use different state key for scoped setup widgets

* Use different subtitles to differentiate service bots setup widgets

* Refactor bot user setup into bot users manager

* Refactor to reduce duplication in widget API

* Consistent room ID and intent args order

* Add docs and update changelog

* Add overrideUserId deprecation warning

* Add service bots link

Co-authored-by: Christian Paul <christianp@matrix.org>
Co-authored-by: Will Hunt <will@half-shot.uk>
2023-01-13 15:32:09 +00:00
Will Hunt
c962f17a91
Add support for native e2ee (#299)
* Add support for native e2ee

* Various temps to coax it into working

* Formatting nitpicks

* Include stable registration config key for msc2409

* Update default config with encryption options

* Manage admin rooms with bot-sdk DMs

This also enables encryption for new admin rooms when appropriate.

* Update config comments for encryption settings

- Add comment to clarify Redis (the `queue` section) must be configured
  in order for encryption to work
- Mention that the `encryption` section is optional, and omitting it
  will disable encryption support

* Update docs for encryption support

* Add changelog

* Add to docs some notes about encryption state

* Move all post-join logic to onRoomJoin

* Block post-join actions on crypto setup

Requires https://github.com/turt2live/matrix-bot-sdk/pull/269

* Fix linter error

* Update encryption docs and changelog

- Mention that worker mode isn't supported with encryption yet
- Mention removal of Pantalaimon-based encryption

* Update worker docs with encryption config notice

* Share main appservice config with feed bots

This is required to safely enable encryption for the bots that post
GenericHook messages.

* Make slight clarification for queue config

* Minor fixes

* Block post-join actions on feed bot crypto setup

Same as a9e6e11d but for the sub-bots that post GenericHook messages.

* Get joined rooms from intent instead of bot

This refreshes the list of known rooms for crypto events.

* Use Element fork of bot-sdk for crypto fixes

Co-authored-by: Andrew Ferrazzutti <andrewf@element.io>
2022-12-09 10:25:36 -05:00
Andrew Ferrazzutti
fa85dc070b
Add commands to remove/list Jira connections (#503)
* Add commands to remove/list Jira connections

* Add docs page for Jira connections

* Clarify "instance" and webhook reqs in Jira docs

- Jira has "instances" instead of "organizations", so use the former term
- Don't suggest that webhook support can work for multiple instances
- Mention that webhooks require special access
- Make some minor grammar changes
2022-10-03 09:54:14 -04:00
Will Hunt
ee2fd5bbcc
Add contributing file (#134)
* Add contributing file

* Rewrite and point at matrix-appservice-bridge

* Add documentation

* Ensure we install matrix-appservice-bridge when building docs

* Also install for release

* changelog

* add contrib file

* Remove artifact step, it doesn't render so nicely

* Update README.md
2022-06-08 15:30:46 +00:00
Will Hunt
f56545bf7c
Add setup command for GitLab (#321)
* Cleanup gitlab auth command

* Add support for the `!hookshot gitlab project` command

* Improve docs

* changelog

* add new page

* Wording

Co-authored-by: Tadeusz Sośnierz <tadzik@tadzik.net>

* Remove useless comment

Co-authored-by: Tadeusz Sośnierz <tadzik@tadzik.net>
2022-04-26 16:04:24 +01:00
Half-Shot
9db37e4dc3 Add skeleton docs 2022-04-22 18:48:39 +01:00
Will Hunt
aa9e066530
Add Generic Webhooks Widget interface (#140)
* Start work on improved widget interface for admin room

* Add changes needed for InviteView

* More widget bits

* Lots more work to support setup widgets

* Redesign work

* Fix build order for web

* Remove unused invite code

* Update configs

* Cleanup

* Support widget branding

* Tidy up web app

* Support generic service config lookup

* Stronger typings for configuration

* Improve error text

* fix patch

* changelog

* First pass on documentation

* Fix tests

* fixes

* Don't require room state / admin rooms for room config requests

* Fix no render when secrets isn't provided

* rework if logic

* Fixes after feedback

* more review fixes

* Cleanup unused code

* fix indent

* Update matrix-appservice-bridge to 4.0.1

* Update widget API
2022-04-08 16:16:12 +01:00
Will Hunt
675456dd72
Figma Support (#105)
* Add support for Figma files

* tweaks

* Final pieces needed for support

* Documentation

* Add config check

* Support using an alternative userId for Figma (to support legacy bots)

* Reinstate key fixer

* lint
2022-01-06 17:13:58 +00:00
Will Hunt
694d50826e
Fix mdbook title 2021-12-28 19:59:19 +00:00
Will Hunt
701622f507
Add some nice emoji titles to summary (#110)
* Add some nice emoji titles to summary

* Create 110.docs

* Rename 110.docs to 110.doc
2021-12-28 18:07:43 +00:00
Will Hunt
d575e5fb2f
Add documentation on various things (#90)
* Add details on webhooks

* More doc things

* More docs

* More documentation changes

* Tidy tidy

* Lots more documentation

* Support defaults for all GitHub configuration options

* Add metrics changes

* s/Added/Add
2021-12-21 16:41:19 +00:00
Will Hunt
ffcb41a0e0
Add support for prometheus (#99)
* Add support for prometheus metrics

* Automatically build metrics documentation

* Slight linter tidyup

* add changelog

* fix workflow

* hush yarn
2021-12-16 15:05:03 +00:00
Will Hunt
65a7d96644 Add skeleton for docs 2021-11-29 10:26:11 +00:00