@as2174 這是code
var TGBOT = require("./tg");
var bot = new TGBOT({
token: 'c8763',
help: true
});
var db = require("./db");
var DB = new db();
bot.on('message', function(message) {
if (message.chat.id == -151293492) {
if (message.reply_to_message && message.text && message.reply_to_message.forward_from) {
bot.sendMessage(message.reply_to_message.forward_from.id, message.text);
}
}
else {
bot.forwardMessage(-151293492, message.chat.id, message.message_id, {}, function(err, result) {
if (err) {
console.log(err);
}
else {
message.fwd_id = result.message_id;
message.mention = [];
if (message.entities) {
message.entities.forEach(function(entity) {
switch (entity.type) {
case 'mention':
message.mention.push(message.text.slice(entity.offset, entity.offset + entity.length));
break;
case 'text_mention':
message.mention.push(entity.user.id);
break;
default:
// code
}
});
}
if (message.reply_to_message) {
message.mention.push(message.reply_to_message.from.id);
}
DB.saveMessage(message);
}
});
}
});
bot.addCmd('wmmm', function(message, args) {
var findMention = DB.findMention(message.from.username, message.from.id);
var gen = function*() {
var docs = yield findMention.nextMessage((docs)=>gen.next(docs));
var messages = docs;
var text = "";
docs.forEach(function(doc, index) {
if (doc.text) {
text += (index + 1 + ". " + (doc.from.username || doc.from.first_name) + " : " + doc.text + "\n");
}
});
text = text || "Nothing";
message.sendToUser(text, {
reply_markup: JSON.stringify({
inline_keyboard: [
[{
text: "1",
callback_data: "1"
}, {
text: "2",
callback_data: "2"
}, {
text: "3",
callback_data: "3"
}, {
text: "4",
callback_data: "4"
}, {
text: "5",
callback_data: "5"
}],
[{
text: "<",
callback_data: "previous"
}, {
text: ">",
callback_data: "next"
}]
],
disable_notification : true
})
},function(err){
try {
console.log(err.message);
err = JSON.parse(err.message);
} catch (e) {console.log(e)}
if(err && (err.description == "PEER_ID_INVALID" || err.description == "Bot was blocked by the user")){
message.replyMsg("請確認是否/start了此bot");
}
}).onCallbackQuery(function(cbq) {
if (cbq.data.match(/^\d$/)) {
var i = Number(cbq.data);
if (messages[i - 1]) bot.replyMessage(messages[i - 1].chat.id, messages[i - 1].message_id, (cbq.from.username ? "@" + cbq.from.username : cbq.from.first_name) + " ^",{disable_notification : true});
}
else if (cbq.data == "previous") {
findMention.previousMessage(function(docs){
messages = docs;
var text = "";
docs.forEach(function(doc, index) {
if (doc.text) {