CComm - Software
1. Introduzione
CComm è un applicativo per la programmazione e la comunicazione con terminali della serie C.
E’ un programma senza interfaccia grafica, che funziona in ambiente windows 32/64 bit.
I parametri di comunicazione vengono passati da riga di comando: è possibile quindi la schedulazione nelle operazioni pianificate.
Tutti i risultati vengono tornati, se abilitati, nei file di log.
2. Files necessari
Per il funzionamento di CComm sono fondamentali i seguenti files:
- CComm.exe
- CComm.ini (se non esiste la prima volta viene creato automaticamente)
- FKAttend.dll
- FKViaDev.dll
- DevNotify.dll
- MyIPTools.dll
2.1. CComm.ini
Esiste attualmente un’unica sezione denominata [CCOMM].
All’interno si trovano le seguenti chiavi:
- TipoFileOutput , che attualmente è un valore fisso ad 1 (tracciato datafil)
- NomeFileOutput, nome a piacere del file di uscita
- CreaLog, se impostato ad 1crea il log della connessione (vengono registrate massimo 1000 righe)
- CreaRet, se impostato ad 1crea il log del comando eseguito
- CodiceF1, codice che viene scritto nella causale del transito quando si preme 2 volte la freccia in alto
- CodiceF2, codice che viene scritto nella causale del transito quando si preme 2 volte la freccia in basso
2.1.1. Chiavi CodiceF1 ed F2
Se vengono impostati i valori CodiceF1 e CodiceF2 nel file ccomm.ini, se verrà premuto 2 volte la freccia in alto, nel transito (che sarà di tipo entrata) verrà scritto nel campo causale il CodiceF1; se verrà premuto 2 volte la freccia in basso, nel transito (che sarà di tipo uscita) verrà scritto nel campo causale il CodiceF2.
2.2. FKAttend.dll, FKViaDev.dll e DevNotify.dll
Sono <dll> necessarie all’applicazione CComm.exe per il corretto funzionamento: non è necessario registrarle nel sistema
3. Sintassi
CComm.exe accetta parametri passati da riga di comando a queste condizioni:
- tra un parametro e l’altro ci deve essere uno spazio
- all’interno di ogni parametro non ci devono essere spazi
CComm.exe comando par1 par2 par3 par4 par5 par6 par7 par8
ccomm ora 3 tcp 10.0.0.51 4660 0 1262 0 1
ccomm trn 3 tcp 10.0.0.51 4660 0 1262 0
ccomm trn 6 com 1 0 0 1262 0
3.1. Elenco dei parametri
I valori dei parametri sono:
- par1 =l’ID del terminale
- par2 =il metodo di comunicazione “tcp” oppure “com” (attualmente "com" non è implementato)
- par3 =fornito un dns (es. rossi.dyndns.org), il programma risolve automaticamente l'ip
- par4 =il numero di porta tcp (nel caso di comunicazione IP); nel caso di comunicazione seriale è 0 (zero)
- par5 = la password di comunicazione (default = 0)
- par6 = il numero di licenza (parametro fisso a 1262)
- par7 = la modalità di scarico transiti da 0 a 4 (default = 0) .
- par8 = se 1, non fa visualizzare la scritta "attendere prego" sul terminale
3.2. Elenco dei comandi
Il valore di comando può essere:
- trn : scarico dati (transiti)
- ora : aggiornamento data/ora
- bel : invio suonerie (campana, sirena)
- arp : attivazione relè porta
- uer : utenti elenco ricevi
- uei : utenti elenco invia
- uru : tente ricevi
- uiu : tente invia
- urt : utenti ricevi tutti
- uit : utenti invia tutti
- uc : utente cancella
4. Comandi
4.1. Scarico trasiti : trn
Il comando “trn”, attiva lo scarico dei transiti. Il file generato, prende il nome dalla chiave NomeFileOutput impostato nel file CComm.ini
Il file viene sempre accodato a quello esistente, oppure creato exnovo se mancante.
Il parametro 7 abilita differenti modalità di scarico:
- 0 (zero) per scaricare solo gli ultimi nuovi transiti
- 1 per scaricare tutti i transiti
- 2 per scaricare solo gli ultimi transiti e cancellare la memoria
- 3 per scaricare tutti i transiti e cancellare la memoria
- 4 per cancellare la memoria (questo comando non scarica i dati ma li cancella solamente; è quindi importante prima scaricare e poi cancellare)
4.1.1. Tracciato Tipo 0
Se la chiave nel file ini TipoFileOutput viene impostata ad 0 il formato di uscita sarà del tipo personalizzabile.
Deve essere impostata la chiave Tracciato nel file ini.
Potranno essere inseriti i seguenti valori anche più volte (fino ad un massimo di 3):
- T è il numero di terminale
- M è il mese
- G è il giorno
- H è l’ora
- N sono i minuti
- S sono i secondi
- B è il numero di utente registrato nel terminale
- C è l’eventuale causale
- V è il verso di timbratura
- A è l’anno
Tutti i campi sono allineati a destra: il tracciato avrà lunghezza parametrizzabile.
Nel caso in cui un valore fosse inferiore (come numero di caratteri) a quanto scritto nel tracciato, verrà riempito con degli zeri. Ad esempio se uso il valore GGG, la prima cifra sarà sempre zero, in quanto i giorni sono al massimo 31. Se imposto solo G, verranno riportate solamente de unità.
Tutti gli altri caratteri del tracciato che non corrispondono a quelli sopra, non verranno considerati e quindi non verranno trasformati.
Il tracciato è "case sensitive", quindi attenzione alle lettere maiuscole o minuscole.
Le chiavi CarattereEntrata e CarattereUscita, personalizzano il carattere da utilizzare.
Esempi di tracciato:
Timbratura di uscita dell'utente 123 sul terminale 1 alle ore 17:30:20 del 05/01/2013
Con il tracciato
TT-BBBB-CCCC-V-GG/MM/AAAA-HH:NN:SS
la transazione sarà:
01-0123-0000-U-05/01/2013-17:30:20
Con il tracciato
BBBBBBBBBCCVGGMMAAAAXXXXXXXXHHNNSS
la transazione sarà:
00000012300U05012013XXXXXXXX173020
Con il tracciato
AAMMGG;HHNNSS;BBBB;TTT
la transazione sarà:
130105;173020;0123;001
Con il tracciato
anno AAAA; mese MM; giorno GG; anno2cifre AA
la transazione sarà:
anno 2013; mese 01; giorno 05; anno2cifre 13
Con il tracciato
AAAA-AA/MM/GG HHNNSS utente numero BBBBBBBBB
la transazione sarà:
2013-13/01/05 173020 utente numero 000000123
Con il tracciato
AMMGGHNBB
la transazione sarà:
301057023
4.1.2. Tracciato Tipo 1
Se la chiave nel file ini TipoFileOutput viene impostata ad 1 il formato di uscita sarà del tipo:
TTMMGGHHNNBBBBBBCCCCVAA dove:
- TT è il numero di terminale
- MM è il mese
- GG è il giorno
- HH è l’ora
- NN sono i minuti
- BBBBBB è il numero di utente registrato nel terminale
- CCCC è l’eventuale causale
- V è il verso di timbratura
- AA è l’anno
Tutti i campi sono allineati a destra e gli spazi sono riempiti con degli zeri: è quindi un record fisso di 23 caratteri.
4.2. Invio elenco utenti : uei
Se presente il file CComm.bdg, può essere inviato al terminale tramite il comando “uei”
Deve essere preparato secondo una sintassi ben precisa:
BBBBBBBBB NNNNNNNNNN dove:
- B è in numero utente (nove cifre fisse allineate a destra con caratteri riempitivi a zero
- N è un commento (di solito Cognome Nome) che comparirà ad ogni identificazione (massimo 10 caratteri)
Esempio di file CComm.bdg
000000001 Rossi M.
000000002 Bianghi G.
000000233 Verdi Giovanni
000000004 Rossi Lino
Nota: nel caso dell’utente 233, sul display verrà visualizzato solo “Verdi Giov” (massimo 10 caratteri).
4.3. Attivazione relè porta : arp
Il comando attiva/disattiva il relè della porta
Il parametro 7 può essere impostato secondo questi valori:
- 0 (zero) disattiva il relè
- 1 attiva il relè
- Da 2 a 100 attiva per i decimi di secondo impostati e poi disattiva
Esempio:
CComm arp 1 tcp 192.168.0.1 4660 0 1262 30
Attiva il relè della porta per 3 secondi
4.4. Ricezione utente completo : ur
Riceve in un unico file l'utente completo di tutti i suoi dati prelevati dal terminale
File usato "\Enroll\00000xxxx.dat" dove xxxx è il numero id utente
Esempio: CComm.exe guc 1 tcp 192.168.0.201 4660 0 1262 15
Riceve tutto l'utente 15
4.5. Invio utente completo : ui
Invia da un unico file l'utente completo di tutti i suoi dati e lo registro sul terminale
File usato "\Enroll\00000xxxx.dat" dove xxxx è il numero id utente
Esempio: CComm.exe suc 1 tcp 192.168.0.201 4660 0 1262 18
Verrà inviato il file 000000018.dat al terminale
4.6. Ricezione di tutti gli utenti completi : urt
Riceve dal terminale tutti gli utenti e li salva con tutti i loro dati in 00000xxxx.dat
Esempio: CComm.exe urt 1 tcp 192.168.0.201 4660 0 1262
4.7. Invio di tutti gli utenti completi : uri
Invia tutti gli utenti presenti su disco al terminale: i files devono avere la forma 00000xxxx.dat
Esempio: CComm.exe uit 1 tcp 192.168.0.201 4660 0 1262
4.8. Invio Data-ora : ora
Tramite il comando “ora”, viene aggiornata l’ora del terminale e sincronizzata con quella del PC; automaticamente, vengono inviate anche le date per il cambio ora solare/legale.
Nota: E’ importante aggiornare l’ora almeno una volta all’anno e prima dell’ultima domenica di marzo affinchè il software calcoli le date corrette e le invii al terminale.
4.9. Invio suonerie : bel
Permette di inviare gli orari delle suonerie al terminale.
Il file deve chiamarsi CComm.bel ed il formato è il seguente:
DDHHMMHHMMHHMMHHMMHHMMHHMMHHMMHHMMHHMMHHMM…
Dove:
DD = Durata della suoneria in secondi (da 01 a 99)
HHMM = Sono Ore e minuti (massimo 24 suonerie)
Esempio di file CComm.bel
070800120014001830
Nota: le suonerie verranno attivate tutti i giorno alle 8 alle 12 alle 14 alle 18:30 per 7 secondi
Importante: le suonerie sono uguali per tutti i giorni della settimana.
5. Tabella codici di ritorno nella variabile “errorlevel”
Se viene lanciato il software con il prefisso "start /w", viene settata la variabile dos "errorlevel", che riporta lo stesso errore segnalato nel file ccomm.ret
Esempio
start /w CComm trn 1 tcp 192.168.0.1 4660 0 1262 0
Codici:
1 = "Ok"
0 = "Non supportato"
-1 = "Errore sconosciuto"
-2 = "Comunicazione non aperta"
-3 = "Errore di scrittura"
-4 = "Errore di lettura"
-5 = "Errore parametri"
-6 = "Esecuzione del comando fallita"
-7 = "Fine dei dati"
-8 = "Non esistono dati"
-9 = "Errore allocazione memoria"
-10 = "Errore di licenza"
-11 = "Memoria piena oppure non si può inviare dato"
-12 = "ID esistente"
-14 = "Troppi manager, impossibile inviare"
-15 = "Errore versione protocollo di comunicazione"
-99 = "Errore sconosciuto"
6. Creazione file log
Se impostata la chiave CreaLog=1, ad ogni esecuzione di CComm.exe viene creato (se non esiste) o accodato un file denominato CComm.log: all’interno vengono riportate tutte le operazioni effettuate.
7. Automazione
E’ possibile ovviamente automatizzare una serie di operazioni con dei files batch.
Esempio:
del CComm.log
CComm trn 1 tcp 192.168.0.1 4660 0 1262 0
CComm ora 1 tcp 192.168.0.1 4660 0 1262 0
CComm trn 2 tcp 192.168.0.2 4660 0 1262 0
CComm ora 2 tcp 192.168.0.2 4660 0 1262 0
Nota: All’inizio, viene cancellato il file log; successivamente vengono scaricati gli ultimi transiti, inviata data/ora ed inviato l’elenco degli utenti al terminale 1. Lo stesso accade poi col terminale 2.
Il file batch, può essere schedulato anche nelle operazioni pianificate.
Richiamami
Inserisci i tuoi dati: verrai ricontattato quanto prima.