企业微信开发案例1

本文介绍了一个使用企业微信内部开发接口通过unionid来修改客户备注信息和手机号的案例。首先,讲解了unionid在企业微信平台的作用以及Redis作为缓存的用途。然后,详细阐述了设计目的,即通过已知unionid修改客户备注和手机号,并提供了实现方法,包括获取客户详情、使用Redis存储数据以及调用企业微信接口进行修改。最后,提供了部分PHP代码实现。
摘要由CSDN通过智能技术生成

企业微信开发案例1

 背景知识

由同一企业主体下的公众号,企业微信、小程序使用unionid来标识同一个用户对象,而openid只用于一种应用标识用户

Redis是一种基于key-value的数据库,一般用于缓存(cache)

PHP使用REDIS   hGetAll 命令/方法/函数(PHP_Redis)-代潇瑞博客

1   设计目的

通过已知客户的unionid,来修改客户备注信息,手机号

2  实现方法

2.1  通过企业微信的第三方应用开发接口调用来实现

使用第三方应用开发接口来开发,需要注册第三方服务商的资质,目前无法注册第三方服务提供商。暂且不表。

2.2 通过企业微信的企业内部开发接口调用来实现

A  通过枚具备客户联系功能的企业成员(follow)得到一个follow_list,企业微信的API接口描述如下

接口文档 - 企业微信开发者中心

B 通过批量获取客户详情功能,逐个的获取每个follow下的所有客户详情,主要需要的客户的(unionid, external_userid,  remark_mobiles)

接口的描述如下

接口文档 - 企业微信开发者中心

C 将获得到的一个follow下的所有客户信息,以hash方式放到redis中key为unionid,  field value为一个多元组

D 需要修改remark mobile号的客户unionid给定在一个数组中,遍历之并查询redis,调用如下描述的修改客户备注信息接口来修改客户的remark mobile

接口文档 - 企业微信开发者中心

3 项目源代码:

<?php

class JSSDK {  
  private $appId;  
  private $appSecret;  

  public function __construct($appId, $appSecret) {  
    $this->appId = $appId;  
    $this->appSecret = $appSecret;  
  }  

  public function api_notice_increment($url, $data){
    $ch = curl_init();

    curl_setopt($ch,CURLOPT_URL, $url);
    if(stripos($url,"https://")!==FALSE){
      curl_setopt($ch, CURLOPT_SSLVERSION, 1); //1 - CURL_SSLVERSION_TLSv1
      curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
      curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
    }  else    {
      curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,TRUE);
      curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,2);//严格校验
    }
    //设置header
    curl_setopt($ch, CURLOPT_HEADER, FALSE);
    //要求结果为字符串且输出到屏幕上
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_TIMEOUT, 3); 
  
    //post提交方式
    curl_setopt($ch, CURLOPT_POST, TRUE);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);

    $tmpInfo = curl_exec($ch);
    //var_dump($tmpInfo);
    /*if (curl_errno($ch)) {
      $tmpInfo = curl_exec($ch);
    }*/
    curl_close($ch);
    return $tmpInfo;
  }
 
  public function httpGet($url) {  
    $curl = curl_init();  
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);  
    curl_setopt($curl, CURLOPT_TIMEOUT, 5);  
    curl_setopt($curl,

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值