Fixed log
This commit is contained in:
parent
965ef59269
commit
12b5fcc7d6
|
@ -45,12 +45,37 @@
|
||||||
* Ethernet: pins 10,11,12,13 (Not connected to the board, reserved for the Ethernet shield)
|
* Ethernet: pins 10,11,12,13 (Not connected to the board, reserved for the Ethernet shield)
|
||||||
*
|
*
|
||||||
* Quickstart tips:
|
* Quickstart tips:
|
||||||
* Set the console password(PRIVPASSWORD) value to a numeric DEC or HEX value.
|
* Set the privilege password(PRIVPASSWORD) value to a numeric DEC or HEX value.
|
||||||
* Define the static user list by swiping a tag and copying the value received into the #define values shown below under Adam, Bob, and Carl.
|
* Define the static user list by swiping a tag and copying the value received into the #define values shown below under Adam, Bob, and Carl.
|
||||||
* Change MAC, IP, and SERVER as appropriate for your network.
|
* Change MAC and IP as appropriate for your network.
|
||||||
* See the lines containing "~access" in this file for how your webserver should be structured for rudimentary logging.
|
* Compile and upload the code, then log in via HTTP to the IP you specified.
|
||||||
* Compile and upload the code, then log in via serial console at 57600,8,N,1
|
|
||||||
*
|
*
|
||||||
|
* Guide to log keys and data:
|
||||||
|
* A=alarm armed (# level)
|
||||||
|
* a=added user (# usernum)
|
||||||
|
* C=keypad command (# command)
|
||||||
|
* c=checked user (0=failed, #=found usernum)
|
||||||
|
* D=denied access (# card num)
|
||||||
|
* d=deleted user (# usernum)
|
||||||
|
* E=second (#=second)
|
||||||
|
* F=priv fail (0=wrong pw, 1=too many attempts, 2=not logged in)
|
||||||
|
* f=card fail (#=usermask)
|
||||||
|
* G=granted access (# card num)
|
||||||
|
* H=hour (#=hour)
|
||||||
|
* i=attempt to write to invalid eeprom address (# usernum)
|
||||||
|
* I=attempt to delete from invalid eeprom address (# usernum)
|
||||||
|
* L=locked (1=door1, 2=door2, 3=bedtime)
|
||||||
|
* M=minute (#=minute)
|
||||||
|
* m=alarm state (# level)
|
||||||
|
* R=read tag (# card num)
|
||||||
|
* Q=superuser authed (#=superuser)
|
||||||
|
* S=auth (0=privileged mode enabled)
|
||||||
|
* s=alarm sensor (# zone)
|
||||||
|
* t=alarm trained (#=sensor value)
|
||||||
|
* T=alarm triggered (0)
|
||||||
|
* U=unlocked door (1=door1, 2=door2, # card num)
|
||||||
|
* Z=user db cleared (0)
|
||||||
|
* z=log cleared (0)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <Wire.h> // Needed for I2C Connection to the DS1307 date/time chip
|
#include <Wire.h> // Needed for I2C Connection to the DS1307 date/time chip
|
||||||
|
@ -485,6 +510,15 @@ void loop() // Main branch, runs over and ov
|
||||||
logprivFail();
|
logprivFail();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if(readString.indexOf("?y") > 0) { // clear log
|
||||||
|
if(privmodeEnabled==true) {
|
||||||
|
clearLog(client);
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
PROGMEMprintln(client,noauth);
|
||||||
|
logprivFail();
|
||||||
|
}
|
||||||
|
}
|
||||||
if(readString.indexOf("?e=") > 0) {
|
if(readString.indexOf("?e=") > 0) {
|
||||||
int offset = readString.indexOf("?e=");
|
int offset = readString.indexOf("?e=");
|
||||||
char pass[5] = {readString[offset+3],readString[offset+4],readString[offset+5],readString[offset+6],'\0'};
|
char pass[5] = {readString[offset+3],readString[offset+4],readString[offset+5],readString[offset+6],'\0'};
|
||||||
|
@ -1124,7 +1158,7 @@ int found=-1;
|
||||||
for(int i=0; i<=numUsers; i++){
|
for(int i=0; i<=numUsers; i++){
|
||||||
if(input == superUserList[i]){
|
if(input == superUserList[i]){
|
||||||
logDate();
|
logDate();
|
||||||
addToLog('S',i);
|
addToLog('Q',i);
|
||||||
found=i;
|
found=i;
|
||||||
return found;
|
return found;
|
||||||
}
|
}
|
||||||
|
@ -1357,7 +1391,7 @@ void deleteUser(int userNum) // Delet
|
||||||
EEPROM.write((offset+i), 0xFF); // Store the resulting value in 5 bytes of EEPROM.
|
EEPROM.write((offset+i), 0xFF); // Store the resulting value in 5 bytes of EEPROM.
|
||||||
// Starting at offset.
|
// Starting at offset.
|
||||||
}
|
}
|
||||||
addToLog('D',userNum);
|
addToLog('d',userNum);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1503,6 +1537,16 @@ void printLog(EthernetClient client) {
|
||||||
client.println("</pre>");
|
client.println("</pre>");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void clearLog(EthernetClient client) {
|
||||||
|
for(int i=0;i<sizeof(logKeys);i++) {
|
||||||
|
logKeys[i] = 0;
|
||||||
|
logData[i] = 0;
|
||||||
|
}
|
||||||
|
addToLog('z',0);
|
||||||
|
logDate();
|
||||||
|
|
||||||
|
client.println("cleared log");
|
||||||
|
}
|
||||||
|
|
||||||
void PROGMEMprintln(EthernetClient client, const prog_uchar str[]) // Function to retrieve strings from program memory
|
void PROGMEMprintln(EthernetClient client, const prog_uchar str[]) // Function to retrieve strings from program memory
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue
Block a user