[Скрипты][Боты]Grammar Nazi Bot
Я писал год назад как делать ботов:
Код бота который будет кидать картинку с Хэмсвортом такой:
module.exports = {
init: function () {
const Socket = require("../common_libs/my_socket");
const DTF_API = require("../common_libs/my_dtf_api");
const Util = require('util');
const DTF_USER__LOGIN = '*****@***'; // <=== Сюда надо прописать логин(емейл) учётки бота
const DTF_USER__PASSWORD = '******'; // <=== А сюжа пароль
//логирование в файл
//const log_file = Fs.createWriteStream(__dirname + '/debug.log', {flags : 'a'});
const log_stdout = process.stdout;
class DTF_GRAMMAR_NAZI {
constructor() {
this.main();
}
_log = function(d) {
log_stdout.write('GrammarNaziBot: ' + Util.format(d) + '\n');
};
async main() {
this.g_dtf_api = new DTF_API(DTF_USER__LOGIN, DTF_USER__PASSWORD, this._log);
await this.g_dtf_api.auth();
this.g_socket = new Socket();
await this.g_socket.init(this, ['live']);
return true;
}
async event_handle(event = '') {
if (!event?.data?.text) return true;
if (event.data.text.match(/ни\s+кто/miu)) {
const attachments = [{
type: 'image',
data: {
uuid: '9f189863-72e3-5220-82b1-58a5feba6040',
width: 1000,
height: 906,
size: 337796,
type: 'png',
color: '6a6460',
hash: '',
external_service: []
}
}];
await inst.g_dtf_api.comment_add(event.data.content.id, event.data.comment_id, '', attachments).catch(function(error){inst._log(error)});
return true;
}
if (event.data.text.match(/ни\s+чего/miu)) {
const attachments = [{
type: 'image',
data: {
uuid: '92a90432-6aa8-5eb1-a9e4-a7d4e3fccdbc',
width: 1000,
height: 906,
size: 337796,
type: 'png',
color: '6a6460',
hash: '',
external_service: []
}
}];
await inst.g_dtf_api.comment_add(event.data.content.id, event.data.comment_id, '', attachments).catch(function(error){inst._log(error)});
return true;
}
} ///event_handle
}
const inst = new DTF_GRAMMAR_NAZI();
}
}
Бот реагирует на "ни кто" и "ни чего".
Код бота можно скачать по ссылке
В grammar_nazi_bot.js надо прописать данные учётки бота.
Для установки в терминале (из корня папки) запускаем команду:
npm install
Для запуска
node main.js
46 комментариев