Add error reporting on connect and main page
This commit is contained in:
parent
96c890f1f5
commit
16582a6592
4 changed files with 49 additions and 13 deletions
|
@ -36,11 +36,10 @@ export default class Client extends EventTarget {
|
|||
try {
|
||||
this.ws = new WebSocket(params.url);
|
||||
} catch (err) {
|
||||
console.error("Failed to create connection:", err);
|
||||
this.dispatchEvent(new CustomEvent("error", { detail: "Failed to create connection: " + err }));
|
||||
setTimeout(() => this.dispatchEvent(new CustomEvent("close")), 0);
|
||||
return;
|
||||
}
|
||||
|
||||
this.ws.addEventListener("open", this.handleOpen.bind(this));
|
||||
this.ws.addEventListener("message", this.handleMessage.bind(this));
|
||||
|
||||
|
@ -50,7 +49,7 @@ export default class Client extends EventTarget {
|
|||
});
|
||||
|
||||
this.ws.addEventListener("error", () => {
|
||||
console.error("Connection error");
|
||||
this.dispatchEvent(new CustomEvent("error", { detail: "Connection Error" }));
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -95,7 +94,7 @@ export default class Client extends EventTarget {
|
|||
this.registered = true;
|
||||
break;
|
||||
case irc.ERR_PASSWDMISMATCH:
|
||||
console.error("Password mismatch");
|
||||
this.dispatchEvent(new CustomEvent("error", { detail: "Password mismatch" }));
|
||||
this.close();
|
||||
break;
|
||||
case "CAP":
|
||||
|
@ -121,7 +120,7 @@ export default class Client extends EventTarget {
|
|||
case irc.ERR_SASLTOOLONG:
|
||||
case irc.ERR_SASLABORTED:
|
||||
case irc.ERR_SASLALREADY:
|
||||
console.error("SASL error:", msg);
|
||||
this.dispatchEvent(new CustomEvent("error", { detail: "SASL error: " + msg }));
|
||||
this.close();
|
||||
break;
|
||||
case "PING":
|
||||
|
@ -258,7 +257,7 @@ export default class Client extends EventTarget {
|
|||
|
||||
// For now only PLAIN is supported
|
||||
if (challengeStr != "+") {
|
||||
console.error("Expected an empty challenge, got:", challengeStr);
|
||||
this.dispatchEvent(new CustomEvent("error", { detail: "Expected an empty challenge, got: " + challengeStr }));
|
||||
this.send({ command: "AUTHENTICATE", params: ["*"] });
|
||||
return;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue