本文整理汇总了Python中wechat_sdk.WechatBasic.send_template_message方法的典型用法代码示例。如果您正苦于以下问题:Python WechatBasic.send_template_message方法的具体用法?Python WechatBasic.send_template_message怎么用?Python WechatBasic.send_template_message使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类wechat_sdk.WechatBasic
的用法示例。
在下文中一共展示了WechatBasic.send_template_message方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: send_template_massage
# 需要导入模块: from wechat_sdk import WechatBasic [as 别名]
# 或者: from wechat_sdk.WechatBasic import send_template_message [as 别名]
def send_template_massage():
try:
token = Config.WECHAT_TOKEN
args = request.args
echostr = args['echostr']
signature = args['signature']
timestamp = args['timestamp']
nonce = args['nonce']
# 实例化 wechat
wechat = WechatBasic(token=token)
# 对签名进行校验
if wechat.check_signature(signature=signature, timestamp=timestamp, nonce=nonce):
user_id = 'o5lpBuCdBW7HABytpcAbMy3QbBPs'
template_id = 'grsshOaPw-0pCrkdZwjOS4Mr4AaQQVteEG-2R_RK6BY'
data = {
"first": {
"value": "恭喜你购买成功!",
"color": "#173177"
},
"keynote1":{
"value": "巧克力",
"color": "#173177"
},
"keynote2": {
"value": "39.8元",
"color": "#173177"
},
"keynote3": {
"value": "2014年9月16日",
"color": "#173177"
},
"remark":{
"value": "欢迎再次购买!",
"color": "#173177"
}
}
WechatBasic.send_template_message(user_id, template_id, data)
print 'wechat token'
return 'Hello'
except TemplateNotFound:
abort(404)
示例2: send_wechat
# 需要导入模块: from wechat_sdk import WechatBasic [as 别名]
# 或者: from wechat_sdk.WechatBasic import send_template_message [as 别名]
def send_wechat(node_id, wechat_data):
button = Button.query.filter_by(node_id=node_id).first()
if button:
wechat_id = button.user.wechat_id
if wechat_id:
wechat_id = wechat_id.strip()
wechat = WechatBasic(token=Config.WECHAT_TOKEN, appid=Config.WECHAT_APPID, appsecret=Config.WECHAT_APPSECRET)
res = wechat.send_template_message(user_id=wechat_id,
template_id=TEMPLATE_ID, data=wechat_data, topcolor='#872b6e')
# 我
res = wechat.send_template_message(user_id='o5lpBuCdBW7HABytpcAbMy3QbBPs',
template_id=TEMPLATE_ID, data=wechat_data)
if res['errcode']:
raise Exception('Send wechat message failed')
示例3: callback_ticket
# 需要导入模块: from wechat_sdk import WechatBasic [as 别名]
# 或者: from wechat_sdk.WechatBasic import send_template_message [as 别名]
def callback_ticket(record_id):
"""回收优惠券"""
ticket_record = GetTicketRecord.query.get(record_id)
ticket_record.status = 'usedit'
db.session.add(ticket_record)
db.session.commit()
# 发送模板通知信息到微信
# 调用公众号消息模板bK9Trpq_AmdHxnaT1kQ8d0lTJt-z3QBUNzacsnQbfXg 优惠券使用通知
"""{{first.DATA}}
优惠券:{{keyword1.DATA}}
兑换码:{{keyword2.DATA}}
消费日:{{keyword3.DATA}}
{{remark.DATA}}
"""
json_data = {
"first": {
"value": "您已成功使用一张优惠券!",
"color": "#173177"
},
"keyword1": {
"value": ticket_record.discount.title,
"color": "#173177"
},
"keyword2": {
"value": ticket_record.code,
"color": "#173177"
},
"keyword3": {
"value": time.strftime("%Y-%m-%d", time.localtime()),
"color": "#173177"
},
"remark": {
"value": "感谢您的使用,请继续关注我们新的优惠活动!",
}
}
wechat = WechatBasic(appid=appid, appsecret=appsecret)
# 发送通知给指定优惠券所有人,message.source 为扫码用户
wechat.send_template_message(str(ticket_record.user.password),
'bK9Trpq_AmdHxnaT1kQ8d0lTJt-z3QBUNzacsnQbfXg', json_data)
示例4: test_send_template_message
# 需要导入模块: from wechat_sdk import WechatBasic [as 别名]
# 或者: from wechat_sdk.WechatBasic import send_template_message [as 别名]
def test_send_template_message(self):
data = {
"first": {
"value": "恭喜你购买成功!",
"color": "#173177"
},
"keynote1": {
"value": "巧克力",
"color": "#173177"
},
"keynote2": {
"value": "39.8元",
"color": "#173177"
},
"keynote3": {
"value": "2014年9月16日",
"color": "#173177"
},
"remark": {
"value": "欢迎再次购买!",
"color": "#173177"
}
}
# 测试无 appid 和 appsecret 初始化
wechat = WechatBasic()
with self.assertRaises(NeedParamError):
wechat.send_template_message('12341234', '123412341234', data)
# 测试有 appid 和 appsecret 初始化
wechat = WechatBasic(appid=self.appid, appsecret=self.appsecret)
with HTTMock(wechat_api_mock):
resp = wechat.send_template_message('12341234', '123412341', data)
self.assertEqual(resp['errcode'], 0)
self.assertEqual(resp['errmsg'], 'ok')
self.assertEqual(resp['msgid'], 200228332)
示例5: send_wechat
# 需要导入模块: from wechat_sdk import WechatBasic [as 别名]
# 或者: from wechat_sdk.WechatBasic import send_template_message [as 别名]
def send_wechat(node_id):
button = Button.query.filter_by(node_id=node_id).first()
if button:
wechat_id = button.user.wechat_id
template_id = button.service.wechat_template_id
# wechat = WechatBasic(token='midstation', appid='wx6b84ff9cb6f9a54e', appsecret='4e09e5b35198bdbf35b90a65d5f76af4')
wechat = WechatBasic(token=Config.WECHAT_TOKEN, appid=Config.WECHAT_APPID, appsecret=Config.WECHAT_APPSECRET)
data = {}
# res = wechat.send_template_message(user_id=wechat_id,
# template_id=template_id, data=data)
res = wechat.send_template_message(user_id='o5lpBuCdBW7HABytpcAbMy3QbBPs',
template_id='grsshOaPw-0pCrkdZwjOS4Mr4AaQQVteEG-2R_RK6BY', data=data)
if res['errcode']:
raise Exception('Send wechat message failed')
示例6: WechatBasic
# 需要导入模块: from wechat_sdk import WechatBasic [as 别名]
# 或者: from wechat_sdk.WechatBasic import send_template_message [as 别名]
# -*- coding: utf-8 -*-
__author__ = 'qitian'
import json
from wechat_sdk import WechatBasic
wechat = WechatBasic(token='midstation', appid='wx6b84ff9cb6f9a54e', appsecret='4e09e5b35198bdbf35b90a65d5f76af4')
data = {}
res = wechat.send_template_message(user_id='o5lpBuCdBW7HABytpcAbMy3QbBPs',
template_id='grsshOaPw-0pCrkdZwjOS4Mr4AaQQVteEG-2R_RK6BY', data=data)
print res
示例7: detail
# 需要导入模块: from wechat_sdk import WechatBasic [as 别名]
# 或者: from wechat_sdk.WechatBasic import send_template_message [as 别名]
def detail():
discount_id = int(request.args.get("id", 0))
if not discount_id:
discount_id = int(request.args.get("did", 0))
do = request.args.get("do")
discount = Discount.query.get_or_404(discount_id)
# discount.count 每天0:00清零 TODO 脚本任务
left_count = discount.number - discount.count
discount_shop_count = discount.shops.count()
shop_photos = ShopPhoto.query.filter(ShopPhoto.brand_id == discount.brand_id)
user_agent = request.headers.get('User-Agent')
curr_user = g.user
# user的领券情况
# 该用户下领用的存在有效期的券(含使用或者未使用)
curr_ticket_record = GetTicketRecord.query.filter(GetTicketRecord.user_id == curr_user.id,
GetTicketRecord.discount_id == discount_id,
GetTicketRecord.create_at >= datetime.datetime.now() - datetime.timedelta(
days=discount.usable))
monday = datetime.datetime.now() - datetime.timedelta(days=datetime.datetime.now().weekday())
sunday = datetime.datetime.now() + datetime.timedelta(days=7 - datetime.datetime.now().weekday())
curr_ticket_records_week = curr_ticket_record.filter(GetTicketRecord.create_at >= monday,
GetTicketRecord.create_at <= sunday).count()
# print user_agent
if do == 'post':
if 'MicroMessenger' not in user_agent:
return json.dumps({"message": "请在微信里操作", "redirect": "permit", "type": "tips"})
else:
expire_datetime = discount.get_expire_datetime
# expire_datetime_format = expire_datetime.strftime("%Y-%m%-%d")
expire_datetime_format = str(expire_datetime.date())
record = GetTicketRecord.query.filter(GetTicketRecord.user_id == g.user.id,
GetTicketRecord.discount_id == discount_id).first()
if record:
if record.status != 'expire':
return json.dumps(
{"message": {}, "redirect": "", "type": "error"})
openid = session['openid']
wechat = WechatBasic(appid=appid, appsecret=appsecret)
# wechat.send_text_message(session['openid'], "test")
# 调用公众号消息模板A0XK30w_sZPti5_gn33PJ5msng7yb71zAEcRa0E44oM发送领券通知
template_id = 'A0XK30w_sZPti5_gn33PJ5msng7yb71zAEcRa0E44oM'
"""{first.DATA}}
优惠券:{{keyword1.DATA}}
来源:{{keyword2.DATA}}
过期时间:{{keyword3.DATA}}
使用说明:{{keyword4.DATA}}
{{remark.DATA}}
"""
json_data = {
"first": {
"value": "恭喜你领券成功!",
"color": "#173177"
},
"keyword1": {
"value": discount.title,
"color": "#173177"
},
"keyword2": {
"value": "网页获取",
"color": "#173177"
},
"keyword3": {
"value": expire_datetime_format,
"color": "#173177"
},
"remark": {
"value": "凭优惠券详情二维码领取",
"color": "#173177"
}
}
# 领取后需要写入到get_discount_record 表
# TODO 下次是否能领取则通过这张表的数据来判断
year = time.strftime("%Y", time.localtime())[2:]
# TODO 根据时间戳生成唯一id,可能有点不规范
code = year + str(time.time())[4:-3]
record = GetTicketRecord(user_id=g.user.id, discount_id=discount_id, code=code)
db.session.add(record)
discount.count = discount.count + 1
db.session.add(discount)
db.session.commit()
url = current_app.config.get('SITE_DOMAIN') + (
url_for('shop.checkout', discount_id=discount_id, record_id=record.id))
wechat.send_template_message(openid, template_id, json_data, url)
# still 表示本周还能领多少张 TODO 静态数据需要替换
# allow 表示本周允许领取多少张
still = discount.number * discount.usable - 1
# 获取永久二维码 scene_id前缀12表示是优惠券类型的二维码
wechat = WechatBasic(appid=current_app.config.get('WECHAT_APPID'),
appsecret=current_app.config.get('WECHAT_APPSECRET'))
data = {"action_name": "QR_LIMIT_SCENE",
"action_info": {"scene": {"scene_id": int(str("12") + str(record.id))}}}
get_ticket_data = wechat.create_qrcode(data)
ticket = get_ticket_data.get("ticket")
session['ticket'] = ticket
# 写入数据库
record.ticket = ticket
#.........这里部分代码省略.........