-
Notifications
You must be signed in to change notification settings - Fork 3
/
THTweb
195 lines (193 loc) · 4.84 KB
/
THTweb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
#!/bin/bash
# Launch edit by @THTweb
tgcli_version="171003-nightly"
luarocks_version=2.4.2
lualibs=(
'luasec'
'luarepl'
'lbase64 20120807-3'
'luafilesystem'
'lub'
'luaexpat'
'redis-lua'
'lua-cjson'
'fakeredis'
'xml'
'feedparser'
'serpent'
)
today=`date +%F`
install() {
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install git redis-server lua5.2 liblua5.2-dev lua-lgi libnotify-dev unzip tmux -y && add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
apt-get upgrade
sudo do-release-upgrade
sudo apt-get install libconfig++9v5 libstdc++6
sudo apt autoremove
sudo apt-get install gcc-4.9
sudo apt-get --yes install wget libconfig9 libjansson4 lua5.2 liblua5.2 make unzip git redis-server g++ whois fortune fortunes
sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
sudo apt-get install g++-4.7 -y c++-4.7 -y
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install libreadline-dev -y libconfig-dev -y libssl-dev -y lua5.2 -y liblua5.2-dev -y lua-socket -y lua-sec -y lua-expat -y libevent-dev -y make unzip git redis-server autoconf g++ -y libjansson-dev -y libpython-dev -y expat libexpat1-dev -y
sudo apt-get install screen -y
sudo apt-get install tmux -y
sudo apt-get install libstdc++6 -y
sudo apt-get install lua-lgi -y
sudo apt-get install libnotify-dev -y
sudo cp /usr/share/zoneinfo/Asia/Tehran /etc/localtime
sudo apt install yum
sudo yum install ntp -y
sudo apt install ntpdate
sudo ntpdate ntp-server.parsdev.net
chmod +x Autolaunch
cd Download
chmod +x Api
chmod +x Cli
cd ..
}
get_sub() {
local flag=false c count cr=$'\r' nl=$'\n'
while IFS='' read -d '' -rn 1 c; do
if $flag; then
printf '%c' "$c"
else
if [[ $c != $cr && $c != $nl ]]; then
count=0
else
((count++))
if ((count > 1)); then
flag=true
fi
fi
fi
done
}
make_progress() {
exe=`lua <<-EOF
print(tonumber($1)/tonumber($2)*100)
EOF
`
echo ${exe:0:4}
}
get_tgcli_version() {
echo "$tgcli_version"
}
download_libs_lua() {
if [[ ! -d "logs" ]]; then mkdir logs; fi
if [[ -f "logs/logluarocks_${today}.txt" ]]; then rm logs/logluarocks_${today}.txt; fi
local i
for ((i=0;i<${#lualibs[@]};i++)); do
printf "\r\33[2K"
printf "\r• Installing Luarocks: wait... [`make_progress $(($i+1)) ${#lualibs[@]}`%%] [$(($i+1))/${#lualibs[@]}] ${lualibs[$i]}"
./.luarocks/bin/luarocks install ${lualibs[$i]} &>> logs/logluarocks_${today}.txt
done
sleep 0.2
sleep 0.2
printf "\n• Logfile created: $PWD/logs/logluarocks_${today}.txt\nDone\n"
rm -rf luarocks-2.2.2*
}
config() {
dir=$PWD
wget http://luarocks.org/releases/luarocks-${luarocks_version}.tar.gz &>/dev/null
tar zxpf luarocks-${luarocks_version}.tar.gz &>/dev/null
cd luarocks-${luarocks_version}
if [[ ${1} == "--no-null" ]]; then
./configure --prefix=$dir/.luarocks --sysconfdir=$dir/.luarocks/luarocks --force-config
make bootstrap
else
./configure --prefix=$dir/.luarocks --sysconfdir=$dir/.luarocks/luarocks --force-config &>/dev/null
make bootstrap &>/dev/null
fi
cd ..; rm -rf luarocks*
if [[ ${1} != "--no-download" ]]; then
download_libs_lua
wget --progress=bar:force https://valtman.name/files/telegram-bot-${tgcli_version}-linux 2>&1 | get_sub
mv telegram-bot-${tgcli_version}-linux tg; chmod +x tg
fi
for ((i=0;i<101;i++)); do
printf "\rConfiguring... [%i%%]" $i
sleep 0.007
done
mkdir $HOME/.telegram-bot; cat <<EOF > $HOME/.telegram-bot/config
default_profile = "main";
main = {
lua_script = "$HOME/THTweb/Cli.lua";
};
EOF
printf "\nDone\n"
}
cli() {
./tg | grep -v "{"
}
api() {
lua Api.lua
}
resetlogin() {
rm -rf $HOME/.telegram-bot
}
CerNer(){
mkdir $HOME/.telegram-bot; cat <<EOF > $HOME/.telegram-bot/config
default_profile = "main";
main = {
lua_script = "$HOME/THTweb/Cli.lua";
};
EOF
printf "\nDone\n"
}
loginCli() {
./tg -p main --login --phone=${1}
}
updateTD() {
wget --progress=bar:force https://valtman.name/files/telegram-bot-${1}-linux 2>&1 | get_sub
mv telegram-bot-${1}-linux tg; chmod +x tg
}
CONFIG() {
TXT=(
"درحال نصب لواروکس و پیکربندی "
)
printf "${TXT}"
printf "\n"
}
warning() {
TXT=(
"دستور وارد شده صحیح نیست ! لطفا از \n./THTweb help استفاده کنید!"
)
printf "${TXT}"
printf "\n"
}
case $1 in
config)
CONFIG
config ${2}
exit ;;
login)
echo "لطفا شماره خود را بدون فاصله وارد کنید"
read phone_number
loginCli ${phone_number}
echo 'عملیات انجام شد !'
exit;;
install)
install
exit;;
cli)
cli
exit;;
api)
api
exit;;
help)
echo "راهنمای اجرای سورس رکس کمپانی : •• "
echo "install - نصب پکیج های مورد نیاز • "
echo "config - پیکربندی ودانلود تیجی • "
echo "cli - راه اندازی ربات • "
echo "api - راه اندازی ربات • "
echo "login - لوگین شدن به عنوان ربات cli "
echo "help - راهنما • "
exit ;;
esac
warning
exit 0