Init
This commit is contained in:
parent
caa13ec2db
commit
9449f427b8
113
config.js
Normal file
113
config.js
Normal file
@ -0,0 +1,113 @@
|
||||
const fs = require('fs');
|
||||
|
||||
const Markup = require('telegraf/markup');
|
||||
const Extra = require('telegraf/extra');
|
||||
|
||||
const request = require('request');
|
||||
const rev = require("./reverser.js");
|
||||
|
||||
|
||||
//=== TOOL FUNCTIONS
|
||||
|
||||
const ratio = 90.0/100.0;
|
||||
|
||||
var download = function(uri, filename, callback){
|
||||
request(uri).on('error', function(err) {
|
||||
throw err;
|
||||
}).pipe(fs.createWriteStream(filename)).on('close', callback);
|
||||
};
|
||||
|
||||
//=== MAIN MODULE CONFIG
|
||||
|
||||
module.exports = function(){
|
||||
return {
|
||||
name : "Reverser",
|
||||
key : 'revrs',
|
||||
version : 0.1,
|
||||
requirements : {
|
||||
gps: false,
|
||||
},
|
||||
text : [
|
||||
{
|
||||
trigger : ["/reverse"],
|
||||
public : true,
|
||||
desc : {
|
||||
0: "Breaks a video/photo/...",
|
||||
1: "Detruit une video/photo/...",
|
||||
},
|
||||
requirements : (bot,event,message)=>{
|
||||
return new Promise((resolve, reject)=>{
|
||||
if(message.reply_to_message){
|
||||
return resolve(200);
|
||||
}
|
||||
return reject(430);
|
||||
});
|
||||
},
|
||||
action : (bot,event,message)=>{
|
||||
var id;
|
||||
var vid = false;
|
||||
if(message.reply_to_message.document){
|
||||
id = message.reply_to_message.document.file_id;
|
||||
if(message.reply_to_message.document.mime_type.indexOf('image')==0){
|
||||
return;
|
||||
}else if(message.reply_to_message.document.mime_type.indexOf('video')==0){
|
||||
|
||||
console.log(message.reply_to_message.document);
|
||||
vid = true;
|
||||
if(message.reply_to_message.document.mime_type.indexOf('mp4')>0){
|
||||
vid = "mp4";
|
||||
}else if(message.reply_to_message.document.mime_type.indexOf('avi')>0){
|
||||
vid = "avi";
|
||||
}else if(message.reply_to_message.document.mime_type.indexOf('mkv')>0){
|
||||
vid = "mkv";
|
||||
}else{
|
||||
return;
|
||||
}
|
||||
}else{
|
||||
return;
|
||||
}
|
||||
}else if(message.reply_to_message.sticker){
|
||||
id = message.reply_to_message.sticker.file_id;
|
||||
return;
|
||||
}else if(message.reply_to_message.video){
|
||||
console.log(message.reply_to_message.video);
|
||||
if(message.reply_to_message.video.mime_type.indexOf('mp4')>0){
|
||||
id = message.reply_to_message.video.file_id;
|
||||
vid = "mp4";
|
||||
}else if(message.reply_to_message.video.mime_type.indexOf('avi')>0){
|
||||
id = message.reply_to_message.video.file_id;
|
||||
vid = "avi";
|
||||
}else if(message.reply_to_message.video.mime_type.indexOf('mkv')>0){
|
||||
id = message.reply_to_message.video.file_id;
|
||||
vid = "mkv";
|
||||
}else{
|
||||
return;
|
||||
}
|
||||
}else {
|
||||
return;
|
||||
}
|
||||
if(!vid)
|
||||
return;
|
||||
|
||||
return bot.telegram.getFileLink(id).then(link=>{
|
||||
const file = "/tmp/"+id+"."+vid;
|
||||
download((link,file),function(){
|
||||
rev.reverse(file).then(res=>{
|
||||
return event.replyWithVideo({source: res.path});
|
||||
}).catch(err=>{bot.error(err)});
|
||||
});
|
||||
}).catch(err=>{bot.error(err)});
|
||||
}
|
||||
},
|
||||
],
|
||||
reply : [],
|
||||
regex : [],
|
||||
media : [],
|
||||
callback : [],
|
||||
inline : [],
|
||||
new_member : (bot,event)=>{},
|
||||
weburl : [],
|
||||
cron : [],
|
||||
}
|
||||
|
||||
}
|
25
reverser.js
Normal file
25
reverser.js
Normal file
@ -0,0 +1,25 @@
|
||||
const path = require('path');
|
||||
const down = require('download');
|
||||
const hasha = require('hasha');
|
||||
const ffmpeg = require('fluent-ffmpeg');
|
||||
|
||||
const {path: ffPath} = require('@ffmpeg-installer/ffmpeg');
|
||||
ffmpeg.setFfmpegPath(ffPath);
|
||||
|
||||
const reverse = file => {
|
||||
return new Promise((resolve, reject) => {
|
||||
const basename = path.basename(file);
|
||||
const savepath = path.join(__dirname, '../outputs', 're-' + basename);
|
||||
ffmpeg(file)
|
||||
.videoFilter('reverse')
|
||||
.on('error', error => reject(error))
|
||||
.on('end', async () => resolve({
|
||||
path: savepath
|
||||
}))
|
||||
.save(savepath);
|
||||
});
|
||||
};
|
||||
|
||||
module.exports = {
|
||||
reverse
|
||||
};
|
Loading…
x
Reference in New Issue
Block a user