From 8f8d252669c83b1138ecf1d9e72edaf037dee7f9 Mon Sep 17 00:00:00 2001 From: "yuekin.wang" Date: Wed, 21 Sep 2022 14:50:15 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=A5=E5=85=85=E6=96=87=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 4 + config/index.js | 387 ++++++++++++++++++------------------------------ 2 files changed, 151 insertions(+), 240 deletions(-) diff --git a/README.md b/README.md index 65a06fbc0e..c12cdf9406 100644 --- a/README.md +++ b/README.md @@ -180,6 +180,10 @@ wechat-public-account-push 实现自消息推送的原理,是通过调用一 ### 1.3. 第三步:完成配置文件,并运行wechat-public-account-push +**!!!** +如果你非开发,请[点此](https://github.com/shuangxunian/wechat-form)!!! +**!!!** + #### 1.3.1 方式一:使用Github-Action(不准时,排队执行,胜在免费) 👇👇👇👇点击展开 diff --git a/config/index.js b/config/index.js index f412cfede8..df8b3ffe3f 100644 --- a/config/index.js +++ b/config/index.js @@ -1,242 +1,149 @@ -export const config = { - /** - * 公众号配置 - */ - - // 公众号APP_ID - // 建议不要填这里,请使用文档中github secret的方法进行保密配置,保护您的隐私安全。 - // 如果你非要填这里也行。脚本也能运行 - APP_ID: "", - - // 公众号APP_SECRET - // 建议不要填这里,请使用文档中github secret的方法进行保密配置,保护您的隐私安全。 - // 如果你非要填这里也行。脚本也能运行 - APP_SECRET: "", - - // 是否给文字设置多彩颜色, 和emoji不兼容 - // 如果您使用了微信测试号的模板中含有emoji表情,请填 false - IS_SHOW_COLOR: true, - - // 功能开关,打开:true,关闭:false - SWITCH: { - /** 每日天气 */ - weather: true, - - /** 节假日 */ - // 下一休息日综合提醒 - holidaytts: true, - - /** 每日N句 */ - // 金山每日一句 - CIBA: true, - // 每日一言 - oneTalk: false, - // 土味情话(彩虹屁) - earthyLoveWords: false, - // 朋友圈文案 - momentCopyrighting: false, - // 毒鸡汤 - poisonChickenSoup: false, - // 古诗古文 - poetry: false, - - /** 星座运势 */ - horoscope: false, - - /** 生日消息和节日消息 */ - birthdayMessage: true, - }, - - /** 每日一言 */ - - // 每日一言的内容类型 - // 可以填写【动画,漫画,游戏,小说,原创,网络,其他】; 随机则填写 "" - LITERARY_PREFERENCE: "", - - - /** - * 接收公众号消息的微信号,如果有多个,需要在[]里用英文逗号间隔 - */ - USERS: [ - { - // 想要发送的人的名字 - name: "老婆0", - // 扫码关注你的微信测试号后生成的一段字符串,在测试号后台能看到 - id: "", - // 你想对他发送的模板消息的模板ID - useTemplateId: "", - // 所在省份 - province: "广东", - // 所在城市 - city: "肇庆", - // 新历生日, 仅用作获取星座运势, 格式必须 - horoscopeDate: '12-27', - // 获取什么时候的星座运势,可选:['今日', '明日', '本周', '本月', '今年'], 留空则随机 - horoscopeDateType: '今日', - // 他点击详情后跳转的页面,你可以设置成微博的热榜,也可以设置成其他,网址一定要填对;不填对也没关系,随便你,会打不开而已。 - openUrl: "https://wangxinleo.cn", - // 专属节日提醒,如果你在这里填写了节日提醒,就不会执行FESTIVALS的提醒了, 和FESTIVALS的配置方法相同,可以往下查看,我这里就不重复写了 - festivals: [ - // 注意:此条配置日期为阴历日期,因为`type`中 “生日” 之前有 * 符号 - {"type": "*生日", "name": "老婆", "year": "1996", "date": "09-09"}, - {"type": "节日", "name": "结婚纪念日", "year": "2020", "date": "09-03"}, - // 注意:此条配置日期为阳历日期,因为`type`中 “生日” 之前没有 * 符号 - {"type": "生日", "name": "李四", "year": "1996", "date": "09-31"}, - {"type": "节日", "name": "被搭讪纪念日", "year": "2021", "date": "09-01"}, - ], - // 专属纪念日/倒数日,如果你在这里填写了纪念日/倒数日,就不会计算CUSTOMIZED_DATE_LIST的日子了, 和CUSTOMIZED_DATE_LIST的配置方法相同,可以往下查看,我这里就不重复写了 - customizedDateList: [ - // 在一起的日子 - {"keyword": "love_day", date: "2022-09-08"}, - // 结婚纪念日 - {"keyword": "marry_day", date: "2022-09-09"}, - // 退伍日 - {"keyword": "ex_day", date: "2022-09-10"}, - ] - }, - { - name: "老婆1", - id: "", - useTemplateId: "", - province: "", - city: "", - horoscopeDate: '', - horoscopeDateType: '', - openUrl: "https://wangxinleo.cn", - festivals: [], - customizedDateList: [] - }, - { - name: "老婆2", - id: "", - useTemplateId: "", - province: "", - city: "", - horoscopeDate: '', - horoscopeDateType: '', - openUrl: "https://wangxinleo.cn", - festivals: [], - customizedDateList: [] - }, - { - name: "老婆3", - id: "", - useTemplateId: "", - province: "", - city: "", - horoscopeDate: '', - horoscopeDateType: '', - openUrl: "https://wangxinleo.cn", - festivals: [], - customizedDateList: [] - }, - // 你可以不断按格式往下增加 - // ... - ], - - /** - * 【推送完成提醒】 相关,主要用来展示发送是否成功/失败的数据 - */ - - // 【推送完成提醒】模板id, 用来看自己有没有发送成功的那个模板 - CALLBACK_TEMPLATE_ID: "", - - // 接收成功回调消息的微信号,(一般来说只填自己的微信号, name填不填无所谓) - CALLBACK_USERS: [ - { - // 一般都填自己 - name: "自己", - // 自己的微信id,扫码关注你的微信测试号后生成的一段字符串,在测试号后台能看到 - id: "", +let myConfig = {} +if (process.env.USER_INFO) { + myConfig = JSON.parse(process.env.USER_INFO) +} else { + myConfig = { + /** + * 公众号配置 + */ + + // 公众号APP_ID + // 建议不要填这里,请使用文档中github secret的方法进行保密配置,保护您的隐私安全。 + // 如果你非要填这里也行。脚本也能运行 + APP_ID: "", + + // 公众号APP_SECRET + // 建议不要填这里,请使用文档中github secret的方法进行保密配置,保护您的隐私安全。 + // 如果你非要填这里也行。脚本也能运行 + APP_SECRET: "", + + // 是否给文字设置多彩颜色, 和emoji不兼容 + // 如果您使用了微信测试号的模板中含有emoji表情,请填 false + IS_SHOW_COLOR: true, + + // 功能开关,打开:true,关闭:false + SWITCH: { + /** 每日天气 */ + weather: true, + + /** 节假日 */ + // 下一休息日综合提醒 + holidaytts: true, + + /** 每日N句 */ + // 金山每日一句 + CIBA: true, + // 每日一言 + oneTalk: false, + // 土味情话(彩虹屁) + earthyLoveWords: false, + // 朋友圈文案 + momentCopyrighting: false, + // 毒鸡汤 + poisonChickenSoup: false, + // 古诗古文 + poetry: false, + + /** 星座运势 */ + horoscope: false, + + /** 生日消息和节日消息 */ + birthdayMessage: true, }, - // 你可以不断按格式往下增加 - // ... - ], - - /** - * 信息配置 - */ - - /** 天气相关 */ - - // 默认所在省份, USERS 中没填的话, 会默认拿这里的省份 - PROVINCE: "广东", - // 默认所在城市, USERS 中没填的话, 会默认拿这里的城市 - CITY: "惠州", - - /** 重要节日相关 */ - - /** - * 重要节日,修改名字为对应需要显示的名字, date 仅填月日即可, 请严格按照示例填写 - * type必须填! 只能 “生日” 和 “节日” 二选一! - * - * --- 阴历配置开始 --- - * 如果日期使用阴历,请在 “生日” 或 "节日“ 前添加 * 符号 - * --- 阴历配置结束 --- - * - * 生日时,name填写想要展示的名字,你可以填“美丽可爱亲亲老婆” - * 节日时,name填写相应展示的节日,你可以填“被搭讪纪念日” - * - * --- 是否展示周岁信息开始 --- - * isShowAge: true 展示岁数, 仅type为生日生效 - * isShowAge: false 不展示岁数, 仅type为生日生效 - * 删除isShowAge属性,也会不展示岁数 - * --- 是否展示周岁信息结束 --- - */ - FESTIVALS: [ - // 注意:此条配置日期为阴历日期,因为`type`中 “生日” 之前有 * 符号 - {"type": "*生日", "name": "老婆", "year": "1996", "date": "09-09", isShowAge: true}, - {"type": "节日", "name": "结婚纪念日", "year": "2020", "date": "09-03"}, - // 注意:此条配置日期为阳历日期,因为`type`中 “生日” 之前没有 * 符号 - {"type": "生日", "name": "李四", "year": "1996", "date": "09-31", isShowAge: true}, - {"type": "节日", "name": "被搭讪纪念日", "year": "2021", "date": "09-01"}, - // 你可以不断按格式往下增加 - // ... - ], - - /** - * 限制重要节日的展示条目, 需要填写数字; - * 如果为3, 则仅展示“将要到达” 的3个重要节日提醒,剩下的将被忽略 - * 如果为0, 则默认展示全部 - */ - FESTIVALS_LIMIT: 4, - - /** 日期相关 */ - - /** 你现在可以随心增加你认为的所有的需要纪念的日子啦! - * keyword是指暴露给测试号的模板字段,填什么就暴露什么, 请注意不要和README的出参表中的字段重复。 - * 比如:keyword: "love_date" ,在测试号中就是 {{ love_date.DATA }} - * */ - CUSTOMIZED_DATE_LIST: [ - // 在一起的日子 - {"keyword": "love_day", date: "2022-09-08"}, - // 结婚纪念日 - {"keyword": "marry_day", date: "2022-09-09"}, - // 退伍日 - {"keyword": "ex_day", date: "2022-09-10"}, - // 你可以不断按格式往下增加 - // ... - ], - - /** 插槽 */ - - /** 你可以在这里写超多的你想显示的内容了! - * keyword是指暴露给测试号的模板字段,填什么就暴露什么, 请注意不要和README的出参表中的字段重复。 - * 比如:keyword: "lover_prattle" ,在测试号中就是 {{ lover_prattle.DATA }} - * */ - SLOT_LIST: [ - // 这样配置的话,就会每次发送这句话 - {"keyword": "encourage_oneself", contents: "你主要的问题在于读书太少而想得太多"}, - // 这样配置的话,就会每次随机选一句话发送 - {"keyword": "lover_prattle", contents: [ - "因为太喜欢你,所以看谁都像是情敌。", - "申请成为你爱里的永久居民。", - "你很傻,你很笨,可我还是很羡慕你,因为你有我", - "遇见你,就好像捡到了100斤的运气", - ]}, - // 你可以不断按格式往下增加 - // ... - ], - - + + /** 每日一言 */ + + // 每日一言的内容类型 + // 可以填写【动画,漫画,游戏,小说,原创,网络,其他】; 随机则填写 "" + LITERARY_PREFERENCE: "", + + + /** + * 接收公众号消息的微信号,如果有多个,需要在[]里用英文逗号间隔 + */ + USERS: [ + { + // 想要发送的人的名字 + name: "老婆0", + // 扫码关注你的微信测试号后生成的一段字符串,在测试号后台能看到 + id: "", + // 你想对他发送的模板消息的模板ID + useTemplateId: "", + // 所在省份 + province: "广东", + // 所在城市 + city: "肇庆", + // 新历生日, 仅用作获取星座运势, 格式必须 + horoscopeDate: '12-27', + // 获取什么时候的星座运势,可选:['今日', '明日', '本周', '本月', '今年'], 留空则随机 + horoscopeDateType: '今日', + // 他点击详情后跳转的页面,你可以设置成微博的热榜,也可以设置成其他,网址一定要填对;不填对也没关系,随便你,会打不开而已。 + openUrl: "https://wangxinleo.cn", + // 专属节日提醒,如果你在这里填写了节日提醒,就不会执行FESTIVALS的提醒了, 和FESTIVALS的配置方法相同,可以往下查看,我这里就不重复写了 + festivals: [ + // 注意:此条配置日期为阴历日期,因为`type`中 “生日” 之前有 * 符号 + {"type": "*生日", "name": "老婆", "year": "1996", "date": "09-09"}, + {"type": "节日", "name": "结婚纪念日", "year": "2020", "date": "09-03"}, + // 注意:此条配置日期为阳历日期,因为`type`中 “生日” 之前没有 * 符号 + {"type": "生日", "name": "李四", "year": "1996", "date": "09-31"}, + {"type": "节日", "name": "被搭讪纪念日", "year": "2021", "date": "09-01"}, + ], + // 专属纪念日/倒数日,如果你在这里填写了纪念日/倒数日,就不会计算CUSTOMIZED_DATE_LIST的日子了, 和CUSTOMIZED_DATE_LIST的配置方法相同,可以往下查看,我这里就不重复写了 + customizedDateList: [ + // 在一起的日子 + {"keyword": "love_day", date: "2022-09-08"}, + // 结婚纪念日 + {"keyword": "marry_day", date: "2022-09-09"}, + // 退伍日 + {"keyword": "ex_day", date: "2022-09-10"}, + ] + } + ], + + /** + * 【推送完成提醒】 相关,主要用来展示发送是否成功/失败的数据 + */ + + // 【推送完成提醒】模板id, 用来看自己有没有发送成功的那个模板 + CALLBACK_TEMPLATE_ID: "", + + // 接收成功回调消息的微信号,(一般来说只填自己的微信号, name填不填无所谓) + CALLBACK_USERS: [ + { + // 一般都填自己 + name: "自己", + // 自己的微信id,扫码关注你的微信测试号后生成的一段字符串,在测试号后台能看到 + id: "", + }, + // 你可以不断按格式往下增加 + // ... + ], + + /** + * 信息配置 + */ + + /** + * 限制重要节日的展示条目, 需要填写数字; + * 如果为3, 则仅展示“将要到达” 的3个重要节日提醒,剩下的将被忽略 + * 如果为0, 则默认展示全部 + */ + FESTIVALS_LIMIT: 4, + + /** 插槽 */ + + SLOT_LIST: [ + // 这样配置的话,就会每次发送这句话 + {"keyword": "encourage_oneself", contents: "你主要的问题在于读书太少而想得太多"}, + // 这样配置的话,就会每次随机选一句话发送 + {"keyword": "lover_prattle", contents: [ + "因为太喜欢你,所以看谁都像是情敌。", + "申请成为你爱里的永久居民。", + "你很傻,你很笨,可我还是很羡慕你,因为你有我", + "遇见你,就好像捡到了100斤的运气", + ]}, + ], + + } } +export const config = myConfig \ No newline at end of file