1 Star 14 Fork 4

asundust / wechat-work-push

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT

Laravel-Admin 消息推送插件 by 企业微信应用消息

无需公众号,不需要安装企业微信客户端,低成本推送消息解决方案

另有 Dcat-Admin版

StyleCI build status

Total Downloads Latest Stable Version

前言

灵感启发Server酱,这边只是一个简单的实现。

声明

  • 目前貌似不再支持在微信中接受新消息且调用接口需要Ip白名单,限制很多,除非是老应用(很早时期申请的并已经设置好相关设置)否则本消息通道体验会变差。

客户端支持

功能介绍

目前版本支持灵活设置

  • 支持入参标题、内容、链接、链接标题
  • 一个【企业微信应用】的消息可推送【单个账号/全部人员】)
  • 【单个账号/全部人员】可设置独立的【企业微信应用】配置

另外

  • 目前版本不支持内容文本markdown等格式,仅支持简单文本,后期开发
  • 目前版本无日志功能,后期开发

截图

  • 能直接在通知里看到消息内容

通知效果

安装

安装

composer require asundust/wechat-work-push

配置文件

'wechat-work-push' => [
    'enable' => true,
    // 'config_table' => 'wechat_work_push_configs', // 自定义配置表表名,可不填写,默认wechat_work_push_configs
    // 'user_table' => 'wechat_work_push_users', // 自定义用户表表名,可不填写,默认wechat_work_push_users
    // 'middleware' => 'web', // 自定义中间件组,可不填写,默认web
],

迁移

php artisan migrate

发布菜单

php artisan admin:import wechat-work-push

会生成如下的菜单

  • 企业微信消息推送
  • └用户配置
  • └默认配置

配置

大致流程

  • 在企业微信注册一个企业(无需企业认证)
  • 创建一个内部应用
  • 配置相关配置
  • 开启微信插件
  • 在微信里收到消息

申请流程

申请企业微信

  • 注册成功后,点【管理企业】进入管理界面,选择【应用管理】-【自建】-【创建应用】。

创建应用

  • 应用名称自行想一个,图片Logo自行上传一个,可见范围选择公司名。

填写信息

  • 创建好后复制【AgentId】和【Secret】出来到网站后台的【企业微信应用消息】-【默认配置】填写对应的那一栏上。

  • 进入【我的企业】页面,拉到最下边,可以看到企业ID,复制并填到对应那一栏上,记得保存。

企业ID

  • 如果是用户自定义企业记得是编辑用户填入对应的三栏里。

  • 在列表可以发送测试消息,如果企业微信接收到了消息就成功了。

  • 进入【我的企业】-【微信插件】, 拉到下边扫描二维码,关注以后即可收到推送的消息(可能需要先下载一次企业微信绑定一下微信),此时企业微信和微信应该能同时收到消息。

二维码

设置企业微信不接收消息,微信接收消息。

【企业微信APP】-【左上角三横线】-【右下角齿轮设置】-【新消息通知】-【仅在企业微信中接收消息】-【应用消息】关闭

如果有多个企业身份,【企业微信APP】-【左上角三横线】-【右下角齿轮设置】-【新消息通知】-【其他企业消息提醒】-选择神申请的企业名字改成【仅接收特别提醒的消息】或者【不提醒】-然后切换回自己常用的企业消息。

然后去发送测试通知,应该没什么问题。

这边关于消息通知的设置教程有误,如有问题请联系我。

如果遇到问题的话可以到刚刚创建的应用里发个测试消息(选择【应用管理】-【自建】-【应用名称】-【功能】-【发送消息】)。

另外如果出现接口请求正常,企业微信接受消息正常,个人微信无法收到消息的情况

PC后台管理端:进入【我的企业】-【微信插件】,拉到最下方,勾选【允许成员在微信插件中接收和回复聊天消息 】

另外检查一下上述的【仅在企业微信中接收消息】相关设置

使用

  • 默认路由支持getpost,记得在VerifyCsrfToken里的except添加push/*,以便支持post接口请求。

  • 接口地址为http://{www.abc.com}/push/{推送密钥},标题为title不可空,内容为content可不传,链接为url可不传,链接标题为url_title可不传。 示例:get 地址为http://{www.abc.com}/push/我是密钥?title=测试标题&content=测试内容&url=https://www.baidu.com&url_title=我是百度的测试链接

  • 传入不合法的url可能会导致发送请求超时,不知为何,建议自行测试。

内部调用支持

  • 引用此Trait类\Asundust\WechatWorkPush\Http\Traits\WechatWorkPushSendMessageTrait
  • 使用默认配置发送defaultSend(),使用自定配置发送send(),具体入参看方法。

未来

  • 将开发新包用于支持多个渠道的消息发送

支持

如果觉得这个项目帮你节约了时间,不妨支持一下呗!

alipay wechat

License

The MIT License (MIT)

MIT License Copyright (c) 2019 asundust Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

利用企业微信应用消息向微信发送通知(无需公众号,不需要安装企业微信客户端,低成本推送消息解决方案) 展开 收起
PHP
MIT
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
PHP
1
https://gitee.com/asundust/wechat-work-push.git
git@gitee.com:asundust/wechat-work-push.git
asundust
wechat-work-push
wechat-work-push
master

搜索帮助