微信-小程序-开发文档-服务端-模板消息:templateMessage.addTemplate

ylbtech-微信-小程序-开发文档-服务端-模板消息:templateMessage.addTemplate

 

1.返回顶部
1、

templateMessage.addTemplate

本接口应在服务器端调用,详细说明参见服务端API

本接口支持云调用。需开发者工具版本 >= 1.02.1904090(最新稳定版下载),wx-server-sdk >= 0.4.0

组合模板并添加至帐号下的个人模板库

调用方式:

 

HTTPS 调用

请求地址

POST https://api.weixin.qq.com/cgi-bin/wxopen/template/add?access_token=ACCESS_TOKEN

请求参数

属性类型默认值必填说明
access_tokenstring 接口调用凭证
idstring 模板标题id,可通过接口获取,也可登录小程序后台查看获取
keyword_id_listArray.<number> 开发者自行组合好的模板关键词列表,关键词顺序可以自由搭配(例如[3,5,4]或[4,5,3]),最多支持10个关键词组合

返回值

Object

返回的 JSON 数据包

属性类型说明
errcodenumber错误码
errmsgstring错误信息
template_idstring添加至帐号下的模板id,发送小程序模板消息时所需

请求数据示例

{
 "id":"AT0002", "keyword_id_list":[3,4,5] } 

返回数据示例

{
 "errcode": 0, "errmsg": "ok", "template_id": "wDYzYZVxobJivW9oMpSCpuvACOfJXQIoKUm0PY397Tc" } 

 

云调用

云调用是小程序·云开发提供的在云函数中调用微信开放接口的能力,需要在云函数中通过 wx-server-sdk 使用。

接口方法

openapi.templateMessage.addTemplate

需在 config.json 中配置 templateMessage.addTemplate API 的权限,详情

请求参数

属性类型默认值必填说明
idstring 模板标题id,可通过接口获取,也可登录小程序后台查看获取
keywordIdListArray.<number> 开发者自行组合好的模板关键词列表,关键词顺序可以自由搭配(例如[3,5,4]或[4,5,3]),最多支持10个关键词组合

返回值

Object

返回的 JSON 数据包

属性类型说明
errCodenumber错误码
errMsgstring错误信息
templateIdstring添加至帐号下的模板id,发送小程序模板消息时所需

异常

Object

抛出的异常

属性类型说明
errCodenumber错误码
errMsgstring错误信息

errCode 的合法值

请求数据示例

const cloud = require('wx-server-sdk') cloud.init() exports.main = async (event, context) => { try { const result = await cloud.openapi.templateMessage.addTemplate({ id: 'AT0002', keywordIdList: [ 3, 4, 5 ] }) console.log(result) return result } catch (err) { console.log(err) return err } } 

返回数据示例

{
  "errCode": 0, "errMsg": "openapi.templateMessage.addTemplate:ok", "templateId": "wDYzYZVxobJivW9oMpSCpuvACOfJXQIoKUm0PY397Tc" }
2、
2.返回顶部
 
3.返回顶部
 
4.返回顶部
 
5.返回顶部
1、
2、
 
6.返回顶部
 
warn作者:ylbtech
出处:http://ylbtech.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

转载于:https://www.cnblogs.com/storebook/p/11049501.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
非常抱歉,我之前的回答有一些错误。请使用以下修改后的代码: ```cpp #include <iostream> #include <opencv2/opencv.hpp> #include <opencv2/linemod.hpp> using namespace std; using namespace cv; void drawResponse(const std::vector<cv::linemod::Match>& matches, cv::Mat& dst, const std::vector<cv::Ptr<cv::linemod::Template>>& templates, const cv::Ptr<cv::linemod::Detector>& detector); int main() { // 读取模板图片 cv::Ptr<cv::linemod::Detector> detector = cv::linemod::getDefaultLINE(); std::vector<cv::Mat> templateImages; cv::Mat templateImage = cv::imread("template.png", 0); if (templateImage.empty()) { std::cout << "Failed to read template image!" << std::endl; return -1; } templateImages.push_back(templateImage); // 添加模板 std::string class_id = "template"; detector->addTemplate(templateImages, class_id); // 读取视频 cv::VideoCapture cap("video.mp4"); if (!cap.isOpened()) { std::cout << "Failed to open video!" << std::endl; return -1; } // 创建窗口 cv::namedWindow("Template Matching", cv::WINDOW_NORMAL); // 进行模板匹配 cv::Mat frame; while (cap.read(frame)) { // 转换为灰度图像 cv::Mat gray; cv::cvtColor(frame, gray, cv::COLOR_BGR2GRAY); // 运行模板匹配 std::vector<cv::linemod::Match> matches; detector->match(gray, 80, matches); // 绘制匹配结果 drawResponse(matches, frame, detector->getTemplates(class_id), detector); // 显示匹配结果 cv::imshow("Template Matching", frame); // 按下ESC键退出 if (cv::waitKey(1) == 27) break; } // 释放资源 cv::destroyAllWindows(); cap.release(); return 0; } void drawResponse(const std::vector<cv::linemod::Match>& matches, cv::Mat& dst, const std::vector<cv::Ptr<cv::linemod::Template>>& templates, const cv::Ptr<cv::linemod::Detector>& detector) { for (size_t i = 0; i < matches.size(); ++i) { const cv::linemod::Match& match = matches[i]; const std::vector<cv::linemod::Template>& classTemplates = templates[match.class_id]->getTemplates(); for (size_t j = 0; j < classTemplates.size(); ++j) { cv::Mat display = dst.clone(); cv::Rect rect = classTemplates[j].boundingRect; cv::rectangle(display, rect, cv::Scalar(0, 255, 255)); cv::Point center(match.x, match.y); cv::circle(display, center, 5, cv::Scalar(0, 0, 255), 2); cv::imshow("Template Matching", display); } } } ``` 请将示例代码中的`template.png`和`video.mp4`替换为你自己的模板图片和视频文件路径。这些修改应该能够解决之前提到的问题。如果还有其他问题,请随时提问!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值