Compare commits

...

2 Commits

Author SHA1 Message Date
BramvdnHeuvel 425d964af5
Merge pull request #28 from noordstar/patch-no-baseurl-found
Default to original server name if no well-known found
2024-06-05 12:16:53 +02:00
Bram 21ae0ea376 Default to original server name if no well-known found 2024-06-04 15:50:08 +02:00
2 changed files with 21 additions and 4 deletions

View File

@ -35,9 +35,10 @@ import Internal.Api.Request as Request
import Internal.Api.SendMessageEvent.Api
import Internal.Api.Versions.Api
import Internal.Config.Log exposing (Log, log)
import Internal.Config.Text as Text
import Internal.Tools.Json as Json
import Internal.Values.Context as Context exposing (APIContext)
import Internal.Values.Envelope exposing (EnvelopeUpdate(..))
import Internal.Values.Envelope as E exposing (EnvelopeUpdate(..))
import Internal.Values.Room exposing (RoomUpdate(..))
import Internal.Values.Vault exposing (VaultUpdate(..))
import Task
@ -111,7 +112,20 @@ getBaseUrl c =
Nothing ->
Internal.Api.BaseUrl.Api.baseUrl
{ url = Context.fromApiFormat c |> .serverName }
c
|> C.catchWith
(\_ ->
let
url : String
url =
Context.fromApiFormat c
|> .serverName
in
{ contextChange = Context.setBaseUrl url
, logs = [ log.warn (Text.logs.baseUrlFailed url) ]
, messages = [ E.SetBaseUrl url ]
}
)
|> (|>) c
{-| Get the current timestamp

View File

@ -609,7 +609,8 @@ happened. Most of these unexpected results, are taken account of by the Elm SDK,
but logged so that the programmer can do something about it.
-}
logs :
{ baseUrlFound : String -> String -> String
{ baseUrlFailed : String -> String
, baseUrlFound : String -> String -> String
, getEventId : String -> String
, getNow : Int -> String
, httpRequest : String -> String -> String
@ -621,7 +622,9 @@ logs :
, serverReturnedUnknownJSON : String -> String
}
logs =
{ baseUrlFound =
{ baseUrlFailed =
(++) "Failed to find .well-known, using default server address: "
, baseUrlFound =
\url baseUrl ->
String.concat [ "Found baseURL of ", url, " at address ", baseUrl ]
, getEventId = (++) "Received event with id = "