Commit graph

89 commits

Author SHA1 Message Date
Travis Ralston c0936745c0 Frontend interface for basic bridging and unbridging of chats
Requires https://github.com/tulir/mautrix-telegram/pull/235

Puppeting is scheduled to be handled in https://github.com/turt2live/matrix-dimension/issues/214

The TODO comments about asking for unbridge/permission denied will be handled in a later commit.
2018-10-17 21:09:19 -06:00
Travis Ralston 242ad3bf3a Admin interface for managing Telegram bridges
Currently only one bridge is supported at a time, however in the future we may wish to load balance between bridges or something.
2018-09-16 02:26:10 -06:00
Travis Ralston c5247ddc0b Support appservice r0 spec 2018-09-16 02:25:17 -06:00
Travis Ralston edbeeb4e85 Security: Ensure the OpenID subject matches the homeserver 2018-09-08 12:51:08 -06:00
Travis Ralston 2eaa78c1c7 Up the default request limit size
For larger transactions
2018-08-13 20:44:57 -06:00
Travis Ralston ad3c0d7f11 Appease the linter 2018-05-13 22:41:19 -06:00
Travis Ralston 8fa56de2bb Reset the user's cached sticker packs when they (de)select packs
Otherwise we'll display stale packs and the user won't see updates. Part of #156
2018-05-13 22:35:54 -06:00
Travis Ralston 7a0af05ac4 Sticker pack selection (without widget)
This is the UI where the user can pick which stickers they want. This does not add the widget yet though.

Helps towards #156
2018-05-12 23:51:31 -06:00
Travis Ralston e8274c9d87 Sticker pack administration
The first step towards #156
2018-05-12 21:55:02 -06:00
Travis Ralston 39365fd00e Don't crash if widgets are not embeddable 2018-04-01 11:23:55 -06:00
Travis Ralston 981e026f8d Static content is defined in the configure() method 2018-04-01 11:14:59 -06:00
Travis Ralston a1210761eb Clear the token cache when creating upstreams
Otherwise we'll flood ourselves with token errors in the backend
2018-03-31 22:10:13 -06:00
Travis Ralston 84f3977fd4 Serve static content correctly 2018-03-31 18:11:15 -06:00
Travis Ralston a6dae219a5 Add the missing "embed-ability" api for widgets 2018-03-31 16:38:55 -06:00
Travis Ralston 9a8041ea38 Self-service removal of channel links 2018-03-31 15:48:20 -06:00
Travis Ralston f33f7e5716 Self-service requests to bridge IRC channels 2018-03-31 14:37:36 -06:00
Travis Ralston aa8ec0ed58 API and UI for toggling IRC networks 2018-03-31 11:26:00 -06:00
Travis Ralston 61ca805b19 Initial admin APIs for managing IRC bridges
Missing functionality:
* Toggle networks
* Add self-hosted
2018-03-30 23:12:31 -06:00
Travis Ralston 76931819af Add the shell for configuring IRC bridges 2018-03-30 19:22:15 -06:00
Travis Ralston ff088e3e49 Add a whole lot more logging to the backend 2018-03-30 16:34:39 -06:00
Travis Ralston 39a71429f3 Add documentation for the backend APIs 2018-03-30 15:17:39 -06:00
Travis Ralston 4365cb0753 Support Travis CI completely
Webhooks are generated eagerly but have lazily set targets so that we can give the user a webhook URL to set in their config. go-neb (upstream & standalone) doesn't give a webhook URL until after the repositories are configured.

Fixes #16
2018-03-30 14:59:25 -06:00
Travis Ralston 18597db540 Add self-service configuration for the RSS bot
Fixes #14
2018-03-26 21:48:44 -06:00
Travis Ralston 1233be85e9 Add a health endpoint
For monitoring
2018-03-26 18:46:08 -06:00
Travis Ralston 2c1366d9d7 Very early support for configuring complex bots
Using the RSS Bot as an example. Notably missing features:
* Configuration (feeds) not retrieved
* No actual configuration page
2018-03-25 21:02:32 -06:00
Travis Ralston 87121150cc Support removing simple bots from rooms 2018-03-25 16:20:15 -06:00
Travis Ralston 009b510779 Special case each integration, forcing simple bots to go through an NebProxy
This is so the different needs of each can be accounted for. For example, widgets are fairly unrestricted, so nothing really needs to prevent them. Bots on the other hand require an upstream token otherwise we can't get the bot IDs from Modular.
2018-03-25 13:13:50 -06:00
Travis Ralston 947ecd43cd Early support for managing bots in the room
Known drawbacks:
* Cannot remove bots
* Cannot use upstream neb instances
2018-03-25 00:45:57 -06:00
Travis Ralston 21aba80f54 Add the configuration screen for Giphy 2018-03-24 21:17:44 -06:00
Travis Ralston 8cdae3359d Support explicit setting of the federation/client URLs
The client/server URL is needed for go-neb to work correctly, and to remove our complete dependence on federation.

The federation URL is also configurable so servers that don't wish to federate can specify a local address.
2018-03-24 17:09:34 -06:00
Travis Ralston bc4319da7d Remove unused APIs 2018-03-24 14:54:20 -06:00
Travis Ralston 58f8ca8335 Support provisioning bots in go-neb
This is so far only possible for the bots that don't require additional configuration in go-neb.
2018-03-24 14:54:12 -06:00
Travis Ralston 62d81ed842 Show the appservice configuration after saving; Make the show config button work
Includes the ability to 'test' the appservice. This doesn't bother checking if the URL is set up correctly because we don't actually care about the transactions.
2018-03-24 12:18:38 -06:00
Travis Ralston 7a2627ad76 Move admin routes to their own API namespace 2018-03-23 21:36:43 -06:00
Travis Ralston 7c757a79e6 Use async/await throughout the backend 2018-03-23 21:26:14 -06:00
Travis Ralston 8d6c2dfa00 Convert the frontend to the async/await pattern
We have to drop bluebird to be able to do this.
2018-03-23 21:01:56 -06:00
Travis Ralston 74054c3962 Add ability to create self-hosted go-neb instances
They can't be provisioned or configured correctly yet, but they exist.
2018-01-31 16:30:08 -07:00
Travis Ralston 8b3f6e37ce Support configuring the upstream go-neb bots 2017-12-28 18:22:50 -07:00
Travis Ralston c5b803343e Move app from src-ts to src 2017-12-24 02:28:48 -07:00