| Line 1... | Line 1... | 
          
            | 1 | #!/bin/bash
 | 1 | #!/bin/bash
 | 
          
            | 2 | # $Id: alcasar-sms.sh 3093 2022-12-11 23:07:02Z rexy $
 | 2 | # $Id: alcasar-sms.sh 3269 2025-04-21 21:57:13Z rexy $
 | 
          
            | 3 |  
 | 3 |  
 | 
          
            | 4 | # alcasar-sms.sh
 | 4 | # alcasar-sms.sh
 | 
          
            | 5 | # by Nicolas Aubry & Rexy
 | 5 | # by Nicolas Aubry & Rexy
 | 
          
            | 6 | # This script is distributed under the Gnu General Public License (GPL)
 | 6 | # This script is distributed under the Gnu General Public License (GPL)
 | 
          
            | 7 |  
 | 7 |  
 | 
          
            | Line 54... | Line 54... | 
          
            | 54 | 	/usr/sbin/usb_modeswitch -I -H -v 0x$vendor -p 0x$product -V 0x$vendor -P 0x$product -W -n >> $logfile
 | 54 | 	/usr/sbin/usb_modeswitch -I -H -v 0x$vendor -p 0x$product -V 0x$vendor -P 0x$product -W -n >> $logfile
 | 
          
            | 55 | } # end function mode_huawei
 | 55 | } # end function mode_huawei
 | 
          
            | 56 |  
 | 56 |  
 | 
          
            | 57 | function start_gammu() {
 | 57 | function start_gammu() {
 | 
          
            | 58 | 	# Truncate phones table (informations signal/IMEI/battery/sent et reveived sms)
 | 58 | 	# Truncate phones table (informations signal/IMEI/battery/sent et reveived sms)
 | 
          
            | 59 | 	mysql --user=$u_db --password=$p_db --database=gammu -Bs -e 'TRUNCATE phones;'
 | 59 | 	mariadb --user=$u_db --password=$p_db --database=gammu -Bs -e 'TRUNCATE phones;'
 | 
          
            | 60 | 	# Verify the sms group is created
 | 60 | 	# Verify the sms group is created
 | 
          
            | 61 | 	if [ $(mysql --user=$u_db --password=$p_db --database=radius -Bs -e "SELECT COUNT(*) FROM $radgp WHERE username='sms' AND groupname='sms';") -eq 0 ]; then
 | 61 | 	if [ $(mariadb --user=$u_db --password=$p_db --database=radius -Bs -e "SELECT COUNT(*) FROM $radgp WHERE username='sms' AND groupname='sms';") -eq 0 ]; then
 | 
          
            | 62 | 		sql_add_gp="INSERT INTO $radgp (username,groupname) VALUES ('sms','sms'); INSERT INTO $radgpck (groupname,attribute,op,value) VALUES ('sms','Simultaneous-Use',':=',1);"
 | 62 | 		sql_add_gp="INSERT INTO $radgp (username,groupname) VALUES ('sms','sms'); INSERT INTO $radgpck (groupname,attribute,op,value) VALUES ('sms','Simultaneous-Use',':=',1);"
 | 
          
            | 63 | 		mysql --user=$u_db --password=$p_db --database=radius -Bs -e "$sql_add_gp"
 | 63 | 		mariadb --user=$u_db --password=$p_db --database=radius -Bs -e "$sql_add_gp"
 | 
          
            | 64 | 	fi
 | 64 | 	fi
 | 
          
            | 65 | 	# Start gammu
 | 65 | 	# Start gammu
 | 
          
            | 66 | 	echo $separator >> $logfile
 | 66 | 	echo $separator >> $logfile
 | 
          
            | 67 | 	/usr/bin/systemctl -q start gammu-smsd.service
 | 67 | 	/usr/bin/systemctl -q start gammu-smsd.service
 | 
          
            | 68 | 	/usr/bin/systemctl -q enable gammu-smsd.service
 | 68 | 	/usr/bin/systemctl -q enable gammu-smsd.service
 | 
          
            | Line 75... | Line 75... | 
          
            | 75 | } # end function stop_gammu
 | 75 | } # end function stop_gammu
 | 
          
            | 76 |  
 | 76 |  
 | 
          
            | 77 | function unlock() {
 | 77 | function unlock() {
 | 
          
            | 78 | 	# Remove phone number in SMS_ban_perm table
 | 78 | 	# Remove phone number in SMS_ban_perm table
 | 
          
            | 79 | 		sql_remove_ban_perm="connect gammu; DELETE FROM $sms_p"
 | 79 | 		sql_remove_ban_perm="connect gammu; DELETE FROM $sms_p"
 | 
          
            | 80 | 		mysql --user=$u_db --password=$p_db -B -se "$sql_remove_ban_perm WHERE SenderNumber=$1;"
 | 80 | 		mariadb --user=$u_db --password=$p_db -B -se "$sql_remove_ban_perm WHERE SenderNumber=$1;"
 | 
          
            | 81 | 	# Add sms group
 | 81 | 	# Add sms group
 | 
          
            | 82 | 		sql_remove_gp="connect radius; DELETE FROM $radgp WHERE username='$1';"
 | 82 | 		sql_remove_gp="connect radius; DELETE FROM $radgp WHERE username='$1';"
 | 
          
            | 83 | 		mysql --user=$u_db --password=$p_db -B -se "$sql_remove_gp"
 | 83 | 		mariadb --user=$u_db --password=$p_db -B -se "$sql_remove_gp"
 | 
          
            | 84 | 	# Remove account in Radcheck table
 | 84 | 	# Remove account in Radcheck table
 | 
          
            | 85 | 		sql_remove_compte="connect radius; DELETE FROM $rad WHERE username='$1';"
 | 85 | 		sql_remove_compte="connect radius; DELETE FROM $rad WHERE username='$1';"
 | 
          
            | 86 | 		mysql --user=$u_db --password=$p_db -B -se "$sql_remove_compte"
 | 86 | 		mariadb --user=$u_db --password=$p_db -B -se "$sql_remove_compte"
 | 
          
            | 87 | } # end function unlock
 | 87 | } # end function unlock
 | 
          
            | 88 |  
 | 88 |  
 | 
          
            | 89 | function change_country() {
 | 89 | function change_country() {
 | 
          
            | 90 | 		sql_status_country="connect gammu; SELECT status FROM SMS_country WHERE name='$1'"
 | 90 | 		sql_status_country="connect gammu; SELECT status FROM SMS_country WHERE name='$1'"
 | 
          
            | 91 | 		stat=$(mysql --user=$u_db --password=$p_db -B -se "$sql_status_country")
 | 91 | 		stat=$(mariadb --user=$u_db --password=$p_db -B -se "$sql_status_country")
 | 
          
            | 92 | 		if [ $stat -eq 0 ]
 | 92 | 		if [ $stat -eq 0 ]
 | 
          
            | 93 | 		then
 | 93 | 		then
 | 
          
            | 94 | 			sql_change_country="connect gammu; UPDATE $SMS_c SET status=1 WHERE name='$1'"
 | 94 | 			sql_change_country="connect gammu; UPDATE $SMS_c SET status=1 WHERE name='$1'"
 | 
          
            | 95 | 			mysql --user=$u_db --password=$p_db -B -se "$sql_change_country"
 | 95 | 			mariadb --user=$u_db --password=$p_db -B -se "$sql_change_country"
 | 
          
            | 96 | 		else
 | 96 | 		else
 | 
          
            | 97 | 			sql_change_country="connect gammu; UPDATE $SMS_c SET status=0 WHERE name='$1'"
 | 97 | 			sql_change_country="connect gammu; UPDATE $SMS_c SET status=0 WHERE name='$1'"
 | 
          
            | 98 | 			mysql --user=$u_db --password=$p_db -B -se "$sql_change_country"
 | 98 | 			mariadb --user=$u_db --password=$p_db -B -se "$sql_change_country"
 | 
          
            | 99 | 		fi
 | 99 | 		fi
 | 
          
            | 100 | } # end change_country
 | 100 | } # end change_country
 | 
          
            | 101 |  
 | 101 |  
 | 
          
            | 102 | function supp_acc_rad() {
 | 102 | function supp_acc_rad() {
 | 
          
            | 103 | 	# Remove account in Radcheck table
 | 103 | 	# Remove account in Radcheck table
 | 
          
            | 104 | 		sql_del_compte="connect radius; DELETE FROM $rad WHERE username='$1';"
 | 104 | 		sql_del_compte="connect radius; DELETE FROM $rad WHERE username='$1';"
 | 
          
            | 105 | 		mysql --user=$u_db --password=$p_db -B -se "$sql_del_compte"
 | 105 | 		mariadb --user=$u_db --password=$p_db -B -se "$sql_del_compte"
 | 
          
            | 106 | } # end function supp_acc_rad()
 | 106 | } # end function supp_acc_rad()
 | 
          
            | 107 |  
 | 107 |  
 | 
          
            | 108 | function add_acc_rad() {
 | 108 | function add_acc_rad() {
 | 
          
            | 109 | 	# Add accoubt in RadCheck table
 | 109 | 	# Add accoubt in RadCheck table
 | 
          
            | 110 | 		sql_add_pass="connect radius; INSERT INTO $rad (username,attribute,op,value) VALUES ('$1','Crypt-Password',':=','$2');"
 | 110 | 		sql_add_pass="connect radius; INSERT INTO $rad (username,attribute,op,value) VALUES ('$1','Crypt-Password',':=','$2');"
 | 
          
            | 111 | 		sql_add_expe="connect radius; INSERT INTO $rad (username,attribute,op,value) VALUES ('$1','Expiration',':=','$3');"
 | 111 | 		sql_add_expe="connect radius; INSERT INTO $rad (username,attribute,op,value) VALUES ('$1','Expiration',':=','$3');"
 | 
          
            | 112 | 		mysql --user=$u_db --password=$p_db -B -se "$sql_add_pass"
 | 112 | 		mariadb --user=$u_db --password=$p_db -B -se "$sql_add_pass"
 | 
          
            | 113 | 		mysql --user=$u_db --password=$p_db -B -se "$sql_add_expe"
 | 113 | 		mariadb --user=$u_db --password=$p_db -B -se "$sql_add_expe"
 | 
          
            | 114 | 	# Add this account to sms group
 | 114 | 	# Add this account to sms group
 | 
          
            | 115 | 		sql_add_gp="connect radius; INSERT INTO $radgp (username,groupname) VALUES ('$1','sms');"
 | 115 | 		sql_add_gp="connect radius; INSERT INTO $radgp (username,groupname) VALUES ('$1','sms');"
 | 
          
            | 116 | 		mysql --user=$u_db --password=$p_db -B -se "$sql_add_gp"
 | 116 | 		mariadb --user=$u_db --password=$p_db -B -se "$sql_add_gp"
 | 
          
            | 117 | } # end function add_acc_rad()
 | 117 | } # end function add_acc_rad()
 | 
          
            | 118 |  
 | 118 |  
 | 
          
            | 119 | function supp_num_temp() {
 | 119 | function supp_num_temp() {
 | 
          
            | 120 | 	# Remove phone number in SMS_ban_temp table
 | 120 | 	# Remove phone number in SMS_ban_temp table
 | 
          
            | 121 | 		sql_remove_ban_temp="connect gammu; DELETE FROM $sms_t"
 | 121 | 		sql_remove_ban_temp="connect gammu; DELETE FROM $sms_t"
 | 
          
            | 122 | 		mysql --user=$u_db --password=$p_db -B -se "$sql_remove_ban_temp WHERE SenderNumber=$1;"
 | 122 | 		mariadb --user=$u_db --password=$p_db -B -se "$sql_remove_ban_temp WHERE SenderNumber=$1;"
 | 
          
            | 123 | } # end function supp_num_temp()
 | 123 | } # end function supp_num_temp()
 | 
          
            | 124 |  
 | 124 |  
 | 
          
            | 125 | function add_num_perm() {
 | 125 | function add_num_perm() {
 | 
          
            | 126 | 	# Add phone number in SMS_ban_perm table
 | 126 | 	# Add phone number in SMS_ban_perm table
 | 
          
            | 127 | 		sql_add_ban_perm="connect gammu; INSERT INTO $sms_p (SenderNumber,Perm,Expiration) VALUES ('$1',0,'$2');"
 | 127 | 		sql_add_ban_perm="connect gammu; INSERT INTO $sms_p (SenderNumber,Perm,Expiration) VALUES ('$1',0,'$2');"
 | 
          
            | 128 | 		mysql --user=$u_db --password=$p_db -B -se "$sql_add_ban_perm"
 | 128 | 		mariadb --user=$u_db --password=$p_db -B -se "$sql_add_ban_perm"
 | 
          
            | 129 | } # end function add_num_perm()
 | 129 | } # end function add_num_perm()
 | 
          
            | 130 |  
 | 130 |  
 | 
          
            | 131 | function supp_num_perm() {
 | 131 | function supp_num_perm() {
 | 
          
            | 132 | 	# Remove phone number in SMS_ban_perm table
 | 132 | 	# Remove phone number in SMS_ban_perm table
 | 
          
            | 133 | 		sql_remove_ban_perm="connect gammu; DELETE FROM $sms_p"
 | 133 | 		sql_remove_ban_perm="connect gammu; DELETE FROM $sms_p"
 | 
          
            | 134 | 		mysql --user=$u_db --password=$p_db -B -se "$sql_remove_ban_perm WHERE SenderNumber=$1;"
 | 134 | 		mariadb --user=$u_db --password=$p_db -B -se "$sql_remove_ban_perm WHERE SenderNumber=$1;"
 | 
          
            | 135 | } # end function add_num_perm()
 | 135 | } # end function add_num_perm()
 | 
          
            | 136 |  
 | 136 |  
 | 
          
            | 137 | function new_sms() {
 | 137 | function new_sms() {
 | 
          
            | 138 | 	# Check Inbox table, manage Ban temp and perm, create account
 | 138 | 	# Check Inbox table, manage Ban temp and perm, create account
 | 
          
            | 139 | 		export salt='$5$passwd$'
 | 139 | 		export salt='$5$passwd$'
 | 
          
            | 140 | 		sql_select_inbox="connect gammu; SELECT ID, SenderNumber, TextDecoded FROM $inb;"
 | 140 | 		sql_select_inbox="connect gammu; SELECT ID, SenderNumber, TextDecoded FROM $inb;"
 | 
          
            | 141 | 		sql_delete_inbox="connect gammu; DELETE FROM $inb"
 | 141 | 		sql_delete_inbox="connect gammu; DELETE FROM $inb"
 | 
          
            | 142 | 		mysql --user=$u_db --password=$p_db -B -se "$sql_select_inbox" | while read result;
 | 142 | 		mariadb --user=$u_db --password=$p_db -B -se "$sql_select_inbox" | while read result;
 | 
          
            | 143 | 		do
 | 143 | 		do
 | 
          
            | 144 | 		# Retrieve the number of words (result)
 | 144 | 		# Retrieve the number of words (result)
 | 
          
            | 145 | 			nb=$(echo $result | wc -w)
 | 145 | 			nb=$(echo $result | wc -w)
 | 
          
            | 146 | 		# Retrive the ID
 | 146 | 		# Retrive the ID
 | 
          
            | 147 | 			id=$(echo $result | cut -d ' ' -f1)
 | 147 | 			id=$(echo $result | cut -d ' ' -f1)
 | 
          
            | 148 | 			numero=$(echo $result | cut -d ' ' -f2)
 | 148 | 			numero=$(echo $result | cut -d ' ' -f2)
 | 
          
            | 149 | 			if [[ $numero =~ ^\+ ]]
 | 149 | 			if [[ $numero =~ ^\+ ]]
 | 
          
            | 150 | 			then
 | 150 | 			then
 | 
          
            | 151 | 			# Check if country is blocked
 | 151 | 			# Check if country is blocked
 | 
          
            | 152 | 				sql_select_countries="connect gammu; SELECT id FROM $SMS_c WHERE status=1"
 | 152 | 				sql_select_countries="connect gammu; SELECT id FROM $SMS_c WHERE status=1"
 | 
          
            | 153 | 				mysql --user=$u_db --password=$p_db -B -se "$sql_select_countries" | while read result_c;
 | 153 | 				mariadb --user=$u_db --password=$p_db -B -se "$sql_select_countries" | while read result_c;
 | 
          
            | 154 | 				do
 | 154 | 				do
 | 
          
            | 155 | 					if [[ $numero =~ ^"$result_c" ]]
 | 155 | 					if [[ $numero =~ ^"$result_c" ]]
 | 
          
            | 156 | 					then
 | 156 | 					then
 | 
          
            | 157 | 						numero=$(echo $numero | cut -d '+' -f2)
 | 157 | 						numero=$(echo $numero | cut -d '+' -f2)
 | 
          
            | 158 | 				# Check if GSM number is nabbed
 | 158 | 				# Check if GSM number is nabbed
 | 
          
            | 159 | 						sql_ban_perm="connect gammu; SELECT * FROM $sms_p WHERE SenderNumber=$numero"
 | 159 | 						sql_ban_perm="connect gammu; SELECT * FROM $sms_p WHERE SenderNumber=$numero"
 | 
          
            | 160 | 						result_bp=$(mysql --user=$u_db --password=$p_db -B -se "$sql_ban_perm")
 | 160 | 						result_bp=$(mariadb --user=$u_db --password=$p_db -B -se "$sql_ban_perm")
 | 
          
            | 161 | 						if test -z "$result_bp"
 | 161 | 						if test -z "$result_bp"
 | 
          
            | 162 | 						then
 | 162 | 						then
 | 
          
            | 163 | 						# Test the number of word (result)
 | 163 | 						# Test the number of word (result)
 | 
          
            | 164 | 							if [ $nb -eq 2 ] # if only 2 words : lack of password
 | 164 | 							if [ $nb -eq 2 ] # if only 2 words : lack of password
 | 
          
            | 165 | 							then
 | 165 | 							then
 | 
          
            | 166 | 							# Add "1" in bans_temp table // NO PASSWORD
 | 166 | 							# Add "1" in bans_temp table // NO PASSWORD
 | 
          
            | 167 | 								sql_add_temp="connect gammu; INSERT INTO $sms_t(SenderNumber) VALUES ('$numero');"
 | 167 | 								sql_add_temp="connect gammu; INSERT INTO $sms_t(SenderNumber) VALUES ('$numero');"
 | 
          
            | 168 | 								mysql --user=$u_db --password=$p_db -B -se "$sql_add_temp"
 | 168 | 								mariadb --user=$u_db --password=$p_db -B -se "$sql_add_temp"
 | 
          
            | 169 | 							elif [ $nb -eq 3 ] # if 3 words (id + password + phone numbere)
 | 169 | 							elif [ $nb -eq 3 ] # if 3 words (id + password + phone numbere)
 | 
          
            | 170 | 							then
 | 170 | 							then
 | 
          
            | 171 | 								export pass=$(echo $result | cut -d ' ' -f3)
 | 171 | 								export pass=$(echo $result | cut -d ' ' -f3)
 | 
          
            | 172 | 								pass_salt=$(perl -e'print crypt($ARGV[0],$ARGV[1])' $pass $salt)
 | 172 | 								pass_salt=$(perl -e'print crypt($ARGV[0],$ARGV[1])' $pass $salt)
 | 
          
            | 173 | 								export LC_TIME="en_US.UTF-8"
 | 173 | 								export LC_TIME="en_US.UTF-8"
 | 
          
            | Line 176... | Line 176... | 
          
            | 176 | 								add_acc_rad "$numero" "$pass_salt" "$expir"
 | 176 | 								add_acc_rad "$numero" "$pass_salt" "$expir"
 | 
          
            | 177 | 								supp_num_temp "$numero"
 | 177 | 								supp_num_temp "$numero"
 | 
          
            | 178 | 								add_num_perm "$numero" "$expir"
 | 178 | 								add_num_perm "$numero" "$expir"
 | 
          
            | 179 | 							else # more then 3 words --> Add "1" in ban_temp table
 | 179 | 							else # more then 3 words --> Add "1" in ban_temp table
 | 
          
            | 180 | 								sql_add_temp="connect gammu; INSERT INTO $sms_t(SenderNumber) VALUES ('$numero');"
 | 180 | 								sql_add_temp="connect gammu; INSERT INTO $sms_t(SenderNumber) VALUES ('$numero');"
 | 
          
            | 181 | 								mysql --user=$u_db --password=$p_db -B -se "$sql_add_temp"
 | 181 | 								mariadb --user=$u_db --password=$p_db -B -se "$sql_add_temp"
 | 
          
            | 182 | 							fi
 | 182 | 							fi
 | 
          
            | 183 | 							# manage ban perm
 | 183 | 							# manage ban perm
 | 
          
            | 184 | 							sql_select_temp="connect gammu; SELECT ID FROM $sms_t WHERE SenderNumber='$numero'"
 | 184 | 							sql_select_temp="connect gammu; SELECT ID FROM $sms_t WHERE SenderNumber='$numero'"
 | 
          
            | 185 | 							r_select_temp=$(mysql --user=$u_db --password=$p_db -B -se "$sql_select_temp")
 | 185 | 							r_select_temp=$(mariadb --user=$u_db --password=$p_db -B -se "$sql_select_temp")
 | 
          
            | 186 | 							nb_ban_t=$(echo $r_select_temp| wc -w)
 | 186 | 							nb_ban_t=$(echo $r_select_temp| wc -w)
 | 
          
            | 187 | 							if [ $nb_ban_t -ge $nb_essais ]
 | 187 | 							if [ $nb_ban_t -ge $nb_essais ]
 | 
          
            | 188 | 							then
 | 188 | 							then
 | 
          
            | 189 | 								supp_num_temp "$numero"
 | 189 | 								supp_num_temp "$numero"
 | 
          
            | 190 | 								export LC_TIME="en_US.UTF-8"
 | 190 | 								export LC_TIME="en_US.UTF-8"
 | 
          
            | 191 | 								expir_f=$(date '+%d %B %Y' -d "$time_ban days")
 | 191 | 								expir_f=$(date '+%d %B %Y' -d "$time_ban days")
 | 
          
            | 192 | 							# Add "1" in SMS_ban_perm table : flood
 | 192 | 							# Add "1" in SMS_ban_perm table : flood
 | 
          
            | 193 | 								sql_add_ban_perm="connect gammu; INSERT INTO $sms_p (SenderNumber,Perm,Expiration) VALUES ('$numero',1,'$expir_f');"
 | 193 | 								sql_add_ban_perm="connect gammu; INSERT INTO $sms_p (SenderNumber,Perm,Expiration) VALUES ('$numero',1,'$expir_f');"
 | 
          
            | 194 | 								mysql --user=$u_db --password=$p_db -B -se "$sql_add_ban_perm"
 | 194 | 								mariadb --user=$u_db --password=$p_db -B -se "$sql_add_ban_perm"
 | 
          
            | 195 | 							fi
 | 195 | 							fi
 | 
          
            | 196 | 						else
 | 196 | 						else
 | 
          
            | 197 | 							date_expiration=$(echo $result_bp | cut -d ' ' -f2,3,4)
 | 197 | 							date_expiration=$(echo $result_bp | cut -d ' ' -f2,3,4)
 | 
          
            | 198 | 							perm=$(echo $result_bp | cut -d ' ' -f5)
 | 198 | 							perm=$(echo $result_bp | cut -d ' ' -f5)
 | 
          
            | 199 | 							export LC_TIME="en_US.UTF-8"
 | 199 | 							export LC_TIME="en_US.UTF-8"
 | 
          
            | Line 206... | Line 206... | 
          
            | 206 | 							# Test the number of words (result)
 | 206 | 							# Test the number of words (result)
 | 
          
            | 207 | 								if [ $nb -eq 2 ]	# Si 2 mots : le mot de passe est manquant
 | 207 | 								if [ $nb -eq 2 ]	# Si 2 mots : le mot de passe est manquant
 | 
          
            | 208 | 								then
 | 208 | 								then
 | 
          
            | 209 | 								# Add "1" in ban temp table
 | 209 | 								# Add "1" in ban temp table
 | 
          
            | 210 | 								sql_add_temp="connect gammu; INSERT INTO $sms_t(SenderNumber) VALUES ('$numero');"
 | 210 | 								sql_add_temp="connect gammu; INSERT INTO $sms_t(SenderNumber) VALUES ('$numero');"
 | 
          
            | 211 | 								mysql --user=$u_db --password=$p_db -B -se "$sql_add_temp"
 | 211 | 								mariadb --user=$u_db --password=$p_db -B -se "$sql_add_temp"
 | 
          
            | 212 | 								elif [ $nb -eq 3 ]	# Si 3 mots : id + mot de passe + numero
 | 212 | 								elif [ $nb -eq 3 ]	# Si 3 mots : id + mot de passe + numero
 | 
          
            | 213 | 									then
 | 213 | 									then
 | 
          
            | 214 | 									date_expiration=$(echo $result_bp | cut -d ' ' -f2,3,4)
 | 214 | 									date_expiration=$(echo $result_bp | cut -d ' ' -f2,3,4)
 | 
          
            | 215 | 									perm=$(echo $result_bp | cut -d ' ' -f5)
 | 215 | 									perm=$(echo $result_bp | cut -d ' ' -f5)
 | 
          
            | 216 | 									date_script=$(date '+%d %B %Y' -d "now")
 | 216 | 									date_script=$(date '+%d %B %Y' -d "now")
 | 
          
            | Line 228... | Line 228... | 
          
            | 228 | 									add_num_perm "$numero" "$expir"
 | 228 | 									add_num_perm "$numero" "$expir"
 | 
          
            | 229 | 								else
 | 229 | 								else
 | 
          
            | 230 | 								# number of words to big (> 3)
 | 230 | 								# number of words to big (> 3)
 | 
          
            | 231 | 								# Add "1" in bans temp table
 | 231 | 								# Add "1" in bans temp table
 | 
          
            | 232 | 									sql_add_temp="connect gammu; INSERT INTO $sms_t(SenderNumber) VALUES ('$numero');"
 | 232 | 									sql_add_temp="connect gammu; INSERT INTO $sms_t(SenderNumber) VALUES ('$numero');"
 | 
          
            | 233 | 									mysql --user=$u_db --password=$p_db -B -se "$sql_add_temp"
 | 233 | 									mariadb --user=$u_db --password=$p_db -B -se "$sql_add_temp"
 | 
          
            | 234 | 									echo "Mot de passe incorrect, ajout du numero en ban temporaire"
 | 234 | 									echo "Mot de passe incorrect, ajout du numero en ban temporaire"
 | 
          
            | 235 | 								fi
 | 235 | 								fi
 | 
          
            | 236 | 							# manage bans_temp & ban_perm
 | 236 | 							# manage bans_temp & ban_perm
 | 
          
            | 237 | 								sql_select_temp="connect gammu; SELECT ID FROM $sms_t WHERE SenderNumber='$numero'"
 | 237 | 								sql_select_temp="connect gammu; SELECT ID FROM $sms_t WHERE SenderNumber='$numero'"
 | 
          
            | 238 | 								r_select_temp=$(mysql --user=$u_db --password=$p_db -B -se "$sql_select_temp")
 | 238 | 								r_select_temp=$(mariadb --user=$u_db --password=$p_db -B -se "$sql_select_temp")
 | 
          
            | 239 | 								nb_ban_t=$(echo $r_select_temp| wc -w)
 | 239 | 								nb_ban_t=$(echo $r_select_temp| wc -w)
 | 
          
            | 240 | 								if [ $nb_ban_t -ge $nb_essais ]
 | 240 | 								if [ $nb_ban_t -ge $nb_essais ]
 | 
          
            | 241 | 								then
 | 241 | 								then
 | 
          
            | 242 | 									supp_num_perm "$numero"
 | 242 | 									supp_num_perm "$numero"
 | 
          
            | 243 | 									supp_num_temp "$numero"
 | 243 | 									supp_num_temp "$numero"
 | 
          
            | 244 | 									export LC_TIME="en_US.UTF-8"
 | 244 | 									export LC_TIME="en_US.UTF-8"
 | 
          
            | 245 | 									expir_f=$(date '+%d %B %Y' -d "$time_ban days")
 | 245 | 									expir_f=$(date '+%d %B %Y' -d "$time_ban days")
 | 
          
            | 246 | 									# Add phne number in ban_perm : flood
 | 246 | 									# Add phne number in ban_perm : flood
 | 
          
            | 247 | 									sql_add_ban_perm="connect gammu; INSERT INTO $sms_p (SenderNumber,Perm,Expiration) VALUES ('$numero',1,'$expir_f');"
 | 247 | 									sql_add_ban_perm="connect gammu; INSERT INTO $sms_p (SenderNumber,Perm,Expiration) VALUES ('$numero',1,'$expir_f');"
 | 
          
            | 248 | 									mysql --user=$u_db --password=$p_db -B -se "$sql_add_ban_perm"
 | 248 | 									mariadb --user=$u_db --password=$p_db -B -se "$sql_add_ban_perm"
 | 
          
            | 249 | 								fi
 | 249 | 								fi
 | 
          
            | 250 | 							else
 | 250 | 							else
 | 
          
            | 251 | 									echo "Le ban de $numero est encore valide"
 | 251 | 									echo "Le ban de $numero est encore valide"
 | 
          
            | 252 | 							fi
 | 252 | 							fi
 | 
          
            | 253 | 						break
 | 253 | 						break
 | 
          
            | Line 258... | Line 258... | 
          
            | 258 | 				done
 | 258 | 				done
 | 
          
            | 259 | 			else
 | 259 | 			else
 | 
          
            | 260 | 				echo "Numero non autorisé (ex: 36665)"
 | 260 | 				echo "Numero non autorisé (ex: 36665)"
 | 
          
            | 261 | 			fi
 | 261 | 			fi
 | 
          
            | 262 | 			# On supprime la ligne d'ID=$id dans inbox
 | 262 | 			# On supprime la ligne d'ID=$id dans inbox
 | 
          
            | 263 | 			mysql --user=$u_db --password=$p_db -B -e "$sql_delete_inbox WHERE ID=$id;"
 | 263 | 			mariadb --user=$u_db --password=$p_db -B -e "$sql_delete_inbox WHERE ID=$id;"
 | 
          
            | 264 | 		done
 | 264 | 		done
 | 
          
            | 265 | } # end function new_sms
 | 265 | } # end function new_sms
 | 
          
            | 266 |  
 | 266 |  
 | 
          
            | 267 |  
 | 267 |  
 | 
          
            | 268 | # CORE
 | 268 | # CORE
 | 
          
            | Line 434... | Line 434... | 
          
            | 434 | 		exit
 | 434 | 		exit
 | 
          
            | 435 | 		;;
 | 435 | 		;;
 | 
          
            | 436 | 	--change_country_ena_all)
 | 436 | 	--change_country_ena_all)
 | 
          
            | 437 | 		# Active l'ensemble des pays
 | 437 | 		# Active l'ensemble des pays
 | 
          
            | 438 | 		sql_change_country="connect gammu; UPDATE $SMS_c SET status=1"
 | 438 | 		sql_change_country="connect gammu; UPDATE $SMS_c SET status=1"
 | 
          
            | 439 | 		mysql --user=$u_db --password=$p_db -B -se "$sql_change_country"
 | 439 | 		mariadb --user=$u_db --password=$p_db -B -se "$sql_change_country"
 | 
          
            | 440 | 		exit
 | 440 | 		exit
 | 
          
            | 441 | 		;;
 | 441 | 		;;
 | 
          
            | 442 | 	--change_country_dis_all)
 | 442 | 	--change_country_dis_all)
 | 
          
            | 443 | 		# Desactive l'ensemble des pays
 | 443 | 		# Desactive l'ensemble des pays
 | 
          
            | 444 | 		sql_change_country="connect gammu; UPDATE $SMS_c SET status=0"
 | 444 | 		sql_change_country="connect gammu; UPDATE $SMS_c SET status=0"
 | 
          
            | 445 | 		mysql --user=$u_db --password=$p_db -B -se "$sql_change_country"
 | 445 | 		mariadb --user=$u_db --password=$p_db -B -se "$sql_change_country"
 | 
          
            | 446 | 		exit
 | 446 | 		exit
 | 
          
            | 447 | 		;;
 | 447 | 		;;
 | 
          
            | 448 | 	--change_country_filter)
 | 448 | 	--change_country_filter)
 | 
          
            | 449 | 		# Change la valeur du filtrage (FR, UE, all, perso)
 | 449 | 		# Change la valeur du filtrage (FR, UE, all, perso)
 | 
          
            | 450 | 		sql_change_country="connect gammu; UPDATE $SMS_c SET id='$2' WHERE name='FILTRAGE'"
 | 450 | 		sql_change_country="connect gammu; UPDATE $SMS_c SET id='$2' WHERE name='FILTRAGE'"
 | 
          
            | 451 | 		mysql --user=$u_db --password=$p_db -B -se "$sql_change_country"
 | 451 | 		mariadb --user=$u_db --password=$p_db -B -se "$sql_change_country"
 | 
          
            | 452 | 		break
 | 452 | 		break
 | 
          
            | 453 | 		;;
 | 453 | 		;;
 | 
          
            | 454 | 	--new_sms)
 | 454 | 	--new_sms)
 | 
          
            | 455 | 		# Appel de la fonction new_sms : filtrage du password, creation du compte et ban
 | 455 | 		# Appel de la fonction new_sms : filtrage du password, creation du compte et ban
 | 
          
            | 456 | 		new_sms
 | 456 | 		new_sms
 | 
          
            | 457 | 		exit 0
 | 457 | 		exit 0
 | 
          
            | 458 | 		;;
 | 458 | 		;;
 | 
          
            | 459 | 	--imei_device)
 | 459 | 	--imei_device)
 | 
          
            | 460 | 		# Recuperation de l'imei du device
 | 460 | 		# Recuperation de l'imei du device
 | 
          
            | 461 | 		sql_imei_phones="connect gammu; SELECT \`IMEI\` FROM phones;"
 | 461 | 		sql_imei_phones="connect gammu; SELECT \`IMEI\` FROM phones;"
 | 
          
            | 462 | 		mysql --user=$u_db --password=$p_db -B -se "$sql_imei_phones"
 | 462 | 		mariadb --user=$u_db --password=$p_db -B -se "$sql_imei_phones"
 | 
          
            | 463 | 		exit 0
 | 463 | 		exit 0
 | 
          
            | 464 | 		;;
 | 464 | 		;;
 | 
          
            | 465 | 	--signal_device)
 | 465 | 	--signal_device)
 | 
          
            | 466 | 		# Recuperation du signal du device
 | 466 | 		# Recuperation du signal du device
 | 
          
            | 467 | 		sql_signal_phones="connect gammu; SELECT \`Signal\` FROM phones;"
 | 467 | 		sql_signal_phones="connect gammu; SELECT \`Signal\` FROM phones;"
 | 
          
            | 468 | 		mysql --user=$u_db --password=$p_db -B -se "$sql_signal_phones"
 | 468 | 		mariadb --user=$u_db --password=$p_db -B -se "$sql_signal_phones"
 | 
          
            | 469 | 		exit 0
 | 469 | 		exit 0
 | 
          
            | 470 | 		;;
 | 470 | 		;;
 | 
          
            | 471 | 	--sms_received)
 | 471 | 	--sms_received)
 | 
          
            | 472 | 		# Recuperation du nombre de sms reçu. Depuis la dernière activation.
 | 472 | 		# Recuperation du nombre de sms reçu. Depuis la dernière activation.
 | 
          
            | 473 | 		sql_sms_received="connect gammu; SELECT \`Received\` FROM phones;"
 | 473 | 		sql_sms_received="connect gammu; SELECT \`Received\` FROM phones;"
 | 
          
            | 474 | 		mysql --user=$u_db --password=$p_db -B -se "$sql_sms_received"
 | 474 | 		mariadb --user=$u_db --password=$p_db -B -se "$sql_sms_received"
 | 
          
            | 475 | 		exit 0
 | 475 | 		exit 0
 | 
          
            | 476 | 		;;
 | 476 | 		;;
 | 
          
            | 477 | 	--numero_alcasar)
 | 477 | 	--numero_alcasar)
 | 
          
            | 478 | 		# Récupère le numero de la clé 3g (téléphone)
 | 478 | 		# Récupère le numero de la clé 3g (téléphone)
 | 
          
            | 479 | 		grep '^SMS_NUM=' $CONF_FILE | cut -d'=' -f2-
 | 479 | 		grep '^SMS_NUM=' $CONF_FILE | cut -d'=' -f2-
 |