媒介:正在企微拉收个消息给客户如何便这样易这???别觉得有了开辟文档您就能够一往无前了!前面的路借需要您披荆棘这~
企微开辟文档:谈天东西栏交心 - 交心文档 - 企业微疑开辟者中间
第一步:引用企微的js-sdk
- <script src="//res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>
复造代码 使用分析 - 交心文档 - 企业微疑开辟者中间
尔把设置js-sdk的代码皆搁正在了qy_wechat.js里,以是需要正在main.js中引用一下,以下代码!- import qy_wechat from '@/co妹妹on/qy_wechat.js'
- Vue.prototype.$qy_wechat = qy_wechat;
- qy_wechat.initJssdk()
复造代码 因为使用的是uni-app,引用的时候需要减正在template.h5.html中(不那个文献需要新修)uni-app民网,而后按图设置。
怎样鉴别引用胜利?瞅下图
正在资本中能瞅到那个文献便代表您已经完毕了第一步!!!
第两步:设置config 战 agentConfig
假设您是引用的jweixin-module,需要先卸载失落,而后间接用jWeixin去替代wx!否则即是wx.config is not a function~别问尔为何明白!不外那个办法也是瞅了他人的答复试的~
(1)、设置config代码- initJssdk: function() {
- let that = this
- uni.request({
- url: 恳求的交心url,
- data: {
- agentid: '您自己的agentid',
- purl: window.location.href
- },
- success: result => {
- if (result.data) {
- jWeixin.config({
- beta: true, //必需 这样写,不然wx.invoke挪用方法的jsapi会有成就
- debug: false,
- appId: result.data.appId, // 必挖,企业微疑的corpID
- timestamp: result.data.timestamp, // 必挖,天生署名的时间戳
- nonceStr: result.data.nonceStr, // 必挖,天生署名的随机串
- signature: result.data.signature, // 必挖,署名,睹附录-JS-SDK使用权力署名算法
- jsApiList: [
- 'checkJsApi',
- 'updateAppMessageShareData', //朋友
- 'updateTimelineShareData', //朋友圈
- 'chooseImage',
- 'uploadImage',
- 'getLocalImgData',
- 'getLocation',
- 'openLocation',
- 'hideAllNonBaseMenuItem', //躲藏统统非根底按钮交心
- 'showAllNonBaseMenuItem',
- 'scanQRCode',
- 'previewImage'
- ]
- });
- // config疑息考证后会施行ready办法,统统交心挪用皆必需正在config交心得到成果以后,
- // config是一个客户真个同步操纵,以是假设需要正在页里减载时便挪用相干交心,则须把相干交心搁正在ready函数中挪用去保证准确施行。
- //关于 用户触收时才华用的交心,则能够间接挪用,没有需要搁正在ready函数中。
- jWeixin.ready(function() {
- console.log("ready,设置完毕")
- that.initWxWorkJssdk()
- });
- }
- }
- });
- },
复造代码 (2)、设置agentConfig代码- //初初化sdk设置
- initWxWorkJssdk: function() {
- let that = this
- uni.request({
- url: 交心url,
- data: {
- agentid: 您自己的agentid,
- purl: window.location.href
- },
- success: res => {
- if (res.errMsg != "request:ok") {
- alert(res.errMsg);
- } else {
- let d = res.data.d;
-
- jWeixin.agentConfig({
- corpid: d.appId, // 必挖,企业微疑的corpid,必需取目前登录的企业不合
- agentid: 1000060, // 必挖,企业微疑的使用id
- timestamp: d.timestamp, // 必挖,天生署名的时间戳
- nonceStr: d.nonceStr, // 必挖,天生署名的随机串
- signature: d.signature, // 必挖,署名,睹附录1
- jsApiList: [
- 'checkJsApi',
- 'getContext',
- 'getCurExternalContact',
- 'getCurExternalChat',
- 'sendChatMessage'
- ], //必挖
- success: function() {
- that.Getcontext()
- },
- fail: function(res) {
- alert(res.errMsg);
- if (res.errMsg.indexOf("function not exist") > -1) {
- alert("版原太低请升级");
- }
- }
- });
-
- }
- }
- });
- },
复造代码 那里值患上留神的是config能够正在微疑东西上浮试,可是agentConfig需要公布以后再脚机上瞅!尔试过实机调试也不可!便很烦!!!爆炸~没有明白您们有甚么佳办法~尔瞅有的是用了甚么代办署理硬件弄的。出试过
第三步:获得加入H5页里的进口情况 - 交心文档 - 企业微疑开辟者中间
- //鉴别进口
- Getcontext() {
- var that = this;
- jWeixin.invoke('getContext', {}, function(res) {
- if (res.err_msg == "getContext:ok") {
- // that.entry = res.entry;
- uni.setStorageSync('entry',res.entry)
-
- //前去加入H5页里的进口范例,今朝有normal、contact_profile、single_chat_tools、group_chat_tools、chat_attachment
- that.getExternalid(res.entry)
- // shareTicket = res.shareTicket; //可用于挪用getShareInfo交心
- } else {
- //毛病处置
- }
- });
- },
复造代码 第四步:获得目前内部联系人userid - 交心文档 - 企业微疑开辟者中间
- getExternalid(entry) {
- var that = this
- if (entry == 'contact_profile' || entry == 'single_chat_tools') {
-
- jWeixin.invoke('getCurExternalContact', {}, function(res) {
-
- if (res.err_msg == "getCurExternalContact:ok") {
- uni.setStorageSync('userId',res.userId)
-
- // that.userId = res.userId; //前去目前内部联系人userId
-
- } else {
- //毛病处置
- }
- });
- }
- if (entry == 'group_chat_tools') {
- jWeixin.invoke('getCurExternalChat', {}, function(res) {
- if (res.err_msg == "getCurExternalChat:ok") {
- uni.setStorageSync('chatId',res.chatId)
- // that.chatId = res.chatId; //前去目前客户群的群聊ID
- } else {
- //毛病处置
- }
- });
- }
- }
复造代码 第五步:分享消息到目前会话 - 交心文档 - 企业微疑开辟者中间
- // 拉收消息
- pushThis(){
- var that = this
- var ua = window.navigator.userAgent.toLowerCase();
- console.log(ua)
- console.log(ua.match(/wxwork/i) == 'wxwork')
- if (ua.match(/wxwork/i) == 'wxwork') {
-
- jWeixin.invoke('sendChatMessage', {
- msgtype:"text", //消息范例,必挖
- enterChat: true, //为true时暗示收收完毕以后特别加入会话,仅挪动端3.1.10及以上版原撑持该字段
- text: {
- content:that.content, //文原实质
- }
- }, function(res) {
- if (res.err_msg == 'sendChatMessage:ok') {
- //收收胜利
- uni.showModal({
- title:'提醒',
- content:"收收胜利"
- })
- }
- })
- } else {
- uni.showToast({
- title: "请正在企业微疑端操纵",
- icon: "none"
- })
- return
- }
- }
复造代码 拉收消息的以前必需正在企业微疑背景设置上您的使用,才气挪用,否则会呈现报错——getCurExternalContact:fail_nopermission!如图:
假设公布以后,收现在企微挨没有启?保证您的使用正在背景设置了可托域名!
成果发明苹因脚机不克不及使用,请瞅下篇文章。
uni-app开辟企微H5——拉消息给客户(装置包版)_Strawberry96的专客-CSDN专客 |