diff --git a/A.cert b/A.cert new file mode 100644 index 0000000..12909c5 --- /dev/null +++ b/A.cert @@ -0,0 +1,16 @@ +Bv0C2Ac7CANuZG4IA29yZwgEbWQyawgBQQgDS0VZCAi810k4DSJjowgNL25kbi9v +cmcvbWQyazYIAAABiCzKt98UCRgBAhkEADbugBX9ASYwggEiMA0GCSqGSIb3DQEB +AQUAA4IBDwAwggEKAoIBAQCpxfNUPfFUh7ydt4NeoqPX7DwibNLtc4BUqPH9emt5 +dv0GraJlXiVFZLjB+Nq+Qubqp8qrnTNHktOOF9rYdGRJ4s34VEYUbAaZst+wja2/ +G1S3nAOtVXzR7y8wXbq1okTIB9V8Zcb8djrQQyWglYbDMwAtMUlgXAEBf/CvKqaJ +9lXonCpxwMi/Exk8m1F9IjXm0ZRDfABtoQKraxS1FCLZHbd+1qWxh6mwb0OSwhs9 +xHk5ikt2Xlgz283mQN1dAJ+CtA/zKcKW+yqHulrvnkq8WJBTc0ZMIujRjYMEhwjR +OEEv1KjUX+hLFzA5b3L0U9ZyDF7/pQokoDdUk8R02cwlAgMBAAEWYBsBARwxBy8I +A25kbggDb3JnCARtZDJrCANLRVkICNwzhc0VbKvECARzZWxmNggAAAGILMq20v0A +/Sb9AP4PMjAyMzA1MThUMDI1NzQz/QD/DzIwMjQwNTE3VDAyNTc0Mhf9AQAvaclL +mZvpL3VbBa0RQ/WFmKcaMyfBmNYFVyjtWPJ1puwAsjQdkkQNtfeS+0lmKjmkGEo7 +o8LP+nyhG8V0U00FdeAk8kzTHv9k1DMJoKfRNbdhV9VknComrM3oe2E2RMFI+3rB +9Jmhr329onN1D6RYtkO4M/DA0VBGrSehkcDtMy8b4V6/Skue3lQYg+jqHL4l2zL6 +C4lCRNa6+QKJT9RQZYLLeIwGInLn8v7M5XHpbG1JaZqc/D7SSkOaqgKyaAjUIQ6H +01xYYyT0c0sYrGXR8kWL1XoO831LjW49coqxvwnboAnKOOCalqPOdWvIImK2FfwN +mG0cajc+t+Z8B2CF diff --git a/A.ndncsr b/A.ndncsr new file mode 100644 index 0000000..81c9e7d --- /dev/null +++ b/A.ndncsr @@ -0,0 +1,16 @@ +Bv0C2gc6CANuZG4IA29yZwgEbWQyawgBQQgDS0VZCAi810k4DSJjowgMY2VydC1y +ZXF1ZXN0NggAAAGILMq32hQJGAECGQQANu6AFf0BJjCCASIwDQYJKoZIhvcNAQEB +BQADggEPADCCAQoCggEBAKnF81Q98VSHvJ23g16io9fsPCJs0u1zgFSo8f16a3l2 +/QatomVeJUVkuMH42r5C5uqnyqudM0eS044X2th0ZEnizfhURhRsBpmy37CNrb8b +VLecA61VfNHvLzBdurWiRMgH1Xxlxvx2OtBDJaCVhsMzAC0xSWBcAQF/8K8qpon2 +VeicKnHAyL8TGTybUX0iNebRlEN8AG2hAqtrFLUUItkdt37WpbGHqbBvQ5LCGz3E +eTmKS3ZeWDPbzeZA3V0An4K0D/Mpwpb7Koe6Wu+eSrxYkFNzRkwi6NGNgwSHCNE4 +QS/UqNRf6EsXMDlvcvRT1nIMXv+lCiSgN1STxHTZzCUCAwEAARZjGwEBHDQHMggD +bmRuCANvcmcIBG1kMmsIAUEIA0tFWQgIvNdJOA0iY6MIBHNlbGY2CAAAAYgsyre3 +/QD9Jv0A/g8yMDIzMDUxOFQwMjU3NDL9AP8PMjAyMzA1MjhUMDI1NzQyF/0BABqg +hthX0xp6o1t0n3bKiDb0t7R35rLvU4aTl8+G7Ri2/rokdMeF8SoVIwbkDiiGDVfi +xWdiV6KEwVt/94/R+GfhqdiwrCGNUTIy3ULUJy9BegaMvHhmzQTSprflNPjBF9Xg +8nBo+hYLudSEnW2L0ME53EDGDm8JZLzK57XzgpdOPBP+YFlgjg/wBrpYVldu/6/b +ZfJweEZ0TNVFEzX6QLraTcZZTNVInt49Clz5/SyyuFpNfyGXb3gjT06c6xS9gZFk +zekpICkccSi9cL4Xje2snPy/Qtz1BUEqA3Z32mJO0C4hkB7oi9cNQqns/J2ANGHJ +EkKPg7MVFSaLo6QF1Xs= diff --git a/CMakeLists.txt b/CMakeLists.txt index 22d6af3..4188001 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -7,7 +7,7 @@ project(mguard DESCRIPTION "mGuard") # flags -set(CMAKE_CXX_STANDARD 14) +set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED True) if (HAVE_TESTS) add_compile_definitions(HAVE_TESTS) @@ -51,7 +51,7 @@ set(PKG_CONFIG_LIBS set(PKG_CONFIG_CFLAGS "-I\${includedir} -DMGUARD_CMAKE_BUILD" ) -configure_file("${CMAKE_CURRENT_SOURCE_DIR}/cmake-pkgconfig.pc.in" +configure_file("${CMAKE_CURRENT_SOURCE_DIR}/mguard.pc.in" "${CMAKE_CURRENT_BINARY_DIR}/lib${PROJECT_NAME}.pc") include(GNUInstallDirs) diff --git a/Vagrantfile b/Vagrantfile index cb555e6..dee4d9d 100644 --- a/Vagrantfile +++ b/Vagrantfile @@ -13,7 +13,7 @@ Vagrant.configure("2") do |config| echo "deb [arch=amd64 trusted=yes] https://nfd-nightly-apt.ndn.today/ubuntu focal main" | sudo tee /etc/apt/sources.list.d/nfd-nightly.list sudo apt update - sudo apt -y install nfd libndn-cxx-dev libpsync-dev ndn-tools python-is-python3 libgtkmm-3.0-dev libboost-all-dev + sudo apt -y install nfd libndn-cxx-dev libpsync-dev ndn-tools libgtkmm-3.0-dev libboost-all-dev sudo apt -y upgrade sudo apt-get -y install libgtest-dev cmake python3-pip diff --git a/certs/.ndn/pib.db b/certs/.ndn/pib.db deleted file mode 100644 index cec45cf..0000000 Binary files a/certs/.ndn/pib.db and /dev/null differ diff --git a/certs/.pib.db b/certs/.pib.db deleted file mode 100644 index e69de29..0000000 diff --git a/certs/aa.cert b/certs/aa.cert deleted file mode 100644 index 6e88cb7..0000000 --- a/certs/aa.cert +++ /dev/null @@ -1,16 +0,0 @@ -Bv0C4QdECANuZG4IA29yZwgEbWQyawgGbWd1YXJkCAJhYQgDS0VZCAgeavS600X6 -gAgNL25kbi9vcmcvbWQyazYIAAABh5c8RM4UCRgBAhkEADbugBX9ASYwggEiMA0G -CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDEQGnmiIfbRVwwHwpNWOkfGysC4h+i -H+aAFaqnldOMdxzhFzTKHJRUeIGkFCrPc5cIVx0+67NKr/G2t22fEAe9E5nA5xZM -Fn4S2aYyRbArbYGzZVdK1XZJcFyZgAL/kx42GNY1WSe2oNwFqzhygOTing7BuL5R -5xXAzMsqg+lwI5uTvz6XKpYBy5moKFzkNmnqFty6aqC21TnS0xxY23dNi30Xn7xP -FbfklbqYxx3blQ6ngxOJ1BBIcQdOhgBJ+Fg6fl4g2mPreDEdmX4K+YevMqIcYq/x -DflW6jKQmtpm5Q7AdwidnxqVqhEhplA+6/kOxrFZc9hrt0ESVmzLKretAgMBAAEW -YBsBARwxBy8IA25kbggDb3JnCARtZDJrCANLRVkICL2U4sSWDNX0CARzZWxmNggA -AAGHlzxEJv0A/Sb9AP4PMjAyMzA0MTlUMDE1ODQz/QD/DzIwMjQwNDE4VDAxNTg0 -Mhf9AQAB5TYmsVCyXj0v233cg24ESi1QrTrUAX74zQfXYN7kkPPsXnlPm3pWY0GU -fGk3Nr/ziFg8W3P83ZgfnQ32trJukZIv6zVKOeyNI/BAVFl7esa5hTyXWmxHcHYf -//518sCRU7bqvkswxz14ASyJmQs2qQe5DbZEqhJaeZK5tYygKxii0iTz0bUSZacy -WpsA3P/aNGyWcQgyQg/FhT/1keu39mdqHCwFgK8/ENWjiwxkNZA5aMoNrhnTR0aE -SMsLPjiV/UdXmXaNpL6h0xCcX4RUy9RKc0IAPu0GLEGsxX05y+qELkI6gwa2LIy8 -gth4vkk5gTDsOxlYLjO909lu5/FL diff --git a/certs/controller.cert b/certs/controller.cert deleted file mode 100644 index b36b2f1..0000000 --- a/certs/controller.cert +++ /dev/null @@ -1,16 +0,0 @@ -Bv0C6QdMCANuZG4IA29yZwgEbWQyawgGbWd1YXJkCApjb250cm9sbGVyCANLRVkI -COW00nUGOl2dCA0vbmRuL29yZy9tZDJrNggAAAGHlzxE3hQJGAECGQQANu6AFf0B -JjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOV2hSLyNqHdiw4r4Is+ -Qaq1pXxYiHdzbdndMmJBmJfBo9a5QiVhHB/91Ory4rI3HKqqxQXcPXTB8/1MqKTO -pWC/sZyFk8fhYaUL1d+Ia4oMDXe3nAQuMiUGn/Sdx1rRXDQeHJooHcHXGlE2BJs2 -xcj5EiB7suYvW/Dgz73L9n9LsBIO5oKhcCL/BPXtJfVMHoaE/x8eoovnbIVw8BlR -xt+1Y0JSU44Z3BQokFTr/31xRkc3kSIgKrDQWGVo6a+gTUcz1B9BtADagUFBsmqv -mXMlHP0nMCBGnOSJWpPU6S+qFG2xXylKp4wF0LARjwQ+whhLE4xS6bBnCXUWivas -I8UCAwEAARZgGwEBHDEHLwgDbmRuCANvcmcIBG1kMmsIA0tFWQgIvZTixJYM1fQI -BHNlbGY2CAAAAYeXPEQm/QD9Jv0A/g8yMDIzMDQxOVQwMTU4NDP9AP8PMjAyNDA0 -MThUMDE1ODQyF/0BAAxVaFAs91p7sjj87WemLZS7ZdMq3vAL2naU/pjGFuU6gO9k -eOhVzPSPT7YCqLzpxdI7nz7kVnALIIPbSpgcFxs/QaNJa1dl4PLQCK6i384wbmQr -Hge8N7PLoAFyNL5gCk4ckslbube5oDzqoELdlWGRyi9gEsjGmxL/0zERItQ0TkE6 -haW+QCIe6qI8LHBMOoAeNrKkDzo68gtm3S4l/mBc9IcyYJhHEuh21ineeUR61Oto -U8bhx0mpvp+iT2lxA20mT5uMOCVvrOzwE3KvffUQhM+6R5b4rMh7FPTXbSD8fBkV -SUKTCPMlThrO0I8WGMevQlIFFULeBY2hoIzuXIw= diff --git a/certs/create_certs.sh b/certs/create_certs.sh index ab8f70a..e30ae99 100755 --- a/certs/create_certs.sh +++ b/certs/create_certs.sh @@ -10,7 +10,9 @@ server_certs() { ndnsec sign-req /ndn/org/md2k/mguard/aa > aa.ndncsr ndnsec cert-gen -s /ndn/org/md2k -i /ndn/org/md2k aa.ndncsr > aa.cert + ndnsec cert-install aa.cert ndnsec cert-gen -s /ndn/org/md2k -i /ndn/org/md2k controller.ndncsr > controller.cert + ndnsec cert-install controller.cert ndnsec cert-dump -i /ndn/org/md2k > producer.cert ndnsec cert-dump -i /ndn/org/md2k > md2k-trust-anchor.ndncert @@ -18,9 +20,10 @@ server_certs() { consumer_cert() { echo "Creating and installing consumer certificate" - ndnsec key-gen -t r /ndn/org/md2k/local - ndnsec sign-req /ndn/org/md2k/local > local.ndncsr - ndnsec cert-gen -s /ndn/org/md2k -i /ndn/org/md2k local.ndncsr > local.cert + ndnsec key-gen -t r /ndn/org/md2k/A + ndnsec sign-req /ndn/org/md2k/A > A.ndncsr + ndnsec cert-gen -s /ndn/org/md2k -i /ndn/org/md2k A.ndncsr > A.cert + ndnsec cert-install A.cert } if [ "$1" == "-a" ]; then diff --git a/certs/create_default_certs.sh b/certs/create_default_certs.sh new file mode 100755 index 0000000..723f6bc --- /dev/null +++ b/certs/create_default_certs.sh @@ -0,0 +1,38 @@ +#!/bin/bash + +server_certs() { + echo "Installing server certs (producer, controller, and attribute authority)" + ndnsec key-gen /ndn/org/md2k + ndnsec key-gen /ndn/org/md2k/mguard/controller + ndnsec key-gen /ndn/org/md2k/mguard/aa + + ndnsec sign-req /ndn/org/md2k/mguard/controller > controller.ndncsr + ndnsec sign-req /ndn/org/md2k/mguard/aa > aa.ndncsr + + ndnsec cert-gen -s /ndn/org/md2k -i /ndn/org/md2k aa.ndncsr > aa.cert + ndnsec cert-install aa.cert + ndnsec cert-gen -s /ndn/org/md2k -i /ndn/org/md2k controller.ndncsr > controller.cert + ndnsec cert-install controller.cert + + ndnsec cert-dump -i /ndn/org/md2k > producer.cert + ndnsec cert-dump -i /ndn/org/md2k > md2k-trust-anchor.ndncert +} + +consumer_cert() { + echo "Creating and installing consumer certificate" + ndnsec key-gen /ndn/org/md2k/A + ndnsec sign-req /ndn/org/md2k/A > A.ndncsr + ndnsec cert-gen -s /ndn/org/md2k -i /ndn/org/md2k A.ndncsr > A.cert + ndnsec cert-install A.cert +} + +if [ "$1" == "-a" ]; then + server_certs + sleep 1 + consumer_cert + exit +fi + +server_certs + + diff --git a/certs/producer.cert b/certs/producer.cert deleted file mode 100644 index 584da60..0000000 --- a/certs/producer.cert +++ /dev/null @@ -1,15 +0,0 @@ -Bv0CvAcvCANuZG4IA29yZwgEbWQyawgDS0VZCAi9lOLElgzV9AgEc2VsZjYIAAAB -h5c8RCYUCRgBAhkEADbugBX9ASYwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK -AoIBAQCuCmhP2SJIOy2fLuCJ9X4+Qv5t9oYocDpvZi/7pszHRRXclLGFHhckGd2v -P0pIvl50+gy8db8JRMbQwWT7nI5+NwHzkaLfx3EifVYlv1yiRudtdf1PIIAD8gj+ -X3zGZC5nt+dr22qukbJL9ECOgrhi3+nw3qSewGIKIv+Qg5PRIKJ1hRvRLzJbxoee -GLQ0We3tVCes1Mztytxc3UhptrvQjuEhTbmvkxcliXOM3FIA13T88MLdr2ARpuHs -8ixrnreI5Arc/GkcMQ/b5Mf7Jd1RL87dOo6wXLBD1OWlwhn09vSNrcwNag5+TI4R -2GGGNy7T9PRTX0y6KF+J41lCwnKrAgMBAAEWUBsBARwhBx8IA25kbggDb3JnCARt -ZDJrCANLRVkICL2U4sSWDNX0/QD9Jv0A/g8yMDIzMDQxOVQwMTU4NDH9AP8PMjA0 -MzA0MTRUMDE1ODQxF/0BAFJmhd3SccmDC2m/WTUHmIVplkX6Mj7724PJApZWSGuL -nbK6VlsxYLcdQ41BMCCia2AzBaEmh/rSftP27bUb+rFMeCO/yC7GHL8RZS0qpNF3 -+30g2LhwY8N1/lVfx8tRA4cvJOi9sXjTDDpIAZBH/ClJwF+i1E9L7xAQOBea8Ypq -T3Cpi561Eb97JIV9NiRsJwy4m/R2amtHwmFck23vvcFzftyLHE7qTBCkvePv3aX6 -Iqt1SP2mWuU6StYWXZzgv+1xBDEW/vqCFNglf4YWRfHrq/qZ6imPOhUFxmfa4aWH -VzYjCmLZ/LYX1zT2+RUPHldLxDrSkLa/TcR3AXfCMUM= diff --git a/certs/trust-schema.conf b/certs/trust-schema.conf index 02306ce..bbfdca6 100644 --- a/certs/trust-schema.conf +++ b/certs/trust-schema.conf @@ -2,7 +2,7 @@ rule { - id "simple rule" + id "digest rule" for data filter { @@ -10,6 +10,13 @@ rule name /ndn/org/md2k relation is-prefix-of } + + checker + { + type customized + sig-type sha256 + } + checker { type customized diff --git a/data-generator/1_ndn--org--md2k--mguard--dd40c--phone--battery b/data-generator/1_ndn--org--md2k--mguard--dd40c--phone--battery deleted file mode 100644 index 1c28743..0000000 --- a/data-generator/1_ndn--org--md2k--mguard--dd40c--phone--battery +++ /dev/null @@ -1,301 +0,0 @@ -timestamp,localtime,level,voltage,temperature,user,version -2022-05-01 10:02:17,2022-05-01 05:02:17,98.6299999999993,3700,70,dd40c,1 -2022-05-01 10:02:18,2022-05-01 05:02:18,98.6199999999993,3700,70,dd40c,1 -2022-05-01 10:02:19,2022-05-01 05:02:19,98.60999999999929,3700,70,dd40c,1 -2022-05-01 10:02:20,2022-05-01 05:02:20,98.59999999999928,3700,70,dd40c,1 -2022-05-01 10:02:21,2022-05-01 05:02:21,98.58999999999928,3700,70,dd40c,1 -2022-05-01 10:02:22,2022-05-01 05:02:22,98.57999999999927,3700,70,dd40c,1 -2022-05-01 10:02:23,2022-05-01 05:02:23,98.56999999999927,3700,70,dd40c,1 -2022-05-01 10:02:24,2022-05-01 05:02:24,98.55999999999926,3700,70,dd40c,1 -2022-05-01 10:02:25,2022-05-01 05:02:25,98.54999999999926,3700,70,dd40c,1 -2022-05-01 10:02:26,2022-05-01 05:02:26,98.53999999999925,3700,70,dd40c,1 -2022-05-01 10:02:27,2022-05-01 05:02:27,98.52999999999925,3700,70,dd40c,1 -2022-05-01 10:02:28,2022-05-01 05:02:28,98.51999999999924,3700,70,dd40c,1 -2022-05-01 10:02:29,2022-05-01 05:02:29,98.50999999999924,3700,70,dd40c,1 -2022-05-01 10:02:30,2022-05-01 05:02:30,98.49999999999923,3700,70,dd40c,1 -2022-05-01 10:02:31,2022-05-01 05:02:31,98.48999999999923,3700,70,dd40c,1 -2022-05-01 10:02:32,2022-05-01 05:02:32,98.47999999999922,3700,70,dd40c,1 -2022-05-01 10:04:49,2022-05-01 05:04:49,97.10999999999852,3700,70,dd40c,1 -2022-05-01 10:04:50,2022-05-01 05:04:50,97.09999999999852,3700,70,dd40c,1 -2022-05-01 10:04:51,2022-05-01 05:04:51,97.08999999999851,3700,70,dd40c,1 -2022-05-01 10:04:52,2022-05-01 05:04:52,97.0799999999985,3700,70,dd40c,1 -2022-05-01 10:04:53,2022-05-01 05:04:53,97.0699999999985,3700,70,dd40c,1 -2022-05-01 10:04:54,2022-05-01 05:04:54,97.0599999999985,3700,70,dd40c,1 -2022-05-01 10:04:55,2022-05-01 05:04:55,97.04999999999849,3700,70,dd40c,1 -2022-05-01 10:04:56,2022-05-01 05:04:56,97.03999999999849,3700,70,dd40c,1 -2022-05-01 10:04:57,2022-05-01 05:04:57,97.02999999999848,3700,70,dd40c,1 -2022-05-01 10:04:58,2022-05-01 05:04:58,97.01999999999848,3700,70,dd40c,1 -2022-05-01 10:04:59,2022-05-01 05:04:59,97.00999999999847,3700,70,dd40c,1 -2022-05-01 10:05:00,2022-05-01 05:05:00,96.99999999999847,3700,70,dd40c,1 -2022-05-01 10:01:29,2022-05-01 05:01:29,99.10999999999954,3700,70,dd40c,1 -2022-05-01 10:01:30,2022-05-01 05:01:30,99.09999999999954,3700,70,dd40c,1 -2022-05-01 10:01:31,2022-05-01 05:01:31,99.08999999999953,3700,70,dd40c,1 -2022-05-01 10:01:32,2022-05-01 05:01:32,99.07999999999953,3700,70,dd40c,1 -2022-05-01 10:01:33,2022-05-01 05:01:33,99.06999999999952,3700,70,dd40c,1 -2022-05-01 10:01:34,2022-05-01 05:01:34,99.05999999999952,3700,70,dd40c,1 -2022-05-01 10:01:35,2022-05-01 05:01:35,99.04999999999951,3700,70,dd40c,1 -2022-05-01 10:01:36,2022-05-01 05:01:36,99.03999999999951,3700,70,dd40c,1 -2022-05-01 10:01:21,2022-05-01 05:01:21,99.18999999999959,3700,70,dd40c,1 -2022-05-01 10:01:22,2022-05-01 05:01:22,99.17999999999958,3700,70,dd40c,1 -2022-05-01 10:01:23,2022-05-01 05:01:23,99.16999999999958,3700,70,dd40c,1 -2022-05-01 10:01:24,2022-05-01 05:01:24,99.15999999999957,3700,70,dd40c,1 -2022-05-01 10:01:25,2022-05-01 05:01:25,99.14999999999957,3700,70,dd40c,1 -2022-05-01 10:01:26,2022-05-01 05:01:26,99.13999999999956,3700,70,dd40c,1 -2022-05-01 10:01:27,2022-05-01 05:01:27,99.12999999999955,3700,70,dd40c,1 -2022-05-01 10:01:28,2022-05-01 05:01:28,99.11999999999955,3700,70,dd40c,1 -2022-05-01 10:01:13,2022-05-01 05:01:13,99.26999999999963,3700,70,dd40c,1 -2022-05-01 10:01:14,2022-05-01 05:01:14,99.25999999999962,3700,70,dd40c,1 -2022-05-01 10:01:15,2022-05-01 05:01:15,99.24999999999962,3700,70,dd40c,1 -2022-05-01 10:01:16,2022-05-01 05:01:16,99.23999999999961,3700,70,dd40c,1 -2022-05-01 10:01:17,2022-05-01 05:01:17,99.2299999999996,3700,70,dd40c,1 -2022-05-01 10:01:18,2022-05-01 05:01:18,99.2199999999996,3700,70,dd40c,1 -2022-05-01 10:01:19,2022-05-01 05:01:19,99.2099999999996,3700,70,dd40c,1 -2022-05-01 10:01:20,2022-05-01 05:01:20,99.19999999999959,3700,70,dd40c,1 -2022-05-01 10:04:09,2022-05-01 05:04:09,97.50999999999873,3700,70,dd40c,1 -2022-05-01 10:04:10,2022-05-01 05:04:10,97.49999999999872,3700,70,dd40c,1 -2022-05-01 10:04:11,2022-05-01 05:04:11,97.48999999999872,3700,70,dd40c,1 -2022-05-01 10:04:12,2022-05-01 05:04:12,97.47999999999871,3700,70,dd40c,1 -2022-05-01 10:04:13,2022-05-01 05:04:13,97.4699999999987,3700,70,dd40c,1 -2022-05-01 10:04:14,2022-05-01 05:04:14,97.4599999999987,3700,70,dd40c,1 -2022-05-01 10:04:15,2022-05-01 05:04:15,97.4499999999987,3700,70,dd40c,1 -2022-05-01 10:04:16,2022-05-01 05:04:16,97.43999999999869,3700,70,dd40c,1 -2022-05-01 10:00:17,2022-05-01 05:00:17,99.82999999999991,3700,70,dd40c,1 -2022-05-01 10:00:18,2022-05-01 05:00:18,99.81999999999991,3700,70,dd40c,1 -2022-05-01 10:00:19,2022-05-01 05:00:19,99.8099999999999,3700,70,dd40c,1 -2022-05-01 10:00:20,2022-05-01 05:00:20,99.7999999999999,3700,70,dd40c,1 -2022-05-01 10:00:21,2022-05-01 05:00:21,99.78999999999989,3700,70,dd40c,1 -2022-05-01 10:00:22,2022-05-01 05:00:22,99.77999999999989,3700,70,dd40c,1 -2022-05-01 10:00:23,2022-05-01 05:00:23,99.76999999999988,3700,70,dd40c,1 -2022-05-01 10:00:24,2022-05-01 05:00:24,99.75999999999988,3700,70,dd40c,1 -2022-05-01 10:02:09,2022-05-01 05:02:09,98.70999999999934,3700,70,dd40c,1 -2022-05-01 10:02:10,2022-05-01 05:02:10,98.69999999999933,3700,70,dd40c,1 -2022-05-01 10:02:11,2022-05-01 05:02:11,98.68999999999933,3700,70,dd40c,1 -2022-05-01 10:02:12,2022-05-01 05:02:12,98.67999999999932,3700,70,dd40c,1 -2022-05-01 10:02:13,2022-05-01 05:02:13,98.66999999999932,3700,70,dd40c,1 -2022-05-01 10:02:14,2022-05-01 05:02:14,98.65999999999931,3700,70,dd40c,1 -2022-05-01 10:02:15,2022-05-01 05:02:15,98.64999999999931,3700,70,dd40c,1 -2022-05-01 10:02:16,2022-05-01 05:02:16,98.6399999999993,3700,70,dd40c,1 -2022-05-01 10:03:21,2022-05-01 05:03:21,97.98999999999897,3700,70,dd40c,1 -2022-05-01 10:03:22,2022-05-01 05:03:22,97.97999999999897,3700,70,dd40c,1 -2022-05-01 10:03:23,2022-05-01 05:03:23,97.96999999999896,3700,70,dd40c,1 -2022-05-01 10:03:24,2022-05-01 05:03:24,97.95999999999896,3700,70,dd40c,1 -2022-05-01 10:03:25,2022-05-01 05:03:25,97.94999999999895,3700,70,dd40c,1 -2022-05-01 10:03:26,2022-05-01 05:03:26,97.93999999999895,3700,70,dd40c,1 -2022-05-01 10:03:27,2022-05-01 05:03:27,97.92999999999894,3700,70,dd40c,1 -2022-05-01 10:03:28,2022-05-01 05:03:28,97.91999999999894,3700,70,dd40c,1 -2022-05-01 10:00:25,2022-05-01 05:00:25,99.74999999999987,3700,70,dd40c,1 -2022-05-01 10:00:26,2022-05-01 05:00:26,99.73999999999987,3700,70,dd40c,1 -2022-05-01 10:00:27,2022-05-01 05:00:27,99.72999999999986,3700,70,dd40c,1 -2022-05-01 10:00:28,2022-05-01 05:00:28,99.71999999999986,3700,70,dd40c,1 -2022-05-01 10:00:29,2022-05-01 05:00:29,99.70999999999985,3700,70,dd40c,1 -2022-05-01 10:00:30,2022-05-01 05:00:30,99.69999999999985,3700,70,dd40c,1 -2022-05-01 10:00:31,2022-05-01 05:00:31,99.68999999999984,3700,70,dd40c,1 -2022-05-01 10:00:32,2022-05-01 05:00:32,99.67999999999984,3700,70,dd40c,1 -2022-05-01 10:04:25,2022-05-01 05:04:25,97.34999999999864,3700,70,dd40c,1 -2022-05-01 10:04:26,2022-05-01 05:04:26,97.33999999999864,3700,70,dd40c,1 -2022-05-01 10:04:27,2022-05-01 05:04:27,97.32999999999863,3700,70,dd40c,1 -2022-05-01 10:04:28,2022-05-01 05:04:28,97.31999999999863,3700,70,dd40c,1 -2022-05-01 10:04:29,2022-05-01 05:04:29,97.30999999999862,3700,70,dd40c,1 -2022-05-01 10:04:30,2022-05-01 05:04:30,97.29999999999862,3700,70,dd40c,1 -2022-05-01 10:04:31,2022-05-01 05:04:31,97.28999999999861,3700,70,dd40c,1 -2022-05-01 10:04:32,2022-05-01 05:04:32,97.27999999999861,3700,70,dd40c,1 -2022-05-01 10:04:17,2022-05-01 05:04:17,97.42999999999869,3700,70,dd40c,1 -2022-05-01 10:04:18,2022-05-01 05:04:18,97.41999999999868,3700,70,dd40c,1 -2022-05-01 10:04:19,2022-05-01 05:04:19,97.40999999999867,3700,70,dd40c,1 -2022-05-01 10:04:20,2022-05-01 05:04:20,97.39999999999867,3700,70,dd40c,1 -2022-05-01 10:04:21,2022-05-01 05:04:21,97.38999999999866,3700,70,dd40c,1 -2022-05-01 10:04:22,2022-05-01 05:04:22,97.37999999999866,3700,70,dd40c,1 -2022-05-01 10:04:23,2022-05-01 05:04:23,97.36999999999865,3700,70,dd40c,1 -2022-05-01 10:04:24,2022-05-01 05:04:24,97.35999999999865,3700,70,dd40c,1 -2022-05-01 10:03:13,2022-05-01 05:03:13,98.06999999999901,3700,70,dd40c,1 -2022-05-01 10:03:14,2022-05-01 05:03:14,98.05999999999901,3700,70,dd40c,1 -2022-05-01 10:03:15,2022-05-01 05:03:15,98.049999999999,3700,70,dd40c,1 -2022-05-01 10:03:16,2022-05-01 05:03:16,98.039999999999,3700,70,dd40c,1 -2022-05-01 10:03:17,2022-05-01 05:03:17,98.02999999999899,3700,70,dd40c,1 -2022-05-01 10:03:18,2022-05-01 05:03:18,98.01999999999899,3700,70,dd40c,1 -2022-05-01 10:03:19,2022-05-01 05:03:19,98.00999999999898,3700,70,dd40c,1 -2022-05-01 10:03:20,2022-05-01 05:03:20,97.99999999999898,3700,70,dd40c,1 -2022-05-01 10:04:41,2022-05-01 05:04:41,97.18999999999856,3700,70,dd40c,1 -2022-05-01 10:04:42,2022-05-01 05:04:42,97.17999999999856,3700,70,dd40c,1 -2022-05-01 10:04:43,2022-05-01 05:04:43,97.16999999999855,3700,70,dd40c,1 -2022-05-01 10:04:44,2022-05-01 05:04:44,97.15999999999855,3700,70,dd40c,1 -2022-05-01 10:04:45,2022-05-01 05:04:45,97.14999999999854,3700,70,dd40c,1 -2022-05-01 10:04:46,2022-05-01 05:04:46,97.13999999999854,3700,70,dd40c,1 -2022-05-01 10:04:47,2022-05-01 05:04:47,97.12999999999853,3700,70,dd40c,1 -2022-05-01 10:04:48,2022-05-01 05:04:48,97.11999999999853,3700,70,dd40c,1 -2022-05-01 10:00:33,2022-05-01 05:00:33,99.66999999999983,3700,70,dd40c,1 -2022-05-01 10:00:34,2022-05-01 05:00:34,99.65999999999983,3700,70,dd40c,1 -2022-05-01 10:00:35,2022-05-01 05:00:35,99.64999999999982,3700,70,dd40c,1 -2022-05-01 10:00:36,2022-05-01 05:00:36,99.63999999999982,3700,70,dd40c,1 -2022-05-01 10:00:37,2022-05-01 05:00:37,99.62999999999981,3700,70,dd40c,1 -2022-05-01 10:00:38,2022-05-01 05:00:38,99.6199999999998,3700,70,dd40c,1 -2022-05-01 10:00:39,2022-05-01 05:00:39,99.6099999999998,3700,70,dd40c,1 -2022-05-01 10:00:40,2022-05-01 05:00:40,99.5999999999998,3700,70,dd40c,1 -2022-05-01 10:00:09,2022-05-01 05:00:09,99.90999999999995,3700,70,dd40c,1 -2022-05-01 10:00:10,2022-05-01 05:00:10,99.89999999999995,3700,70,dd40c,1 -2022-05-01 10:00:11,2022-05-01 05:00:11,99.88999999999994,3700,70,dd40c,1 -2022-05-01 10:00:12,2022-05-01 05:00:12,99.87999999999994,3700,70,dd40c,1 -2022-05-01 10:00:13,2022-05-01 05:00:13,99.86999999999993,3700,70,dd40c,1 -2022-05-01 10:00:14,2022-05-01 05:00:14,99.85999999999993,3700,70,dd40c,1 -2022-05-01 10:00:15,2022-05-01 05:00:15,99.84999999999992,3700,70,dd40c,1 -2022-05-01 10:00:16,2022-05-01 05:00:16,99.83999999999992,3700,70,dd40c,1 -2022-05-01 10:00:41,2022-05-01 05:00:41,99.58999999999979,3700,70,dd40c,1 -2022-05-01 10:00:42,2022-05-01 05:00:42,99.57999999999979,3700,70,dd40c,1 -2022-05-01 10:00:43,2022-05-01 05:00:43,99.56999999999978,3700,70,dd40c,1 -2022-05-01 10:00:44,2022-05-01 05:00:44,99.55999999999977,3700,70,dd40c,1 -2022-05-01 10:00:45,2022-05-01 05:00:45,99.54999999999977,3700,70,dd40c,1 -2022-05-01 10:00:46,2022-05-01 05:00:46,99.53999999999976,3700,70,dd40c,1 -2022-05-01 10:00:47,2022-05-01 05:00:47,99.52999999999976,3700,70,dd40c,1 -2022-05-01 10:00:48,2022-05-01 05:00:48,99.51999999999975,3700,70,dd40c,1 -2022-05-01 10:03:05,2022-05-01 05:03:05,98.14999999999905,3700,70,dd40c,1 -2022-05-01 10:03:06,2022-05-01 05:03:06,98.13999999999905,3700,70,dd40c,1 -2022-05-01 10:03:07,2022-05-01 05:03:07,98.12999999999904,3700,70,dd40c,1 -2022-05-01 10:03:08,2022-05-01 05:03:08,98.11999999999904,3700,70,dd40c,1 -2022-05-01 10:03:09,2022-05-01 05:03:09,98.10999999999903,3700,70,dd40c,1 -2022-05-01 10:03:10,2022-05-01 05:03:10,98.09999999999903,3700,70,dd40c,1 -2022-05-01 10:03:11,2022-05-01 05:03:11,98.08999999999902,3700,70,dd40c,1 -2022-05-01 10:03:12,2022-05-01 05:03:12,98.07999999999902,3700,70,dd40c,1 -2022-05-01 10:01:37,2022-05-01 05:01:37,99.0299999999995,3700,70,dd40c,1 -2022-05-01 10:01:38,2022-05-01 05:01:38,99.0199999999995,3700,70,dd40c,1 -2022-05-01 10:01:39,2022-05-01 05:01:39,99.0099999999995,3700,70,dd40c,1 -2022-05-01 10:01:40,2022-05-01 05:01:40,98.99999999999949,3700,70,dd40c,1 -2022-05-01 10:01:41,2022-05-01 05:01:41,98.98999999999948,3700,70,dd40c,1 -2022-05-01 10:01:42,2022-05-01 05:01:42,98.97999999999948,3700,70,dd40c,1 -2022-05-01 10:01:43,2022-05-01 05:01:43,98.96999999999947,3700,70,dd40c,1 -2022-05-01 10:01:44,2022-05-01 05:01:44,98.95999999999947,3700,70,dd40c,1 -2022-05-01 10:03:29,2022-05-01 05:03:29,97.90999999999893,3700,70,dd40c,1 -2022-05-01 10:03:30,2022-05-01 05:03:30,97.89999999999893,3700,70,dd40c,1 -2022-05-01 10:03:31,2022-05-01 05:03:31,97.88999999999892,3700,70,dd40c,1 -2022-05-01 10:03:32,2022-05-01 05:03:32,97.87999999999892,3700,70,dd40c,1 -2022-05-01 10:03:33,2022-05-01 05:03:33,97.86999999999891,3700,70,dd40c,1 -2022-05-01 10:03:34,2022-05-01 05:03:34,97.8599999999989,3700,70,dd40c,1 -2022-05-01 10:03:35,2022-05-01 05:03:35,97.8499999999989,3700,70,dd40c,1 -2022-05-01 10:03:36,2022-05-01 05:03:36,97.8399999999989,3700,70,dd40c,1 -2022-05-01 10:01:05,2022-05-01 05:01:05,99.34999999999967,3700,70,dd40c,1 -2022-05-01 10:01:06,2022-05-01 05:01:06,99.33999999999966,3700,70,dd40c,1 -2022-05-01 10:01:07,2022-05-01 05:01:07,99.32999999999966,3700,70,dd40c,1 -2022-05-01 10:01:08,2022-05-01 05:01:08,99.31999999999965,3700,70,dd40c,1 -2022-05-01 10:01:09,2022-05-01 05:01:09,99.30999999999965,3700,70,dd40c,1 -2022-05-01 10:01:10,2022-05-01 05:01:10,99.29999999999964,3700,70,dd40c,1 -2022-05-01 10:01:11,2022-05-01 05:01:11,99.28999999999964,3700,70,dd40c,1 -2022-05-01 10:01:12,2022-05-01 05:01:12,99.27999999999963,3700,70,dd40c,1 -2022-05-01 10:03:53,2022-05-01 05:03:53,97.66999999999881,3700,70,dd40c,1 -2022-05-01 10:03:54,2022-05-01 05:03:54,97.6599999999988,3700,70,dd40c,1 -2022-05-01 10:03:55,2022-05-01 05:03:55,97.6499999999988,3700,70,dd40c,1 -2022-05-01 10:03:56,2022-05-01 05:03:56,97.63999999999879,3700,70,dd40c,1 -2022-05-01 10:03:57,2022-05-01 05:03:57,97.62999999999879,3700,70,dd40c,1 -2022-05-01 10:03:58,2022-05-01 05:03:58,97.61999999999878,3700,70,dd40c,1 -2022-05-01 10:03:59,2022-05-01 05:03:59,97.60999999999878,3700,70,dd40c,1 -2022-05-01 10:04:00,2022-05-01 05:04:00,97.59999999999877,3700,70,dd40c,1 -2022-05-01 10:01:45,2022-05-01 05:01:45,98.94999999999946,3700,70,dd40c,1 -2022-05-01 10:01:46,2022-05-01 05:01:46,98.93999999999946,3700,70,dd40c,1 -2022-05-01 10:01:47,2022-05-01 05:01:47,98.92999999999945,3700,70,dd40c,1 -2022-05-01 10:01:48,2022-05-01 05:01:48,98.91999999999945,3700,70,dd40c,1 -2022-05-01 10:01:49,2022-05-01 05:01:49,98.90999999999944,3700,70,dd40c,1 -2022-05-01 10:01:50,2022-05-01 05:01:50,98.89999999999944,3700,70,dd40c,1 -2022-05-01 10:01:51,2022-05-01 05:01:51,98.88999999999943,3700,70,dd40c,1 -2022-05-01 10:01:52,2022-05-01 05:01:52,98.87999999999943,3700,70,dd40c,1 -2022-05-01 10:04:01,2022-05-01 05:04:01,97.58999999999877,3700,70,dd40c,1 -2022-05-01 10:04:02,2022-05-01 05:04:02,97.57999999999876,3700,70,dd40c,1 -2022-05-01 10:04:03,2022-05-01 05:04:03,97.56999999999876,3700,70,dd40c,1 -2022-05-01 10:04:04,2022-05-01 05:04:04,97.55999999999875,3700,70,dd40c,1 -2022-05-01 10:04:05,2022-05-01 05:04:05,97.54999999999875,3700,70,dd40c,1 -2022-05-01 10:04:06,2022-05-01 05:04:06,97.53999999999874,3700,70,dd40c,1 -2022-05-01 10:04:07,2022-05-01 05:04:07,97.52999999999874,3700,70,dd40c,1 -2022-05-01 10:04:08,2022-05-01 05:04:08,97.51999999999873,3700,70,dd40c,1 -2022-05-01 10:02:57,2022-05-01 05:02:57,98.2299999999991,3700,70,dd40c,1 -2022-05-01 10:02:58,2022-05-01 05:02:58,98.21999999999909,3700,70,dd40c,1 -2022-05-01 10:02:59,2022-05-01 05:02:59,98.20999999999908,3700,70,dd40c,1 -2022-05-01 10:03:00,2022-05-01 05:03:00,98.19999999999908,3700,70,dd40c,1 -2022-05-01 10:03:01,2022-05-01 05:03:01,98.18999999999907,3700,70,dd40c,1 -2022-05-01 10:03:02,2022-05-01 05:03:02,98.17999999999907,3700,70,dd40c,1 -2022-05-01 10:03:03,2022-05-01 05:03:03,98.16999999999906,3700,70,dd40c,1 -2022-05-01 10:03:04,2022-05-01 05:03:04,98.15999999999906,3700,70,dd40c,1 -2022-05-01 10:02:01,2022-05-01 05:02:01,98.78999999999938,3700,70,dd40c,1 -2022-05-01 10:02:02,2022-05-01 05:02:02,98.77999999999938,3700,70,dd40c,1 -2022-05-01 10:02:03,2022-05-01 05:02:03,98.76999999999937,3700,70,dd40c,1 -2022-05-01 10:02:04,2022-05-01 05:02:04,98.75999999999937,3700,70,dd40c,1 -2022-05-01 10:02:05,2022-05-01 05:02:05,98.74999999999936,3700,70,dd40c,1 -2022-05-01 10:02:06,2022-05-01 05:02:06,98.73999999999936,3700,70,dd40c,1 -2022-05-01 10:02:07,2022-05-01 05:02:07,98.72999999999935,3700,70,dd40c,1 -2022-05-01 10:02:08,2022-05-01 05:02:08,98.71999999999935,3700,70,dd40c,1 -2022-05-01 10:02:49,2022-05-01 05:02:49,98.30999999999914,3700,70,dd40c,1 -2022-05-01 10:02:50,2022-05-01 05:02:50,98.29999999999913,3700,70,dd40c,1 -2022-05-01 10:02:51,2022-05-01 05:02:51,98.28999999999913,3700,70,dd40c,1 -2022-05-01 10:02:52,2022-05-01 05:02:52,98.27999999999912,3700,70,dd40c,1 -2022-05-01 10:02:53,2022-05-01 05:02:53,98.26999999999911,3700,70,dd40c,1 -2022-05-01 10:02:54,2022-05-01 05:02:54,98.25999999999911,3700,70,dd40c,1 -2022-05-01 10:02:55,2022-05-01 05:02:55,98.2499999999991,3700,70,dd40c,1 -2022-05-01 10:02:56,2022-05-01 05:02:56,98.2399999999991,3700,70,dd40c,1 -2022-05-01 10:03:45,2022-05-01 05:03:45,97.74999999999885,3700,70,dd40c,1 -2022-05-01 10:03:46,2022-05-01 05:03:46,97.73999999999884,3700,70,dd40c,1 -2022-05-01 10:03:47,2022-05-01 05:03:47,97.72999999999884,3700,70,dd40c,1 -2022-05-01 10:03:48,2022-05-01 05:03:48,97.71999999999883,3700,70,dd40c,1 -2022-05-01 10:03:49,2022-05-01 05:03:49,97.70999999999883,3700,70,dd40c,1 -2022-05-01 10:03:50,2022-05-01 05:03:50,97.69999999999882,3700,70,dd40c,1 -2022-05-01 10:03:51,2022-05-01 05:03:51,97.68999999999882,3700,70,dd40c,1 -2022-05-01 10:03:52,2022-05-01 05:03:52,97.67999999999881,3700,70,dd40c,1 -2022-05-01 10:01:53,2022-05-01 05:01:53,98.86999999999942,3700,70,dd40c,1 -2022-05-01 10:01:54,2022-05-01 05:01:54,98.85999999999942,3700,70,dd40c,1 -2022-05-01 10:01:55,2022-05-01 05:01:55,98.84999999999941,3700,70,dd40c,1 -2022-05-01 10:01:56,2022-05-01 05:01:56,98.8399999999994,3700,70,dd40c,1 -2022-05-01 10:01:57,2022-05-01 05:01:57,98.8299999999994,3700,70,dd40c,1 -2022-05-01 10:01:58,2022-05-01 05:01:58,98.8199999999994,3700,70,dd40c,1 -2022-05-01 10:01:59,2022-05-01 05:01:59,98.80999999999939,3700,70,dd40c,1 -2022-05-01 10:02:00,2022-05-01 05:02:00,98.79999999999939,3700,70,dd40c,1 -2022-05-01 10:02:41,2022-05-01 05:02:41,98.38999999999918,3700,70,dd40c,1 -2022-05-01 10:02:42,2022-05-01 05:02:42,98.37999999999917,3700,70,dd40c,1 -2022-05-01 10:02:43,2022-05-01 05:02:43,98.36999999999917,3700,70,dd40c,1 -2022-05-01 10:02:44,2022-05-01 05:02:44,98.35999999999916,3700,70,dd40c,1 -2022-05-01 10:02:45,2022-05-01 05:02:45,98.34999999999916,3700,70,dd40c,1 -2022-05-01 10:02:46,2022-05-01 05:02:46,98.33999999999915,3700,70,dd40c,1 -2022-05-01 10:02:47,2022-05-01 05:02:47,98.32999999999915,3700,70,dd40c,1 -2022-05-01 10:02:48,2022-05-01 05:02:48,98.31999999999914,3700,70,dd40c,1 -2022-05-01 10:00:49,2022-05-01 05:00:49,99.50999999999975,3700,70,dd40c,1 -2022-05-01 10:00:50,2022-05-01 05:00:50,99.49999999999974,3700,70,dd40c,1 -2022-05-01 10:00:51,2022-05-01 05:00:51,99.48999999999974,3700,70,dd40c,1 -2022-05-01 10:00:52,2022-05-01 05:00:52,99.47999999999973,3700,70,dd40c,1 -2022-05-01 10:00:53,2022-05-01 05:00:53,99.46999999999973,3700,70,dd40c,1 -2022-05-01 10:00:54,2022-05-01 05:00:54,99.45999999999972,3700,70,dd40c,1 -2022-05-01 10:00:55,2022-05-01 05:00:55,99.44999999999972,3700,70,dd40c,1 -2022-05-01 10:00:56,2022-05-01 05:00:56,99.43999999999971,3700,70,dd40c,1 -2022-05-01 10:02:33,2022-05-01 05:02:33,98.46999999999922,3700,70,dd40c,1 -2022-05-01 10:02:34,2022-05-01 05:02:34,98.45999999999921,3700,70,dd40c,1 -2022-05-01 10:02:35,2022-05-01 05:02:35,98.4499999999992,3700,70,dd40c,1 -2022-05-01 10:02:36,2022-05-01 05:02:36,98.4399999999992,3700,70,dd40c,1 -2022-05-01 10:02:37,2022-05-01 05:02:37,98.4299999999992,3700,70,dd40c,1 -2022-05-01 10:02:38,2022-05-01 05:02:38,98.41999999999919,3700,70,dd40c,1 -2022-05-01 10:02:39,2022-05-01 05:02:39,98.40999999999919,3700,70,dd40c,1 -2022-05-01 10:02:40,2022-05-01 05:02:40,98.39999999999918,3700,70,dd40c,1 -2022-05-01 10:00:57,2022-05-01 05:00:57,99.42999999999971,3700,70,dd40c,1 -2022-05-01 10:00:58,2022-05-01 05:00:58,99.4199999999997,3700,70,dd40c,1 -2022-05-01 10:00:59,2022-05-01 05:00:59,99.4099999999997,3700,70,dd40c,1 -2022-05-01 10:01:00,2022-05-01 05:01:00,99.3999999999997,3700,70,dd40c,1 -2022-05-01 10:01:01,2022-05-01 05:01:01,99.38999999999969,3700,70,dd40c,1 -2022-05-01 10:01:02,2022-05-01 05:01:02,99.37999999999968,3700,70,dd40c,1 -2022-05-01 10:01:03,2022-05-01 05:01:03,99.36999999999968,3700,70,dd40c,1 -2022-05-01 10:01:04,2022-05-01 05:01:04,99.35999999999967,3700,70,dd40c,1 -2022-05-01 10:03:37,2022-05-01 05:03:37,97.82999999999889,3700,70,dd40c,1 -2022-05-01 10:03:38,2022-05-01 05:03:38,97.81999999999888,3700,70,dd40c,1 -2022-05-01 10:03:39,2022-05-01 05:03:39,97.80999999999888,3700,70,dd40c,1 -2022-05-01 10:03:40,2022-05-01 05:03:40,97.79999999999887,3700,70,dd40c,1 -2022-05-01 10:03:41,2022-05-01 05:03:41,97.78999999999887,3700,70,dd40c,1 -2022-05-01 10:03:42,2022-05-01 05:03:42,97.77999999999886,3700,70,dd40c,1 -2022-05-01 10:03:43,2022-05-01 05:03:43,97.76999999999886,3700,70,dd40c,1 -2022-05-01 10:03:44,2022-05-01 05:03:44,97.75999999999885,3700,70,dd40c,1 -2022-05-01 10:00:01,2022-05-01 05:00:01,99.99,3700,70,dd40c,1 -2022-05-01 10:00:02,2022-05-01 05:00:02,99.97999999999999,3700,70,dd40c,1 -2022-05-01 10:00:03,2022-05-01 05:00:03,99.96999999999998,3700,70,dd40c,1 -2022-05-01 10:00:04,2022-05-01 05:00:04,99.95999999999998,3700,70,dd40c,1 -2022-05-01 10:00:05,2022-05-01 05:00:05,99.94999999999997,3700,70,dd40c,1 -2022-05-01 10:00:06,2022-05-01 05:00:06,99.93999999999997,3700,70,dd40c,1 -2022-05-01 10:00:07,2022-05-01 05:00:07,99.92999999999996,3700,70,dd40c,1 -2022-05-01 10:00:08,2022-05-01 05:00:08,99.91999999999996,3700,70,dd40c,1 -2022-05-01 10:04:33,2022-05-01 05:04:33,97.2699999999986,3700,70,dd40c,1 -2022-05-01 10:04:34,2022-05-01 05:04:34,97.2599999999986,3700,70,dd40c,1 -2022-05-01 10:04:35,2022-05-01 05:04:35,97.2499999999986,3700,70,dd40c,1 -2022-05-01 10:04:36,2022-05-01 05:04:36,97.23999999999859,3700,70,dd40c,1 -2022-05-01 10:04:37,2022-05-01 05:04:37,97.22999999999858,3700,70,dd40c,1 -2022-05-01 10:04:38,2022-05-01 05:04:38,97.21999999999858,3700,70,dd40c,1 -2022-05-01 10:04:39,2022-05-01 05:04:39,97.20999999999857,3700,70,dd40c,1 -2022-05-01 10:04:40,2022-05-01 05:04:40,97.19999999999857,3700,70,dd40c,1 diff --git a/data-generator/CerebralCortexRandomDataGenerator b/data-generator/CerebralCortexRandomDataGenerator deleted file mode 160000 index fff6066..0000000 --- a/data-generator/CerebralCortexRandomDataGenerator +++ /dev/null @@ -1 +0,0 @@ -Subproject commit fff606625440374ca401a2b9a124545b811108fe diff --git a/data-generator/CerebralCortexRandomDataGenerator_old b/data-generator/CerebralCortexRandomDataGenerator_old deleted file mode 160000 index 044b2b3..0000000 --- a/data-generator/CerebralCortexRandomDataGenerator_old +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 044b2b3714c32ba6ac3087acf1eb91e6e5577f27 diff --git a/data-generator/battery_stream_name.csv b/data-generator/battery_stream_name.csv deleted file mode 100755 index b1787ab..0000000 --- a/data-generator/battery_stream_name.csv +++ /dev/null @@ -1,479 +0,0 @@ -timestamp localtime level voltage temperature -2019-01-09 17:35:00 2019-01-09 12:35:00 99.99 3700 70 -2019-01-09 17:35:01 2019-01-09 12:35:01 99.98 3700 70 -2019-01-09 17:35:02 2019-01-09 12:35:02 99.97 3700 70 -2019-01-09 17:35:03 2019-01-09 12:35:03 99.96 3700 70 -2019-01-09 17:35:04 2019-01-09 12:35:04 99.95 3700 70 -2019-01-09 17:35:05 2019-01-09 12:35:05 99.94 3700 70 -2019-01-09 17:35:06 2019-01-09 12:35:06 99.93 3700 70 -2019-01-09 17:35:07 2019-01-09 12:35:07 99.92 3700 70 -2019-01-09 17:35:08 2019-01-09 12:35:08 99.91 3700 70 -2019-01-09 17:35:09 2019-01-09 12:35:09 99.9 3700 70 -2019-01-09 17:35:10 2019-01-09 12:35:10 99.89 3700 70 -2019-01-09 17:35:11 2019-01-09 12:35:11 99.88 3700 70 -2019-01-09 17:35:12 2019-01-09 12:35:12 99.87 3700 70 -2019-01-09 17:35:13 2019-01-09 12:35:13 99.86 3700 70 -2019-01-09 17:35:14 2019-01-09 12:35:14 99.85 3700 70 -2019-01-09 17:35:15 2019-01-09 12:35:15 99.84 3700 70 -2019-01-09 17:35:16 2019-01-09 12:35:16 99.83 3700 70 -2019-01-09 17:35:17 2019-01-09 12:35:17 99.82 3700 70 -2019-01-09 17:35:18 2019-01-09 12:35:18 99.81 3700 70 -2019-01-09 17:35:19 2019-01-09 12:35:19 99.8 3700 70 -2019-01-09 17:35:20 2019-01-09 12:35:20 99.79 3700 70 -2019-01-09 17:35:21 2019-01-09 12:35:21 99.78 3700 70 -2019-01-09 17:35:22 2019-01-09 12:35:22 99.77 3700 70 -2019-01-09 17:35:23 2019-01-09 12:35:23 99.76 3700 70 -2019-01-09 17:35:24 2019-01-09 12:35:24 99.75 3700 70 -2019-01-09 17:35:25 2019-01-09 12:35:25 99.74 3700 70 -2019-01-09 17:35:26 2019-01-09 12:35:26 99.73 3700 70 -2019-01-09 17:35:27 2019-01-09 12:35:27 99.72 3700 70 -2019-01-09 17:35:28 2019-01-09 12:35:28 99.71 3700 70 -2019-01-09 17:35:29 2019-01-09 12:35:29 99.7 3700 70 -2019-01-09 17:35:30 2019-01-09 12:35:30 99.69 3700 70 -2019-01-09 17:35:31 2019-01-09 12:35:31 99.68 3700 70 -2019-01-09 17:35:32 2019-01-09 12:35:32 99.67 3700 70 -2019-01-09 17:35:33 2019-01-09 12:35:33 99.66 3700 70 -2019-01-09 17:35:34 2019-01-09 12:35:34 99.65 3700 70 -2019-01-09 17:35:35 2019-01-09 12:35:35 99.64 3700 70 -2019-01-09 17:35:36 2019-01-09 12:35:36 99.63 3700 70 -2019-01-09 17:35:37 2019-01-09 12:35:37 99.62 3700 70 -2019-01-09 17:35:38 2019-01-09 12:35:38 99.61 3700 70 -2019-01-09 17:35:39 2019-01-09 12:35:39 99.6 3700 70 -2019-01-09 17:35:40 2019-01-09 12:35:40 99.59 3700 70 -2019-01-09 17:35:41 2019-01-09 12:35:41 99.58 3700 70 -2019-01-09 17:35:42 2019-01-09 12:35:42 99.57 3700 70 -2019-01-09 17:35:43 2019-01-09 12:35:43 99.56 3700 70 -2019-01-09 17:35:44 2019-01-09 12:35:44 99.55 3700 70 -2019-01-09 17:35:45 2019-01-09 12:35:45 99.54 3700 70 -2019-01-09 17:35:46 2019-01-09 12:35:46 99.53 3700 70 -2019-01-09 17:35:47 2019-01-09 12:35:47 99.52 3700 70 -2019-01-09 17:35:48 2019-01-09 12:35:48 99.51 3700 70 -2019-01-09 17:35:49 2019-01-09 12:35:49 99.5 3700 70 -2019-01-09 17:35:50 2019-01-09 12:35:50 99.49 3700 70 -2019-01-09 17:35:51 2019-01-09 12:35:51 99.48 3700 70 -2019-01-09 17:35:52 2019-01-09 12:35:52 99.47 3700 70 -2019-01-09 17:35:53 2019-01-09 12:35:53 99.46 3700 70 -2019-01-09 17:35:54 2019-01-09 12:35:54 99.45 3700 70 -2019-01-09 17:35:55 2019-01-09 12:35:55 99.44 3700 70 -2019-01-09 17:35:56 2019-01-09 12:35:56 99.43 3700 70 -2019-01-09 17:35:57 2019-01-09 12:35:57 99.42 3700 70 -2019-01-09 17:35:58 2019-01-09 12:35:58 99.41 3700 70 -2019-01-09 17:35:59 2019-01-09 12:35:59 99.4 3700 70 -2019-01-09 17:36:00 2019-01-09 12:36:00 99.39 3700 70 -2019-01-09 17:36:01 2019-01-09 12:36:01 99.38 3700 70 -2019-01-09 17:36:02 2019-01-09 12:36:02 99.37 3700 70 -2019-01-09 17:36:03 2019-01-09 12:36:03 99.36 3700 70 -2019-01-09 17:36:04 2019-01-09 12:36:04 99.35 3700 70 -2019-01-09 17:36:05 2019-01-09 12:36:05 99.34 3700 70 -2019-01-09 17:36:06 2019-01-09 12:36:06 99.33 3700 70 -2019-01-09 17:36:07 2019-01-09 12:36:07 99.32 3700 70 -2019-01-09 17:36:08 2019-01-09 12:36:08 99.31 3700 70 -2019-01-09 17:36:09 2019-01-09 12:36:09 99.3 3700 70 -2019-01-09 17:36:10 2019-01-09 12:36:10 99.29 3700 70 -2019-01-09 17:36:11 2019-01-09 12:36:11 99.28 3700 70 -2019-01-09 17:36:12 2019-01-09 12:36:12 99.27 3700 70 -2019-01-09 17:36:13 2019-01-09 12:36:13 99.26 3700 70 -2019-01-09 17:36:14 2019-01-09 12:36:14 99.25 3700 70 -2019-01-09 17:36:15 2019-01-09 12:36:15 99.24 3700 70 -2019-01-09 17:36:16 2019-01-09 12:36:16 99.23 3700 70 -2019-01-09 17:36:17 2019-01-09 12:36:17 99.22 3700 70 -2019-01-09 17:36:18 2019-01-09 12:36:18 99.21 3700 70 -2019-01-09 17:36:19 2019-01-09 12:36:19 99.2 3700 70 -2019-01-09 17:36:20 2019-01-09 12:36:20 99.19 3700 70 -2019-01-09 17:36:21 2019-01-09 12:36:21 99.18 3700 70 -2019-01-09 17:36:22 2019-01-09 12:36:22 99.17 3700 70 -2019-01-09 17:36:23 2019-01-09 12:36:23 99.16 3700 70 -2019-01-09 17:36:24 2019-01-09 12:36:24 99.15 3700 70 -2019-01-09 17:36:25 2019-01-09 12:36:25 99.14 3700 70 -2019-01-09 17:36:26 2019-01-09 12:36:26 99.13 3700 70 -2019-01-09 17:36:27 2019-01-09 12:36:27 99.12 3700 70 -2019-01-09 17:36:28 2019-01-09 12:36:28 99.11 3700 70 -2019-01-09 17:36:29 2019-01-09 12:36:29 99.1 3700 70 -2019-01-09 17:36:30 2019-01-09 12:36:30 99.09 3700 70 -2019-01-09 17:36:31 2019-01-09 12:36:31 99.08 3700 70 -2019-01-09 17:36:32 2019-01-09 12:36:32 99.07 3700 70 -2019-01-09 17:36:33 2019-01-09 12:36:33 99.06 3700 70 -2019-01-09 17:36:34 2019-01-09 12:36:34 99.05 3700 70 -2019-01-09 17:36:35 2019-01-09 12:36:35 99.04 3700 70 -2019-01-09 17:36:36 2019-01-09 12:36:36 99.03 3700 70 -2019-01-09 17:36:37 2019-01-09 12:36:37 99.02 3700 70 -2019-01-09 17:36:38 2019-01-09 12:36:38 99.01 3700 70 -2019-01-09 17:36:39 2019-01-09 12:36:39 99 3700 70 -2019-01-09 17:36:40 2019-01-09 12:36:40 98.99 3700 70 -2019-01-09 17:36:41 2019-01-09 12:36:41 98.98 3700 70 -2019-01-09 17:36:42 2019-01-09 12:36:42 98.97 3700 70 -2019-01-09 17:36:43 2019-01-09 12:36:43 98.96 3700 70 -2019-01-09 17:36:44 2019-01-09 12:36:44 98.95 3700 70 -2019-01-09 17:36:45 2019-01-09 12:36:45 98.94 3700 70 -2019-01-09 17:36:46 2019-01-09 12:36:46 98.93 3700 70 -2019-01-09 17:36:47 2019-01-09 12:36:47 98.92 3700 70 -2019-01-09 17:36:48 2019-01-09 12:36:48 98.91 3700 70 -2019-01-09 17:36:49 2019-01-09 12:36:49 98.9 3700 70 -2019-01-09 17:36:50 2019-01-09 12:36:50 98.89 3700 70 -2019-01-09 17:36:51 2019-01-09 12:36:51 98.88 3700 70 -2019-01-09 17:36:52 2019-01-09 12:36:52 98.87 3700 70 -2019-01-09 17:36:53 2019-01-09 12:36:53 98.86 3700 70 -2019-01-09 17:36:54 2019-01-09 12:36:54 98.85 3700 70 -2019-01-09 17:36:55 2019-01-09 12:36:55 98.84 3700 70 -2019-01-09 17:36:56 2019-01-09 12:36:56 98.83 3700 70 -2019-01-09 17:36:57 2019-01-09 12:36:57 98.82 3700 70 -2019-01-09 17:36:58 2019-01-09 12:36:58 98.81 3700 70 -2019-01-09 17:36:59 2019-01-09 12:36:59 98.8 3700 70 -2019-01-09 17:37:00 2019-01-09 12:37:00 98.79 3700 70 -2019-01-09 17:37:01 2019-01-09 12:37:01 98.78 3700 70 -2019-01-09 17:37:02 2019-01-09 12:37:02 98.77 3700 70 -2019-01-09 17:37:03 2019-01-09 12:37:03 98.76 3700 70 -2019-01-09 17:37:04 2019-01-09 12:37:04 98.75 3700 70 -2019-01-09 17:37:05 2019-01-09 12:37:05 98.74 3700 70 -2019-01-09 17:37:06 2019-01-09 12:37:06 98.73 3700 70 -2019-01-09 17:37:07 2019-01-09 12:37:07 98.72 3700 70 -2019-01-09 17:37:08 2019-01-09 12:37:08 98.71 3700 70 -2019-01-09 17:37:09 2019-01-09 12:37:09 98.7 3700 70 -2019-01-09 17:37:10 2019-01-09 12:37:10 98.69 3700 70 -2019-01-09 17:37:11 2019-01-09 12:37:11 98.68 3700 70 -2019-01-09 17:37:12 2019-01-09 12:37:12 98.67 3700 70 -2019-01-09 17:37:13 2019-01-09 12:37:13 98.66 3700 70 -2019-01-09 17:37:14 2019-01-09 12:37:14 98.65 3700 70 -2019-01-09 17:37:15 2019-01-09 12:37:15 98.64 3700 70 -2019-01-09 17:37:16 2019-01-09 12:37:16 98.63 3700 70 -2019-01-09 17:37:17 2019-01-09 12:37:17 98.62 3700 70 -2019-01-09 17:37:18 2019-01-09 12:37:18 98.61 3700 70 -2019-01-09 17:37:19 2019-01-09 12:37:19 98.6 3700 70 -2019-01-09 17:37:20 2019-01-09 12:37:20 98.59 3700 70 -2019-01-09 17:37:21 2019-01-09 12:37:21 98.58 3700 70 -2019-01-09 17:37:22 2019-01-09 12:37:22 98.57 3700 70 -2019-01-09 17:37:23 2019-01-09 12:37:23 98.56 3700 70 -2019-01-09 17:37:24 2019-01-09 12:37:24 98.55 3700 70 -2019-01-09 17:37:25 2019-01-09 12:37:25 98.54 3700 70 -2019-01-09 17:37:26 2019-01-09 12:37:26 98.53 3700 70 -2019-01-09 17:37:27 2019-01-09 12:37:27 98.52 3700 70 -2019-01-09 17:37:28 2019-01-09 12:37:28 98.51 3700 70 -2019-01-09 17:37:29 2019-01-09 12:37:29 98.5 3700 70 -2019-01-09 17:37:30 2019-01-09 12:37:30 98.49 3700 70 -2019-01-09 17:37:31 2019-01-09 12:37:31 98.48 3700 70 -2019-01-09 17:37:32 2019-01-09 12:37:32 98.47 3700 70 -2019-01-09 17:37:33 2019-01-09 12:37:33 98.46 3700 70 -2019-01-09 17:37:34 2019-01-09 12:37:34 98.45 3700 70 -2019-01-09 17:37:35 2019-01-09 12:37:35 98.44 3700 70 -2019-01-09 17:37:36 2019-01-09 12:37:36 98.43 3700 70 -2019-01-09 17:37:37 2019-01-09 12:37:37 98.42 3700 70 -2019-01-09 17:37:38 2019-01-09 12:37:38 98.41 3700 70 -2019-01-09 17:37:39 2019-01-09 12:37:39 98.4 3700 70 -2019-01-09 17:37:40 2019-01-09 12:37:40 98.39 3700 70 -2019-01-09 17:37:41 2019-01-09 12:37:41 98.38 3700 70 -2019-01-09 17:37:42 2019-01-09 12:37:42 98.37 3700 70 -2019-01-09 17:37:43 2019-01-09 12:37:43 98.36 3700 70 -2019-01-09 17:37:44 2019-01-09 12:37:44 98.35 3700 70 -2019-01-09 17:37:45 2019-01-09 12:37:45 98.34 3700 70 -2019-01-09 17:37:46 2019-01-09 12:37:46 98.33 3700 70 -2019-01-09 17:37:47 2019-01-09 12:37:47 98.32 3700 70 -2019-01-09 17:37:48 2019-01-09 12:37:48 98.31 3700 70 -2019-01-09 17:37:49 2019-01-09 12:37:49 98.3 3700 70 -2019-01-09 17:37:50 2019-01-09 12:37:50 98.29 3700 70 -2019-01-09 17:37:51 2019-01-09 12:37:51 98.28 3700 70 -2019-01-09 17:37:52 2019-01-09 12:37:52 98.27 3700 70 -2019-01-09 17:37:53 2019-01-09 12:37:53 98.26 3700 70 -2019-01-09 17:37:54 2019-01-09 12:37:54 98.25 3700 70 -2019-01-09 17:37:55 2019-01-09 12:37:55 98.24 3700 70 -2019-01-09 17:37:56 2019-01-09 12:37:56 98.23 3700 70 -2019-01-09 17:37:57 2019-01-09 12:37:57 98.22 3700 70 -2019-01-09 17:37:58 2019-01-09 12:37:58 98.21 3700 70 -2019-01-09 17:37:59 2019-01-09 12:37:59 98.2 3700 70 -2019-01-09 17:38:00 2019-01-09 12:38:00 98.19 3700 70 -2019-01-09 17:38:01 2019-01-09 12:38:01 98.18 3700 70 -2019-01-09 17:38:02 2019-01-09 12:38:02 98.17 3700 70 -2019-01-09 17:38:03 2019-01-09 12:38:03 98.16 3700 70 -2019-01-09 17:38:04 2019-01-09 12:38:04 98.15 3700 70 -2019-01-09 17:38:05 2019-01-09 12:38:05 98.14 3700 70 -2019-01-09 17:38:06 2019-01-09 12:38:06 98.13 3700 70 -2019-01-09 17:38:07 2019-01-09 12:38:07 98.12 3700 70 -2019-01-09 17:38:08 2019-01-09 12:38:08 98.11 3700 70 -2019-01-09 17:38:09 2019-01-09 12:38:09 98.1 3700 70 -2019-01-09 17:38:10 2019-01-09 12:38:10 98.09 3700 70 -2019-01-09 17:38:11 2019-01-09 12:38:11 98.08 3700 70 -2019-01-09 17:38:12 2019-01-09 12:38:12 98.07 3700 70 -2019-01-09 17:38:13 2019-01-09 12:38:13 98.06 3700 70 -2019-01-09 17:38:14 2019-01-09 12:38:14 98.05 3700 70 -2019-01-09 17:38:15 2019-01-09 12:38:15 98.04 3700 70 -2019-01-09 17:38:16 2019-01-09 12:38:16 98.03 3700 70 -2019-01-09 17:38:17 2019-01-09 12:38:17 98.02 3700 70 -2019-01-09 17:38:18 2019-01-09 12:38:18 98.01 3700 70 -2019-01-09 17:38:19 2019-01-09 12:38:19 98 3700 70 -2019-01-09 17:38:20 2019-01-09 12:38:20 97.99 3700 70 -2019-01-09 17:38:21 2019-01-09 12:38:21 97.98 3700 70 -2019-01-09 17:38:22 2019-01-09 12:38:22 97.97 3700 70 -2019-01-09 17:38:23 2019-01-09 12:38:23 97.96 3700 70 -2019-01-09 17:38:24 2019-01-09 12:38:24 97.95 3700 70 -2019-01-09 17:38:25 2019-01-09 12:38:25 97.94 3700 70 -2019-01-09 17:38:26 2019-01-09 12:38:26 97.93 3700 70 -2019-01-09 17:38:27 2019-01-09 12:38:27 97.92 3700 70 -2019-01-09 17:38:28 2019-01-09 12:38:28 97.91 3700 70 -2019-01-09 17:38:29 2019-01-09 12:38:29 97.9 3700 70 -2019-01-09 17:38:30 2019-01-09 12:38:30 97.89 3700 70 -2019-01-09 17:38:31 2019-01-09 12:38:31 97.88 3700 70 -2019-01-09 17:38:32 2019-01-09 12:38:32 97.87 3700 70 -2019-01-09 17:38:33 2019-01-09 12:38:33 97.86 3700 70 -2019-01-09 17:38:34 2019-01-09 12:38:34 97.85 3700 70 -2019-01-09 17:38:35 2019-01-09 12:38:35 97.84 3700 70 -2019-01-09 17:38:36 2019-01-09 12:38:36 97.83 3700 70 -2019-01-09 17:38:37 2019-01-09 12:38:37 97.82 3700 70 -2019-01-09 17:38:38 2019-01-09 12:38:38 97.81 3700 70 -2019-01-09 17:38:39 2019-01-09 12:38:39 97.8 3700 70 -2019-01-09 17:38:40 2019-01-09 12:38:40 97.79 3700 70 -2019-01-09 17:38:41 2019-01-09 12:38:41 97.78 3700 70 -2019-01-09 17:38:42 2019-01-09 12:38:42 97.77 3700 70 -2019-01-09 17:38:43 2019-01-09 12:38:43 97.76 3700 70 -2019-01-09 17:38:44 2019-01-09 12:38:44 97.75 3700 70 -2019-01-09 17:38:45 2019-01-09 12:38:45 97.74 3700 70 -2019-01-09 17:38:46 2019-01-09 12:38:46 97.73 3700 70 -2019-01-09 17:38:47 2019-01-09 12:38:47 97.72 3700 70 -2019-01-09 17:38:48 2019-01-09 12:38:48 97.71 3700 70 -2019-01-09 17:38:49 2019-01-09 12:38:49 97.7 3700 70 -2019-01-09 17:38:50 2019-01-09 12:38:50 97.69 3700 70 -2019-01-09 17:38:51 2019-01-09 12:38:51 97.68 3700 70 -2019-01-09 17:38:52 2019-01-09 12:38:52 97.67 3700 70 -2019-01-09 17:38:53 2019-01-09 12:38:53 97.66 3700 70 -2019-01-09 17:38:54 2019-01-09 12:38:54 97.65 3700 70 -2019-01-09 17:38:55 2019-01-09 12:38:55 97.64 3700 70 -2019-01-09 17:38:56 2019-01-09 12:38:56 97.63 3700 70 -2019-01-09 17:38:57 2019-01-09 12:38:57 97.62 3700 70 -2019-01-09 17:38:58 2019-01-09 12:38:58 97.61 3700 70 -2019-01-09 17:38:59 2019-01-09 12:38:59 97.6 3700 70 -2019-01-09 17:39:00 2019-01-09 12:39:00 97.59 3700 70 -2019-01-09 17:39:01 2019-01-09 12:39:01 97.58 3700 70 -2019-01-09 17:39:02 2019-01-09 12:39:02 97.57 3700 70 -2019-01-09 17:39:03 2019-01-09 12:39:03 97.56 3700 70 -2019-01-09 17:39:04 2019-01-09 12:39:04 97.55 3700 70 -2019-01-09 17:39:05 2019-01-09 12:39:05 97.54 3700 70 -2019-01-09 17:39:06 2019-01-09 12:39:06 97.53 3700 70 -2019-01-09 17:39:07 2019-01-09 12:39:07 97.52 3700 70 -2019-01-09 17:39:08 2019-01-09 12:39:08 97.51 3700 70 -2019-01-09 17:39:09 2019-01-09 12:39:09 97.5 3700 70 -2019-01-09 17:39:10 2019-01-09 12:39:10 97.49 3700 70 -2019-01-09 17:39:11 2019-01-09 12:39:11 97.48 3700 70 -2019-01-09 17:39:12 2019-01-09 12:39:12 97.47 3700 70 -2019-01-09 17:39:13 2019-01-09 12:39:13 97.46 3700 70 -2019-01-09 17:39:14 2019-01-09 12:39:14 97.45 3700 70 -2019-01-09 17:39:15 2019-01-09 12:39:15 97.44 3700 70 -2019-01-09 17:39:16 2019-01-09 12:39:16 97.43 3700 70 -2019-01-09 17:39:17 2019-01-09 12:39:17 97.42 3700 70 -2019-01-09 17:39:18 2019-01-09 12:39:18 97.41 3700 70 -2019-01-09 17:39:19 2019-01-09 12:39:19 97.4 3700 70 -2019-01-09 17:39:20 2019-01-09 12:39:20 97.39 3700 70 -2019-01-09 17:39:21 2019-01-09 12:39:21 97.38 3700 70 -2019-01-09 17:39:22 2019-01-09 12:39:22 97.37 3700 70 -2019-01-09 17:39:23 2019-01-09 12:39:23 97.36 3700 70 -2019-01-09 17:39:24 2019-01-09 12:39:24 97.35 3700 70 -2019-01-09 17:39:25 2019-01-09 12:39:25 97.34 3700 70 -2019-01-09 17:39:26 2019-01-09 12:39:26 97.33 3700 70 -2019-01-09 17:39:27 2019-01-09 12:39:27 97.32 3700 70 -2019-01-09 17:39:28 2019-01-09 12:39:28 97.31 3700 70 -2019-01-09 17:39:29 2019-01-09 12:39:29 97.3 3700 70 -2019-01-09 17:39:30 2019-01-09 12:39:30 97.29 3700 70 -2019-01-09 17:39:31 2019-01-09 12:39:31 97.28 3700 70 -2019-01-09 17:39:32 2019-01-09 12:39:32 97.27 3700 70 -2019-01-09 17:39:33 2019-01-09 12:39:33 97.26 3700 70 -2019-01-09 17:39:34 2019-01-09 12:39:34 97.25 3700 70 -2019-01-09 17:39:35 2019-01-09 12:39:35 97.24 3700 70 -2019-01-09 17:39:36 2019-01-09 12:39:36 97.23 3700 70 -2019-01-09 17:39:37 2019-01-09 12:39:37 97.22 3700 70 -2019-01-09 17:39:38 2019-01-09 12:39:38 97.21 3700 70 -2019-01-09 17:39:39 2019-01-09 12:39:39 97.2 3700 70 -2019-01-09 17:39:40 2019-01-09 12:39:40 97.19 3700 70 -2019-01-09 17:39:41 2019-01-09 12:39:41 97.18 3700 70 -2019-01-09 17:39:42 2019-01-09 12:39:42 97.17 3700 70 -2019-01-09 17:39:43 2019-01-09 12:39:43 97.16 3700 70 -2019-01-09 17:39:44 2019-01-09 12:39:44 97.15 3700 70 -2019-01-09 17:39:45 2019-01-09 12:39:45 97.14 3700 70 -2019-01-09 17:39:46 2019-01-09 12:39:46 97.13 3700 70 -2019-01-09 17:39:47 2019-01-09 12:39:47 97.12 3700 70 -2019-01-09 17:39:48 2019-01-09 12:39:48 97.11 3700 70 -2019-01-09 17:39:49 2019-01-09 12:39:49 97.1 3700 70 -2019-01-09 17:39:50 2019-01-09 12:39:50 97.09 3700 70 -2019-01-09 17:39:51 2019-01-09 12:39:51 97.08 3700 70 -2019-01-09 17:39:52 2019-01-09 12:39:52 97.07 3700 70 -2019-01-09 17:39:53 2019-01-09 12:39:53 97.06 3700 70 -2019-01-09 17:39:54 2019-01-09 12:39:54 97.05 3700 70 -2019-01-09 17:39:55 2019-01-09 12:39:55 97.04 3700 70 -2019-01-09 17:39:56 2019-01-09 12:39:56 97.03 3700 70 -2019-01-09 17:39:57 2019-01-09 12:39:57 97.02 3700 70 -2019-01-09 17:39:58 2019-01-09 12:39:58 97.01 3700 70 -2019-01-09 17:39:59 2019-01-09 12:39:59 97 3700 70 -2019-01-09 17:40:00 2019-01-09 12:40:00 96.99 3700 70 -2019-01-09 17:40:01 2019-01-09 12:40:01 96.98 3700 70 -2019-01-09 17:40:02 2019-01-09 12:40:02 96.97 3700 70 -2019-01-09 17:40:03 2019-01-09 12:40:03 96.96 3700 70 -2019-01-09 17:40:04 2019-01-09 12:40:04 96.95 3700 70 -2019-01-09 17:40:05 2019-01-09 12:40:05 96.94 3700 70 -2019-01-09 17:40:06 2019-01-09 12:40:06 96.93 3700 70 -2019-01-09 17:40:07 2019-01-09 12:40:07 96.92 3700 70 -2019-01-09 17:40:08 2019-01-09 12:40:08 96.91 3700 70 -2019-01-09 17:40:09 2019-01-09 12:40:09 96.9 3700 70 -2019-01-09 17:40:10 2019-01-09 12:40:10 96.89 3700 70 -2019-01-09 17:40:11 2019-01-09 12:40:11 96.88 3700 70 -2019-01-09 17:40:12 2019-01-09 12:40:12 96.87 3700 70 -2019-01-09 17:40:13 2019-01-09 12:40:13 96.86 3700 70 -2019-01-09 17:40:14 2019-01-09 12:40:14 96.85 3700 70 -2019-01-09 17:40:15 2019-01-09 12:40:15 96.84 3700 70 -2019-01-09 17:40:16 2019-01-09 12:40:16 96.83 3700 70 -2019-01-09 17:40:17 2019-01-09 12:40:17 96.82 3700 70 -2019-01-09 17:40:18 2019-01-09 12:40:18 96.81 3700 70 -2019-01-09 17:40:19 2019-01-09 12:40:19 96.8 3700 70 -2019-01-09 17:40:20 2019-01-09 12:40:20 96.79 3700 70 -2019-01-09 17:40:21 2019-01-09 12:40:21 96.78 3700 70 -2019-01-09 17:40:22 2019-01-09 12:40:22 96.77 3700 70 -2019-01-09 17:40:23 2019-01-09 12:40:23 96.76 3700 70 -2019-01-09 17:40:24 2019-01-09 12:40:24 96.75 3700 70 -2019-01-09 17:40:25 2019-01-09 12:40:25 96.74 3700 70 -2019-01-09 17:40:26 2019-01-09 12:40:26 96.73 3700 70 -2019-01-09 17:40:27 2019-01-09 12:40:27 96.72 3700 70 -2019-01-09 17:40:28 2019-01-09 12:40:28 96.71 3700 70 -2019-01-09 17:40:29 2019-01-09 12:40:29 96.7 3700 70 -2019-01-09 17:40:30 2019-01-09 12:40:30 96.69 3700 70 -2019-01-09 17:40:31 2019-01-09 12:40:31 96.68 3700 70 -2019-01-09 17:40:32 2019-01-09 12:40:32 96.67 3700 70 -2019-01-09 17:40:33 2019-01-09 12:40:33 96.66 3700 70 -2019-01-09 17:40:34 2019-01-09 12:40:34 96.65 3700 70 -2019-01-09 17:40:35 2019-01-09 12:40:35 96.64 3700 70 -2019-01-09 17:40:36 2019-01-09 12:40:36 96.63 3700 70 -2019-01-09 17:40:37 2019-01-09 12:40:37 96.62 3700 70 -2019-01-09 17:40:38 2019-01-09 12:40:38 96.61 3700 70 -2019-01-09 17:40:39 2019-01-09 12:40:39 96.6 3700 70 -2019-01-09 17:40:40 2019-01-09 12:40:40 96.59 3700 70 -2019-01-09 17:40:41 2019-01-09 12:40:41 96.58 3700 70 -2019-01-09 17:40:42 2019-01-09 12:40:42 96.57 3700 70 -2019-01-09 17:40:43 2019-01-09 12:40:43 96.56 3700 70 -2019-01-09 17:40:44 2019-01-09 12:40:44 96.55 3700 70 -2019-01-09 17:40:45 2019-01-09 12:40:45 96.54 3700 70 -2019-01-09 17:40:46 2019-01-09 12:40:46 96.53 3700 70 -2019-01-09 17:40:47 2019-01-09 12:40:47 96.52 3700 70 -2019-01-09 17:40:48 2019-01-09 12:40:48 96.51 3700 70 -2019-01-09 17:40:49 2019-01-09 12:40:49 96.5 3700 70 -2019-01-09 17:40:50 2019-01-09 12:40:50 96.49 3700 70 -2019-01-09 17:40:51 2019-01-09 12:40:51 96.48 3700 70 -2019-01-09 17:40:52 2019-01-09 12:40:52 96.47 3700 70 -2019-01-09 17:40:53 2019-01-09 12:40:53 96.46 3700 70 -2019-01-09 17:40:54 2019-01-09 12:40:54 96.45 3700 70 -2019-01-09 17:40:55 2019-01-09 12:40:55 96.44 3700 70 -2019-01-09 17:40:56 2019-01-09 12:40:56 96.43 3700 70 -2019-01-09 17:40:57 2019-01-09 12:40:57 96.42 3700 70 -2019-01-09 17:40:58 2019-01-09 12:40:58 96.41 3700 70 -2019-01-09 17:40:59 2019-01-09 12:40:59 96.4 3700 70 -2019-01-09 17:41:00 2019-01-09 12:41:00 96.39 3700 70 -2019-01-09 17:41:01 2019-01-09 12:41:01 96.38 3700 70 -2019-01-09 17:41:02 2019-01-09 12:41:02 96.37 3700 70 -2019-01-09 17:41:03 2019-01-09 12:41:03 96.36 3700 70 -2019-01-09 17:41:04 2019-01-09 12:41:04 96.35 3700 70 -2019-01-09 17:41:05 2019-01-09 12:41:05 96.34 3700 70 -2019-01-09 17:41:06 2019-01-09 12:41:06 96.33 3700 70 -2019-01-09 17:41:07 2019-01-09 12:41:07 96.32 3700 70 -2019-01-09 17:41:08 2019-01-09 12:41:08 96.31 3700 70 -2019-01-09 17:41:09 2019-01-09 12:41:09 96.3 3700 70 -2019-01-09 17:41:10 2019-01-09 12:41:10 96.29 3700 70 -2019-01-09 17:41:11 2019-01-09 12:41:11 96.28 3700 70 -2019-01-09 17:41:12 2019-01-09 12:41:12 96.27 3700 70 -2019-01-09 17:41:13 2019-01-09 12:41:13 96.26 3700 70 -2019-01-09 17:41:14 2019-01-09 12:41:14 96.25 3700 70 -2019-01-09 17:41:15 2019-01-09 12:41:15 96.24 3700 70 -2019-01-09 17:41:16 2019-01-09 12:41:16 96.23 3700 70 -2019-01-09 17:41:17 2019-01-09 12:41:17 96.22 3700 70 -2019-01-09 17:41:18 2019-01-09 12:41:18 96.21 3700 70 -2019-01-09 17:41:19 2019-01-09 12:41:19 96.2 3700 70 -2019-01-09 17:41:20 2019-01-09 12:41:20 96.19 3700 70 -2019-01-09 17:41:21 2019-01-09 12:41:21 96.18 3700 70 -2019-01-09 17:41:22 2019-01-09 12:41:22 96.17 3700 70 -2019-01-09 17:41:23 2019-01-09 12:41:23 96.16 3700 70 -2019-01-09 17:41:24 2019-01-09 12:41:24 96.15 3700 70 -2019-01-09 17:41:25 2019-01-09 12:41:25 96.14 3700 70 -2019-01-09 17:41:26 2019-01-09 12:41:26 96.13 3700 70 -2019-01-09 17:41:27 2019-01-09 12:41:27 96.12 3700 70 -2019-01-09 17:41:28 2019-01-09 12:41:28 96.11 3700 70 -2019-01-09 17:41:29 2019-01-09 12:41:29 96.1 3700 70 -2019-01-09 17:41:30 2019-01-09 12:41:30 96.09 3700 70 -2019-01-09 17:41:31 2019-01-09 12:41:31 96.08 3700 70 -2019-01-09 17:41:32 2019-01-09 12:41:32 96.07 3700 70 -2019-01-09 17:41:33 2019-01-09 12:41:33 96.06 3700 70 -2019-01-09 17:41:34 2019-01-09 12:41:34 96.05 3700 70 -2019-01-09 17:41:35 2019-01-09 12:41:35 96.04 3700 70 -2019-01-09 17:41:36 2019-01-09 12:41:36 96.03 3700 70 -2019-01-09 17:41:37 2019-01-09 12:41:37 96.02 3700 70 -2019-01-09 17:41:38 2019-01-09 12:41:38 96.01 3700 70 -2019-01-09 17:41:39 2019-01-09 12:41:39 96 3700 70 -2019-01-09 17:41:40 2019-01-09 12:41:40 95.99 3700 70 -2019-01-09 17:41:41 2019-01-09 12:41:41 95.98 3700 70 -2019-01-09 17:41:42 2019-01-09 12:41:42 95.97 3700 70 -2019-01-09 17:41:43 2019-01-09 12:41:43 95.96 3700 70 -2019-01-09 17:41:44 2019-01-09 12:41:44 95.95 3700 70 -2019-01-09 17:41:45 2019-01-09 12:41:45 95.94 3700 70 -2019-01-09 17:41:46 2019-01-09 12:41:46 95.93 3700 70 -2019-01-09 17:41:47 2019-01-09 12:41:47 95.92 3700 70 -2019-01-09 17:41:48 2019-01-09 12:41:48 95.91 3700 70 -2019-01-09 17:41:49 2019-01-09 12:41:49 95.9 3700 70 -2019-01-09 17:41:50 2019-01-09 12:41:50 95.89 3700 70 -2019-01-09 17:41:51 2019-01-09 12:41:51 95.88 3700 70 -2019-01-09 17:41:52 2019-01-09 12:41:52 95.87 3700 70 -2019-01-09 17:41:53 2019-01-09 12:41:53 95.86 3700 70 -2019-01-09 17:41:54 2019-01-09 12:41:54 95.85 3700 70 -2019-01-09 17:41:55 2019-01-09 12:41:55 95.84 3700 70 -2019-01-09 17:41:56 2019-01-09 12:41:56 95.83 3700 70 -2019-01-09 17:41:57 2019-01-09 12:41:57 95.82 3700 70 -2019-01-09 17:41:58 2019-01-09 12:41:58 95.81 3700 70 -2019-01-09 17:41:59 2019-01-09 12:41:59 95.8 3700 70 -2019-01-09 17:42:00 2019-01-09 12:42:00 95.79 3700 70 -2019-01-09 17:42:01 2019-01-09 12:42:01 95.78 3700 70 -2019-01-09 17:42:02 2019-01-09 12:42:02 95.77 3700 70 -2019-01-09 17:42:03 2019-01-09 12:42:03 95.76 3700 70 -2019-01-09 17:42:04 2019-01-09 12:42:04 95.75 3700 70 -2019-01-09 17:42:05 2019-01-09 12:42:05 95.74 3700 70 -2019-01-09 17:42:06 2019-01-09 12:42:06 95.73 3700 70 -2019-01-09 17:42:07 2019-01-09 12:42:07 95.72 3700 70 -2019-01-09 17:42:08 2019-01-09 12:42:08 95.71 3700 70 -2019-01-09 17:42:09 2019-01-09 12:42:09 95.7 3700 70 -2019-01-09 17:42:10 2019-01-09 12:42:10 95.69 3700 70 -2019-01-09 17:42:11 2019-01-09 12:42:11 95.68 3700 70 -2019-01-09 17:42:12 2019-01-09 12:42:12 95.67 3700 70 -2019-01-09 17:42:13 2019-01-09 12:42:13 95.66 3700 70 -2019-01-09 17:42:14 2019-01-09 12:42:14 95.65 3700 70 -2019-01-09 17:42:15 2019-01-09 12:42:15 95.64 3700 70 -2019-01-09 17:42:16 2019-01-09 12:42:16 95.63 3700 70 -2019-01-09 17:42:17 2019-01-09 12:42:17 95.62 3700 70 -2019-01-09 17:42:18 2019-01-09 12:42:18 95.61 3700 70 -2019-01-09 17:42:19 2019-01-09 12:42:19 95.6 3700 70 -2019-01-09 17:42:20 2019-01-09 12:42:20 95.59 3700 70 -2019-01-09 17:42:21 2019-01-09 12:42:21 95.58 3700 70 -2019-01-09 17:42:22 2019-01-09 12:42:22 95.57 3700 70 -2019-01-09 17:42:23 2019-01-09 12:42:23 95.56 3700 70 -2019-01-09 17:42:24 2019-01-09 12:42:24 95.55 3700 70 -2019-01-09 17:42:25 2019-01-09 12:42:25 95.54 3700 70 -2019-01-09 17:42:26 2019-01-09 12:42:26 95.53 3700 70 -2019-01-09 17:42:27 2019-01-09 12:42:27 95.52 3700 70 -2019-01-09 17:42:28 2019-01-09 12:42:28 95.51 3700 70 -2019-01-09 17:42:29 2019-01-09 12:42:29 95.5 3700 70 -2019-01-09 17:42:30 2019-01-09 12:42:30 95.49 3700 70 -2019-01-09 17:42:31 2019-01-09 12:42:31 95.48 3700 70 -2019-01-09 17:42:32 2019-01-09 12:42:32 95.47 3700 70 -2019-01-09 17:42:33 2019-01-09 12:42:33 95.46 3700 70 -2019-01-09 17:42:34 2019-01-09 12:42:34 95.45 3700 70 -2019-01-09 17:42:35 2019-01-09 12:42:35 95.44 3700 70 -2019-01-09 17:42:36 2019-01-09 12:42:36 95.43 3700 70 -2019-01-09 17:42:37 2019-01-09 12:42:37 95.42 3700 70 -2019-01-09 17:42:38 2019-01-09 12:42:38 95.41 3700 70 -2019-01-09 17:42:39 2019-01-09 12:42:39 95.4 3700 70 -2019-01-09 17:42:40 2019-01-09 12:42:40 95.39 3700 70 -2019-01-09 17:42:41 2019-01-09 12:42:41 95.38 3700 70 -2019-01-09 17:42:42 2019-01-09 12:42:42 95.37 3700 70 -2019-01-09 17:42:43 2019-01-09 12:42:43 95.36 3700 70 -2019-01-09 17:42:44 2019-01-09 12:42:44 95.35 3700 70 -2019-01-09 17:42:45 2019-01-09 12:42:45 95.34 3700 70 -2019-01-09 17:42:46 2019-01-09 12:42:46 95.33 3700 70 -2019-01-09 17:42:47 2019-01-09 12:42:47 95.32 3700 70 -2019-01-09 17:42:48 2019-01-09 12:42:48 95.31 3700 70 -2019-01-09 17:42:49 2019-01-09 12:42:49 95.3 3700 70 -2019-01-09 17:42:50 2019-01-09 12:42:50 95.29 3700 70 -2019-01-09 17:42:51 2019-01-09 12:42:51 95.28 3700 70 -2019-01-09 17:42:52 2019-01-09 12:42:52 95.27 3700 70 -2019-01-09 17:42:53 2019-01-09 12:42:53 95.26 3700 70 -2019-01-09 17:42:54 2019-01-09 12:42:54 95.25 3700 70 -2019-01-09 17:42:550 2019-01-09 12:42:55 95.24 3700 70 -2019-01-09 17:42:560 2019-01-09 12:42:56 95.23 3700 70 -2019-01-09 17:42:507 2019-01-09 12:42:57 95.22 3700 70 \ No newline at end of file diff --git a/data-generator/generator.py b/data-generator/generator.py index 6ed4d0a..ba8da4e 100644 --- a/data-generator/generator.py +++ b/data-generator/generator.py @@ -1,61 +1,61 @@ -from CerebralCortexRandomDataGenerator.ccrdg.battery_data import gen_battery_data -from CerebralCortexRandomDataGenerator.ccrdg.accel_gyro_data import gen_accel_gyro_data -from CerebralCortexRandomDataGenerator.ccrdg.location_data import gen_location_data - -import argparse -from cerebralcortex.kernel import Kernel - -import datetime - - -def get_cc(start_time='2022-05-08 21:08:10', end_time='2022-05-08 21:08:10'): - curr_datetime = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S') - parser = argparse.ArgumentParser(description='CerebralCortex Random Data Generator.') - parser.add_argument("-uid", "--user_id", help="UUID of a user. Default UUID of a user is dd40c", default="dd40c") - parser.add_argument("-sn", "--study_name", help="Name of the study. Default is mguard.", default="mguard") - parser.add_argument("-st", "--start_time", - help="Start time of data. Input format is '2022-05-08 21:08:10', '%Y-%m-%d %H:%M:%S'", - default=curr_datetime) - parser.add_argument("-et", "--end_time", - help="End time of data. Input format is '2022-05-08 21:08:10', '%Y-%m-%d %H:%M:%S'", - default=curr_datetime) - - args = vars(parser.parse_args()) - - study_name = str(args["study_name"]).strip() - user_id = str(args["user_id"]).strip() - print(start_time, end_time) - start_time = datetime.datetime.strptime(start_time, '%Y-%m-%d %H:%M:%S') - end_time = datetime.datetime.strptime(end_time, '%Y-%m-%d %H:%M:%S') - - # convert the no of minutes to hours for gps and semantic location data - new_hour = end_time.minute - new_minute = end_time.second - new_hour - end_time_gps = end_time + datetime.timedelta(hours=new_hour, minutes=new_minute) - datetime.timedelta(seconds=end_time.second) - - - cc = Kernel(cc_configs="default", study_name=study_name, new_study=True) - - battery_stream_name = "ndn--org--md2k--{}--{}--phone--battery".format(study_name, user_id) - gps_stream_name = "ndn--org--md2k--{}--{}--phone--gps".format(study_name, user_id) - semantic_location_stream_name = "ndn--org--md2k--{}--{}--data_analysis--gps_episodes_and_semantic_location".format( - study_name, user_id) - accel_stream_name = "ndn--org--md2k--{}--{}--phone--accelerometer".format(study_name, user_id) - gyro_stream_name = "ndn--org--md2k--{}--{}--phone--gyroscope".format(study_name, user_id) - - gen_battery_data(cc, study_name=study_name, user_id=user_id, stream_name=battery_stream_name, start_time=start_time, - end_time=end_time) - gen_location_data(cc, study_name=study_name, user_id=user_id, gps_stream_name=gps_stream_name, - location_stream_name=semantic_location_stream_name, start_time=start_time, end_time=end_time_gps) - # gen_accel_gyro_data(cc, study_name=study_name, user_id=user_id, stream_name=accel_stream_name, - # start_time=start_time, end_time=end_time) - # gen_accel_gyro_data(cc, study_name=study_name, user_id=user_id, stream_name=gyro_stream_name, start_time=start_time, - # end_time=end_time) - - return cc, { - 'semantic_location': semantic_location_stream_name, - 'battery': battery_stream_name, - # 'accel': accel_stream_name, - # 'gyro': gyro_stream_name, - 'gps': gps_stream_name +from CerebralCortexRandomDataGenerator.ccrdg.battery_data import gen_battery_data +from CerebralCortexRandomDataGenerator.ccrdg.accel_gyro_data import gen_accel_gyro_data +from CerebralCortexRandomDataGenerator.ccrdg.location_data import gen_location_data + +import argparse +from cerebralcortex.kernel import Kernel + +import datetime + + +def get_cc(start_time='2022-05-08 21:08:10', end_time='2022-05-08 21:08:10'): + curr_datetime = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S') + parser = argparse.ArgumentParser(description='CerebralCortex Random Data Generator.') + parser.add_argument("-uid", "--user_id", help="UUID of a user. Default UUID of a user is dd40c", default="dd40c") + parser.add_argument("-sn", "--study_name", help="Name of the study. Default is mguard.", default="mguard") + parser.add_argument("-st", "--start_time", + help="Start time of data. Input format is '2022-05-08 21:08:10', '%Y-%m-%d %H:%M:%S'", + default=curr_datetime) + parser.add_argument("-et", "--end_time", + help="End time of data. Input format is '2022-05-08 21:08:10', '%Y-%m-%d %H:%M:%S'", + default=curr_datetime) + + args = vars(parser.parse_args()) + + study_name = str(args["study_name"]).strip() + user_id = str(args["user_id"]).strip() + print(start_time, end_time) + start_time = datetime.datetime.strptime(start_time, '%Y-%m-%d %H:%M:%S') + end_time = datetime.datetime.strptime(end_time, '%Y-%m-%d %H:%M:%S') + + # convert the no of minutes to hours for gps and semantic location data + new_hour = end_time.minute + new_minute = end_time.second - new_hour + end_time_gps = end_time + datetime.timedelta(hours=new_hour, minutes=new_minute) - datetime.timedelta(seconds=end_time.second) + + + cc = Kernel(cc_configs="default", study_name=study_name, new_study=True) + + battery_stream_name = "ndn--org--md2k--{}--{}--phone--battery".format(study_name, user_id) + gps_stream_name = "ndn--org--md2k--{}--{}--phone--gps".format(study_name, user_id) + semantic_location_stream_name = "ndn--org--md2k--{}--{}--data_analysis--gps_episodes_and_semantic_location".format( + study_name, user_id) + accel_stream_name = "ndn--org--md2k--{}--{}--phone--accelerometer".format(study_name, user_id) + gyro_stream_name = "ndn--org--md2k--{}--{}--phone--gyroscope".format(study_name, user_id) + + gen_battery_data(cc, study_name=study_name, user_id=user_id, stream_name=battery_stream_name, start_time=start_time, + end_time=end_time) + gen_location_data(cc, study_name=study_name, user_id=user_id, gps_stream_name=gps_stream_name, + location_stream_name=semantic_location_stream_name, start_time=start_time, end_time=end_time_gps) + # gen_accel_gyro_data(cc, study_name=study_name, user_id=user_id, stream_name=accel_stream_name, + # start_time=start_time, end_time=end_time) + # gen_accel_gyro_data(cc, study_name=study_name, user_id=user_id, stream_name=gyro_stream_name, start_time=start_time, + # end_time=end_time) + + return cc, { + 'semantic_location': semantic_location_stream_name, + 'battery': battery_stream_name, + # 'accel': accel_stream_name, + # 'gyro': gyro_stream_name, + 'gps': gps_stream_name } \ No newline at end of file diff --git a/data-generator/main.py b/data-generator/main.py index 81eafab..e39638a 100644 --- a/data-generator/main.py +++ b/data-generator/main.py @@ -1,111 +1,111 @@ -from generator import get_cc - -import socket -from time import sleep -import sys -import os -import json -import shutil - -# sleep X seconds after sending each bath, configure as per need -s_after_sending_batch = 20 - -class Sender: - def __init__(self, port): - self.conn = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - self.conn.connect(('localhost', port)) - - def send(self, payload): - self.conn.send(payload.encode('utf-8')) - - def close(self): - self.conn.close() - -def get_sender(): - port = 8808 - print('Sender initialize') - sender = Sender(port) - return sender - -def send_stream(data_to_send, sender_obj): - - serialize_data = json.dumps(data_to_send) - - ack = '' - while not ack: - sender_obj.conn.send(serialize_data.encode()) - ack = sender_obj.conn.recv(1024).decode() - - print("From server: ", ack) - sender_obj.conn.close() - -def main(): - ''' - Wrapper code for data generation and transport to producer via socket - :var: total_number_of_batches int number of times we will generate the data and send it - ''' - total_number_of_batches = 3 - current_batch = 1 - - while current_batch <= total_number_of_batches: - # removing the old stream data if exists - try: - shutil.rmtree(os.environ['HOME'] + '/cc_data/') - except FileNotFoundError: - print('No existing data to be deleted') - - start_time = '1993-05-0{} 10:00:00'.format(current_batch) - #10 - end_time = '1993-05-0{} 10:0:11'.format(current_batch) - #50 - end_time = '1993-05-0{} 10:0:50'.format(current_batch) - #100 - # end_time = '2022-05-0{} 10:01:41'.format(current_batch) - # 150 - # end_time = '2022-05-0{} 10:02:31'.format(current_batch) - # 200 - # end_time = '2022-05-0{} 10:03:21'.format(current_batch) - # 250 - # end_time = '2022-05-0{} 10:04:11'.format(current_batch) - # 300 - # end_time = '2022-05-0{} 10:05:01'.format(current_batch) - # 350 - # end_time = '2022-05-0{} 10:05:51'.format(current_batch) - # 400 - # end_time = '2022-05-0{} 10:06:41'.format(current_batch) - # 500 - # end_time = '2022-05-0{} 10:08:21'.format(current_batch) - - print("Fetching data for start_time {} and end_time {}".format(start_time, end_time)) - cc_obj, streams = get_cc(start_time, end_time) - - for stream in streams: - stream_name = streams[stream] - - metadata = cc_obj.get_stream_metadata_by_name(stream_name).to_json() - - payload = cc_obj.get_stream(stream_name).toPandas() - data_to_send = {'header': metadata, 'payload': payload.to_csv()} - - # uncomment for debugging - # data1 = data - # data1.to_csv(str(current_batch) + '_' + stream_name, index=False) - - print("Sending data for stream name {}".format(stream_name)) - print("Metadata of the stream {} = {}".format(stream_name, metadata)) - - sender_obj = get_sender() - send_stream(data_to_send, sender_obj) - - sleep(2) - - print("Sending data for batch: {}, completed".format(current_batch)) - current_batch += 1 - - print("Sleeping for {} second sending batch data".format(s_after_sending_batch)) - sleep(s_after_sending_batch) - - print ("Sending data for all the batch completed") - -if __name__ == '__main__': +from generator import get_cc + +import socket +from time import sleep +import sys +import os +import json +import shutil + +# sleep X seconds after sending each bath, configure as per need +s_after_sending_batch = 20 + +class Sender: + def __init__(self, port): + self.conn = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + self.conn.connect(('localhost', port)) + + def send(self, payload): + self.conn.send(payload.encode('utf-8')) + + def close(self): + self.conn.close() + +def get_sender(): + port = 8808 + print('Sender initialize') + sender = Sender(port) + return sender + +def send_stream(data_to_send, sender_obj): + + serialize_data = json.dumps(data_to_send) + + ack = '' + while not ack: + sender_obj.conn.send(serialize_data.encode()) + ack = sender_obj.conn.recv(1024).decode() + + print("From server: ", ack) + sender_obj.conn.close() + +def main(): + ''' + Wrapper code for data generation and transport to producer via socket + :var: total_number_of_batches int number of times we will generate the data and send it + ''' + total_number_of_batches = 3 + current_batch = 1 + + while current_batch <= total_number_of_batches: + # removing the old stream data if exists + try: + shutil.rmtree(os.environ['HOME'] + '/cc_data/') + except FileNotFoundError: + print('No existing data to be deleted') + + start_time = '1993-05-0{} 10:00:00'.format(current_batch) + #10 + end_time = '1993-05-0{} 10:0:11'.format(current_batch) + #50 + end_time = '1993-05-0{} 10:0:50'.format(current_batch) + #100 + # end_time = '2022-05-0{} 10:01:41'.format(current_batch) + # 150 + # end_time = '2022-05-0{} 10:02:31'.format(current_batch) + # 200 + # end_time = '2022-05-0{} 10:03:21'.format(current_batch) + # 250 + # end_time = '2022-05-0{} 10:04:11'.format(current_batch) + # 300 + # end_time = '2022-05-0{} 10:05:01'.format(current_batch) + # 350 + # end_time = '2022-05-0{} 10:05:51'.format(current_batch) + # 400 + # end_time = '2022-05-0{} 10:06:41'.format(current_batch) + # 500 + # end_time = '2022-05-0{} 10:08:21'.format(current_batch) + + print("Fetching data for start_time {} and end_time {}".format(start_time, end_time)) + cc_obj, streams = get_cc(start_time, end_time) + + for stream in streams: + stream_name = streams[stream] + + metadata = cc_obj.get_stream_metadata_by_name(stream_name).to_json() + + payload = cc_obj.get_stream(stream_name).toPandas() + data_to_send = {'header': metadata, 'payload': payload.to_csv()} + + # uncomment for debugging + # data1 = data + # data1.to_csv(str(current_batch) + '_' + stream_name, index=False) + + print("Sending data for stream name {}".format(stream_name)) + print("Metadata of the stream {} = {}".format(stream_name, metadata)) + + sender_obj = get_sender() + send_stream(data_to_send, sender_obj) + + sleep(2) + + print("Sending data for batch: {}, completed".format(current_batch)) + current_batch += 1 + + print("Sleeping for {} second sending batch data".format(s_after_sending_batch)) + sleep(s_after_sending_batch) + + print ("Sending data for all the batch completed") + +if __name__ == '__main__': main() \ No newline at end of file diff --git a/data-generator/old_main.py b/data-generator/old_main.py new file mode 100644 index 0000000..b9246fe --- /dev/null +++ b/data-generator/old_main.py @@ -0,0 +1,46 @@ +import datetime + +from ccrdg.battery_data import gen_battery_data +from ccrdg.accel_gyro_data import gen_accel_gyro_data +from ccrdg.location_data import gen_location_data#gen_location_datastream, gen_semantic_location_datastream +import argparse +from cerebralcortex.kernel import Kernel + + +def run(): + parser = argparse.ArgumentParser(description='CerebralCortex Random Data Generator.') + parser.add_argument("-uid", "--user_id", help="UUID of a user. Defaul UUID of a user is 00000000-e19c-3956-9db2-5459ccadd40c", default="00000000-e19c-3956-9db2-5459ccadd40c") + parser.add_argument("-sn", "--study_name", help="Name of the study. Default is mguard.", default="mguard") + parser.add_argument("-st", "--start_time", help="Start time of data. Input format is '2022-05-08 21:08:10', '%Y-%m-%d %H:%M:%S'",default=datetime.datetime.now()) + parser.add_argument("-et", "--end_time", help="End time of data. Input format is '2022-05-08 21:08:10', '%Y-%m-%d %H:%M:%S'",default=datetime.datetime.now()) + + + + + args = vars(parser.parse_args()) + + study_name = str(args["study_name"]).strip() + user_id = str(args["user_id"]).strip() + start_time = datetime.datetime.strptime(args["start_time"], '%Y-%m-%d %H:%M:%S') + end_time = datetime.datetime.strptime(args["end_time"], '%Y-%m-%d %H:%M:%S') + + + + CC = Kernel(cc_configs="default", study_name=study_name, new_study=True) + + + battery_stream_name = "org.md2k--{}--{}--battery--phone".format(study_name,user_id) + gps_stream_name = "org.md2k--{}--{}--gps--phone".format(study_name,user_id) + semantic_location_stream_name = "org.md2k--{}--{}--data_analysis--gps_episodes_and_semantic_location".format(study_name,user_id) + accel_stream_name = "org.md2k.phonesensor--{}--{}--accelerometer--phone".format(study_name,user_id) + gyro_stream_name = "org.md2k.phonesensor--{}--{}--gyroscope--phone".format(study_name,user_id) + + + gen_location_data(CC, study_name=study_name, user_id=user_id, gps_stream_name=gps_stream_name, location_stream_name=semantic_location_stream_name, start_time=start_time, end_time=end_time) + + gen_battery_data(CC, study_name=study_name, user_id=user_id, stream_name=battery_stream_name, start_time=start_time, end_time=end_time) + gen_accel_gyro_data(CC, study_name=study_name, user_id=user_id, stream_name=accel_stream_name, start_time=start_time, end_time=end_time) + gen_accel_gyro_data(CC, study_name=study_name, user_id=user_id, stream_name=gyro_stream_name, start_time=start_time, end_time=end_time) + +if __name__ == "__main__": + run() \ No newline at end of file diff --git a/data/org-md2k-mguard-dd40c-phone-gps.csv b/data/org-md2k-mguard-dd40c-phone-gps.csv deleted file mode 100644 index be8172c..0000000 --- a/data/org-md2k-mguard-dd40c-phone-gps.csv +++ /dev/null @@ -1,5 +0,0 @@ -timestamp,localtime,latitude,longitude,altitude,speed,bearing,accuracy,user -2019-09-01 16:40:59,2019-09-01 21:40:59,35.16469085,-90.00852654,88,4.132139,147.415856,23.365826, -2019-09-01 16:43:59,2019-09-01 21:43:59,35.16531218,-90.00891728,86,1.794506,24.945611,16.492118, -2019-09-01 16:52:59,2019-09-01 21:52:59,35.16406762,-90.00730429,93,4.524904,315.913603,14.629894, -2019-09-01 16:57:59,2019-09-01 21:57:59,35.16374127,-90.00804133,91,4.426964,277.499131,20.834382, \ No newline at end of file diff --git a/lookup.db b/lookup.db new file mode 100644 index 0000000..ee3e106 Binary files /dev/null and b/lookup.db differ diff --git a/policies/policy1 b/policies/policy1 index 89bb75b..5f2c9a6 100644 --- a/policies/policy1 +++ b/policies/policy1 @@ -1,12 +1,12 @@ ; brief: A shall access all the streams under org.md2k policy-id 1 -requester-names /ndn/org/md2k/A,/ndn/org/md2k/B,/ndn/org/md2k/C,/ndn/org/md2k/D,/ndn/org/md2k/E ;if needed, we can have ',' separated list e.g. A, B, C +requester-names /ndn/org/md2k/A attribute-filters { allow { - /ndn/org/md2k/ + /ndn/org/md2k/mguard/dd40c/phone/gps } } diff --git a/quick_install.sh b/quick_install.sh index 46b8f6a..8c71043 100755 --- a/quick_install.sh +++ b/quick_install.sh @@ -17,6 +17,8 @@ ndnsec sign-req /ndn/org/md2k/A > A.ndncsr ndnsec cert-gen -s /ndn/org/md2k -i /ndn/org/md2k A.ndncsr > A.cert +sudo cp /usr/local/etc/ndn/nfd.conf.sample /usr/local/etc/ndn/nfd.conf + cp A.cert certs/ ndnsec cert-install A.cert @@ -26,5 +28,5 @@ git clone https://github.com/MD2Korg/CerebralCortex-Random-Data-Generator mv CerebralCortex-Random-Data-Generator CerebralCortexRandomDataGenerator pip install findspark pip install cerebralcortex-kernel -sudo apt install default-jdk +sudo apt -y install default-jdk cd .. diff --git a/runner.sh b/runner.sh index c372f99..b8d4e1d 100755 --- a/runner.sh +++ b/runner.sh @@ -1,45 +1,68 @@ -export NDN_LOG=mguard.*=DEBUG:nacabe.*=DEBUG - - -rm debugg/* - -sleep 2 +echo "set mguard and nacabe logs to debug" +export NDN_LOG=ndn.security.*=DEBUG:mguard.*=DEBUG:nacabe.*=DEBUG +echo "reset debug logs" +rm -rf debug +mkdir debug sudo ldconfig #sudo pkill -f -e -c mguard +echo "killall controller" sudo killall mguard-controllerApp +echo "killall producer" sudo killall mguard-producerApp - +echo "killall repo" sudo killall ndn-python-repo +echo "nfdc erase" nfdc cs erase /ndn/org/md2k +echo "nfdstop" nfd-stop -sleep 2 +sleep 5 +echo "delete repo" rm -rf ~/.ndn/ndn-python-repo/sqlite3.db -nfd-start &>/dev/null +echo "delete certs" +ndnsec delete /ndn/org/md2k +ndnsec delete /ndn/org/md2k/local +ndnsec delete /ndn/org/md2k/mguard +ndnsec delete /ndn/org/md2k/mguard/aa +ndnsec delete /ndn/org/md2k/mguard/controller + +echo "create certs" +#cd certs && ./create_default_certs.sh -a && cd .. +cd certs && ./create_certs.sh -a && cd .. +rm -rf ../consoomer/cmake-build-debug/certs && cp -r certs ../consoomer/cmake-build-debug/ +#cd certs && bash create_default_certs.sh && cd .. + +echo "start nfd" +sudo nfd-start &>/dev/null -sleep 1 +sleep 5 -ndn-python-repo -c ndn-python-repo.conf > debugg/repo.log 2>&1 & +echo "start repo" +ndn-python-repo -c ndn-python-repo.conf > debug/repo.log 2>&1 & -sleep 1 +sleep 5 -mguard-controllerApp > debugg/controller.log 2>&1 & +echo "start controller" +mguard-controllerApp > debug/controller.log 2>&1 & -sleep 1 +sleep 5 # valgrind --leak-check=full --log-file=valgrind-out.txt ./build/examples/mguard-producerApp > debugging/p.log 2>&1 & -mguard-producerApp > debugg/producer.log 2>&1 & +echo "start producer" +mguard-producerApp > debug/producer.log 2>&1 & -sleep 1 +sleep 7 -python data-generator/main.py > debugg/generator.log 2>&1 & +echo "run data generator" +python data-generator/CerebralCortex-Random-Data-Generator/main.py > debug/generator.log 2>&1 & -sleep 0.1 +sleep 5 -# mguard-consumerApp -c certs/local.cert -p /ndn/org/md2k/local > debugg/consumer.log 2>&1 & +echo "run consumer" +mguard-consumerApp -c certs/local.cert -p /ndn/org/md2k/local > debug/consumer.log 2>&1 & diff --git a/safebag/A.sb b/safebag/A.sb deleted file mode 100644 index b4df079..0000000 --- a/safebag/A.sb +++ /dev/null @@ -1,43 +0,0 @@ -gP0ICQb9AtAHMwgDbmRuCANvcmcIBG1kMmsIAUEIA0tFWQgI+GXx7iC358oIBWxv -Y2FsNggAAAGAytOsrBQJGAECGQQANu6AFf0BJjCCASIwDQYJKoZIhvcNAQEBBQAD -ggEPADCCAQoCggEBALco7ugXsQ1B5yU5TUgSv7HW0Xsn34eun48oeV7RoXxHCdg0 -dP5ND6dJKWmDv6zMqfSrOp2/LXfg5s3V2sJ2X0JHYofmkG89hSHALwn/WU2k3bn3 -z+wWS0wbtIj42nc9+/Yv+h2Re0XhS49tyBoplnMPFmkh1KmEeBnJRNEt1fc3nJYi -Z3WDYDHg7aB72SxXoU33GgCjZa/0ZJa9dvjkl4aYBf3h+Aj/9L0eD2DTyByGjGyH -IsbiqS8CMWTVX7sJQC3kM9X/ff+EI+G52Ho637hpcUpZYqqoIR0dHayl/ddwHUY9 -J+hWSiuTWUfMaoSuPSdCRdI6veEUCowjbn+CO3UCAwEAARZgGwEBHDEHLwgDbmRu -CANvcmcIBG1kMmsIA0tFWQgIx1ssh10/vLoIBHNlbGY2CAAAAYDI1nP//QD9Jv0A -/g8yMDIyMDUxNlQwMzA1MTL9AP8PMjAyMzA1MTZUMDMwNTExF/0BAMDTMeB3DSSZ -tP3YpEu6aFypOKNAmNyDV+p01xoESpMQ0wBcXxD6oYcF0gc3gXWm3Mup3tI71qOw -fBOYGpQKxJ0/yU6lFBq1Zb6JDYvSvOHnlks/ImR+xAa+tEq5Xtz/TaKc1Oth0Jz3 -+SDRSvf8iKe6Pt+sPo6UVGux2zDYE4F5e3tc5m0xTF6USUL2W1Lh/Qed23hHI4Ik -HfnIh1jUEKBXMHd/zaQh3BTviaUCPYBBV3YAtOQ8imd/bIPOEgdPIsSmzEjbabCr -tLClTc8SqR7JeltgokRDr5E8Zwpol3SWJWEouWoFVCnMxKZfX0cSXR8zevMsX2tg -S0C1mrwDhV6B/QUxMIIFLTBXBgkqhkiG9w0BBQ0wSjApBgkqhkiG9w0BBQwwHAQI -8VfMLJB+H50CAggAMAwGCCqGSIb3DQIJBQAwHQYJYIZIAWUDBAEqBBAU/uSbXGoj -MXYRzGn9sAw8BIIE0Iv0Ehwg7Rpcf9nClwmHv0gEWi6Eh7+DTYy1V7t+9mN5meMi -YC4usQt7UKaqk//x1PRQLe51PntBleHWNZiMybCEwkJVcZktGbjrOxAzEwIZpdxp -xrp2PRzzjG7h9W8SCR4ugfaPpFpQ0I7Z04M9vmZ4fuItVO0lt6tDvP8QfwhGrReM -o99BFyPlStP+lGYavncYFHY04hj7Diw4jAJosy2RNzUsOBjaA/SHsrEaLnGGUvjI -E4ZZwmONyYVCzbYRD1QGp5pVWPA7P7CHxAx8b2iZNuPlLlNXFl4/h2vpFhJ+336S -V5vCKzvMiHkKLTVfLIkOT4SxsJH3LnGNkQbe1nrhfhdZIMZKQuhc8bkJYhHT6kCl -5N4bZ/BjBWgrf1V4FyvfpxzY/iurDd8Do/QXXnuzglG6xrS++3for/AZcvIScC4f -tfUBCSNdu10CH/RsukDvOwtTLo0plRfvbb/EfxhajqPq1A7vjknknFrSLOq8mPvR -8nVP6gX4EbEBbjLtEqr1vrFf3OsayqnXYxucU6I0i7pXHOfdG0hraS8wNMzckopj -e1LZ6yxMbedXla3oKoJNzk1dY6QBGJCkjCxlZnbIT0tzk5UY4itt4I7XVPkz8XLO -s2uvmL5HEZX3WWAfa4k0Obke2/lTA4KCEsn/DbHmEqr7U8Guxo8QFgCLhDHKPCWi -R8LvrHHQQ13NnFeM2k9PLmcMXOe2SCCNtzG66EE+C206Mm176Qw0Q+zClZ2Pt2/4 -UvtbOxWDt3t/AObguoA/LCkcgDn2XduYbUxw/j7gEw9CYEojMkfbD0/267atkoJf -EHy7uyte+D6JI36oUcaYWZ8OajXh8aKNV39KDbnrrUUCMdAP8BSUNqkK3fRe6Uti -SvGVI+bnqCfKmzGCVz6zk168ZtLmPzhdpkkDXxq4OOCo1OUdmO7j+RElZXJItVT0 -TanMrY9sxz2g4XVfBifeeuUVi7Pq2iqPemfQeVfIjVeL66J+mTekSDIjlq66BYk6 -DIlmcPQ82tSigtb2Sclz11Uo1TGeU+E2a1lotXn4UojFOzGn60Ipmm/iVrp+NAQb -lfQ8Pdt0qZZ2/yhlL0Vuu2+fBuW8bKUv0+grRYhy/CGk3PIYYj9HrBaiu7xEOaQV -eE7QKzJjD6Dv84oUH1TFmuLz3BEK9JbTc2uw3qNm/hDTSeKrKKPpnBElmlm1jkKL -UlCLy/Ycz20Sl3m4nmh7XOY9iYmX7kzdGva8+rsZqz+uWjNWoPJvinR0rlLLOhC2 -Qz3VJWOjJ3dI7G0F4Z2Xn2Mt/i3d4MtJ2pKIUrmmtPVmNO3s2qhr1oIJW/gBFBxz -K2yUOeCozNsKiXMz7MgeHUkFuQkX6S09yjmj1KJ/8Iu2SZE8iHUPPpaxAriRfZvg -ZGiTAZRX8aA3qOZsg5qQicLoZZn4Yi2/UPsXH9rLy2xfrPBxg08yU3VRZ4HtfLbn -3hymUUm+nkjoN1eDDZ12k5QzueX+UF3AdYAh0v1qqV5mC8o+XOkR74isHQgGFpuG -Me6JkOmUClL3EYJbZIwa+mNEZDWjlt9FGAxLfzO5o52t+luuB1004ipOC7HMTRQz -yozZ1h6drOC6LFppNOJpe/4eSN0T8WYW3F30GeHXcWAPL5yl1tJo/KqNob8d diff --git a/safebag/B.sb b/safebag/B.sb deleted file mode 100644 index 47b40ca..0000000 --- a/safebag/B.sb +++ /dev/null @@ -1,43 +0,0 @@ -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 diff --git a/safebag/C.sb b/safebag/C.sb deleted file mode 100644 index ad8fe8b..0000000 --- a/safebag/C.sb +++ /dev/null @@ -1,43 +0,0 @@ -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 diff --git a/safebag/D.sb b/safebag/D.sb deleted file mode 100644 index e2a4992..0000000 --- a/safebag/D.sb +++ /dev/null @@ -1,43 +0,0 @@ -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 diff --git a/safebag/E.sb b/safebag/E.sb deleted file mode 100644 index 640e7c2..0000000 --- a/safebag/E.sb +++ /dev/null @@ -1,43 +0,0 @@ -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 diff --git a/safebag/aa.sb b/safebag/aa.sb deleted file mode 100644 index 7c631f1..0000000 --- a/safebag/aa.sb +++ /dev/null @@ -1,44 +0,0 @@ -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 -Bk0Z7TGg diff --git a/safebag/controller.sb b/safebag/controller.sb deleted file mode 100644 index dceae6d..0000000 --- a/safebag/controller.sb +++ /dev/null @@ -1,44 +0,0 @@ -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 -bHSM3Cp8hgGmcRy3gkk= diff --git a/safebag/producer.sb b/safebag/producer.sb deleted file mode 100644 index 68e0980..0000000 --- a/safebag/producer.sb +++ /dev/null @@ -1,43 +0,0 @@ -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 -KFqn7uHHpiscfZu8YsDIUYOeK1kKyBhBQg== diff --git a/sandbox/sandbox.cpp b/sandbox/sandbox.cpp deleted file mode 100644 index 8ef23fd..0000000 --- a/sandbox/sandbox.cpp +++ /dev/null @@ -1,151 +0,0 @@ -#include "iostream" -#include "../src/server/util/name-tree.cpp" -#include "../src/controller/parser.cpp" -#include "map" - -void testParser() { - mguard::parser::PolicyParser p("../policies/available_streams"); - mguard::parser::PolicyDetail a = p.parsePolicy("../policies/policy1"); - - // policy id - std::cout << "policy id:" << std::endl; - std::cout << "\t" << a.policyIdentifier << std::endl; - - // requesters - std::cout << "requesters:" << std::endl; - for (const auto &requester: a.requesters) { - std::cout << "\t" << requester << std::endl; - } - - // streams - std::cout << "streams:" << std::endl; - for (const auto &stream: a.streams) { - std::cout << "\t" << stream << std::endl; - } - - // abe policy - std::cout << "abe policy:" << std::endl; - std::cout << "\t" << a.abePolicy << std::endl; -} - -using NameTree = mguard::util::nametree::NameTree; -void testNametree() { - NameTree nameTree; - - auto leaves = {"/else/ndn/org/md2k/mguard/dd40c/phone/accelerometer", "/else/ndn/org/md2k/mguard/dd40c/data_analysis/gps_episodes_and_semantic_location", "/else/ndn/org/md2k/mguard/dd40c/phone/gyroscope", "/else/ndn/org/md2k/mguard/dd40c/phone/battery", "/else/ndn/org/md2k/mguard/dd40c/phone/gps", "/else/five/ndn/org/md2k/mguard/dd40c/phone/accelerometer", "/else/five/ndn/org/md2k/mguard/dd40c/data_analysis/gps_episodes_and_semantic_location", "/else/five/ndn/org/md2k/mguard/dd40c/phone/gyroscope", "/else/ndn/five/org/md2k/mguard/dd40c/phone/battery", "/else/ndn/five/org/five/md2k/mguard/dd40c/phone/gps", "/else/ndn/four/org/md2k/five/mguard/dd40c/phone/accelerometer", "/else/ndn/four/org/md2k/mguard/five/dd40c/data_analysis/gps_episodes_and_semantic_location", "/else/ndn/four/org/md2k/mguard/dd40c/phone/gyroscope", "/ndn/four/org/md2k/mguard/dd40c/phone/battery", "/ndn/four/org/md2k/mguard/dd40c/phone/gps", "/else/else/something/ndn/org/md2k/ATTRIBUTE/activity/unknown", "/else/else/something/ndn/org/md2k/ATTRIBUTE/location/home", "/else/else/something/ndn/org/md2k/ATTRIBUTE/location/work", "/else/else/something/ndn/org/md2k/ATTRIBUTE/location/commuting", "/else/else/something/ndn/org/md2k/ATTRIBUTE/location/casino", "/else/else/something/ndn/org/md2k/ATTRIBUTE/location/oakland", "/else/else/something/ndn/org/md2k/ATTRIBUTE/location/SoCal", "/else/else/something/ndn/org/md2k/ATTRIBUTE/location/gym", "/else/else/something/ndn/org/md2k/ATTRIBUTE/location/shopping-mall", "/else/else/something/ndn/org/md2k/ATTRIBUTE/location/unknown", "/else/else/something/ndn/org/md2k/ATTRIBUTE/smoking/yes", "/else/else/something/ndn/org/md2k/ATTRIBUTE/smoking/no", "/else/else/something/ndn/org/md2k/ATTRIBUTE/activity/walking", "/else/else/something/ndn/org/md2k/ATTRIBUTE/activity/running", "/else/else/something/ndn/org/md2k/ATTRIBUTE/activity/eating", "/else/else/something/ndn/org/md2k/ATTRIBUTE/activity/drinking", "/else/else/something/ndn/org/md2k/ATTRIBUTE/activity/sleeping", "/something/something"}; - - - for (const auto &leaf : leaves) { - nameTree.insertName(leaf); - } -// -// std::vector denied = {"/ndn/org/md2k/ATTRIBUTE/smoking/no", "/ndn/org/md2k/ATTRIBUTE/location/home"}; -// -//// fixme: how to determine whether it was found -//// auto deniedNode = attStreamsTree.getNode(attStreamsTree.getTreeRoot(), denied); -// auto a = attStreamsTree.getLeaves("/ndn/org/md2k/", denied); -// for (const auto &item: a) { -// std::cout << item << std::endl; -// } - -// ndn::Name b = "ATTRIBUTE"; - auto a = nameTree.getNode(nameTree.getTreeRoot(), "/else/ndn/org/md2k/mguard/dd40c/phone/accelerometer"); -// nameTree._printTree(nameTree.getTreeRoot()); - std::cout << (a == nullptr) << std::endl; -} - -//NameTree -//subtract(NameTree aye, NameTree bee){ -// auto leaves = bee.getLeaves() -//} - -void printOutties(std::map>>> outties, std::string stream) { - std::cout << stream << ":" << std::endl; - std::cout << "\tallowed streams\t" << std::endl; - for (const auto& item : outties[stream]["allowed"]["stream"]) { - std::cout << "\t\t" << item << std::endl; - } - std::cout << "\tallowed attributes" << std::endl; - for (const auto& item : outties[stream]["allowed"]["attribute"]) { - std::cout << "\t\t" << item << std::endl; - } - std::cout << "\tdenied streams" << std::endl; - for (const auto& item : outties[stream]["denied"]["stream"]) { - std::cout << "\t\t" << item << std::endl; - } - std::cout << "\tdenied attributes" << std::endl; - for (const auto& item : outties[stream]["denied"]["attribute"]) { - std::cout << "\t\t" << item << std::endl; - } - std::cout << std::endl; -} - -void additionalParser() { - std::map> map; - for (const auto thing : {"/activity/running", "/activity/walking", "/activity/undefined", "/location/home", "/location/gym", "/location/work", "/location/undefined"}) { - map["/org/prefix-a/"].push_back(thing); - } - - for (const auto thing : {"/smoking/yes", "/smoking/no"}) { - map["/org/prefix-b/"].push_back(thing); - } - - for (const auto thing : {"/location/home", "/location/gym", "/location/work", "/location/undefined", "/smoking/yes", "/smoking/no"}) { - map["/org/prefix-c/"].push_back(thing); - } - - std::list allow = {"/org/prefix-a/", "/org/prefix-b/", "/activity/walking"}; - std::list deny = {"/location/home"}; - - // outties[stream][allowed][attribute/stream] - std::map>>> outties; - - for (const auto &thing: map) { - std::string stream = thing.first; - std::list attributes = thing.second; - - for (const auto &filter: allow) { - // check if it matches the thing[0] (stream) - if (stream.find(filter) == 0) { - std::cout << stream << "\t" << filter << std::endl; - outties[stream]["allowed"]["stream"].push_back(filter); - } else if (std::find(attributes.begin(), attributes.end(), filter) != std::end(attributes)) { - outties[stream]["allowed"]["attribute"].push_back(filter); - } - // check if it matches the thing[1] (attribute) - } - for (const auto &filter: deny) { - // check if it matches the thing[0] (stream) - if (stream.find(filter) == 0) { - std::cout << stream << "\t" << filter << std::endl; - outties[stream]["denied"]["stream"].push_back(filter); - } else if (std::find(attributes.begin(), attributes.end(), filter) != std::end(attributes)) { - outties[stream]["denied"]["attribute"].push_back(filter); - } - } - } - - printOutties(outties, "/org/prefix-a/"); - printOutties(outties, "/org/prefix-b/"); -} - -std::pair getCurrentDay(int currentTime) { - int days = currentTime / 86400; - int startDay = days * 86400; - int endDay = startDay + 86400; - return {startDay, endDay}; -} - - -std::vector subtraction(std::vector a, std::vector b) { - // does a - b - std::vector out; - std::sort(a.begin(), a.end()); - return out; -} - -int main(){ - std::cout << "sandbox run:" << std::endl; - testParser(); - return 0; -} diff --git a/src/controller/controller.cpp b/src/controller/controller.cpp index 2e112e2..ce930f4 100644 --- a/src/controller/controller.cpp +++ b/src/controller/controller.cpp @@ -52,14 +52,32 @@ Controller::Controller(const ndn::Name& controllerPrefix, auto certName = ndn::security::extractIdentityFromCertName(m_controllerCert.getName()); NDN_LOG_INFO("Setting interest filter on name: " << certName); - m_certServeHandle = m_face.setInterestFilter(ndn::InterestFilter(certName).allowLoopback(false), + m_face.setInterestFilter(ndn::InterestFilter(certName).allowLoopback(false), [this] (auto&&...) { m_face.put(this->m_controllerCert); }, std::bind(&Controller::onRegistrationSuccess, this, _1), std::bind(&Controller::onRegistrationFailed, this, _1)); + auto aaCert = *loadCert(aaCertPath); + auto aaName = ndn::security::extractIdentityFromCertName(aaCert.getName()); + NDN_LOG_INFO("Setting interest filter on name: " << aaName); + m_face.setInterestFilter(ndn::InterestFilter(aaName).allowLoopback(false), + [aaCert, this](auto&&...) { + m_face.put(aaCert); + }, + std::bind(&Controller::onRegistrationSuccess, this, _1), + std::bind(&Controller::onRegistrationFailed, this, _1) + ); auto policyName = m_controllerPrefix; setInterestFilter(policyName.append("POLICYDATA")); +// +// for (const auto &item: m_requestersCertPath) { +// auto certPath = item.second; +// auto cert = *loadCert(certPath); +// auto id = m_keyChain.getPib().getIdentity(cert.getIdentity()); +// auto key = id.getKey(cert.getKeyName()); +// m_keyChain.addCertificate(key, cert); +// } } void diff --git a/src/server/data-adapter.cpp b/src/server/data-adapter.cpp index 71c7a9e..882bcba 100644 --- a/src/server/data-adapter.cpp +++ b/src/server/data-adapter.cpp @@ -106,7 +106,7 @@ ConnectionHandler::writeHandle(const boost::system::error_code& err, size_t byte } Receiver::Receiver(boost::asio::io_service& io_service, const Callback& callbackFromReceiver) -: acceptor_(io_service, tcp::endpoint(tcp::v4(), 8808)) +: acceptor_(io_service, tcp::endpoint(tcp::v4(), 15000)) , m_onReceiveDataFromController(callbackFromReceiver) { startAccept(); @@ -191,6 +191,7 @@ DataAdapter::processCallbackFromReceiver(const std::string& streamName, const st } auto streamNDNName = std::regex_replace(streamName, std::regex("--"), "/"); // convert to ndn name + NDN_LOG_DEBUG( "publishing data unit " << streamNDNName << " meta: " << metaData << " content: " << streamContent ); publishDataUnit(streamNDNName, metaData, content); } diff --git a/src/server/publisher.cpp b/src/server/publisher.cpp index 1ba4c9c..ae42bb7 100644 --- a/src/server/publisher.cpp +++ b/src/server/publisher.cpp @@ -45,8 +45,9 @@ Publisher::Publisher(ndn::Face& face, ndn::security::KeyChain& keyChain, , m_producerPrefix(producerPrefix) , m_producerCert(producerCert) , m_authorityCert(attrAuthorityCertificate) -, m_abe_producer(m_face, m_keyChain, m_producerCert, m_authorityCert) +, m_abe_producer(m_face, m_keyChain, m_validator, m_producerCert, m_authorityCert) { + m_validator.load("certs/trust-schema.conf"); auto certName = ndn::security::extractIdentityFromCertName(m_producerCert.getName()); NDN_LOG_INFO("Setting interest filter on name: " << certName); diff --git a/src/server/publisher.hpp b/src/server/publisher.hpp index c0e6a97..4277ba2 100644 --- a/src/server/publisher.hpp +++ b/src/server/publisher.hpp @@ -120,6 +120,7 @@ class Publisher ndn::Name m_producerPrefix; ndn::security::Certificate m_producerCert; ndn::security::Certificate m_authorityCert; + ndn::ValidatorConfig m_validator{m_face}; ndn::nacabe::CacheProducer m_abe_producer; std::vector m_ckBuffer; diff --git a/src/server/util/name-tree.cpp b/src/server/util/name-tree.cpp index b912661..bdff61e 100644 --- a/src/server/util/name-tree.cpp +++ b/src/server/util/name-tree.cpp @@ -18,16 +18,8 @@ */ #include "name-tree.hpp" -#include "../../common.hpp" -#include - -#include -#include - -namespace mguard{ -namespace util { -namespace nametree { +namespace mguard::util::nametree { NDN_LOG_INIT(mguard.nametree); @@ -76,7 +68,7 @@ NameTree::createNode(std::string nodeId, const ndn::Name& fullName) return parent_node; } -ndn::optional +std::optional NameTree::getNode(TreeNode* startFrom, ndn::Name name) { auto info = getLongestMatchedName(startFrom, name); @@ -257,6 +249,4 @@ NameTree::_printTree(TreeNode* startFrom) } } -} // nametree -} // util } // mguard \ No newline at end of file diff --git a/src/server/util/name-tree.hpp b/src/server/util/name-tree.hpp index 3cf1228..d0ead3f 100644 --- a/src/server/util/name-tree.hpp +++ b/src/server/util/name-tree.hpp @@ -22,7 +22,7 @@ #define MGUARD_UTIL_NAMETREE_HPP #include -#include +#include namespace mguard { namespace util { @@ -75,7 +75,7 @@ class NameTree * @param startFrom node pointer, starting node of the getNode * @param name name prefix to getNode for */ - ndn::optional + std::optional getNode(TreeNode* startFrom, ndn::Name name); /** @@ -119,7 +119,7 @@ class NameTree findNode(std::vector children, ndn::Name& target); private: - TreeNode* + static TreeNode* createNode(std::string nodeId, const ndn::Name& fullName); void diff --git a/src/user/subscriber.cpp b/src/user/subscriber.cpp index 6a69e49..8a03e3c 100644 --- a/src/user/subscriber.cpp +++ b/src/user/subscriber.cpp @@ -45,7 +45,7 @@ Subscriber::Subscriber(const ndn::Name& consumerPrefix, const ndn::Name& syncPre , m_syncPrefix(syncPrefix) , m_controllerPrefix(controllerPrefix) -, m_abe_consumer(m_face, m_keyChain, *loadCert(consumerCertPath), *loadCert(aaCertPath)) +, m_abe_consumer(m_face, m_keyChain, m_validator, *loadCert(consumerCertPath), *loadCert(aaCertPath)) , m_psync_consumer(m_syncPrefix, m_face, std::bind(&Subscriber::receivedHelloData, this, _1), @@ -56,6 +56,14 @@ Subscriber::Subscriber(const ndn::Name& consumerPrefix, const ndn::Name& syncPre , m_ApplicationDataCallback(callback) , m_subCallback(subCallback) { +// auto a = *loadCert(consumerCertPath); +// auto certName = ndn::security::extractIdentityFromCertName(a.getName()); +// m_face.setInterestFilter(ndn::InterestFilter(certName).allowLoopback(false), +// [this, a] (auto&&...) { +// m_face.put(a); +// }, +// nullptr, +// nullptr); m_psync_consumer.sendHelloInterest(); m_validator.load("certs/trust-schema.conf"); // loadCert("certs/producer.cert"); // need this ?? diff --git a/src/user/subscriber.hpp b/src/user/subscriber.hpp index 3bfb0d3..df87432 100644 --- a/src/user/subscriber.hpp +++ b/src/user/subscriber.hpp @@ -20,6 +20,8 @@ #ifndef MGUARD_SUBSCRIBER_HPP #define MGUARD_SUBSCRIBER_HPP +#include "../common.hpp" + #include #include #include @@ -52,12 +54,6 @@ namespace subscriber { namespace tlv { } -class Error : public std::runtime_error -{ -public: - using std::runtime_error::runtime_error; -}; - class Subscriber { public: @@ -239,7 +235,7 @@ class Subscriber ndn::security::KeyChain m_keyChain; ndn::Scheduler m_scheduler; std::thread m_face_thread; - ndn::security::ValidatorConfig m_validator; + ndn::ValidatorConfig m_validator; ndn::Name m_consumerPrefix; ndn::Name m_syncPrefix; diff --git a/test.db b/test.db new file mode 100644 index 0000000..f7ce848 Binary files /dev/null and b/test.db differ diff --git a/tests/identity-management-fixture.cpp b/tests/identity-management-fixture.cpp index 2640df1..4ec02ee 100644 --- a/tests/identity-management-fixture.cpp +++ b/tests/identity-management-fixture.cpp @@ -20,14 +20,11 @@ */ #include "identity-management-fixture.hpp" -#include -#include -#include namespace ndn { namespace tests { -namespace v2 = security::v2; +namespace v2 = security; IdentityManagementBaseFixture::~IdentityManagementBaseFixture() { diff --git a/tests/identity-management-fixture.hpp b/tests/identity-management-fixture.hpp index 14439f2..c0809e6 100644 --- a/tests/identity-management-fixture.hpp +++ b/tests/identity-management-fixture.hpp @@ -24,6 +24,9 @@ #include #include +#include +#include +#include #include namespace ndn { diff --git a/tests/unit-tests/data-adapter.t.cpp b/tests/unit-tests/data-adapter.t.cpp index 94c9a7c..fafa6aa 100644 --- a/tests/unit-tests/data-adapter.t.cpp +++ b/tests/unit-tests/data-adapter.t.cpp @@ -1,4 +1,4 @@ -#include "test-common.hpp" +#include "../test-common.hpp" #include #include @@ -48,7 +48,7 @@ BOOST_AUTO_TEST_CASE(Constructor) std::string timestamp = "20190901113459"; std::string userID = "dd40c"; // // this gets the semantic location attributes - auto locations = db.getSemanticLocations(timestamp, userID); + auto locations = db.getSemanticLocations(timestamp); // // this prints them for (auto &location: locations) { std::cout << location << std::endl;