微信开放数据域,定向分享邀请玩家进入房间,求助大佬!

最近公司在做一个对战类的微信小游戏,策划希望能做到像微信小游戏英雄杀一样的邀请好友效果,具体需求是:1、获取微信好友里所有玩过此小游戏的好友列表,2、点击某个好友的邀请按钮,可以直接发送一个分享链接,3、好友点击链接进入游戏后,能知道此链接是邀请链接并知道房间号然后进入房间。

目前第1点和第2点都实现了,我是通过子域项目的wx.getFriendCloudStorage接口获取所有玩过此游戏的好友,并用在按钮点击事件里调用wx.shareMessageToFriend接口传入该好友的openid进行分享的。但是第3点卡主了,看了微信官方文档wx.shareMessageToFriend方法是不支持直接设置query的,只能通过wx.setMessageToFriendQuery接口设置query,而且值限定在了0 - 50 这51种情况,想传入房间号是不可能了(我实验过了,设置非0-50的内容,会返回失败)。那么英雄杀这种直接邀请微信好友进入房间的操作是怎么实现的呢?有大佬能指点一下思路吗?

有人知道怎么分享回来拿到房间号吗,在子域是知道谁分享给我得,但是子域得数据拿不出来

https://developers.weixin.qq.com/minigame/dev/api/share/wx.setMessageToFriendQuery.html 分享的链接携带房间号等参数,用户点击检测链接上是否携带房间号,有就直接进入房间

定向分享要在子域里面分享,无法携带参数,只有设置一个场景值。修改得互动数据也只是一个递增得int32数据。

在标题上加房间号呢?用户自己输入hhhh

哈哈谢谢大佬

应该是这个游戏服务
只用里面的邀请功能

这个我也看了,是邀请在线好友,不在线没玩过得,没办法做到

image

离线不更简单 直接分享小程序带上房间号不就行了


做成这种定向分享。也不是在线玩家分享

刚看了一下自己的代码,离线邀请是先注册一个onStateUpdate,然后调用wx.shareMessageToFriend, 然后把openid存起来, 对方点开小程序后就会上线。这个时候onStateUpdate会有回调,如果是刚刚的openid上线了就发送在线邀请。
wx.shareMessageToFriend 不需要带房间号,只是为了让对方上线,上线之后调用GameServerNabager的邀请

这样有一个在线邀请得确认框是吧,为啥我看别的游戏能做到直接进房间,开放数据我看了很久,没有可能把把房间号找到

多谢大佬!

英雄杀也有弹窗吧。当时我们也是调研的英雄杀

我看得是广东雀神麻将

你们最后怎么解决这个问题的.尴尬我现在也遇到这个问题了

还没开始用,请允许我插一嘴,


微信的这些限制有影响么,不想用云存储啊。