返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >企业微信消息推送(推送给个人)
  • 289
分享到

企业微信消息推送(推送给个人)

php微信 2023-09-07 08:09:23 289人浏览 八月长安
摘要

官方开发文档:文档 - 企业微信开发者中心 获取access_token 请求方式 GET请求地址 https://qyapi.weixin.qq.com/cgi-bin/gettoken请求参数是否必填说明corpid是企业ID,参考:

官方开发文档:文档 - 企业微信开发者中心

获取access_token

请求方式

GET
请求地址 https://qyapi.weixin.qq.com/cgi-bin/gettoken
请求参数是否必填说明
corpid企业ID,参考:术语说明-corpid
corpsecret应用密钥,参考:术语说明-secret

获取到的access_token用户后续的操作,作为鉴权调用者的身份。获取到的access_token在有效期内无需重复获取(注意:不能频繁调用gettoken接口,否则会受到频率拦截),待到失效或过有效期,需要重新获取(access_token的有效期通过返回的expires_in来传达)。

 public function __construct(){    if (Cache::has('access_token')) {        $this->access_token = Cache::get('access_token');    } else {        $url = "https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=%s&corpsecret=%s";        $response = $this->curlAll(sprintf($url,$this->corpid,$this->secret));        $response = json_decode($response,true);        if($response['errcode'] != 0){            return false;        }else{            Cache::put('access_token', $response['access_token'], $response['expires_in']);            $this->access_token = $response['access_token'];        }    }}public function curlAll($url, $post_arr = []){    if ($post_arr) {        $post_string = JSON_encode($post_arr); //参数    }    $ch = curl_init();    curl_setopt($ch, CURLOPT_URL, $url);    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);    curl_setopt($ch, CURLOPT_HttpHEADER, array('Content-Type: application/json;charset=utf-8'));    if ($post_arr) {        curl_setopt($ch, CURLOPT_POST, 1);        curl_setopt($ch, CURLOPT_POSTFIELDS, $post_string);    }    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);    $data = curl_exec($ch);    curl_close($ch);    return $data;}

返回值说明:

参数说明
errcode

出错返回码,为0表示成功,非0表示调用失败。

错误码参考:全局错误码 - 接口文档 - 企业微信开发者中心

errmsg返回码提示语
access_token获取到的凭证,最长为512字节
expires_in凭证的有效时间(秒)

通过手机号获取用户userId

请求方式

POST
请求地址 https://qyapi.weixin.qq.com/cgi-bin/user/getuserid
请求参数是否必填说明
access_token刚获取到的access_token
mobile用户在企业微信通讯录中的手机号码。长度为5~32个字节
public function getUserIdByMobile($mobile){    $url = 'https://qyapi.weixin.qq.com/cgi-bin/user/getuserid?access_token='.$this->access_token;    $params = [        'mobile' => $mobile    ];    $response = $this->curlAll($url,$params);    $response = json_decode($response,true);    if($response['errcode'] != 0){        return false;    }else{        return $response['userid'];    }}

返回值说明:

errcode

返回码0表示成功,非0表示失败

错误码参考:全局错误码 - 接口文档 - 企业微信开发者中心

errmsg对返回码的文本描述内容
userid

成员UserID。对应管理端的帐号,企业内必须唯一。

注意:第三方应用获取的值是密文的userid

消息发送(发送文本消息)

此接口为发送给个人可以批量发送给多个用户

请求方式

POST
请求地址 https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=ACCESS_TOKEN

请求参数

是否必填

说明

touser指定接收消息的成员,成员ID列表(多个接收者用‘|’分隔,最多支持1000个)。
特殊情况:指定为"@all",则向该企业应用的全部成员发送
toparty指定接收消息的部门,部门ID列表,多个接收者用‘|’分隔,最多支持100个。
当touser为"@all"时忽略本参数
totag指定接收消息的标签,标签ID列表,多个接收者用‘|’分隔,最多支持100个。
当touser为"@all"时忽略本参数
msgtype消息类型,此时固定为:text
agentid企业应用的id,整型。企业内部开发,可在应用的设置页面查看;第三方服务商,可通过接口 获取企业授权信息 获取该参数值
content消息内容,最长不超过2048个字节,超过将截断(支持id转译)
safe表示是否是保密消息,0表示可对外分享,1表示不能分享且内容显示水印,默认为0
enable_id_trans表示是否开启id转译,0表示否,1表示是,默认0。仅第三方应用需要用到,企业自建应用可以忽略。
enable_duplicate_check表示是否开启重复消息检查,0表示否,1表示是,默认0
duplicate_check_interval表示是否重复消息检查的时间间隔,默认1800s,最大不超过4小时
        public function sendTextMsg(array $userIds){        $params = [            "touser" => implode('|',$userIds),            "msgtype" => "text",            "agentid" => $this->AgentId,            "text" => [                "content" => '消息本体',            ],        ];        $url =  'https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token='.$this->access_token;        $response = $this->curlAll($url,$params);        $response = json_decode($response,true);        if($response['errcode'] != 0){            return false;        }        return true;    }

返回值说明:

参数说明
errcode返回码
errmsg对返回码的文本描述内容
invaliduser不合法的userid,不区分大小写,统一转为小写
invalidparty不合法的partyid
invalidtag不合法的标签id
unlicenseduser没有基础接口许可(包含已过期)的userid
msgid消息id,用于撤回应用消息
response_code仅消息类型为“按钮交互型”,“投票选择型”和“多项选择型”的模板卡片消息返回,应用可使用response_code调用更新模版卡片消息接口,24小时内有效,且只能使用一次

消息发送支持:文本消息、图片消息、语音消息、视频消息、文件消息、文本卡片消息、图文消息、markdown消息、小程序通知消息这几种应用消息。

来源地址:https://blog.csdn.net/weixin_47407120/article/details/126380535

--结束END--

本文标题: 企业微信消息推送(推送给个人)

本文链接: https://lsjlt.com/news/397858.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 企业微信消息推送(推送给个人)
    官方开发文档:文档 - 企业微信开发者中心 获取access_token 请求方式 GET请求地址 https://qyapi.weixin.qq.com/cgi-bin/gettoken请求参数是否必填说明corpid是企业ID,参考:...
    99+
    2023-09-07
    php 微信
  • .NET Core实现企业微信消息推送
    接口定义 应用支持推送文本、图片、视频、文件、图文等类型。请求方式:POST(HTTPS)请求地址: https://qyapi.weixin.qq.com/cgi-bin...
    99+
    2024-04-02
  • .NET Core如何实现企业微信消息推送
    这篇文章主要介绍了.NET Core如何实现企业微信消息推送的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇.NET Core如何实现企业微信消息推送文章都会有所收获,下面我们一起来看看吧。接...
    99+
    2023-07-02
  • 企业微信消息推送(一)接收消息服务器URL
    1.点击左上角头像,打开微信管理平台 2.创建应用 3.获取五个参数 3.1获取应用的AgentId、Secret 3.2获取企业ID 配置接收消息服务器URL 企业微信限制过多,公司域名所有...
    99+
    2023-09-30
    服务器 企业微信 java
  • Springboot整合企业微信机器人助手推送消息的实现
    目录前言本篇内容:正文机器人创建步骤:前言 这个东西有啥用,好玩? 确实, 好玩归好玩,其实很有使用场景。 可以自己选则一些业务节点触发这个机器人助手的消息推送;简单举例: 1. 有...
    99+
    2024-04-02
  • Java实现给微信群中定时推送消息
    目录前言准备工作注册智能微秘书代码实现前言 上一篇,我们介绍了如何通过调用接口的方式,将每日新闻发送到自己的博客中。我们会发现,将新闻以文章的形式发布,并且相关内容按照markdow...
    99+
    2022-12-30
    Java微信群定时推送消息 Java定时推送消息 Java推送消息
  • Java实现企业微信消息推送功能的详细步骤
    第一步:申请企业微信注册企业(链接:https://work.weixin.qq.com/nl/sem/registes=c&from=1011017189&bd_v...
    99+
    2024-04-02
  • PHP调用微信消息订阅推送
    分享一下消息订阅推送 相信小伙伴们在做项目的时候都会有消息订阅推送的功能,比方说做外卖项目或者是商城的时候, 用户下单,需要给用户微信推送一条订阅消息 废话不多说 直接上代码 1.首先需要在微信小程序...
    99+
    2023-08-31
    微信 php 微信小程序
  • 使用Python实现给企业微信发送消息功能
    目录一、概述二、python脚本三、企业微信设置1. 注册企业微信2. 点击进入管理后台3. 创建应用完成后4. 查看企业id5. 查看部门id四、测试脚本一、概述 本文将介绍如何使...
    99+
    2024-04-02
  • java 实现微信公众号消息推送
    注册微信公众号 这里主要用测试账号来演示:测试账号注册地址正式账号注册地址:微信公众平台 设置消息模板 可参考微信公众号文档:微信公众号文档 模板根据需求设置(注意:参数长度不能超出微信规定,否则...
    99+
    2023-09-22
    java 微信 开发语言
  • Python数据怎么推送到微信企业号
    这篇文章将为大家详细讲解有关Python数据怎么推送到微信企业号,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。个人注册企业微信号requests的使用首先需要安装requests库:pip ...
    99+
    2023-06-02
  • FCM( Firebase) 发送推送消息PHP
    Firebase 的管理后台也有发送测试消息推送的入口,在左侧栏目的 Cloud Messaging 准备工作: 1、准备好 服务器秘钥, 如图 打开postman , 创建一个新的api 请求 1...
    99+
    2023-09-02
    php json 开发语言
  • 微信公众号开发消息推送功能
    目录微信公众号开发微信公众号简介注册微信公众号注册测试公众号搭建微信本地调试环境微信公众号接入(校验签名)给指定用户推送消息网页授权获取用户openid给指定用户发送模板信息微信公众...
    99+
    2023-02-15
    微信公众号开发消息推送 微信公众号开发
  • 如何使用Python实现给企业微信发送消息功能
    如何使用Python实现给企业微信发送消息功能,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。一、概述下面将介绍如何使用python3给企业微信发送消息。我的环境是linux...
    99+
    2023-06-22
  • 详解php微信小程序消息推送配置
    第一步 官网下载对应版本的cryptoDemo 下载地址:https://wximg.gtimg.com/shake_tv/mpwiki/cryptoDemo.zip 第二步 创建检...
    99+
    2024-04-02
  • java编写微信小程序消息提醒推送
    微信小程序官方文档:发送订阅消息 | 微信开放文档 一.先制定模板,我以已删除的模板为例 二.java后台创建小程序 Vo类,用于封装传送的参数。 import lombok.Data;@Datapublic class Templat...
    99+
    2023-09-01
    微信小程序 java 小程序
  • 利用python对微信自动进行消息推送
    from wxpy import * #该库主要是用来模拟与对接微信操作的 import requests from datetime import datetime import time import schedule fro...
    99+
    2023-01-30
    消息 python
  • 怎么在微信小程序中配置消息推送
    这篇文章将为大家详细讲解有关怎么在微信小程序中配置消息推送,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。第一步官网下载对应版本的cryptoDemo第二步创建检查文件wxcheck.php这...
    99+
    2023-06-14
  • 微信小程序有多少种推送消息方式
    这篇文章主要介绍微信小程序有多少种推送消息方式,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!微信小程序有5种推送消息的方式,分别为:1、小票机订单提醒,实现对商家的消息提醒;2、短信提醒;3、模板消息,各种动态可及时...
    99+
    2023-06-27
  • Flutter:flutter_local_notifications——消息推送的学习
    前言 注: 刚开始学习,如果某些案例使用时遇到问题,可以自行百度、查看官方案例、官方github。 简介 Flutter Local Notifications是一个用于在Flutter应用程序中显示...
    99+
    2023-08-31
    flutter flutter消息通知
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作