Javin
Javin
  • 发布:2023-07-25 14:37
  • 更新:2024-10-15 16:25
  • 阅读:191

uniCloud.getPushManager是否支持多个APP相同同云服务空间之间发送数据?

分类:uniCloud

我的软件中有普通用户APP,商户APP,和管理APP。他们都在同一个云服务空间中。
我简单看了一下uni-im的代码,在uni-im-co/index.obj.js中的977行有如下代码:

let pushRes = await uniImCo.sendMsgToGroup({  
    pushParam,  
    appId: this.clientInfo.appId  
})

这个this.clientInfo是从发送数据的客户端里获取的,此时带来一个问题如果普通用户APP发送了一个消息给商户,商户APP上是否能收到这个推送,我是否应该检测用户是哪个APP的,分成多组去sendMsgToGroup不同的appId?

他是在144行通过

let res = await uniCloud.getPushManager({    
    appId    
}).sendMessage(pushParam)    
if (res.errCode) {    
    if (res.errCode == "uni-push-user-invalid") {    
        //可能因为用户长时间没有登录导致的cid过期而发送失败,但是此时已将离线数据写入数据库,登录后可获取。客户端不需要进入 catch    
        res = {    
            data: {    
                "uni-push-err-res": res    
            },    
            errCode: 0    
        }    
    } else {    
        console.log(res.errCode);    
        throw new Error(res.errMsg)    
    }    
}

方式发送的这里有一个getPushManager({appId})能发送给不同appId但是相同云服务空间的用户吗?

2023-07-25 14:37 负责人:DCloud_uniCloud_JSON 分享
已邀请:
第一次改BUG

第一次改BUG - 学,不要停

楼主解决了吗?难道每个应用必须拆分多个云函数才是答案?

要回复问题请先登录注册