proxy: use wherever http.Client is, update mautrix

Added a new common.ConfigurableTransport interface which mediabrowser,
ombi, jellyseer, discord, telegram and matrix (i.e.
ThirdPartService/ContactMethodLinker) now all implement. proxies are
bound to them in main.go, Email is still a special case (but from the
previous commit, mailgun does use the proxy).

mautrix/go has been updated, and context.TODO()s stuck everywhere since
I still don't really comprehend why I should use them (FIXME literally).
This commit is contained in:
Harvey Tindall
2024-08-09 21:40:03 +01:00
parent a52dd26ec6
commit 86c7551ff8
15 changed files with 281 additions and 263 deletions
+6
View File
@@ -3,6 +3,7 @@ package main
import (
"fmt"
"math/rand"
"net/http"
"strings"
"time"
@@ -84,6 +85,11 @@ func newTelegramDaemon(app *appContext) (*TelegramDaemon, error) {
return td, nil
}
// SetTransport sets the http.Transport to use for requests. Can be used to set a proxy.
func (d *TelegramDaemon) SetTransport(t *http.Transport) {
d.bot.Client.Transport = t
}
func genAuthToken() string {
rand.Seed(time.Now().UnixNano())
pin := make([]rune, 8)