catch poll timeout
This commit is contained in:
		@@ -41,8 +41,8 @@ export default class tg extends EventEmitter {
 | 
			
		||||
    };
 | 
			
		||||
  }
 | 
			
		||||
  async poll() {
 | 
			
		||||
    try {
 | 
			
		||||
      let res = await (await fetch(`${this.api}/getUpdates?offset=${this.lastUpdate}&allowed_updates=message`)).json();
 | 
			
		||||
    setTimeout(async () => { await this.poll(); }, this.options.pollrate);
 | 
			
		||||
      if (!res.ok)
 | 
			
		||||
        return this.emit("data", ["error", res.description]);
 | 
			
		||||
      if (res.result.length === 0)
 | 
			
		||||
@@ -64,15 +64,21 @@ export default class tg extends EventEmitter {
 | 
			
		||||
        return this.emit("data", ["message", this.reply(res.message)]);
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
    catch {
 | 
			
		||||
      return this.emit("data", ["error", "tg timed out lol"]);
 | 
			
		||||
    }
 | 
			
		||||
    finally {
 | 
			
		||||
      setTimeout(async () => { await this.poll(); }, this.options.pollrate);
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  async send(chatid, msg, reply = null) {
 | 
			
		||||
    msg = Array.isArray(msg) ? msg.join("\n") : msg;
 | 
			
		||||
    if (msg.length === 0 || msg.length > 2048)
 | 
			
		||||
      return this.emit("data", ["error", "msg to short or to long lol"]);
 | 
			
		||||
    const opts = {
 | 
			
		||||
      method: "POST",
 | 
			
		||||
      body: {
 | 
			
		||||
        chat_id: chatid,
 | 
			
		||||
        text: this.format(msg),//msg.split("\n").length > 1 ? `<code>${this.format(msg)}</code>` : this.format(msg),
 | 
			
		||||
        text: msg.split("\n").length > 1 ? `<code>${msg}</code>` : msg,
 | 
			
		||||
        parse_mode: "HTML"
 | 
			
		||||
      }
 | 
			
		||||
    };
 | 
			
		||||
@@ -99,9 +105,9 @@ export default class tg extends EventEmitter {
 | 
			
		||||
      message: tmp.text,
 | 
			
		||||
      time: tmp.date,
 | 
			
		||||
      raw: tmp,
 | 
			
		||||
      reply: msg => this.send(tmp.chat.id, msg, tmp.message_id),
 | 
			
		||||
      replyAction: msg => this.send(tmp.chat.id, `Uwe ${msg}`, tmp.message_id),
 | 
			
		||||
      replyNotice: msg => this.send(tmp.chat.id, msg, tmp.message_id),
 | 
			
		||||
      reply: msg => this.send(tmp.chat.id, this.format(msg), tmp.message_id),
 | 
			
		||||
      replyAction: msg => this.send(tmp.chat.id, this.format(`Uwe ${msg}`), tmp.message_id),
 | 
			
		||||
      replyNotice: msg => this.send(tmp.chat.id, this.format(msg), tmp.message_id),
 | 
			
		||||
      _user: this.server.user
 | 
			
		||||
    };
 | 
			
		||||
  }
 | 
			
		||||
@@ -109,7 +115,6 @@ export default class tg extends EventEmitter {
 | 
			
		||||
    return msg.toString()
 | 
			
		||||
      .split("<").join("<")
 | 
			
		||||
      .split(">").join(">")
 | 
			
		||||
      .split("&").join("&")
 | 
			
		||||
      .replace(/\[b\](.*?)\[\/b\]/g, "<b>$1</b>") // bold
 | 
			
		||||
      .replace(/\[i\](.*?)\[\/i\]/g, "<i>$1</i>") // italic
 | 
			
		||||
      .replace(/\[color=(.*?)](.*?)\[\/color\]/g, "$2")
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user