Merge branch 'master' of gitlab.com:wolutator/homepage
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
*~
|
1
dist/main.js
vendored
@ -35,6 +35,7 @@ let masterTmpl;
|
||||
let toc;
|
||||
let cache = {};
|
||||
app.engine('pag', (filePath, options, callback) => {
|
||||
// logger.info(JSON.stringify(options))
|
||||
if (!(filePath in cache)) {
|
||||
logger.info(`${filePath} not yet in cache`);
|
||||
fs.readFile(filePath, (err, content) => {
|
||||
|
2
dist/main.js.map
vendored
@ -1 +1 @@
|
||||
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
|
||||
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
|
@ -1,27 +1,6 @@
|
||||
<!-- { "toc": "compute", "title": "Projects - Just for Fun" } -->
|
||||
|
||||
<h1>So ugly ... why not Wordpress?</h1>
|
||||
<p>
|
||||
I shut down my homepage at wordpress.com since it was absolutely unclear to me which data was collected there. I decided to run the homepage on my own server again, since I know exactly which data is collected here: There is the Apache log with the requesters IP stripped away:
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<pre>
|
||||
<code language="Apache">
|
||||
CustomLog "logs/access_log" common
|
||||
#LogFormat "%h %l %u %t \"%r\" %>s %b" common
|
||||
LogFormat "%l %u %t \"%r\" %>s %b" common
|
||||
</pre>
|
||||
</code>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Nothing else. The homepage engine just logs which post or page is accessed and served, nothing more. If you like to have a look: <a href="https://gitlab.com/wolutator/homepage" target="_blank">https://gitlab.com/wolutator/homepage</a>.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
And since I'm quite bad in CSS, it currently looks so ugly.
|
||||
</p>
|
||||
|
||||
|
||||
<h1>My Blog</h1>
|
||||
|
@ -15,7 +15,8 @@
|
||||
|
||||
<div class="topnav">
|
||||
<a href="index">Home</a>
|
||||
<a href="pages/impressum">Impressum</a>
|
||||
<a href="pages/about">About</a>
|
||||
<a href="pages/pubkey">PubKey</a>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
@ -25,7 +26,6 @@
|
||||
</div>
|
||||
|
||||
<div class="footer">
|
||||
<a href="pages/impressum">Impressum</a>
|
||||
<a href="reload">Reload</a>
|
||||
</div>
|
||||
</body>
|
||||
|
99
docroot/pages/about.pag
Normal file
@ -0,0 +1,99 @@
|
||||
<!-- { "title": "About" } -->
|
||||
|
||||
|
||||
|
||||
<img class="floatright" src="files/IMG_6875_2-very-small.jpg"/>
|
||||
|
||||
<h1>About</h1>
|
||||
|
||||
Wolfgang Hottgenroth<br/>
|
||||
Eupenstr. 20<br/>
|
||||
45259 Essen<br/>
|
||||
<address>woho@hottis.de</address><br/>
|
||||
|
||||
|
||||
|
||||
<p>
|
||||
This is a hobby-only homepage without any advertising or other commercial interests.
|
||||
</p>
|
||||
|
||||
|
||||
<h1>My Profiles</h1>
|
||||
<ul>
|
||||
<li><a href="https://gitlab.com/wolutator">GitLab</a></li>
|
||||
<li><a href="https://twitter.com/wollud1969">Twitter</a></li>
|
||||
<li><a href="https://keybase.io/wolutator/">Keybase</a></li>
|
||||
<li><a href="https://github.com/wollud1969">GitHub</a></li>
|
||||
<li><a href="https://www.xing.com/profile/Wolfgang_Hottgenroth/cv">XING</a></li>
|
||||
</ul>
|
||||
|
||||
<h1>So ugly ... why not Wordpress?</h1>
|
||||
<p>
|
||||
I shut down my homepage at wordpress.com since it was absolutely unclear to me which data was collected there. I decided to run the homepage on my own server again.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Although according to Art. 2 (2) c of DSGVO that regulation is completely irrelevant for me, since this is a hobby-only blog without any advertising or commercial interests, it appeared to me, that limiting the number of collected data could be a good idea.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
For this system I know exactly which data is collected here: There is the Apache httpd running on an old PowerPC MacMini with OpenBSD bastion host, which proxies requests to the homepage engine. For the Apache log the requesters IP has been stripped away:
|
||||
<p>
|
||||
<pre>
|
||||
<code language="Apache">
|
||||
CustomLog "logs/access_log" common
|
||||
#LogFormat "%h %l %u %t \"%r\" %>s %b" common
|
||||
LogFormat "%l %u %t \"%r\" %>s %b" common
|
||||
</pre>
|
||||
</code>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
The logfile looks like this now:
|
||||
</p>
|
||||
<p>
|
||||
<pre>
|
||||
- - [25/May/2018:12:43:58 +0200] "GET /wolutator HTTP/1.1" 302 76
|
||||
- - [25/May/2018:12:43:58 +0200] "GET /wolutator/index HTTP/1.1" 304 -
|
||||
- - [25/May/2018:12:43:58 +0200] "GET /wolutator/files/default.css HTTP/1.1" 304 -
|
||||
- - [25/May/2018:12:43:58 +0200] "GET /wolutator/files/highlight/styles/default.css HTTP/1.1" 304 -
|
||||
- - [25/May/2018:12:43:58 +0200] "GET /wolutator/files/highlight/highlight.pack.js HTTP/1.1" 304 -
|
||||
- - [25/May/2018:12:43:58 +0200] "GET /wolutator/files/cropped-img_2723.jpg HTTP/1.1" 304 -
|
||||
- - [25/May/2018:12:43:59 +0200] "GET /favicon.ico HTTP/1.1" 404 209
|
||||
</pre>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
The homepage engine is running on an old Intel MacMini with Debian. It just logs which post or page is accessed and served, nothing more. If you like to have a look: <a href="https://gitlab.com/wolutator/homepage" target="_blank">https://gitlab.com/wolutator/homepage</a>.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
The logging of the homepage engine looks like this:
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<pre>
|
||||
wn@mac:/opt/services/homepage$ npm start -- -c homepage.conf
|
||||
|
||||
> homepage@1.0.0 start /opt/services/homepage
|
||||
> node dist/main.js "-c" "homepage.conf"
|
||||
|
||||
12:57:59.910 [ II ] Homepage starting
|
||||
12:57:59.922 [ II ] building toc
|
||||
12:57:59.937 [ II ] Homepage running
|
||||
12:57:59.938 [ II ] Homepage is listening
|
||||
12:58:19.008 [ II ] redirecting / to /index
|
||||
12:58:19.142 [ II ] /opt/services/homepage/docroot/index.pag not yet in cache
|
||||
12:58:24.178 [ II ] /opt/services/homepage/docroot/posts/2018-04-30.01/article.pag not yet in cache
|
||||
12:58:25.550 [ II ] /opt/services/homepage/docroot/index.pag served from cache
|
||||
12:58:26.985 [ II ] /opt/services/homepage/docroot/pages/impressum.pag not yet in cache
|
||||
12:58:29.647 [ II ] /opt/services/homepage/docroot/index.pag served from cache
|
||||
12:58:31.060 [ II ] /opt/services/homepage/docroot/posts/2018-02-22.01/article.pag not yet in cache
|
||||
12:58:35.230 [ II ] /opt/services/homepage/docroot/index.pag served from cache
|
||||
12:58:37.717 [ II ] /opt/services/homepage/docroot/index.pag served from cache
|
||||
</pre>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
And since I'm quite bad in CSS, it currently looks so ugly.
|
||||
</p>
|
@ -1,5 +0,0 @@
|
||||
<!-- { "title": "Impressum" } -->
|
||||
<h1>Impressum</h1>
|
||||
|
||||
Wolfgang Hottgenroth<br/>
|
||||
<address>woho@hottis.de</address><br/>
|
131
docroot/pages/pubkey.pag
Normal file
@ -0,0 +1,131 @@
|
||||
<!-- { "title": "My Public PGP Key" } -->
|
||||
|
||||
|
||||
<h1>#title#</h1>
|
||||
<p>
|
||||
<a href="files/75217C088B3EF6AE55F4D4C7B586EAFCDF2F65F4.key">for download</a><br/>
|
||||
<pre>
|
||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
|
||||
mQINBFq3+eMBEACdt7FaTWEqeu69EucMHAXLJoG3uFWWysXkzzwOc8MHTwbN4Lsi
|
||||
FHPSFWnhs4jRhiNhGYCKaCrN26EdjKNJ+14arl/0rZ6EJByctqgLQtbMfX19ciIe
|
||||
FEzN6pmYHxpUrwGVh6h9QSS9kkTIE8UEb2p/9d/ZBEh/E0Gdt4Pb36Zsn4uYqatd
|
||||
Oa+92l2LDVl9OTU95CNWWwS4MYYMKU7w6DQDc4DuTSbkHYirXq0Cj0bnoXmXDo5C
|
||||
E8n+F6TWDpPTwfjODzgEDLCMJJpQnViOnQTfqt/6jeY1JkOIEMRkQipqNbp+by++
|
||||
dyGNIQUbvEbjPX21bc/drg4PFidOBTQ2U0ZLXIbCqdYqEFhIWIC5MvdMwi3Fk4aP
|
||||
Dl/tATYI6nbFMU9YnliHyMPqxN4NH9QCn360e7X+NfxriAR8A96HDhjO9JwAogE5
|
||||
gvymI8cgIhyLACcziHvQoNsz0qRf9GOl81vhwSmQu2CNdZZDyGNl7R1yKrBrmHQf
|
||||
DBN2m+VMdWe9lTH7KRZ3U+8KPBasXVCLWc5XVsAdWYKoGBu+p66886pWWs92A/o4
|
||||
1QH4No8n77Cad7GJwizHCy8HuBi2ZgOVELw3is/12qNjD76DgNu421kGY3EaSpT3
|
||||
T9CFSXz+CQB8gBkSl3KcrlW9B5putu3IKC11qBkqCkSg8/ylGBCvug5EXQARAQAB
|
||||
tCVXb2xmZ2FuZyBIb3R0Z2Vucm90aCA8d29ob0Bob3R0aXMuZGU+iQJOBBMBCAA4
|
||||
FiEEdSF8CIs+9q5V9NTHtYbq/N8vZfQFAlq4CM4CGwMFCwkIBwIGFQgJCgsCBBYC
|
||||
AwECHgECF4AACgkQtYbq/N8vZfTL8BAAj0ZgnHlASWbN0zHDj6Pt3vHvQdCkB7R2
|
||||
DuBOD6WxjvjYT8BincxFTGGzaNclkzlQzlEjZ4qKOybLqSJX2GakrZBEC8ERwUsz
|
||||
Gjv477G/DjiZhjDHv9YYandAvsONkrlD4CY2OmgdBTkdhoGZlv9uj+dyoSfUIsY3
|
||||
SqziSCx3YEgaqDbufGu8dheH5ZpTxmj18AN+lgRMlgebda11Ve7QMAg0J+y4l2Zs
|
||||
2Y/FvdcRJ/iMnKeECMB3i5iXgro1GcoPTKbi3PUtRlv+h4feytNT4Xme1Jaf0aBJ
|
||||
0M2Ui/jihqoIPzoq1D5b5eaRWJ0hXokhND0nnY/IvRuJjScobzAxTX/dBHEO4Nyv
|
||||
ozXP8HFEWKs7xqaS9Xlko2XostIE3i96XWA4Vd/PyvC8nO1Ia4SW++2OQ5/81lWX
|
||||
n/jqNaOMn9NgiDjVZWuedimVv+E8KV6jtgOkfkT2jUCS21QL4Rl5HoDPyvB7PB34
|
||||
qNZKDFHvwfSj5Dy50vBNXfYd3ARk2KxboRmWby+VCP5W1OhRgI3A+LKPBeXqy5HE
|
||||
0TxdR0laDG5QlIoQMyGo7H/QrlMhcKEVOd4LZvb4DqvrAdXEbyZ0/FkjLTBDupzq
|
||||
NBdvFZQxaoDB5/G0UQB4vkiVbHy0NfGSzPLpKLm8mTJh6fltUc5dFMxh6A7eQ10G
|
||||
oc3pB3034yK0L1dvbGZnYW5nIEhvdHRnZW5yb3RoIDx3LmhvdHRnZW5yb3RoQGty
|
||||
b2huZS5jb20+iQJOBBMBCAA4FiEEdSF8CIs+9q5V9NTHtYbq/N8vZfQFAlq4CUgC
|
||||
GwMFCwkIBwIGFQgJCgsCBBYCAwECHgECF4AACgkQtYbq/N8vZfQCQQ//bVboPGyo
|
||||
arIA3fetNJ15Aa64br75Jod1p8CL4BLSK3aB0NkOUqK6t2RDnuGYeAhtVdBjwVbq
|
||||
H2w8FuCMHB6UfDB+1UIUDuW554ihG3qJr1FQ4i7DoHKdCIc0q5dfC/X1R6fyFPlb
|
||||
6XJi6b9mp5V2L9I8dJNprA4GVDCLWVF6r3tvVCAraPVZm4rFJyW2OTLLigz099m5
|
||||
MqhvRaWP+NitEM/mxO/yf8pzak/6x2nGD5JGrRTKL+d3DIymUFI+ogUYhTHzXxz5
|
||||
yX3CdzUfZ2/3K+gF+3ruhUp4OrIduFhpyV5O5gSES9nsgzs1AZlf1N8PtXW6AUDM
|
||||
LdH2zQYAeX5RIOt16MqjxI5Dm3opMbMvMVThQZB1lkYosJar7WuGhpKGNSIKZyGK
|
||||
hV8L6F0PmkIkxNaypFXieRO+ngy2NMIG5CsnU7KM/MGXWXKCrBIbwWv8wIez7AiL
|
||||
EpB+P5TLPFpp2oHljvvoKdzkH2Vj0X7npPZQO/VWv8yvymg2KiSP9V23VeqYYreI
|
||||
AUP2/YY0AW6zYfki+Z5bVk6125f5gnV6/X2cwyLT+FGawbpgqsSyeVkt3QSlHSBW
|
||||
hnu/xYNhVnrogigoE9qbR7zkVgOvVP/TslzqF8uNf2WTh9N3z/k3ysxgmZWsN9Kh
|
||||
FVqYJ6lfeIrU3GToojWDdThnBylz+fAyKIG0L1dvbGZnYW5nIEhvdHRnZW5yb3Ro
|
||||
IDx3b2xmZ2FuZ0Bob3R0Z2Vucm90aC5uZXQ+iQJOBBMBCAA4FiEEdSF8CIs+9q5V
|
||||
9NTHtYbq/N8vZfQFAlq4CWgCGwMFCwkIBwIGFQgJCgsCBBYCAwECHgECF4AACgkQ
|
||||
tYbq/N8vZfT1dQ/+Ooc2U+PmLG8igBSmVHT2KM2QNmzomf78An9Ga+3j1gRAV9Gv
|
||||
1TLdKmLk9QIS+HH36/e5qqYQsfRR8d42lW+Ls9u8BQZ6PIc1m8heaOjR2dSYJFYS
|
||||
Vbi2CO6fHNAQsuVsEs4+4Vxr/AUsYRnEH8bOxPXNm4E8AAyNfF6EX5pAzqKK5yoe
|
||||
QCR0pz53DVbll1yOihRuWmbD7p8a03n5bVEhfZqun49dnxL8xIYhfLeJCoSCjVX0
|
||||
c7NTVoipxZA2xlt5yS1CkUmNf6Ayco9Yrm6LDFjv3j1P9YSNh2sRPHEL43Hro5nV
|
||||
J6lXMdLpXIDxViiZ1rycIKsqv6P9XUNMDX9UgoQ4kNgxKlyDqAC+a8uUYJk0sKkk
|
||||
aW3OhKpVTAbK7yikCwEF2ZW8GDWjdG2KxMjWco5HiJx8dN0HmZX1QCfbGDnMcxTn
|
||||
OTGXr4v+vaxqopgBzTg160XWdbUH5lnv1ShGN4EstEFKshx0SqdOxPrhsQinst3S
|
||||
DL6MQFCpP+FzOmttE6NLFc4+/aoaY96bihDwn0kG0LOTAtBq8mEdS0JIx86a5Kyn
|
||||
k2lKRPxz/XX+ySJx2y1mV+c1tJBytTn2hZY0Cjtw1FK+PKrgWqk995sK89SGgIwj
|
||||
xQ/+zwKqfA/jkGWohQr1LDMD8iB9sZYxrSOTf624NlXkRTO+EpqjmIX6jQu0Nldv
|
||||
bGZnYW5nIEhvdHRnZW5yb3RoIDx3b2xmZ2FuZy5ob3R0Z2Vucm90aEBpY2xvdWQu
|
||||
Y29tPokCTgQTAQgAOBYhBHUhfAiLPvauVfTUx7WG6vzfL2X0BQJat/njAhsDBQsJ
|
||||
CAcCBhUICQoLAgQWAgMBAh4BAheAAAoJELWG6vzfL2X0xQgP/jIl4Vn/t7KtNu5B
|
||||
bWHDlL0DQdqRJlepDq+xeP2JyozBrqNWLdKjay5S4hvYzvRb9oIgOX1l/FPjHES+
|
||||
FvFJfetWcGX11z9D56K+pbOylhNx/MCsED2FeaN5CRhVHbp8UnDxa0NJ6vD5x/ry
|
||||
ZS9Lkr15xiJ9tBxBwzh03nmmoO5vLO9WrUn2fxz1UlbcN+6svM4tELPOz7PPTx+t
|
||||
1prg9+9efr6UOP28CFlCvBo/ftSBXVecfNHu54n9EgRc5QTTNUh9wwS088fnxWKO
|
||||
EjSWYXGcjKP2uOrWeaqlikGUGrZ0fNx0A+hG95vLmxT5WoD6IjunuOHbbPh3MBYD
|
||||
l0iPMbRqhdM6XZ/3P0fUBmawWTvZ1+sAdUvIR6qU/I6ZSOzbRFV1ETCTm9k4mDPC
|
||||
yETQuH7bS/Uce8x9HRKPIhGScGiWTz2s3WZiwxigEiDjP2xt8Llk3+bK20DB18a5
|
||||
0bq/4KCMLiT9USS/Tj+7AplWcbHfwgZ+Ctw2F2gLe4zDTw+uHlIEKFdXeZjRfH4r
|
||||
1nRN6Gsyq9hHXdxNEGInWsESq4liIwX5nGWSoM4lpIdnLYAbkADrkCA/PiWa26eg
|
||||
XEG4bqiqwas1VPWwSjfZmzwn/itpeETsnWMOT3mWCSyM3C6m1BzdHWtE3jXQt+8L
|
||||
3BAW0RzXiPneB1UPYy/sJKw8uqu1uQINBFq3+eMBEACNnQEIzgOMYU2W0laO6t8v
|
||||
uz5lggs6pRVju8WJ6zp5OIcTGsOSHAWKMkFkCSkKkLLyEy86Ozz1CRHcsMgngorD
|
||||
MnEbg/uZzn9Zi5ij9eKdApgMy0/jS6eMM5Sj3rT5MNcNjdLGT5Fsv2X+7A3QTCo5
|
||||
Il2IhjULb1hfPgcBU4aehDzDK3FZTgBHrlPGnhh1PSf6oN+TmcStn5Aw+GoPJ/9c
|
||||
Ss2988JGKIlO4IXZQE1C8jaxgQpFwpMla1MQpqXdjTNv9oinAQe53sE+8la8C5FO
|
||||
kfUTWKLPrAqtIMF0sL3zz3cPmKr49IDebvmJW6C1UdZ2Pefsq9+pdDtzROBuxvbK
|
||||
ZLiU61sLbkxpGmC2a1zYQkmjFfRRuJCjPvGyGnMsRmEVvSCFe4102hUud3rPJkyK
|
||||
KezInkOxtfW/PZOWW1nvWKPKRrQ5yQ30maMAhqhnUbQ6zWtfWnVlVJwpaCRv+iv6
|
||||
hTahYfehSwAi+sSgKfcb81z9Z9hYf/tmgimyJC165PUTIRvqr9hBHDQpIHE+h4Pc
|
||||
/ahSUz0Zwnt3Vb9mMeK9U5dkhRCgpX4UnbkBv94ikUVDvTwfHcnal98xiU5Oj+1C
|
||||
+sA4Z7kZGL0nE8DuFyt1zMOPWHtyfN1X4+bRjODbqk49Xs4T8OTSkU36OhgzpTs0
|
||||
UlEzxhzhkf88BzUpWgsqZwARAQABiQI2BBgBCAAgFiEEdSF8CIs+9q5V9NTHtYbq
|
||||
/N8vZfQFAlq3+eMCGyAACgkQtYbq/N8vZfRPWA//QEfsZDDC5FO4G4dpT+5ZwjV4
|
||||
CNiZPRQpfFc1MepKMlERzk7dCovwnYTONSoQiK7Guq4ouv/3KCxMC9qFuM9wMpi3
|
||||
inmEfuKCPwEI7tDi0CvlZtY8IVrEBZN8n4Bo3XxNznlzirZyPvMQ6jFwip7EMisg
|
||||
bwAoap90om4NZjCe7kGnpD8q7hGK939aW4+LTAqtet3NaYtwUe2gAI2zqH4D7TD9
|
||||
R85hlYLw8Tqk5LmmrTMVd7nu0eKAaKvqlF6FA9yzsoySlTfKm4xWowrPdG2dtRQw
|
||||
13w8mzp17BbaIC0yMEfi2y2R037uH0nKRpuzoO9cYHJdoizaFuvehmdvr/1qtHHV
|
||||
zmFT0JCMld+97abkr2zpSKM7jO8kE+GD6ubZdEoQZ0gQep6QiBsgiqeyiwBoHKU7
|
||||
fNdaDf78dXtcbOh8Hdr5xk3A3rJQgFtLn/I/7mD2x3/rA4q9UcyzOmDZI0oyrPLl
|
||||
FJGsJ8PV+WVeAaS5lsQNZG7OQZ4qKDpZrIgl7rU1j3sVwRpt20qPlsJxNyJ4NhPE
|
||||
Fo2tldvGL2fchc/xQJXp7nLnnViXJB9E0kHVo6UYY1L/6VinEhhnJ8GDfYyptxRx
|
||||
Bm8tbNAKzUI0eS3GwAyA26W5IBx59Z5PemxXZgNLn6ZoM/KrnvgKecZvdoIl0f0s
|
||||
qeMHWPZsDbO7uz9phni5Ag0EWrf54wEQAMupa7HsHnOsPYT/IRC02eGq2TwoG85E
|
||||
eakHG9wskdMQ8RIH6InnX2c+NgDEgrhHhUJ/OyuB5LyRJZdEwlk1comEyJHHwBpa
|
||||
T4BLpc+QXidVc+mWOBQUnvTwIV1bgmo2gQB5TNsgzog5Xzv/Sq5zOae8f9eAmYYF
|
||||
4z5IzerErA+szsuw6RBcnoyTNNOQYjeefcKT1Shr5bxIB+e8V2K3o4l7qn23Pfi5
|
||||
sLNwr6mGTN1uEJmSM2oR1Dygyu2SPYZyv6ARenCXF3DiNwyp2uoUlnvdWny1Of1s
|
||||
W/2EH64WyUHODmrsp7eq1wxFvKXIgge+2DhjbDb0HQTs/fM48MvV0oln1dzHh5Lk
|
||||
U8tEqcowYzk+tn17fa0iFei4gWhMC0l0TdNVfW5Kn1xr2QUAHaYKgpfu9OSr9/w1
|
||||
0Worv3PVAJg6YQaLLRYY29SYBsF6132i+LOkCO9J7n9MeRXZEnouk0r84XTykFbl
|
||||
ENF/GaxQvUL/rXq1khyGdEFIOh+SDev/ceMw6nwweG2cSJmb1D9SdgkvAODj6/BZ
|
||||
bB5BKwtYHpKJR2iCelkkdCmkB7EChZj/Lmh/ApVnc7TeO2UctVJvNuf7vNuo6QP7
|
||||
UJ3fe0icZ9E8K1rJX+BDmYP2YHA07BRsWWj0XD8q5Ls+6u0G8mTJbLUrRhXVzsLr
|
||||
Y4y9BZwPi00vABEBAAGJAjYEGAEIACAWIQR1IXwIiz72rlX01Me1hur83y9l9AUC
|
||||
Wrf54wIbDAAKCRC1hur83y9l9F3fD/9xOBSvtis1gw0uNv33XGvMzj9VkZQqE2Zj
|
||||
VJoBvPbFSdppwr+/iGy1/yRiMs6UjunYlpZX9UQMM+K7BiwcdvGeu3hmhP4zBLfn
|
||||
rhdfenb8R4y9cJditRPWB2Seg5RxYkZ1Cr8MXi1RShBSASP2Ab7/Flm/95MLnTMe
|
||||
fhbIvF3q6KdeR1Cb2j/Z5gTqfFdKII28JfX+hKXmuKOOlz47RWYexZjg0BTCIAcu
|
||||
8cnUXs+v3HxlQoc8yxeb/SJJWggiM9M23k0uDqp7DHxuUOvXg6RS8UT+Yg2ejS/Z
|
||||
h+VzW7ex1Aa4NnQ6L9+YYTG3dpfxXhAbsaWbtFWUv5s6S6bAsXmNjNgTisLB0yDw
|
||||
z/cptrEVodeAdR59muyAtG09ZIG6bBMw3FWJj0pSWW9p2G2UqiFbsvlIqR4itzLL
|
||||
e1AMFjbNqE/LFya9ttKR8lwVEXhW0QpIuoFN8+JfmvtN932We7aQO02LYkQc8dPT
|
||||
ZWhb/lYr2u9YkftJOYxBuluBNxqAdJg6/NoU/mcztZ/hahgSx4u6EGnJa163PF9X
|
||||
+RQYxNo9TGAnzyZxu6I9MUqT0GR/09Q0weZrP8vNjR2Dxp7jXHlNXzt6F7tA/1sm
|
||||
ij1WJ0qTIKQRgsnJoULNFEVSSWzI9dyAHqnVsQGwf0xhcugVwMw0dxS7q/aVErkA
|
||||
UzZbs54AnA==
|
||||
=GSFz
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
||||
</pre>
|
||||
</p>
|
||||
|
||||
<h3>Fingerprint</h3>
|
||||
<p>
|
||||
<pre>
|
||||
7521 7C08 8B3E F6AE 55F4 D4C7 B586 EAFC DF2F 65F4
|
||||
</pre>
|
||||
</p>
|
@ -1,23 +1,32 @@
|
||||
define(`TITLE', `Something completely different: SNMP to MySQL')
|
||||
define(`DATE', `2015-10-12')
|
||||
define(`CONTENT', `
|
||||
I'm helping to maintain a fleet of about 50 printers in a charity distributed over about 30 locations in the city. Now, we wanted to know how much the individual printers are used to get some numbers for an effort to reduce the number of printers.
|
||||
<!-- { "title", "Something completely different: SNMP to MySQL" } -->
|
||||
<h1>#title#</h1>
|
||||
<p>
|
||||
I'm helping to maintain a fleet of about 50 printers in a charity distributed over about 30 locations in the city. Now, they wanted to know how much the individual printers are utilized to get some numbers for an effort to reduce the number of printers.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
So, what is more self-evident then using SNMP to query the total page counter on a daily base - or better on an hourly base since the printers are switched off at this or that time and those we at least get sometimes valid data.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Typical monitoring tools like Cacti or Zabbix are very good in drawing nice graphs but not so good in delivering absolute numbers. So I decided to write something on my own: query some devices for some SNMP data points and store the results in a database. Which devices and which data points and which combinations? Everything in the database too.
|
||||
</p>
|
||||
|
||||
I looked for a SNMP library, first in Python, then in Java - since I'm quite familiar with these languages - but everything I found was rather complicated to use. Then I looked for something in C# and found ''SnmpSharpNet''. Still not that easy to use but easier then what I found in Python or Java.
|
||||
<p>
|
||||
I looked for a SNMP library, first in Python, then in Java - since I'm quite familiar with these languages - but everything I found was rather complicated to use. Then I looked for something in C# and found ''SnmpSharpNet''. Still not that easy to use but much easier then what I found in Python or Java.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
For that reason I started coding the little tool in C#. And what I did is working very well now. Configuration and error-handling is not perfect yet, but it is working. Enough for today.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
BTW: I switched developing the code between Microsoft Visual Studio 2013 (on Windows) and Xamarin Studio (on the Mac) and run the tool on Linux. Works without any problem. Very nice!
|
||||
|
||||
<!--more-->
|
||||
</p>
|
||||
|
||||
|
||||
|
||||
[code language="csharp"]
|
||||
<pre>
|
||||
<code language="csharp">
|
||||
namespace Snmp2Mysql
|
||||
{
|
||||
|
||||
@ -67,9 +76,11 @@ namespace Snmp2Mysql
|
||||
}
|
||||
}
|
||||
}
|
||||
[/code]
|
||||
</code>
|
||||
</pre>
|
||||
|
||||
[code language="SQL"]
|
||||
<pre>
|
||||
<code language="SQL">
|
||||
CREATE TABLE `device_t` (
|
||||
`id` int(11) NOT NULL AUTO_INCREMENT,
|
||||
`address` varchar(45) NOT NULL,
|
||||
@ -107,14 +118,14 @@ CREATE TABLE `collecteddata_t` (
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `devicedataitem_fk_idx` (`devicedataitem`),
|
||||
CONSTRAINT `devicedataitem_fk` FOREIGN KEY (`devicedataitem`) REFERENCES `devicedataitem_t` (`id`)
|
||||
[/code]
|
||||
</code>
|
||||
<pre>
|
||||
|
||||
And here are the sources:
|
||||
|
||||
<a href="http://a385e-5.de/wp-content/uploads/Snmp2Mysql.zip">Snmp2Mysql</a>
|
||||
<a href="https://gitlab.com/wolutator/Snmp2Mysql.git">https://gitlab.com/wolutator/Snmp2Mysql.git</a>
|
||||
|
||||
I'm using GPL code from MySQL (the MySQL Connector for .NET), find it here <a href="http://dev.mysql.com/downloads/connector/net/" target="_blank">http://dev.mysql.com/downloads/connector/net/</a> and the SNMP library from <a href="http://www.snmpsharpnet.com" target="_blank">http://www.snmpsharpnet.com</a>.
|
||||
|
||||
Ah, evaluation of the data? Haven't thought about, maybe using some tricky SQL statement or an Excel pivot table. I'll come back about that.
|
||||
|
||||
')
|
34
docroot/posts/2016-03-03.01/article.pag
Normal file
@ -0,0 +1,34 @@
|
||||
<!--{ "title": "Why always SPI CS on pin 10?" } -->
|
||||
<h1>#title#</h1>
|
||||
|
||||
<p>
|
||||
Thank you, Ladyada, for <a href="https://learn.adafruit.com/adafruit-2-8-tft-touch-shield-v2">this great display</a>.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
But why is TFT CS on pin 10?
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<a href="http://a385e5.files.wordpress.com/2016/03/bildschirmfoto-2016-03-03-um-21-48-49.png" rel="attachment wp-att-711"><img src="http://a385e5.files.wordpress.com/2016/03/bildschirmfoto-2016-03-03-um-21-48-49.png" alt="Bildschirmfoto 2016-03-03 um 21.48.49" width="722" height="449" class="alignnone size-full wp-image-711" /></a>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Pin 10 is also the SPI CS for the Ethernet shield. Why not, for instance, pin 6:
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<a href="http://a385e5.files.wordpress.com/2016/03/img_1211-e1457038834523.jpg" rel="attachment wp-att-712"><img src="http://a385e-5.de/wp-content/uploads/IMG_1211-e1457038834523-1024x768.jpg" alt="IMG_1211" width="474" height="356" class="alignnone size-large wp-image-712" /></a>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Carefully lift pin 9 of the level shifter and connect it using a thin wire with pin 6 of the Arduino connector.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
And voila, both the display and the ethernet shield is working:
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<a href="http://a385e5.files.wordpress.com/2016/03/img_1212-e1457039094609.jpg" rel="attachment wp-att-713"><img src="http://a385e-5.de/wp-content/uploads/IMG_1212-e1457039094609-1024x768.jpg" alt="IMG_1212" width="474" height="356" class="alignnone size-large wp-image-713" /></a>
|
||||
</p>
|
39
docroot/posts/2016-09-09.01/article.pag
Normal file
@ -0,0 +1,39 @@
|
||||
<!-- { "title": "Integrated Thermometer and Timer" } -->
|
||||
<h1>#title#</h1>
|
||||
<p>
|
||||
To brew green tea you need water of about 75°C. To know that your water has 100°C is easy, you can see that it is boiling. For 75°C you need a thermometer. Then you also need to take care about the brewing time. It should be usually two minutes.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
There are such integrated thermometer and timer things on Amazon, but that's not me cup of tea, I decided to build one on my own. It should run on batteries, it should be small and it should make no noise (for office use).
|
||||
</p>
|
||||
|
||||
<p>
|
||||
In between I was reading "Patterns for Time-Triggered Embedded Systems" from Michael Pont. And afterwards I was curious to use such a simple cooperative scheduler instead of the super-loop, as it is common in the Arduino domain.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
I used a MSP430G2553 with 10bit-ADCs, a PT1000 sensor and two seven-segment LED displays.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
The code is available at <s><a href="https://bitbucket.org/wollud1969/teathermotimer" target="_blank">https://bitbucket.org/wollud1969/teathermotimer</a></s> <a href="https://gitlab.com/wolutator/TeaThermoTimer">https://gitlab.com/wolutator/TeaThermoTimer</a>.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<a href="files/img_0813-e1473432862286.jpg"><img src="files/img_0813-e1473432862286_small.jpg"/></a>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<a href="files/img_0814.jpg"><img src="files/img_0814_small.jpg" /></a>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Schematics:<br/>
|
||||
<a href="files/201609091558_0001.pdf">201609091558_0001</a>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Calculation for measurement:<br/>
|
||||
<a href="files/201609091558_0002.pdf">201609091558_0002</a>
|
||||
</p>
|
29
docroot/posts/2016-09-12.01/article.pag
Normal file
@ -0,0 +1,29 @@
|
||||
<!-- { "title": "Integrated Tea Timer and Thermometer, Second Edition" } -->
|
||||
|
||||
<h1>#title#</h1>
|
||||
<p>
|
||||
I've two offices, so I'm requiring two of this timers.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
The second one I built with a three-digit display and auto-power-down and start with a push-button.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
This thing consumes in operation about 20mA, which is a real lot for so few functionality, but most of the power goes into the display. I was looking for a simple LCD on ebay, but it seems that most of the LCD 7-segment display have only one common and one pin for every single segment instead of one common per digit. These are too many pins for the 2553 and I didn't want to put an additional LCD controller on the board.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
However, when the thing goes in LPM4, it only consumes about 0,1uA, as it is written in the datasheet. Very important to achieve this low power consumption: an input pin requires more power than an output pin put into the right level. And of course the reference generator of the ADC needs to be shutdown.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
The sources are still available here <s>https://bitbucket.org/wollud1969/teathermotimer</s> <a href="https://gitlab.com/wolutator/TeaThermoTimer/tree/SecondEdition">https://gitlab.com/wolutator/TeaThermoTimer/tree/SecondEdition</a>, look for the branch <code>SecondEdition</code>.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
The schematic is more or less the same, just on digit display more and a reset push-button.
|
||||
</p>
|
||||
|
||||
<a href="files/img_0818-e1473677307841.jpg"><img src="files/img_0818-e1473677307841_small.jpg"/></a>
|
||||
<a href="files/img_0821-e1473677332189.jpg"><img src="files/img_0821-e1473677332189_small.jpg"/></a>
|
@ -10,7 +10,9 @@ In this experiment I put everything on one STM32 microcontroller. Here I used th
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<img src="files/img_0140.jpg" alt="img_0140" width="800" />
|
||||
<a href="files/img_0140.jpg">
|
||||
<img src="files/img_0140_small.jpg"/>
|
||||
</a>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
@ -18,7 +20,9 @@ From top to bottom you see the CAN driver, the STM32 board, opto coupler to sep
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<img src="files/img_0144.jpg" alt="img_0144" width="800" />
|
||||
<a href="files/img_0144.jpg">
|
||||
<img src="files/img_0144__small.jpg"/>
|
||||
</a>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
@ -26,7 +30,9 @@ The power supply consists of a traditional transformer and (top right) the recti
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<img src="files/img_0146.jpg" alt="img_0146" width="800" />
|
||||
<a href="files/img_0146.jpg">
|
||||
<img src="files/img_0146_small.jpg"/>
|
||||
</a>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
@ -34,7 +40,7 @@ The motor is the same as in the earlier experiment - I don't have too much of th
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<a href="files/img_0143-e1482141676335.jpg"><img src="files/img_0143-e1482141676335.jpg" alt="img_0143" width="800" /></a>
|
||||
<a href="files/img_0143-e1482141676335.jpg"><img src="files/img_0143-e1482141676335_small.jpg"/></a>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
|
BIN
files/201609091558_0001.pdf
Normal file
BIN
files/201609091558_0002.pdf
Normal file
115
files/75217C088B3EF6AE55F4D4C7B586EAFCDF2F65F4.key
Normal file
@ -0,0 +1,115 @@
|
||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
|
||||
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
|
||||
UzZbs54AnA==
|
||||
=GSFz
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
BIN
files/IMG_0536.JPG
Normal file
After Width: | Height: | Size: 2.2 MiB |
BIN
files/IMG_6875_2-very-small.jpg
Normal file
After Width: | Height: | Size: 18 KiB |
BIN
files/IMG_6875_2.jpg
Normal file
After Width: | Height: | Size: 4.6 MiB |
@ -1,8 +1,8 @@
|
||||
body {
|
||||
font-family: "Optima", sans-serif;
|
||||
font-size: 16px;
|
||||
margin: 0 5% 0 5%;
|
||||
width: 1080px;
|
||||
margin: 20px 10% 0 10%;
|
||||
width: 80%;
|
||||
background-color: lightblue;
|
||||
}
|
||||
|
||||
@ -62,3 +62,8 @@ body {
|
||||
background-color: #ddd;
|
||||
color: black;
|
||||
}
|
||||
|
||||
.floatright {
|
||||
float: right;
|
||||
padding-top: 25px;
|
||||
}
|
241
files/hm-config.txt
Normal file
@ -0,0 +1,241 @@
|
||||
MASTER
|
||||
{
|
||||
Channel: 2
|
||||
{
|
||||
[TRANSMIT_TRY_MAX]: 06
|
||||
[AES_ACTIVE]: 00
|
||||
[POWERUP_ACTION]: 00
|
||||
[STATUSINFO_RANDOM]: 01
|
||||
[STATUSINFO_MINDELAY]: 04
|
||||
}
|
||||
Channel: 1
|
||||
{
|
||||
[TRANSMIT_TRY_MAX]: 06
|
||||
[AES_ACTIVE]: 00
|
||||
[POWERUP_ACTION]: 00
|
||||
[STATUSINFO_RANDOM]: 01
|
||||
[STATUSINFO_MINDELAY]: 04
|
||||
}
|
||||
Channel: 0
|
||||
{
|
||||
[ROAMING]: 00
|
||||
[POLLING_INTERVAL]: 3c
|
||||
[CONF_BUTTON_TIME]: ff
|
||||
[INTERNAL_KEYS_VISIBLE]: 01
|
||||
[POLLING]: 00
|
||||
[LOCAL_RESET_DISABLE]: 00
|
||||
}
|
||||
}
|
||||
|
||||
VALUES
|
||||
{
|
||||
Channel: 2
|
||||
{
|
||||
[WORKING]: 00
|
||||
[INHIBIT]: 00
|
||||
[STATE]: 00
|
||||
[INSTALL_TEST]: 00
|
||||
[ON_TIME]: 00
|
||||
}
|
||||
Channel: 1
|
||||
{
|
||||
[WORKING]: 00
|
||||
[INHIBIT]: 00
|
||||
[STATE]: 00
|
||||
[INSTALL_TEST]: 00
|
||||
[ON_TIME]: 00
|
||||
}
|
||||
Channel: 0
|
||||
{
|
||||
[CENTRAL_ADDRESS_SPOOFED]: 00
|
||||
[RSSI_PEER]: 00
|
||||
[BOOT]: 00
|
||||
[RSSI_DEVICE]: 3a
|
||||
[AES_KEY]: 00
|
||||
[CONFIG_PENDING]: 00
|
||||
[LAST_PACKET_RECEIVED]: 5b 16 17 7e
|
||||
[DUTYCYCLE]: 00
|
||||
[UNREACH]: 00
|
||||
[LOWBAT]: 00
|
||||
[STICKY_UNREACH]: 01
|
||||
}
|
||||
}
|
||||
|
||||
LINK
|
||||
{
|
||||
Channel: 2
|
||||
{
|
||||
Address: 0xfd0001
|
||||
{
|
||||
Remote channel: 2
|
||||
{
|
||||
[UI_HINT]: 00
|
||||
[SHORT_ON_TIME]: ff
|
||||
[SHORT_ONDELAY_TIME]: 00
|
||||
[SHORT_OFF_TIME]: ff
|
||||
[SHORT_OFFDELAY_TIME]: 00
|
||||
[SHORT_JT_ONDELAY]: 06
|
||||
[SHORT_JT_ON]: 06
|
||||
[SHORT_JT_OFFDELAY]: 06
|
||||
[SHORT_JT_OFF]: 06
|
||||
[SHORT_CT_ONDELAY]: 00
|
||||
[SHORT_CT_OFFDELAY]: 00
|
||||
[LONG_JT_OFF]: 06
|
||||
[SHORT_ON_TIME_MODE]: 00
|
||||
[LONG_ONDELAY_TIME]: 00
|
||||
[SHORT_CT_ON]: 00
|
||||
[LONG_CT_ONDELAY]: 00
|
||||
[LONG_ACTION_TYPE]: 01
|
||||
[LONG_COND_VALUE_HI]: 64
|
||||
[LONG_OFF_TIME_MODE]: 00
|
||||
[LONG_OFFDELAY_TIME]: 00
|
||||
[LONG_CT_OFFDELAY]: 00
|
||||
[SHORT_COND_VALUE_LO]: 32
|
||||
[LONG_COND_VALUE_LO]: 32
|
||||
[LONG_CT_OFF]: 00
|
||||
[LONG_JT_ONDELAY]: 06
|
||||
[SHORT_OFF_TIME_MODE]: 00
|
||||
[LONG_CT_ON]: 00
|
||||
[LONG_MULTIEXECUTE]: 01
|
||||
[SHORT_CT_OFF]: 00
|
||||
[LONG_OFF_TIME]: ff
|
||||
[LONG_JT_OFFDELAY]: 06
|
||||
[LONG_ON_TIME_MODE]: 00
|
||||
[LONG_JT_ON]: 06
|
||||
[LONG_ON_TIME]: ff
|
||||
[SHORT_ACTION_TYPE]: 01
|
||||
[SHORT_COND_VALUE_HI]: 64
|
||||
}
|
||||
}
|
||||
Address: 0x5a518b
|
||||
{
|
||||
Remote channel: 2
|
||||
{
|
||||
[UI_HINT]: 00
|
||||
[SHORT_ON_TIME]: ff
|
||||
[SHORT_ONDELAY_TIME]: 00
|
||||
[SHORT_OFF_TIME]: ff
|
||||
[SHORT_OFFDELAY_TIME]: 00
|
||||
[SHORT_JT_ONDELAY]: 03
|
||||
[SHORT_JT_ON]: 04
|
||||
[SHORT_JT_OFFDELAY]: 06
|
||||
[SHORT_JT_OFF]: 01
|
||||
[SHORT_CT_ONDELAY]: 00
|
||||
[SHORT_CT_OFFDELAY]: 00
|
||||
[LONG_JT_OFF]: 01
|
||||
[SHORT_ON_TIME_MODE]: 00
|
||||
[LONG_ONDELAY_TIME]: 00
|
||||
[SHORT_CT_ON]: 00
|
||||
[LONG_CT_ONDELAY]: 00
|
||||
[LONG_ACTION_TYPE]: 01
|
||||
[LONG_COND_VALUE_HI]: 64
|
||||
[LONG_OFF_TIME_MODE]: 00
|
||||
[LONG_OFFDELAY_TIME]: 00
|
||||
[LONG_CT_OFFDELAY]: 00
|
||||
[SHORT_COND_VALUE_LO]: 32
|
||||
[LONG_COND_VALUE_LO]: 32
|
||||
[LONG_CT_OFF]: 00
|
||||
[LONG_JT_ONDELAY]: 03
|
||||
[SHORT_OFF_TIME_MODE]: 00
|
||||
[LONG_CT_ON]: 00
|
||||
[LONG_MULTIEXECUTE]: 01
|
||||
[SHORT_CT_OFF]: 00
|
||||
[LONG_OFF_TIME]: ff
|
||||
[LONG_JT_OFFDELAY]: 06
|
||||
[LONG_ON_TIME_MODE]: 00
|
||||
[LONG_JT_ON]: 04
|
||||
[LONG_ON_TIME]: ff
|
||||
[SHORT_ACTION_TYPE]: 01
|
||||
[SHORT_COND_VALUE_HI]: 64
|
||||
}
|
||||
}
|
||||
}
|
||||
Channel: 1
|
||||
{
|
||||
Address: 0xfd0001
|
||||
{
|
||||
Remote channel: 1
|
||||
{
|
||||
[UI_HINT]: 00
|
||||
[SHORT_ON_TIME]: ff
|
||||
[SHORT_ONDELAY_TIME]: 00
|
||||
[SHORT_OFF_TIME]: ff
|
||||
[SHORT_OFFDELAY_TIME]: 00
|
||||
[SHORT_JT_ONDELAY]: 06
|
||||
[SHORT_JT_ON]: 06
|
||||
[SHORT_JT_OFFDELAY]: 06
|
||||
[SHORT_JT_OFF]: 06
|
||||
[SHORT_CT_ONDELAY]: 00
|
||||
[SHORT_CT_OFFDELAY]: 00
|
||||
[LONG_JT_OFF]: 06
|
||||
[SHORT_ON_TIME_MODE]: 00
|
||||
[LONG_ONDELAY_TIME]: 00
|
||||
[SHORT_CT_ON]: 00
|
||||
[LONG_CT_ONDELAY]: 00
|
||||
[LONG_ACTION_TYPE]: 01
|
||||
[LONG_COND_VALUE_HI]: 64
|
||||
[LONG_OFF_TIME_MODE]: 00
|
||||
[LONG_OFFDELAY_TIME]: 00
|
||||
[LONG_CT_OFFDELAY]: 00
|
||||
[SHORT_COND_VALUE_LO]: 32
|
||||
[LONG_COND_VALUE_LO]: 32
|
||||
[LONG_CT_OFF]: 00
|
||||
[LONG_JT_ONDELAY]: 06
|
||||
[SHORT_OFF_TIME_MODE]: 00
|
||||
[LONG_CT_ON]: 00
|
||||
[LONG_MULTIEXECUTE]: 01
|
||||
[SHORT_CT_OFF]: 00
|
||||
[LONG_OFF_TIME]: ff
|
||||
[LONG_JT_OFFDELAY]: 06
|
||||
[LONG_ON_TIME_MODE]: 00
|
||||
[LONG_JT_ON]: 06
|
||||
[LONG_ON_TIME]: ff
|
||||
[SHORT_ACTION_TYPE]: 01
|
||||
[SHORT_COND_VALUE_HI]: 64
|
||||
}
|
||||
}
|
||||
Address: 0x5a518b
|
||||
{
|
||||
Remote channel: 1
|
||||
{
|
||||
[UI_HINT]: 00
|
||||
[SHORT_ON_TIME]: ff
|
||||
[SHORT_ONDELAY_TIME]: 00
|
||||
[SHORT_OFF_TIME]: ff
|
||||
[SHORT_OFFDELAY_TIME]: 00
|
||||
[SHORT_JT_ONDELAY]: 03
|
||||
[SHORT_JT_ON]: 04
|
||||
[SHORT_JT_OFFDELAY]: 06
|
||||
[SHORT_JT_OFF]: 01
|
||||
[SHORT_CT_ONDELAY]: 00
|
||||
[SHORT_CT_OFFDELAY]: 00
|
||||
[LONG_JT_OFF]: 01
|
||||
[SHORT_ON_TIME_MODE]: 00
|
||||
[LONG_ONDELAY_TIME]: 00
|
||||
[SHORT_CT_ON]: 00
|
||||
[LONG_CT_ONDELAY]: 00
|
||||
[LONG_ACTION_TYPE]: 01
|
||||
[LONG_COND_VALUE_HI]: 64
|
||||
[LONG_OFF_TIME_MODE]: 00
|
||||
[LONG_OFFDELAY_TIME]: 00
|
||||
[LONG_CT_OFFDELAY]: 00
|
||||
[SHORT_COND_VALUE_LO]: 32
|
||||
[LONG_COND_VALUE_LO]: 32
|
||||
[LONG_CT_OFF]: 00
|
||||
[LONG_JT_ONDELAY]: 03
|
||||
[SHORT_OFF_TIME_MODE]: 00
|
||||
[LONG_CT_ON]: 00
|
||||
[LONG_MULTIEXECUTE]: 01
|
||||
[SHORT_CT_OFF]: 00
|
||||
[LONG_OFF_TIME]: ff
|
||||
[LONG_JT_OFFDELAY]: 06
|
||||
[LONG_ON_TIME_MODE]: 00
|
||||
[LONG_JT_ON]: 04
|
||||
[LONG_ON_TIME]: ff
|
||||
[SHORT_ACTION_TYPE]: 01
|
||||
[SHORT_COND_VALUE_HI]: 64
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
BIN
files/img_0140_small.jpg
Normal file
After Width: | Height: | Size: 397 KiB |
BIN
files/img_0143-e1482141676335_small.jpg
Normal file
After Width: | Height: | Size: 157 KiB |
BIN
files/img_0144_small.jpg
Normal file
After Width: | Height: | Size: 323 KiB |
BIN
files/img_0146_small.jpg
Normal file
After Width: | Height: | Size: 155 KiB |
BIN
files/img_0813-e1473432862286.jpg
Normal file
After Width: | Height: | Size: 1.3 MiB |
BIN
files/img_0813-e1473432862286_small.jpg
Normal file
After Width: | Height: | Size: 178 KiB |
BIN
files/img_0814.jpg
Normal file
After Width: | Height: | Size: 1.5 MiB |
BIN
files/img_0814_small.jpg
Normal file
After Width: | Height: | Size: 126 KiB |
BIN
files/img_0818-e1473677307841.jpg
Normal file
After Width: | Height: | Size: 1.1 MiB |
BIN
files/img_0818-e1473677307841_small.jpg
Normal file
After Width: | Height: | Size: 180 KiB |
BIN
files/img_0821-e1473677332189.jpg
Normal file
After Width: | Height: | Size: 928 KiB |
BIN
files/img_0821-e1473677332189_small.jpg
Normal file
After Width: | Height: | Size: 77 KiB |
@ -46,6 +46,7 @@ let cache: any = {}
|
||||
|
||||
|
||||
app.engine('pag', (filePath: string, options: any, callback: any) => {
|
||||
// logger.info(JSON.stringify(options))
|
||||
if (! (filePath in cache)) {
|
||||
logger.info(`${filePath} not yet in cache`)
|
||||
|
||||
@ -122,3 +123,4 @@ app.listen(config.dict.httpPort, () => {
|
||||
})
|
||||
logger.info("Homepage running")
|
||||
|
||||
|
||||
|