Skip to content

Latest commit

 

History

History
74 lines (53 loc) · 3.68 KB

部署到本地与云服务器.md

File metadata and controls

74 lines (53 loc) · 3.68 KB

部署到本地与云服务器

安装

  • 更新Node.JS到16+版本(推荐使用n工具升级)

  • Clone项目/下载Zip包

    git clone [email protected]:KairuiLiu/auto-clock-in-szxd.git
  • 进入/src, 安装依赖

    cd src
    npm install

至此, 环境准备完成

配置

配置文件为/src/config.js. config.js中已经给出参数详细说明.

若不使用轻服务, 只需配置学号, 密码即可开始使用, 但是仍然建议自定义: 位置信息与查寝图片, 打卡结果邮件发送.

获取图片

  • methods=apiImg: 您可以给出一个可以产生图像的链接, 需要上传图像时, 程序会自动获取图像并提交至学校服务器, 我们在配置文件中预先留了一个地址, 该地址可以随机获得一个200x200的图像
  • methods=urls: 如果您认为随即图像太过草率可以提前拍一些照片, 使用/src/getLocalImageInfo.js获取图像信息, 然后填入url数组中. 使用方法为: 将图片(例如demo.png)拷贝到getLocalImageInfo.js同目录, 执行
    node ./getLocalImageInfo.js demo.png
    即可在控制台获得图片信息
  • methods=api: 设置此项后, 在打卡时, 程序会请求api中的地址, 您应该保证该地址可以返回形如url中元素的对象, 程序会获取对象并提交表单
  • methods=qingfuwu: 设置此项后, 您可以在轻服务托管的网站中随时上传图片, 图片将保存在您的轻服务服务器, 在查寝时, 程序会自动获取轻服务文件中第一张图片, 自动获取图像信息并提交表单. 若服务器中不止一张图片, 在上传完成后该图片将会被销毁, 详见部署到轻服务
  • methods=tencentCOS: 设置此项后, 您可以在腾讯云COS托管的网站中随时上传图片, 图片将保存在您的COS存储桶中, 在查寝时, 程序会自动获取桶中第一张图片, 自动获取图像信息并提交表单. 若桶中图片不止一张图片, 在上传完成后该图片将会被销毁, 详见部署到腾讯云云函数. (请注意, COS存储为付费服务)

打卡结果邮件发送

可以通过两种方式实现邮件发送

  • 在本地部署: config.js配置如下

    resultEmail: {                                  // 采用邮件通知
      enable: true,                                 // 是否开启
      qingMid: false,                               // 是否采用轻服务小中间件发送邮件, 若不采用则必须配置最后三行
      restImg: false,                               // [限腾讯云COS与轻服务修改]是否在返回查寝信息时返回剩余照片数
      saver: '[email protected]',                   // 收件邮箱地址
      senderService: '',                            // [采用轻服务中间件可以不写]发件邮箱服务器, 例如`QQ`, `outlook`
      sender: '',                                   // [采用轻服务中间件可以不写]发件邮箱地址
      senderPassword: '',                           // [采用轻服务中间件可以不写]发件邮箱密码
    },
  • 如果您不清楚如何配置发件邮箱, 可以选择部署在轻服务, 并采用作者邮箱作为发件邮箱. 详见部署到轻服务

使用

  • 健康打卡: 执行
    node src/morning.js
  • 查寝: 执行
    node src/evening.js

看起来有点蠢, 可以注册一个Cron任务执行程序, 当然, 最好的办法还是借助云函数. 我们以字节跳动轻服务为例, 详见部署到轻服务

高级操作

需要使用字节跳动轻服务, 详见部署到轻服务