I use createGetStarted()
in the app.listen()
method and it appears and the action works properly but the button is just blue hoverable text on top of a white button, no border. Basically just a text link, not a button. What could be the problem?
I have this method to call the appropriate API:
function callThreadSettingsAPI(data) { //Thread Reference API
request({
uri: 'https://graph.facebook.com/v2.6/me/thread_settings',
qs: { access_token: PAGE_ACCESS_TOKEN },
method: 'POST',
json: data
}, function (error, response, body) {
if (!error && response.statusCode == 200) {
console.log("Thread Settings successfully changed!");
} else {
console.error("Failed calling Thread Reference API", response.statusCode, response.statusMessage, body.error);
}
});
}
This method creates the json:
function createGetStarted() {
var data = {
setting_type: "call_to_actions",
thread_state: "new_thread",
call_to_actions:[
{
payload:"getStarted"
}
]
};
callThreadSettingsAPI(data);
}
That's correct. The appearance of the button will vary depending on the device and software used to access Facebook, for example Chrome on a computer or the Messenger app on iPhone.
Chrome on Windows:
Messenger app on iPhone: