iT邦幫忙

2021 iThome 鐵人賽

DAY 11
0
Modern Web

telegram開發筆記系列 第 14

[14] 開始使用 telegram

先到以下網址

https://my.telegram.org/auth

建立自己的api憑證

目標是拿到 id 和 hash

https://ithelp.ithome.com.tw/upload/images/20210916/20130673nkfj3JKc4Q.jpg

然後安裝 telegram 的套件

https://www.npmjs.com/package/telegram

npm i telegram --save

建立 telegramItem.js 來使用 telegram 的 api

interface\telegramItem.js

const { TelegramClient } = require("telegram");
const { StringSession } = require("telegram/sessions");
const { Logger } = require("telegram/extensions");

Logger.setLevel("none"); // 這邊可以隱藏很多關於 telegram 的運作細節

class TelegramItem {
  constructor() {}

  /**
   * @description 確保都拿到同一個實例
   *
   * @static
   * @return {*}
   * @memberof ConsoleItem
   */
  static getInstance() {
    if (!this.instance) {
      this.instance = new this();
    }
    return this.instance;
  }

  /**
   * @description 初始化 telegram 實體
   *
   * @memberof TelegramItem
   */
  init() {
    this.client = new TelegramClient(
      new StringSession(""),
      Number(process.env.telegramId), // 這邊輸入你的 id
      process.env.telegramHash, // 輸入你的 hash
      { connectionRetries: 5 }
    );
  }
}

const telegramItem = TelegramItem.getInstance();

telegramItem.init();

module.exports = telegramItem;

接著在 flowController 頭頂加進去就好

controller\flowController.js

const viewPrinter = require("../view/viewPrinter");
const telegramItem = require("../interface/telegramItem");

這樣 telegram client 部分就完成了

day14


上一篇
[13] 製作離開功能
下一篇
[15] 建立 class 創建實例的繼承
系列文
telegram開發筆記18

尚未有邦友留言

立即登入留言