無需公眾號,不需要安裝企業微信客戶端,低成本推播訊息解決方案
另有Dcat-Admin版
靈感啟發Server醬,這邊只是一個簡單的實作。
目前版本支援靈活設置
另外
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
會產生如下的選單
創建好後複製【AgentId】和【Secret】出來到網站後台的【企業微信應用程式訊息】-【預設設定】填寫對應的那一欄上。
進入【我的企業】頁面,拉到最下邊,可以看到企業ID,複製並填到對應那一欄上,記得儲存。
如果是使用者自訂企業記得是編輯使用者填入對應的三欄。
在清單可以發送測試訊息,如果企業微信接收到了訊息就成功了。
進入【我的企業】-【微信插件】, 拉到下邊掃描二維碼,關注以後即可收到推送的消息(可能需要先下載一次企業微信綁定一下微信),此時企業微信和微信應該能同時收到訊息。
設定企業微信不接收訊息,微信接收訊息。
【企業微信APP】-【左上角三橫線】-【右下角齒輪設定】-【新訊息通知】-【僅在企業微信中接收訊息】-【應用訊息】關閉
如果有多個企業身份,【企業微信APP】-【左上角三橫線】-【右下角齒輪設定】-【新訊息通知】-【其他企業訊息提醒】-選擇神申請的企業名字改成【僅接收特別提醒的訊息】或【不提醒】-然後切換回自己常用的企業訊息。
然後去發送測試通知,應該沒什麼問題。
這邊關於訊息通知的設定教學有誤,如有問題請聯絡我。
如果遇到問題的話可以到剛剛建立的應用程式裡發個測試訊息(選擇【應用程式管理】-【自建】-【應用程式名稱】-【功能】-【傳送訊息】)。
另外如果出現介面請求正常,企業微信接受訊息正常,個人微信無法收到訊息的狀況
PC後台管理端:進入【我的企業】-【微信插件】,拉到最下方,勾選【允許成員在微信插件中接收和回覆聊天訊息】
另外檢查一下上述的【僅在企業微信中接收訊息】相關設置
預設路由支援get
和post
,記得在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
可能會導致發送請求超時,不知為何,建議自行測試。
AsundustWechatWorkPushHttpTraitsWechatWorkPushSendMessageTrait
。defaultSend()
,使用自定配置發送send()
,具體入參看方法。 如果你覺得這個專案幫你節省了時間,不妨支持一下嗆!
The MIT License (MIT)