企业微信API--消息推送

1,概述

官方文档:http://work.weixin.qq.com/api/doc#12739

2,发送应用消息

参考文档:http://work.weixin.qq.com/api/doc#10167

  • 给指定人员/组 发送消息
# -*- coding:UTF-8 -*-
import urllib2
import urllib
import json

def get_access_token():
    url = 'https://qyapi.weixin.qq.com/cgi-bin/gettoken?'
    # corpid: 每个企业都拥有唯一的corpid       corpsecret: 自建应用secret
    para = {'corpid':'ww2f9a1a85f1806981','corpsecret':'tGFtVLxmjxPf6jj2t5SKyqEUYkpCM9e2hw-OrwSQwSg'}
    req = urllib2.Request(url + urllib.urlencode(para))
    ret = urllib2.urlopen(req)
    ret = json.loads(ret.read())
    return ret

token_id = get_access_token().get('access_token')    # 所有请求必须携带access_token值进行身份验证
data = {
    "touser": "@all",
    "toparty": "",
    "totag": "",
    "msgtype": "text",
    "agentid": 1000002,
    "text": {
        "content": "测试发送信息"
    },
    "safe": 0
}

def send_msg(token_id,data):
    headers = {'Content-Type': 'application/json'}
    url = "https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=%s"%(token_id)
    request = urllib2.Request(url=url, headers=headers, data=json.dumps(data))
    response = urllib2.urlopen(request)
    print response.read()        # 返回结果:{"errcode":0,"errmsg":"ok","invaliduser":""}

send_msg(token_id,data)

3,接收消息与事件

1、概述 & 接收消息前准备

官方文档: http://work.weixin.qq.com/api/doc#12977

4,发消息到群聊会话

1、概述 & 接收消息前准备

官方文档: http://work.weixin.qq.com/api/doc#13308

2、 创建群聊会话

官方文档: http://work.weixin.qq.com/api/doc#13288

  • 创建群会话
# -*- coding:UTF-8 -*-
import urllib2
import urllib
import json

def get_access_token():
    '''获取认证access_token值'''
    url = 'https://qyapi.weixin.qq.com/cgi-bin/gettoken?'
    # corpid: 每个企业都拥有唯一的corpid       corpsecret: 自建应用secret
    para = {'corpid':'ww2f9a1a85f1806981','corpsecret':'tGFtVLxmjxPf6jj2t5SKyqEUYkpCM9e2hw-OrwSQwSg'}
    req = urllib2.Request(url + urllib.urlencode(para))
    ret = urllib2.urlopen(req)
    ret = json.loads(ret.read())
    return ret

token_id = get_access_token().get('access_token')
data = {
    "name" : "python交流群",        # 群聊名 (选填)
    "owner" : "XiaoNaiQiang",      # 指定群主的id (选填)
    "userlist" : ["XiaoNaiQiang", "ZhangPengPeng", ],    # 群成员id列表,至少2人(必填)
}

print token_id
def create_group(token_id,data):
    '''创建群会话
    :param token_id:  用于认证的access_token
    :param data:     提交创建群会话的数据
    '''
    headers = {'Content-Type': 'application/json'}
    url = "https://qyapi.weixin.qq.com/cgi-bin/appchat/create?access_token=%s"%(token_id)
    request = urllib2.Request(url=url, headers=headers, data=json.dumps(data))
    response = urllib2.urlopen(request)
    print response.read()        # 返回结果:{"errcode":0,"errmsg":"ok","chatid":"16894972527282740677"}

create_group(token_id,data)

3、修改群聊会话

官方文档:http://work.weixin.qq.com/api/doc#13292

  • 修改群聊会话
# -*- coding:UTF-8 -*-
import urllib2
import urllib
import json

def get_access_token():
    '''获取认证access_token值'''
    url = 'https://qyapi.weixin.qq.com/cgi-bin/gettoken?'
    # corpid: 每个企业都拥有唯一的corpid       corpsecret: 自建应用secret
    para = {'corpid':'ww2f9a1a85f1806981','corpsecret':'tGFtVLxmjxPf6jj2t5SKyqEUYkpCM9e2hw-OrwSQwSg'}
    req = urllib2.Request(url + urllib.urlencode(para))
    ret = urllib2.urlopen(req)
    ret = json.loads(ret.read())
    return ret

token_id = get_access_token().get('access_token')
data = {
    "chatid" : "16894972527282740677",            # 群聊id (必填)
    # "name" : "NAME",               # 新的群聊名(选填)
    "owner" : "XiaoNaiQiang",            # 新群主的id(选填)
    "add_user_list" : ["DiYiShuai"],     # 添加成员的id列表(选填)
    # "del_user_list" : []                # 踢出成员的id列表
}

print token_id
def update_group(token_id,data):
    '''修改群会话
    :param token_id:  用于认证的access_token
    :param data:     提交修改会话的数据
    '''
    headers = {'Content-Type': 'application/json'}
    url = "https://qyapi.weixin.qq.com/cgi-bin/appchat/update?access_token=%s"%(token_id)
    request = urllib2.Request(url=url, headers=headers, data=json.dumps(data))
    response = urllib2.urlopen(request)
    print response.read()        # 返回结果:{"errcode":0,"errmsg":"ok"}

update_group(token_id,data)

4、获取群聊会话

官方文档:http://work.weixin.qq.com/api/doc#13293

  • 获取群聊会话
# -*- coding:UTF-8 -*-
import urllib2
import urllib
import json

def get_access_token():
    '''获取认证access_token值'''
    url = 'https://qyapi.weixin.qq.com/cgi-bin/gettoken?'
    # corpid: 每个企业都拥有唯一的corpid       corpsecret: 自建应用secret
    para = {'corpid':'ww2f9a1a85f1806981','corpsecret':'tGFtVLxmjxPf6jj2t5SKyqEUYkpCM9e2hw-OrwSQwSg'}
    req = urllib2.Request(url + urllib.urlencode(para))
    ret = urllib2.urlopen(req)
    ret = json.loads(ret.read())
    return ret

token_id = get_access_token().get('access_token')

def get_group_info(token_id,chatid):
    ''' 获取群会话信息
    :param token_id:  用于认证的access_token
    :param chatid:   刚刚新建群会话生成的chatid
    '''
    url = 'https://qyapi.weixin.qq.com/cgi-bin/appchat/get?'
    para = {'access_token': token_id, 'chatid': chatid}
    req = urllib2.Request(url + urllib.urlencode(para))
    ret = urllib2.urlopen(req)
    ret = json.loads(ret.read())
    print ret

get_group_info(token_id,"16894972527282740677")     # 这里的chatid是我们刚刚创建群会话设置的或随机生成的

5、应用推送消息

官方文档:http://work.weixin.qq.com/api/doc#13293

  • 应用推送消息
# -*- coding:UTF-8 -*-
import urllib2
import urllib
import json

def get_access_token():
    '''获取认证access_token值'''
    url = 'https://qyapi.weixin.qq.com/cgi-bin/gettoken?'
    # corpid: 每个企业都拥有唯一的corpid       corpsecret: 自建应用secret
    para = {'corpid':'ww2f9a1a85f1806981','corpsecret':'tGFtVLxmjxPf6jj2t5SKyqEUYkpCM9e2hw-OrwSQwSg'}
    req = urllib2.Request(url + urllib.urlencode(para))
    ret = urllib2.urlopen(req)
    ret = json.loads(ret.read())
    return ret

token_id = get_access_token().get('access_token')
data = {
    "chatid": "16894972527282740677",      # 群聊id(必填)
    "msgtype":"text",                       # 消息类型(必填)
    "text":{                                # 消息内容(必填)
        "content" : "你的快递已到\n请携带工卡前往邮件中心领取"
    },
    "safe":0                                # 表示是否是保密消息,0表示否,1表示是,默认0(选填)
}

print token_id
def send_msg_group(token_id,data):
    '''应用推送消息
    :param token_id:  用于认证的access_token
    :param data:     发送到群会话的数据
    '''
    headers = {'Content-Type': 'application/json'}
    url = "https://qyapi.weixin.qq.com/cgi-bin/appchat/send?access_token=%s"%(token_id)
    request = urllib2.Request(url=url, headers=headers, data=json.dumps(data))
    response = urllib2.urlopen(request)
    print response.read()        # 返回结果:{"errcode":0,"errmsg":"ok"}

send_msg_group(token_id,data)
  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hsw Come on

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值