in kik/server.js [160:208]
function convertCardReplyToKikMessage(message) {
let replies = [];
let linkMessages = [];
let kikMessages = [];
if (message.buttons.length > 0) {
for(let button of message.buttons) {
let text = button.text;
let postback = button.postback;
if (text) {
if (postback && postback.startsWith('http')) {
linkMessages.push({type: 'link', title: text, url: postback});
} else {
replies.push({type: 'text', body: text});
}
}
}
}
if (message.imageUri) {
let pictureMessage = addImageToCardReply(message, replies);
kikMessages.push(pictureMessage);
let descriptionMessage = addDescriptionToCardReply(message, replies);
if (descriptionMessage.body) {
kikMessages.push(descriptionMessage);
}
} else {
let descriptionMessage = addDescriptionToCardReply(message, replies);
if (message.title) {
descriptionMessage.body = message.title + '\n' + descriptionMessage.body;
}
kikMessages.push(descriptionMessage);
}
if (linkMessages.length > 0) {
for (let i = 0; i < linkMessages.length; i++) {
//Add quick replies to last link message
if (i === linkMessages.length - 1 && replies.length > 0) {
linkMessages[i].keyboards = [{
type: 'suggested',
responses: replies
}];
}
kikMessages.push(linkMessages[i]);
}
}
return kikMessages;
}