[06] 回音机器人

开始实做发给 telegram 的回覆

telegram 使用 axios 来要求 telegram 传送讯息

先安装吧

npm i axios --save

修改 main.js 的档案

const { sendBotMessage } = require("./telegramItem");

function receiveTelegram(data) {
  console.log(data);
  sendBotMessage({
    chat_id : data.message.chat.id,
    method: "sendMessage",
    text: data.message.text
  })
}

module.exports = {
  receiveTelegram
}

实作 telegramItem.js 的功能

const axios = require("axios");
/**
 * @description 发送讯息,请换成自己的机器人 token
 *
 * @param {object} data telegram bot api format
 */
function sendBotMessage(data) {
  const url =
    "https://api.telegram.org/bot" +
    "1978609847:AAHg8e-V_bNx78PCZok8uYzN8BYwlRScfgA" +
    "/";
  // 如果他是 text 讯息的话就这样回声
  if (data.text) {
    axios({
      url,
      method: "post",
      data,
    })
      .then((data) => {
        console.log("Send Telegram:");
        console.log(data.data);
      })
      .catch((e) => {
        console.log("Send Telegram: Error:");
        console.log(e);
      });
  }
}

module.exports = {
  sendBotMessage,
};

打开 telegram 对你开启的机器人对话就会开始自动回覆了

目前只能回应单个 text 的讯息

其他贴图图面等等都不行

但也请试着传送各种类型的讯息

看看 console 的各种讯息

才看得懂下一篇

day06


<<:  [Day6] 'undefined' vs 'not defined'

>>:  Material UI in React [ Day 20] Feedback

由GCC了解C语言,学习笔记

gcc gcc 这边将介绍如何使用gcc将C语言程序码编译成可执行程序,以下将会介绍编译的过程,程序...

[Day-02] - Annotation Modulize Introduction

Abstract Annotation的技术风格为Java 5 之後所推畅出来的新模式,并将注解区分...

第 21 集:Bootstrap 客制化 utilities(上)

此篇会教学如何将 Bootstrap 通用类别 utilities 自干一个出来。 事前准备: 原...

Day 29 - 使用 AWS S3 服务

本来没有打算要写这个内容的,但是提到上传图片,好像不能不说一下云端储存,毕竟不能永远在本地端欣赏自己...

day23 : TIDB on K8S (下)

尝试使用了TIDB後,接着就开始让他跟k8s做结合吧,我会介绍一次完整的TIoperator,然後配...