fix websockets

This commit is contained in:
zoe 2022-08-15 15:53:38 +02:00
parent 963e2b5656
commit 7c3bbe700f
2 changed files with 13 additions and 8 deletions

View File

@ -51,7 +51,6 @@ class AccountSettings {
Future<bool> saveWebsocketUrl(String url) async {
webSocketUrl = url;
print(webSocketUrl);
var p = await prefs.setString("$identity.$webSocketUrlKey", url);
websocket.reloadWebsockets();
return p;
@ -178,7 +177,6 @@ class Settings {
identitiesKey,
identities.keys.toList(),
);
print("removing identity");
websocket.reloadWebsockets();
return p;
}

View File

@ -11,16 +11,23 @@ Future<void> reloadWebsockets() async {
for (int i = 0; i < global.settings!.identities.length; i++) {
final idName = global.settings!.identities.keys.toList()[i];
final id = global.settings!.identities[idName]!;
final uri = Uri.parse(
"${id.webSocketUrl}/api/v1/streaming",
);
Map<String, String> headers = id.getAuthHeaders();
headers.addAll(global.defaultHeaders);
var query = {
"stream": "user",
"access_token": id.token,
};
var host = id.webSocketUrl;
host = host.replaceFirstMapped("wss://", (match) => "");
host = host.replaceFirstMapped("ws://", (match) => "");
final uri = Uri(
scheme: "wss",
host: host,
path: "/api/v1/streaming",
queryParameters: query);
map.addAll(
{
idName: IOWebSocketChannel.connect(
uri,
headers: headers,
headers: global.defaultHeaders,
),
},
);