提交 0fbe80ef 作者: 王进

增加动态消息接口

上级 ab6dcc17
......@@ -27,21 +27,41 @@ class WechatSDK {
(wx as any).setStorageSync("offlineTime", curTime);
}, 60000);
}
private actId = '' // 动态消息活动id
private async sdkInit() {
const _selt = this
_selt.ReportParams.productCode = _selt.sdkParams.product_code = SDKConfig.productCode
_selt.sdkParams.appid = SDKConfig.appid
_selt.sdkParams.version = _selt.sdkVersion
const options = _selt.getOptionsInfo() // 返回参数对象
_selt.ReportParams.from = options.from || 0
_selt.ReportParams.tag = options.tag || 0
_selt.ReportParams.fromOpenId = options.fromOpenId || ''
await _selt.getNetworkType()
await _selt.getSystemInfo()
console.log("@@SDK初始化结束", _selt.ReportParams)
const _selt = this;
_selt.ReportParams.productCode = _selt.sdkParams.product_code = SDKConfig.productCode;
_selt.sdkParams.appid = SDKConfig.appid;
_selt.sdkParams.version = _selt.sdkVersion;
const options = _selt.getOptionsInfo(); // 返回参数对象
_selt.ReportParams.from = options.from || 0;
_selt.ReportParams.tag = options.tag || 0;
_selt.ReportParams.fromOpenId = options.fromOpenId || '';
_selt.actId = options.actId || '';
await _selt.getNetworkType();
await _selt.getSystemInfo();
console.log("@@SDK初始化结束", _selt.ReportParams);
}
public async updateShareMsgInfo(updateInfo) { // 更新动态消息接口
const postData = this.deepCopy({}, this.sdkParams, updateInfo);
let res = await this.sdkRequest(Links.setActShareInfo, postData, 'POST').catch(err => {
console.log("@@SDK异常::updateShareMsgInfo", err);
});
console.log("@@SDK更新动态消息接口::", res);
}
public async getActiveShareInfo () { // 查询动态消息接口
let _self = this;
let postData = {
product_code: SDKConfig.productCode,
activity_id: _self.actId
}
let res = await this.sdkRequest(Links.getActShareInfo, postData, 'POST').catch(err => {
console.log("@@SDK异常::getActiveShareInfo", err);
});
return res;
}
public async Login() {
const _selt = this
const _selt = this;
const loginPromise = await _selt._login() // 微信登录换取code
let loginPostData = _selt.deepCopy({}, _selt.sdkParams, { // 拼上appid和code
appid: SDKConfig.appid,
......@@ -49,10 +69,18 @@ class WechatSDK {
})
let sdkLoginData = await _selt.sdkRequest(Links.init, loginPostData).catch(err => {
_selt.Login()
})
});
if (sdkLoginData.code == 0) {
_selt.ReportParams.openId = _selt.sdkParams.open_id = _selt.sdkParams.uniqueid = sdkLoginData.data.openid
_selt.sdkParams.session_key = sdkLoginData.data.session_key
_selt.ReportParams.openId = _selt.sdkParams.open_id = _selt.sdkParams.uniqueid = sdkLoginData.data.openid;
_selt.sdkParams.session_key = sdkLoginData.data.session_key;
if (_selt.actId) {
let shareInfo = {
activity_id: _selt.actId,
target_state: 0,
version_type: SDKConfig.navPayEnv
};
_selt.updateShareMsgInfo(shareInfo);
}
}
return _selt.sdkActive()
}
......@@ -174,7 +202,7 @@ class WechatSDK {
msg = '用户操作系统支付状态异常';
break;
}
if (showSDKAlert) _selt.sdkAlert(msg);
if (showSDKAlert) _selt.sdkAlert(msg);
resolve(err.errCode);
}
}));
......@@ -196,7 +224,7 @@ class WechatSDK {
return 3023;
} else { // 输出订单失败消息
const errmsg = res.msg || '支付失败..'
if(showSDKAlert) _selt.sdkAlert(errmsg);
if (showSDKAlert) _selt.sdkAlert(errmsg);
return 0;
}
_selt.LoadingOff();
......@@ -710,10 +738,10 @@ class WechatSDK {
(wx as any).shareAppMessage(_selt.deepCopy(DATA, {
withShareTicket: true,
success: res => {
resolve(1)
resolve(1);
},
fail: res => {
resolve(-1)
resolve(-1);
},
complete() {
resolve(0);
......@@ -729,13 +757,16 @@ class WechatSDK {
})
}
//动态消息
public async createActiveSahre() {
public async createActiveShare(shareInfo) {
const _self = this;
let actInfo = await _self.sdkRequest(Links.getActShareId, _self.sdkParams, 'POST').catch(err => {
shareInfo.target_state = 0; // 新建动态消息状态
let postData = this.deepCopy({}, _self.sdkParams, shareInfo);
let actInfo = await _self.sdkRequest(Links.getActShareId, postData, 'POST').catch(err => {
console.log("@@SDDK错误::createActiveSahre", err);
});
if (actInfo.code == 0) {
const actId = actInfo.data.activity_id;
const totalMembers = shareInfo.room_limit || '0';
(wx as any).updateShareMenu({
withShareTicket: true,
isUpdatableMessage: true,
......@@ -743,14 +774,18 @@ class WechatSDK {
templateInfo: {
parameterList: [{
name: 'member_count',
value: 0
value: '1' // 设置房间初始玩家1
}, {
name: 'room_limit',
value: 0
value: totalMembers
}]
}
},
success: function (res) {
let shareCode = 'actId=' + actId; // 将活动ID拼在url上作为参数
_self.ShareApp(shareCode);
},
fail: function (err) { }
});
_self.ShareApp();
} else {
console.log("@@SDK错误::createActiveSahre", actInfo.msg);
}
......@@ -813,22 +848,22 @@ class WechatSDK {
}
// SDK上报参数
private sdkParams = {
product_code: null, // 产品code
appid: null, // 小游戏appid
time: null, // 当前时间戳秒
product_code: "", // 产品code
appid: "", // 小游戏appid
time: "", // 当前时间戳秒
uniqueid: '', // 设备唯一号
mac: '', // 网卡mac地址
idfa: '', // 苹果设备IDFA
open_id: null, // 用户openid
open_id: "", // 用户openid
password: '', // 登录密码(微信免密)
source: 'WEIXIN', // 用户来源
token: '', // 登录成功返回
os: 'H5', // 系统类型
equipmentos: null, // 系统版本
equipmentname: null, // 手机型号
version: null, // SDK版本
equipmentos: "", // 系统版本
equipmentname: "", // 手机型号
version: "", // SDK版本
package_code: '', // 渠道标识
sign: null, // 签名
sign: "", // 签名
unionid: '', // 用户Unionid,用于切支付
pay_channel: '', // 支付方式,初始化接口返回
client_type: 'weixin_minigame', // 客户端类型
......@@ -847,7 +882,9 @@ const Links = {
saveNum: SDKConfig.sdk_domain + '/bind/mobile.php', // 保存手机号码
playTime: SDKConfig.sdk_domain + '', // 获取用户在线时长
bindPhone: SDKConfig.sdk_domain + '/bind/is_bind_mobile.php', // 用户手机绑定状态
getActShareId: SDKConfig.sdk_domain + '/v2/weixin/create_activity_id', // 获取活动消息id
getActShareId: SDKConfig.active_domain + '/weixin/updatable_message/create_activity_id', // 获取活动消息id
setActShareInfo: SDKConfig.active_domain + '/weixin/updatable_message/updatablemsg', // 更新活动消息内容
getActShareInfo: SDKConfig.active_domain + '/weixin/updatable_message/get_activity', // 查询活动消息内容
}
class shareInfo {
title?: string
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论