В нашей компании мне поручено создать бота для задач Slack, который сможет создавать и назначать задачи пользователю.
Кажется, я не могу удалить задачи после использования команды (done x), она только выдает сообщение о том, что задача выполнена, но всякий раз, когда я просматриваю свои задачи, в списке появляется «удаленная» задача.
controller.hears(['done (.*)'],'direct_message,direct_mention,mention',
function(bot, message) {
var number = message.match[1];
if (isNaN(number)) {
bot.reply(message, 'Please specify a number.');
} else {
// adjust for 0-based array index
number = parseInt(number) - 1;
controller.storage.users.get(message.user, function(err, user) {
if (!user) {
user = {};
user.id = message.user;
user.tasks = [];
}
if (number > 0 || number <= user.tasks.length) {
var item = user.tasks.splice(number,1);
// reply with a strikethrough message...
bot.reply(message, '~' + item + '~');
if (user.tasks.length > 0) {
bot.reply(message, 'Here are our remaining tasks:\n' + generateTaskList(user));
} else {
bot.reply(message, 'Your list is now empty!');
}
} else {
bot.reply(message, 'Sorry, your input is out of range. Right now there are ' + user.tasks.length + ' items on your list.');
}
user.tasks.push(number);
controller.storage.users.delete(user, function(err, deleted) {
if (err) {
bot.reply(message, 'I experienced an error deleting your task: ' + err);
} else {
bot.api.reactions.add({
name: 'wastebasket',
channel: message.channel,
timestamp: message.ts
});
}
});
});
}
});strong text