在Facebook即时游戏中如何以及在哪里使用FBInstant.updateAsync

时间:2018-11-15 06:26:08

标签: javascript php facebook html5-canvas facebook-instant-games

我是即时游戏的新手。 请告诉我如何使用

FBInstant.updateAsync({
    action: 'CUSTOM',
    cta: 'Join The Fight',
    image: base,
    template: 'play_turn',
    text: 'Play your turn now',
    data: {
        myReplayData: '...',
        id: contextId
    },
    strategy: 'IMMEDIATE',
    notification: 'NO_PUSH',
}).then(
    () => {
        console.log('updateAsync() success!' + JSON.stringify(data));
        FBInstant.quit();
    },
    error => {
        console.error('updateAsync() ERROR! ' + JSON.stringify(error));
    }
);
}

我还设置了我的fb配置文件。

{
  "instant_games": {
"platform_version": "RICH_GAMEPLAY",

"custom_update_templates": {
  "play_turn": {
    "example": "Yolo just invaded village!"
      }
    }
  }
}

如何获取用户的psid以及如何向用户发送消息以进行重新参与。

1 个答案:

答案 0 :(得分:0)

自定义更新

从广义上讲,自定义更新应该是游戏会话的输出。例如。在“与朋友共话”中,每次播放单词时都会发送自定义更新。自定义更新会出现在您正在玩游戏的Messenger对话中,也可能会在Facebook通知中用于自动重新吸引玩家(开发者无法控制)。

您已经提供的代码足以发送自定义更新,但您必须 image参数提供有效的base 64编码图像,否则调用将失败。请注意,要成功发送自定义更新,您的游戏必须在Instant Games播放器中(在Messenger.com,Facebook.com或通过Facebook移动应用程序之一)进行播放。 Instant Games SDK在Facebook之外无法使用。

A custom update from Words With Friends

机器人(重新参与)

您不需要PSID发送自定义更新。您将需要PSID才能通过Messenger机器人(如果有)将消息发送给播放器。您可以在此处开始使用Messenger机器人:https://developers.facebook.com/docs/messenger-platform/

对于所有玩您的游戏的用户,您的Messenger机器人应该收到一个game_play网络挂钩,其中包含他们的PSID。