YM
Size: a a a
YM
YM
a
SR
YM
YM
a
YM
VT
SR
YM
YM
YM
a
VT
VT
YM
VT
YM
SR
var fs = require('fs');
var camera_num = [
"01",
"02",
"03",
"04",
"05"
];
function fileTelegramPhoto() {
camera_num.forEach(function(folder_numer, i) {
//путь куда складываются фотки с камер
var path = '/home/camera/'+folder_numer+'/'+folder+'/01/pic/';
/*Здесь мы используем метод readdir класса fs, который получает путь и функцию-коллбек в качестве параметров.
Метод читает содержимое директории в память, а когда чтение завершено, то вызывает коллбек с двумя параметрами. */
fs.readdir(path, function(err, items) {
//console.error(folder_numer);
//console.warn("foto: "+items+", PATH: "+path);
if ( !items ) { sendTo('telegram.0', { user: user, text: 'На камере '+ folder_numer + ' фоток еще нет'}); }
else {
last = items.length; // номер последнего файла директории (количество файлов)
//console.warn("last file: "+last);
var tempf = [];
var timef = [];
var numMinFoto = 1;
if (items.length < 6) { numMinFoto = items.length ;} else numMinFoto=6;
sendTo('telegram.0', { user: user, text: 'На камере '+ folder_numer + ', ' + items.length +' фото, высылаю '+numMinFoto+' последних...' });
for (var igg=0; igg<items.length; igg++) {
var timestf = fs.statSync(path+items[igg]).mtime.getTime();
var filename = items[igg];
//console.warn("filename="+filename)
timef[igg] = {"timestamp":timestf, "path":filename};
//console.warn('Array1 = ' + timef[igg].timestamp + ' ' + timef[igg].path);
}
timef.sort("timestamp");
var numofofoto = timef.length-numMinFoto
for(var gg=numofofoto; gg < timef.length; gg++) {
var foto;
//log('last = ' + timef[gg].timestamp , 'warn');
filepath = timef[gg].path;
//console.warn("filepath="+filepath)
foto = '/home/camera/'+folder_numer+'/'+folder+'/01/pic/'+filepath;
//console.warn(foto);
sendTo('telegram.0',{text: foto, chat_id: getState("telegram.0.communicate.requestChatId").val});
}
filepath = items[last-1];
//log('filepath = '+filepath);
}
});
});
}