# wechat-push
**Repository Path**: geo_0/wechat-push
## Basic Information
- **Project Name**: wechat-push
- **Description**: 微信每日早安及天气推送 go语言版 简单易懂
- **Primary Language**: Go
- **License**: MulanPSL-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 3
- **Forks**: 1
- **Created**: 2022-11-23
- **Last Updated**: 2024-02-06
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# wechat-push
### 介绍
微信消息推送微信每日早安及天气推送 go语言版 简单易懂
### 效果展示
### 目录说明
项目文件说明
```text
wechat-push
├── config 配置包
│ └── config.go 用于定义配置及读取config.yml
│
├── internal 内部业务逻辑层
│ │
│ ├── crontab 定时任务包
│ │ └── cron.go 定时任务
│ │
│ ├── model 模型包
│ │ ├── templates.go 微信消息模板模型
│ │ ├── weather.go 天气信息模型
│ │ └── wechat.go 微信调用模型
│ │
│ ├── repository 调用外部层
│ │ ├── quote.go 获取词霸每日一句
│ │ ├── weather.go 与和风天气接口打交道的~
│ │ └── wechat.go 与微信接口打交道的~
│ │
│ ├── quote.go 得到每日一句
│ ├── run.go 开润~
│ ├── weather.go 组装天气数据
│ └── wechat.go 微信的业务逻辑~
│
├── pkg 封装的包
│ ├── http 封装的http
│ │ └── client.go
│ ├── logger logger
│ │ └── logger.go
│ ├── signal 等待退出信号
│ │ └── shutdown.go
│ └── util 工具
│ └── util.go
│
├── LICENSE
├── main.go 程序入口
├── config.yml 服务的配置文件
│
├── Makefile linux-amd下对服务进行编译
├── wechat-push 编译后产生的二进制程序文件
│
├── start.sh linux下服务后台启动
├── stop.sh linux下停止后台服务
└── wechat-push.log 服务的日志文件
```
### 使用说明
1. [微信开放平台](https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login)申请测试账号,获取appId 和appSecret
配置到config.yml
2. [和风天气](https://console.qweather.com/#/apps?lang=zh)去开通获取天气的api及key
配置到config.yml
3. 新增测试模板
```text
🌅早上好呀{{name.DATA}}!
📅今天是:{{today.DATA}}
🏡坐标:{{city.DATA}}
🌈当前天气:{{weather.DATA}} {{temp.DATA}}
☀最高气温:{{maxTemp.DATA}}
❄最低气温:{{minTemp.DATA}}
🌀空气质量:{{air.DATA}}
👀能见度:{{vis.DATA}}
🍃风向风速:{{wind.DATA}}
{{nodeEn.DATA}}
{{nodeCh.DATA}}
```
提交后获得模板id,添加到config.yml里
4. 扫码关注测试账号,得到微信号,
复制微信号添加到config.yml添加用户信息
5. 定时任务设置
作者用的cron v1
- 例如:1 3 8 * * ?
- 代表每天 8点 3 分 1 秒 时执行
6. 每日一句可以进行手动配置,如果不配置会去词霸每日一句获取
### 安装教程
1. git clone ..
2. go mod tidy
3. config配置好后可以 go run main.go -test (或-t)进行测试
- linux 下可先进行`make`,再`./wechat-push -t`
5. 发送成功了
### 参与贡献
1. Fork 本仓库
2. 新建 Feat_xxx 分支
3. 提交代码
4. 新建 Pull Request
5. 喜欢还请点个小星星