Added TCL version
This commit is contained in:
parent
ee5aa426da
commit
a6dc8d3836
43
logger.tcl
43
logger.tcl
|
@ -8,11 +8,13 @@
|
||||||
package require mysqltcl
|
package require mysqltcl
|
||||||
|
|
||||||
# параметры соединения с СУБД
|
# параметры соединения с СУБД
|
||||||
set db(host) "host"
|
|
||||||
set db(user) "user"
|
#source config.tcl
|
||||||
set db(pass) "password"
|
#set db(host) "host"
|
||||||
set db(dbname) "ats_test"
|
#set db(user) "user"
|
||||||
set out_dir "~/tmp/ats"
|
#set db(pass) "password"
|
||||||
|
#set db(dbname) "ats_test"
|
||||||
|
#set out_dir "~/tmp/ats"
|
||||||
|
|
||||||
proc InsertData {} {
|
proc InsertData {} {
|
||||||
global arrVariables db
|
global arrVariables db
|
||||||
|
@ -37,7 +39,7 @@ proc ParceString {line} {
|
||||||
global out_dir arrVariables
|
global out_dir arrVariables
|
||||||
# Получает на вход строку и раскидывает её в нужном виде и пишет в файл
|
# Получает на вход строку и раскидывает её в нужном виде и пишет в файл
|
||||||
if {[string range $line 0 2] == "---" || $line == "" || [string range $line 3 6] == "Date"} {
|
if {[string range $line 0 2] == "---" || $line == "" || [string range $line 3 6] == "Date"} {
|
||||||
# puts $line
|
#puts $line
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
# Создаём текстовые файлы на всякий случай, для дублирования информации
|
# Создаём текстовые файлы на всякий случай, для дублирования информации
|
||||||
|
@ -72,22 +74,26 @@ proc ParceString {line} {
|
||||||
|
|
||||||
proc PortDataRead {portName} {
|
proc PortDataRead {portName} {
|
||||||
global out_dir
|
global out_dir
|
||||||
set fh [open $portName RD]
|
set fh [open $portName RDONLY]
|
||||||
fconfigure $fh -blocking 0 -buffering none -mode 9600,n,8,1 -translation binary -eofchar {}
|
fconfigure $fh -blocking 0 -buffering none -mode 9600,n,8,1 -translation crlf -eofchar {}
|
||||||
while [gets line $fh] {
|
fileevent $fh readable [list read $fh]
|
||||||
set line = [string trim $line]
|
puts "Waiting for Capture data"
|
||||||
ParceString $line
|
vwait forever
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
# Обработка ключей командной сроки
|
# Обработка ключей командной сроки
|
||||||
if {[llength $argv] >= 2} {
|
if {[llength $argv] >= 2} {
|
||||||
if {[lindex $argv 0] == "-port"} {
|
if {[lindex $argv 0] == "-conf"} {
|
||||||
set port_name [lindex $argv 2]
|
source [lindex $argv 1]
|
||||||
|
} else {
|
||||||
|
puts "Не указан конфигурационный файл"
|
||||||
|
}
|
||||||
|
if {[lindex $argv 2] == "-port"} {
|
||||||
|
set port_name [lindex $argv 3]
|
||||||
PortDataRead $port_name
|
PortDataRead $port_name
|
||||||
}
|
}
|
||||||
if {[lindex $argv 0] == "-file"} {
|
if {[lindex $argv 2] == "-file"} {
|
||||||
set log_file_name [lindex $argv 1]
|
set log_file_name [lindex $argv 3]
|
||||||
set log [open $log_file_name "r"]
|
set log [open $log_file_name "r"]
|
||||||
# проверям наличие каталога и если его нет то создаём
|
# проверям наличие каталога и если его нет то создаём
|
||||||
if {[file isdirectory $out_dir] == 0} {
|
if {[file isdirectory $out_dir] == 0} {
|
||||||
|
@ -101,9 +107,10 @@ if {[llength $argv] >= 2} {
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
puts "\nФормат вызова:\n- для обработки файла\
|
puts "\nФормат вызова:\n- для обработки файла\
|
||||||
\n # python data_reader.py -file TDA20013082015_12052016.lg\
|
\n # -conf config.tcl
|
||||||
|
\n # tclsh logger.tcl -conf config.tcl -file TDA20013082015_12052016.lg\
|
||||||
\n- для чтения данных напрямую с com-порта АТС\
|
\n- для чтения данных напрямую с com-порта АТС\
|
||||||
\n # python data_reader.py -port /dev/ttyUSB0\n"
|
\n # tclsh logger.tcl -conf config.tcl -port /dev/ttyUSB0\n"
|
||||||
exit
|
exit
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user