87 lines
1.8 KiB
JavaScript
87 lines
1.8 KiB
JavaScript
var botui = new BotUI('delivery-bot'),
|
|
address = 'House 1, First Ave.';
|
|
|
|
botui.message
|
|
.bot('Where would you like the package to be delivered?')
|
|
.then(function () {
|
|
return botui.action.button({
|
|
delay: 1000,
|
|
addMessage: false, // so we could the address in message instead if 'Existing Address'
|
|
action: [{
|
|
text: 'Existing Address',
|
|
value: 'exist'
|
|
}, {
|
|
text: 'Add New Address',
|
|
value: 'new'
|
|
}]
|
|
})
|
|
}).then(function (res) {
|
|
if(res.value == 'exist') {
|
|
botui.message.human({
|
|
delay: 500,
|
|
content: address
|
|
});
|
|
end();
|
|
} else {
|
|
botui.message.human({
|
|
delay: 500,
|
|
content: res.text
|
|
});
|
|
askAddress();
|
|
}
|
|
});
|
|
|
|
var askAddress = function () {
|
|
botui.message
|
|
.bot({
|
|
delay: 500,
|
|
content: 'Please write your address below:'
|
|
})
|
|
.then(function () {
|
|
return botui.action.text({
|
|
delay: 1000,
|
|
action: {
|
|
size: 30,
|
|
icon: 'map-marker',
|
|
value: address, // show the saved address if any
|
|
placeholder: 'Address'
|
|
}
|
|
})
|
|
}).then(function (res) {
|
|
botui.message
|
|
.bot({
|
|
delay: 500,
|
|
content: 'New address: ' + res.value
|
|
});
|
|
|
|
address = res.value; // save address
|
|
|
|
return botui.action.button({
|
|
delay: 1000,
|
|
action: [{
|
|
icon: 'check',
|
|
text: 'Confirm',
|
|
value: 'confirm'
|
|
}, {
|
|
icon: 'pencil',
|
|
text: 'Edit',
|
|
value: 'edit'
|
|
}]
|
|
})
|
|
}).then(function (res) {
|
|
if(res.value == 'confirm') {
|
|
end();
|
|
} else {
|
|
askAddress();
|
|
}
|
|
});
|
|
}
|
|
|
|
var end = function () {
|
|
botui.message
|
|
.bot({
|
|
delay: 1000,
|
|
content: 'Thank you. Your package will shipped soon.'
|
|
});
|
|
}
|