diff --git a/components/app.js b/components/app.js index 6354bdd..9b650ec 100644 --- a/components/app.js +++ b/components/app.js @@ -159,6 +159,7 @@ export default class App extends Component { saslExternal: false, autoconnect: false, autojoin: [], + ping: 0, }, connectForm: true, loading: true, @@ -253,6 +254,9 @@ export default class App extends Component { if (config.server.auth === "external") { connectParams.saslExternal = true; } + if (typeof config.server.ping === "number") { + connectParams.ping = config.server.ping; + } } let autoconnect = store.autoconnect.load(); @@ -652,10 +656,6 @@ export default class App extends Component { if (params.autojoin.length > 0) { this.switchToChannel = params.autojoin[0]; } - - if (this.config.server && typeof this.config.server.ping !== "undefined") { - client.setPingInterval(this.config.server.ping); - } } disconnect(serverID) { diff --git a/lib/client.js b/lib/client.js index 1bb62e4..bced0be 100644 --- a/lib/client.js +++ b/lib/client.js @@ -122,6 +122,7 @@ export default class Client extends EventTarget { saslPlain: null, saslExternal: false, bouncerNetwork: null, + ping: 0, }; debug = false; batches = new Map(); @@ -244,6 +245,7 @@ export default class Client extends EventTarget { this.setStatus(Client.Status.REGISTERING); this.reconnectBackoff.reset(); + this.setPingInterval(this.params.ping); this.nick = this.params.nick;