Skip to content

Commit

Permalink
update
Browse files Browse the repository at this point in the history
  • Loading branch information
bot committed Jun 13, 2020
1 parent c66e75d commit d219652
Show file tree
Hide file tree
Showing 26 changed files with 693 additions and 173 deletions.
56 changes: 56 additions & 0 deletions src/api/controllers/apiController.js
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ exports.login = async function(req, res) {
res.redirect(req.protocol+"://"+req.headers.host+"/"+req.body.site+"/info");
}
} else {
//Factory.clear();
res.render('login',{title: 'My Dice Bot',site:req.params.site,skin:req.session.skin});
}
} catch(err) {
Expand Down Expand Up @@ -210,6 +211,61 @@ exports.keereg = async function(req, res) {
}
};

exports.proxyload = async function(req, res) {
try{
let data = '[]';
let filePath = path.resolve(path.join(process.execPath, '../proxy.json'));
if(isMobile(req)) {
filePath = path.resolve(path.join(__dirname, '../../proxy.json'));
}
if(process.env.electron) {
filePath = path.resolve(path.join(config.mydice.path, '/proxy.json'));
}
if(fs.existsSync(filePath)){
data = fs.readFileSync(filePath);
}
let proxyList = JSON.parse(data);
return res.status(200).json(proxyList);
} catch(err) {
console.log(err);
return res.status(500).send({err: err.toString()});
}
}

exports.proxysave = async function(req, res) {
try{
let proxyList = {};
let data = '[]';
let filePath = path.resolve(path.join(process.execPath, '../proxy.json'));
if(isMobile(req)) {
filePath = path.resolve(path.join(__dirname, '../../proxy.json'));
}
if(process.env.electron) {
filePath = path.resolve(path.join(config.mydice.path, '/proxy.json'));
}
if(fs.existsSync(filePath)){
data = fs.readFileSync(filePath);
}
proxyList = JSON.parse(data);
if(typeof proxyList !== 'undefined') {
proxyList.forEach(function(item, index, object){
if(item.proxy_name == req.body.proxy_name ){
object.splice(index,1);
}
});
}
if(typeof req.body.proxy_name !== 'undefined') {
proxyList.push(req.body);
}
data = JSON.stringify(proxyList);
fs.writeFileSync(filePath, Buffer.from(data));
return res.status(200).json('ok');
} catch(err) {
console.log(err);
return res.status(500).send({err: err.toString()});
}
};

exports.keesave = async function(req, res) {
try{
let filePath = path.resolve(path.join(process.execPath, '../keepass/')+req.query.keepassfile+'.kdbx');
Expand Down
4 changes: 2 additions & 2 deletions src/api/models/base.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
var APIError = require('../errors/APIError');

module.exports = class BaseDice {
constructor(){
//console.log('mydicebot');
constructor(proxy){
this.proxy = proxy;
}
async resetseed(req) {
let errs = new Error('Platform is not support reset seed');
Expand Down
18 changes: 14 additions & 4 deletions src/api/models/bitsler.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,11 @@ var BaseDice = require('./base')
var fetch = require('isomorphic-fetch');
var FormData = require('form-data');
var APIError = require('../errors/APIError');
var SocksProxyAgent = require('socks-proxy-agent');

module.exports = class BitslerDice extends BaseDice {
constructor(){
super();
constructor(proxy){
super(proxy);
this.url = 'https://www.bitsler.com';
this.benefit = '?ref=mydicebot'
this.currencys = ["btc","eth","ltc","doge","dash","bch","xrp","zec","etc","neo","kmd","btg","lsk","dgb","qtum","strat","waves","burst"];
Expand Down Expand Up @@ -164,13 +165,22 @@ module.exports = class BitslerDice extends BaseDice {

async _send(route, method, body, accessToken){
let url = `${this.url}/api/${route}${this.benefit}`;
let res = await fetch(url, {
let options= {
method,
headers: {
'User-Agent': 'DiceBot',
},
body: body,
});
};
if(this.proxy.ip) {
let socks = 'socks://'+this.proxy.ip+':'+this.proxy.port;
if(this.proxy.user){
socks = 'socks://'+this.proxy.user+':'+this.proxy.password+'@'+this.proxy.ip+':'+this.proxy.port;
}
let agent = new SocksProxyAgent(socks);
options.agent = agent;
}
let res = await fetch(url, options);
let data = await res.json();
if (data.success == false) {
let errs = new Error(data.error);
Expand Down
20 changes: 14 additions & 6 deletions src/api/models/crypto.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,11 @@ var BaseDice = require('./base');
var fetch = require('isomorphic-fetch');
var FormData = require('form-data');
var APIError = require('../errors/APIError');
var SocksProxyAgent = require('socks-proxy-agent');

module.exports = class CryptoDice extends BaseDice {
constructor(){
super();
constructor(proxy){
super(proxy);
//this.url = 'https://api.crypto-games.net';
this.url = 'https://api.crypto.games';
}
Expand Down Expand Up @@ -133,16 +134,23 @@ module.exports = class CryptoDice extends BaseDice {

async _send(route, method, body, accessToken){
let url = `${this.url}/v1/${route}/${accessToken}`;
//console.log(JSON.stringify(body));
let res = await fetch(url, {
let options = {
method,
headers: {
Accept: 'application/json, text/plain, */*',
'Content-Type': 'application/json',
},
body: JSON.stringify(body),
//body: body,
});
};
if(this.proxy.ip) {
let socks = 'socks://'+this.proxy.ip+':'+this.proxy.port;
if(this.proxy.user){
socks = 'socks://'+this.proxy.user+':'+this.proxy.password+'@'+this.proxy.ip+':'+this.proxy.port;
}
let agent = new SocksProxyAgent(socks);
options.agent = agent;
}
let res = await fetch(url, options);
let data = await res.json();
//console.log(data);
if (!res.ok) {
Expand Down
32 changes: 20 additions & 12 deletions src/api/models/duckdice.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,11 @@ var BaseDice = require('./base');
var fetch = require('isomorphic-fetch');
var FormData = require('form-data');
var APIError = require('../errors/APIError');
var SocksProxyAgent = require('socks-proxy-agent');

module.exports = class DuckDice extends BaseDice {
constructor(){
super();
constructor(proxy){
super(proxy);
this.url = 'https://duckdice.io';
this.benefit = '&c=ab61534783'
}
Expand Down Expand Up @@ -136,25 +137,32 @@ module.exports = class DuckDice extends BaseDice {

async _send(route, method, body, accessToken){
let url = `${this.url}/api/${route}${this.benefit}`;
let res = null;
let options= {
method,
headers: {
'User-Agent': 'MyDiceBot',
},
};
if(method == "POST"){
res = await fetch(url, {
options = {
method,
headers: {
Accept: 'application/json',
'User-Agent': 'MyDiceBot',
'Content-Type': 'application/json',
},
body: JSON.stringify(body),
});
} else {
res = await fetch(url, {
method,
headers: {
'User-Agent': 'MyDiceBot',
},
});
};
}
if(this.proxy.ip) {
let socks = 'socks://'+this.proxy.ip+':'+this.proxy.port;
if(this.proxy.user){
socks = 'socks://'+this.proxy.user+':'+this.proxy.password+'@'+this.proxy.ip+':'+this.proxy.port;
}
let agent = new SocksProxyAgent(socks);
options.agent = agent;
}
let res = await fetch(url, options);
let data = await res.json();
if (data.error) {
let errs = new Error(data.error);
Expand Down
4 changes: 2 additions & 2 deletions src/api/models/epic.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ var request = require('request');
var steem = require('steem');

module.exports = class EpicDice extends BaseDice {
constructor(){
super();
constructor(proxy){
super(proxy);
this.url = 'https://epicdice.io';
this.benefit = '?ref=mydicebot'
this.currencys = ["steem","sbd"];
Expand Down
12 changes: 11 additions & 1 deletion src/api/models/factory.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,5 +17,15 @@ module.exports = {
}
let instance = this.instances.get(clazzname);
return instance;
}
},
check() {
if (this.instances.size >0 ) {
return true;
} else {
return false;
}
},
clear() {
this.instances.clear();
},
}
31 changes: 25 additions & 6 deletions src/api/models/freebitco.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,11 @@ var fetch = require('isomorphic-fetch');
var FormData = require('form-data');
var APIError = require('../errors/APIError');
var querystring = require('querystring');
var SocksProxyAgent = require('socks-proxy-agent');

module.exports = class FreeBitco extends BaseDice {
constructor(){
super();
constructor(proxy){
super(proxy);
this.url = 'https://freebitco.in';
this.benefit = '&r=16392656'
}
Expand Down Expand Up @@ -160,26 +161,44 @@ module.exports = class FreeBitco extends BaseDice {
async _getCsrfToken() {
let url = this.url;
let method = "GET";
let res = await fetch(url, {
let options= {
method,
headers: {
'User-Agent': 'MyDiceBot',
},
});
};
if(this.proxy.ip) {
let socks = 'socks://'+this.proxy.ip+':'+this.proxy.port;
if(this.proxy.user){
socks = 'socks://'+this.proxy.user+':'+this.proxy.password+'@'+this.proxy.ip+':'+this.proxy.port;
}
let agent = new SocksProxyAgent(socks);
options.agent = agent;
}
let res = await fetch(url, options);
let csrfToken = this._parseCookies(res);
return csrfToken;
}

async _send(route, method, body, accessToken, cookie, isJson){
let url = `${this.url}/${route}`;
let res = await fetch(url, {
let options = {
method,
headers: {
'User-Agent': 'MyDiceBot',
Cookie: cookie,
},
body: body,
});
};
if(this.proxy.ip) {
let socks = 'socks://'+this.proxy.ip+':'+this.proxy.port;
if(this.proxy.user){
socks = 'socks://'+this.proxy.user+':'+this.proxy.password+'@'+this.proxy.ip+':'+this.proxy.port;
}
let agent = new SocksProxyAgent(socks);
options.agent = agent;
}
let res = await fetch(url, options);
let data = "e:freebitcoin error, Please wait minutes before trying again";
let ret = data.split(':');
if(!isJson) {
Expand Down
1 change: 1 addition & 0 deletions src/api/models/github.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
'use strict';
var APIError = require('../errors/APIError');
var fetch = require('isomorphic-fetch');
var SocksProxyAgent = require('socks-proxy-agent');

module.exports = class GitHub {
constructor(){
Expand Down
4 changes: 2 additions & 2 deletions src/api/models/kryptogames.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ var request = require('request');
var steem = require('steem');

module.exports = class KryptoGames extends BaseDice {
constructor(){
super();
constructor(proxy){
super(proxy);
this.url = 'https://kryptogames.io';
this.benefit = '?ref=mydicebot'
this.currencys = ["steem","sbd"];
Expand Down
18 changes: 14 additions & 4 deletions src/api/models/nine.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,11 @@ var BaseDice = require('./base');
var fetch = require('isomorphic-fetch');
var FormData = require('form-data');
var APIError = require('../errors/APIError');
var SocksProxyAgent = require('socks-proxy-agent');

module.exports = class NineDice extends BaseDice {
constructor(){
super();
constructor(proxy){
super(proxy);
this.url = 'https://www.999dice.com';
this.benefit = '?224280708'
}
Expand Down Expand Up @@ -126,13 +127,22 @@ module.exports = class NineDice extends BaseDice {

async _send(route, method, body, accessToken){
let url = `${this.url}/api/${route}${this.benefit}`;
let res = await fetch(url, {
let options= {
method,
headers: {
'User-Agent': 'DiceBot',
},
body: body,
});
};
if(this.proxy.ip) {
let socks = 'socks://'+this.proxy.ip+':'+this.proxy.port;
if(this.proxy.user){
socks = 'socks://'+this.proxy.user+':'+this.proxy.password+'@'+this.proxy.ip+':'+this.proxy.port;
}
let agent = new SocksProxyAgent(socks);
options.agent = agent;
}
let res = await fetch(url, options);
if(res.status == 200){
let data = await res.json();
return data;
Expand Down
Loading

0 comments on commit d219652

Please sign in to comment.