Leuk idee! Maar kan het zo zijn dat bij het selecteren van de trein (stap 3) een reisadvies wordt opgevraagd aan de hand van de huidige datum? De trein die ik normaal pak naar het werk staat er niet bij als je 'm nu probeert in te voeren (rijdt enkel doordeweeks zo vroeg).eenhoogh schreef op zondag 26 juni 2016 @ 00:32:
Iedere dag pak ik 's ochtends en 's avonds de zelfde trein. Mijn programma kent geen speling (vooral doordat ik in de ochtend eigenlijk net te laat op sta). En het gebeurde me net iets te vaak dat ik rennend op het perron aankwam en vervolgens zag dat er vertraging was.
Dit had ik natuurlijk kunnen voorkomen door de NS app te openen, het station te selecteren en vervolgens te kijken of de trein vertraging heeft ... => maar dat is moeite.
Dus ik heb een bot gemaakt welke via Telegram of Messenger je automatisch 25, 15 of 5 minuten van te voren (naar keuze) een update stuurt als de trein vertraging heeft, van spoor gewijzigd is of als er iets anders aan de hand is (bijvoorbeeld "rijdt vandaag niet" of "rijdt niet verder dan X".
Het is allemaal nog in beta, maar ik zou het leuk vinden als wat mensen hem willen testen! Bekijk het zelf via http://www.ns-alert.nl
Ja dat klopt! Ik zal daar nog een dag selectie aan toevoegen.ShitHappens schreef op zondag 26 juni 2016 @ 01:43:
[...]
Leuk idee! Maar kan het zo zijn dat bij het selecteren van de trein (stap 3) een reisadvies wordt opgevraagd aan de hand van de huidige datum? De trein die ik normaal pak naar het werk staat er niet bij als je 'm nu probeert in te voeren (rijdt enkel doordeweeks zo vroeg).
Aangezien ik mijn muziek op STACK ook op mijn telefoon wil benaderen, heb ik de interface van WebDAV streamer nu herschreven zodat deze ook op mobiel werkt:


https://github.com/Koenvh1/WebDAV-streamer
Mocht iemand nog suggesties hebben, dan hoor ik het graag. Iedereen gebruikt een muziekspeler op een andere manier, dus suggesties zijn altijd welkom


https://github.com/Koenvh1/WebDAV-streamer
Mocht iemand nog suggesties hebben, dan hoor ik het graag. Iedereen gebruikt een muziekspeler op een andere manier, dus suggesties zijn altijd welkom
🠕 This side up
Aangemeld 
Nog wel een vraagje, hoe kan je je eventueel afmelden?
Nog wel een vraagje, hoe kan je je eventueel afmelden?
eenhoogh schreef op zondag 26 juni 2016 @ 01:09:
[...]
Subiet geeft geen alerts toch wanneer een vaste trein een minuutje vertraging heeft? Er is een andere app die dat wel doet, maar die is weer niet voor Ansroid beschikbaar.
Met Telegram en Messenger heb ik denk ik wel een aardige dekking. Met whatsapp wordt het dan weer zo'n kat en muisspel waarbij ze nummers blijven blokkeren ben ik bang.
Thanks! Door "alerts" tegen de bot te zeggen krijg je al je huidige alerts te zien. Daarbij komt dan ook een link, en via die link kan je alerts weer verwijderen.
henk1994 schreef op dinsdag 28 juni 2016 @ 14:15:
Aangemeld
Nog wel een vraagje, hoe kan je je eventueel afmelden?
[...]
Geniaal! Heb me aangemeldeenhoogh schreef op zondag 26 juni 2016 @ 00:32:
Iedere dag pak ik 's ochtends en 's avonds de zelfde trein. Mijn programma kent geen speling (vooral doordat ik in de ochtend eigenlijk net te laat op sta). En het gebeurde me net iets te vaak dat ik rennend op het perron aankwam en vervolgens zag dat er vertraging was.
Dit had ik natuurlijk kunnen voorkomen door de NS app te openen, het station te selecteren en vervolgens te kijken of de trein vertraging heeft ... => maar dat is moeite.
Dus ik heb een bot gemaakt welke via Telegram of Messenger je automatisch 25, 15 of 5 minuten van te voren (naar keuze) een update stuurt als de trein vertraging heeft, van spoor gewijzigd is of als er iets anders aan de hand is (bijvoorbeeld "rijdt vandaag niet" of "rijdt niet verder dan X".
Het is allemaal nog in beta, maar ik zou het leuk vinden als wat mensen hem willen testen! Bekijk het zelf via http://www.ns-alert.nl
Met welke talen & libraries heb je dit gebouwd?
@eenoogh, als ik bij stap 3 niet heb aangegeven of ik 5, 15 of 25 minuten van tevoren iets wil ontvangen, dan ga ik wel gewoon door naar stap 4. (ik kan daarna ook niet meer terug). Lijkt me dat er iets moet zijn dat je per se minimaal een keuze moet maken daar. ik vraag me ook af of je dan überhaupt nog wel iets krijgt.
Verder leuke tool, ik ga alleen niet structureel met de trein
anders had ik het zeker gebruikt denk ik!
Verder leuke tool, ik ga alleen niet structureel met de trein
My own opinion is enough for me, and I claim the right to have it defended against any consensus, any majority, anywhere, any place, any time. And anyone who disagrees with this can pick a number, get in line, and kiss my ass. - Christopher Hitchens
Leuk! Ik klikte heel even door de website en kwam paar kleine dingen tegen:eenhoogh schreef op zondag 26 juni 2016 @ 00:32:
Iedere dag pak ik 's ochtends en 's avonds de zelfde trein. Mijn programma kent geen speling (vooral doordat ik in de ochtend eigenlijk net te laat op sta). En het gebeurde me net iets te vaak dat ik rennend op het perron aankwam en vervolgens zag dat er vertraging was.
Dit had ik natuurlijk kunnen voorkomen door de NS app te openen, het station te selecteren en vervolgens te kijken of de trein vertraging heeft ... => maar dat is moeite.
Dus ik heb een bot gemaakt welke via Telegram of Messenger je automatisch 25, 15 of 5 minuten van te voren (naar keuze) een update stuurt als de trein vertraging heeft, van spoor gewijzigd is of als er iets anders aan de hand is (bijvoorbeeld "rijdt vandaag niet" of "rijdt niet verder dan X".
Het is allemaal nog in beta, maar ik zou het leuk vinden als wat mensen hem willen testen! Bekijk het zelf via http://www.ns-alert.nl
- Bij het niet invullen van een geldige datum krijg ik een heel aantal notices:
Ten eerste wil je die niet tonen in productie, ten tweede gaat er dus iets misNotice: Undefined offset: 1 in /var/www/nsalert/php/getAdvice.php on line 14
Notice: Undefined offset: 1 in /var/www/nsalert/php/getAdvice.php on line 37. Komt omdat ik geen dubbele punt invoer maar bijvoorbeeld 1100 ipv 11:00 (ja luiheid, en 9292 herkent dat wel). Is denk ik een verbetering als je ook tijden zonder : parsed.
- Ook zonder geldig station kun je door naar stap 2, waarna het natuurlijk niet meer werkt.
- Nu lastig te doen met alleen toetsenbord, standaard wordt geen veld geselecteerd en dropdowns zijn niet keyboard-accessible
Klinkt als een gat in de markt! Ik wil 10 minuten vantevoren, mag dat ook? :-) En als connectivity option, kan het naar Hangouts? Of Slack?eenhoogh schreef op zondag 26 juni 2016 @ 00:32:
Iedere dag pak ik 's ochtends en 's avonds de zelfde trein. Mijn programma kent geen speling (vooral doordat ik in de ochtend eigenlijk net te laat op sta). En het gebeurde me net iets te vaak dat ik rennend op het perron aankwam en vervolgens zag dat er vertraging was.
Dit had ik natuurlijk kunnen voorkomen door de NS app te openen, het station te selecteren en vervolgens te kijken of de trein vertraging heeft ... => maar dat is moeite.
Dus ik heb een bot gemaakt welke via Telegram of Messenger je automatisch 25, 15 of 5 minuten van te voren (naar keuze) een update stuurt als de trein vertraging heeft, van spoor gewijzigd is of als er iets anders aan de hand is (bijvoorbeeld "rijdt vandaag niet" of "rijdt niet verder dan X".
Het is allemaal nog in beta, maar ik zou het leuk vinden als wat mensen hem willen testen! Bekijk het zelf via http://www.ns-alert.nl
Ziet er goed uit, flex logootje ook :-)
Top idee!eenhoogh schreef op zondag 26 juni 2016 @ 00:32:
Iedere dag pak ik 's ochtends en 's avonds de zelfde trein. Mijn programma kent geen speling (vooral doordat ik in de ochtend eigenlijk net te laat op sta). En het gebeurde me net iets te vaak dat ik rennend op het perron aankwam en vervolgens zag dat er vertraging was.
Dit had ik natuurlijk kunnen voorkomen door de NS app te openen, het station te selecteren en vervolgens te kijken of de trein vertraging heeft ... => maar dat is moeite.
Dus ik heb een bot gemaakt welke via Telegram of Messenger je automatisch 25, 15 of 5 minuten van te voren (naar keuze) een update stuurt als de trein vertraging heeft, van spoor gewijzigd is of als er iets anders aan de hand is (bijvoorbeeld "rijdt vandaag niet" of "rijdt niet verder dan X".
Het is allemaal nog in beta, maar ik zou het leuk vinden als wat mensen hem willen testen! Bekijk het zelf via http://www.ns-alert.nl
Ik krijg om de een of andere reden met geen mogelijkheid station 's-Hertogenbosch gekozen op mijn telefoon. Hij staat wel in de dropdown, maar hij laat mijn getypte tekst staan als ik 'm wil selecteren.
Thanks! De backend is php, kleine MySQL database en CURL.Kajel schreef op woensdag 29 juni 2016 @ 16:15:
[...]
Geniaal! Heb me aangemeld
Met welke talen & libraries heb je dit gebouwd?
Vermoedelijk krijg je hem dan 0 minuten van te vorenLuNaTiC schreef op woensdag 29 juni 2016 @ 16:27:
@eenoogh, als ik bij stap 3 niet heb aangegeven of ik 5, 15 of 25 minuten van tevoren iets wil ontvangen, dan ga ik wel gewoon door naar stap 4. (ik kan daarna ook niet meer terug). Lijkt me dat er iets moet zijn dat je per se minimaal een keuze moet maken daar. ik vraag me ook af of je dan überhaupt nog wel iets krijgt.
Verder leuke tool, ik ga alleen niet structureel met de treinanders had ik het zeker gebruikt denk ik!
Thanks voor de feedback! Welke browser gebruik je? Want ik gebruik input type Time, en ging er van uit dat ik altijd een geldige waarde zou krijgen (ik had dit natuurlijk netjes moeten afvangen). Stations moet ik inderdaad nog even afvangen. Ik was ook begonnen aan een keyboard vriendelijke implementatie, maar mijn drang om snel live te zetten was wat groter daar. Ik ga dat nog aanpakken!Chris7 schreef op woensdag 29 juni 2016 @ 16:37:toon volledige bericht
[...]
Leuk! Ik klikte heel even door de website en kwam paar kleine dingen tegen:Leuk project hoor, en met bovenstaande iets meer PEBKAC proof
- Bij het niet invullen van een geldige datum krijg ik een heel aantal notices:
[...]
Ten eerste wil je die niet tonen in productie, ten tweede gaat er dus iets mis. Komt omdat ik geen dubbele punt invoer maar bijvoorbeeld 1100 ipv 11:00 (ja luiheid, en 9292 herkent dat wel). Is denk ik een verbetering als je ook tijden zonder : parsed.
- Ook zonder geldig station kun je door naar stap 2, waarna het natuurlijk niet meer werkt.
- Nu lastig te doen met alleen toetsenbord, standaard wordt geen veld geselecteerd en dropdowns zijn niet keyboard-accessible
.
Thanks! Slack staat op de roadmap, Hangouts nog niet. 10 minuten mag zeker ook! Als je handig bent met inspect element kan je het zelf in de source aanpassen, de server is flexibel hahaDaCoTa schreef op woensdag 29 juni 2016 @ 16:38:
[...]
Klinkt als een gat in de markt! Ik wil 10 minuten vantevoren, mag dat ook? :-) En als connectivity option, kan het naar Hangouts? Of Slack?
Ziet er goed uit, flex logootje ook :-)
Ai, het ' in de naam verpest het. Dat ga ik fixen (wordt helaas wel morgen, maar zal je het laten weten als het zover is)!Trasos schreef op woensdag 29 juni 2016 @ 18:30:
[...]
Top idee!
Ik krijg om de een of andere reden met geen mogelijkheid station 's-Hertogenbosch gekozen op mijn telefoon. Hij staat wel in de dropdown, maar hij laat mijn getypte tekst staan als ik 'm wil selecteren.

ThinkPad's Tweakblog: Coole grafiekjes van Fritz!box maken met InfluxDB & Gra...
Eigenlijk niet echt zelf gemaakt, meer aan elkaar knopen van zaken. Maar er is vast wel iemand die er wat aan heeft, dus ik post het toch maar hier
[ Voor 20% gewijzigd door ThinkPad op 29-06-2016 23:32 ]
's-Hertogenbosch selecteren werkt niet, waarschijnlijk door de single-quote. En wordt daarbij ook niet gevonden onder de alias Den-Bosch ;-).eenhoogh schreef op zondag 26 juni 2016 @ 00:32:
Iedere dag pak ik 's ochtends en 's avonds de zelfde trein. Mijn programma kent geen speling (vooral doordat ik in de ochtend eigenlijk net te laat op sta). En het gebeurde me net iets te vaak dat ik rennend op het perron aankwam en vervolgens zag dat er vertraging was.
Dit had ik natuurlijk kunnen voorkomen door de NS app te openen, het station te selecteren en vervolgens te kijken of de trein vertraging heeft ... => maar dat is moeite.
Dus ik heb een bot gemaakt welke via Telegram of Messenger je automatisch 25, 15 of 5 minuten van te voren (naar keuze) een update stuurt als de trein vertraging heeft, van spoor gewijzigd is of als er iets anders aan de hand is (bijvoorbeeld "rijdt vandaag niet" of "rijdt niet verder dan X".
Het is allemaal nog in beta, maar ik zou het leuk vinden als wat mensen hem willen testen! Bekijk het zelf via http://www.ns-alert.nl
Edit. Sorry, ik had nog gekeken of iemand het al gemeld had, maar zag het niet... dan post je iets, en staat het er 2 posts boven.
[ Voor 5% gewijzigd door Montaner op 30-06-2016 13:48 ]
Ik gebruik Firefox 48. Het is een leuk klein tooltje, toch gaat er in dat soort dingen altijd meer werk zitten om alle kleine details goed te zetten (althans, is mijn ervaring). Succes ermee!eenhoogh schreef op woensdag 29 juni 2016 @ 20:27:
Thanks voor de feedback! Welke browser gebruik je? Want ik gebruik input type Time, en ging er van uit dat ik altijd een geldige waarde zou krijgen (ik had dit natuurlijk netjes moeten afvangen). Stations moet ik inderdaad nog even afvangen. Ik was ook begonnen aan een keyboard vriendelijke implementatie, maar mijn drang om snel live te zetten was wat groter daar. Ik ga dat nog aanpakken!
Het werkt:eenhoogh schreef op woensdag 29 juni 2016 @ 20:27:
[...]
Thanks! Slack staat op de roadmap, Hangouts nog niet. 10 minuten mag zeker ook! Als je handig bent met inspect element kan je het zelf in de source aanpassen, de server is flexibel haha

(Excuus voor het vieze scherm, ik moet opschieten voor de trein.)
trix0r schreef op donderdag 30 juni 2016 @ 13:39:
[...]
's-Hertogenbosch selecteren werkt niet, waarschijnlijk door de single-quote. En wordt daarbij ook niet gevonden onder de alias Den-Bosch ;-).
Edit. Sorry, ik had nog gekeken of iemand het al gemeld had, maar zag het niet... dan post je iets, en staat het er 2 posts boven.
Probleem met het Quotje is gefixt!Trasos schreef op woensdag 29 juni 2016 @ 18:30:
[...]
Top idee!
Ik krijg om de een of andere reden met geen mogelijkheid station 's-Hertogenbosch gekozen op mijn telefoon. Hij staat wel in de dropdown, maar hij laat mijn getypte tekst staan als ik 'm wil selecteren.
Whoa, vet ook op meldingen op de smartwatch!DaCoTa schreef op donderdag 30 juni 2016 @ 17:57:
[...]
Het werkt:
[afbeelding]
(Excuus voor het vieze scherm, ik moet opschieten voor de trein.)
Thanks iedereen voor de feedback tot nu to!
Geen idee of een Linux backup script ook onder "tools" valt, maar het heeft me aardig wat tijd gekost om te maken (vooral uitzoekwerk over LVM, systemd en een beetje BASH scripting leren), dus ik ben er blij mee 
Wat doet het?
Een LVM snapshot maken, deze mounten en er vervolgens een backup van maken naar een andere server.
Waarom is het nodig?
Ik bewaar bare git repositories op deze Linux server en wil graag consistente backup's hebben. Om deze reden is het belangrijk om een snapshot te maken.
Daarnaast heb ik het script ook met systemd gescheduled:
homebackup.service:
homebackup.timer:
Omdat ik Fedora Server gebruik, kan ik hierdoor met de Cockpit web interface eenvoudig zien wanneer de taak voor het laatst is uitgevoerd en de log files bekijken
Wat doet het?
Een LVM snapshot maken, deze mounten en er vervolgens een backup van maken naar een andere server.
Waarom is het nodig?
Ik bewaar bare git repositories op deze Linux server en wil graag consistente backup's hebben. Om deze reden is het belangrijk om een snapshot te maken.
Bash:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
| #!/bin/bash - # # Script which creates a LVM snapshot, mounts it, and then makes a # backup of the configured directories. # # # Begin of configuration section # VOLUME_GROUP="/dev/saturn-vg" VOLUME_NAME="$VOLUME_GROUP/home" SNAPSHOT_NAME="snap" SNAPSHOT_VOLUME_NAME="$VOLUME_GROUP/$SNAPSHOT_NAME" SNAPSHOT_MOUNT_POINT="/mnt/snap" SNAPSHOT_SIZE="1024M" SOURCE_DIR="/mnt/snap" TARGET_MOUNT_POINT="/mnt/backup" TARGET_ARCHIVE="$TARGET_MOUNT_POINT/SaturnHomes-$(date +"%Y%m%d").tar.gz" LOG_DATE="False" LVCREATE=$(which lvcreate) LVREMOVE=$(which lvremove) LVDISPLAY=$(which lvdisplay) MOUNT=$(which mount) UMOUNT=$(which umount) TAR=$(which tar) MOUNTPOINT=$(which mountpoint) CURRENT_DIR=$(pwd) # # End of configuration section # function log { if [ $LOG_DATE = "True" ]; then echo -n "$(date +"%Y%m%d %H:%M:%S") " fi echo "$1" } function die { log "$1" cleanup log "There were errors during the backup!" exit 1 } function cleanup { # Change back to current dir log "Changing back to $CURRENT_DIR" cd $CURRENT_DIR # Unmount target filesystem (when mounted) if $MOUNTPOINT -q $TARGET_MOUNT_POINT; then log "Unmounting target file system" $UMOUNT $TARGET_MOUNT_POINT \ || log "Unmounting target file system failed." fi # Unmount snapshot filesystem (when mounted) if $MOUNTPOINT -q $SNAPSHOT_MOUNT_POINT; then log "Unmounting the snapshot" $UMOUNT $SNAPSHOT_VOLUME_NAME \ || log "Unmounting snapshot failed." fi # Remove snapshot volume (when it exists) if $LVDISPLAY | grep -q $SNAPSHOT_VOLUME_NAME; then log "Removing snapshot volume $SNAPSHOT_VOLUME_NAME" $LVREMOVE -f $SNAPSHOT_VOLUME_NAME \ || log "Removing snapshot failed." fi } # Create snapshot volume log "Creating snapshot for volume $VOLUME_NAME" $LVCREATE -L $SNAPSHOT_SIZE -s -n $SNAPSHOT_NAME $VOLUME_NAME \ && log "Snapshot volume $SNAPSHOT_VOLUME_NAME created." \ || die "Snapshot creation failed." # Mount snapshot filesystem log "Mounting snapshot on $SNAPSHOT_MOUNT_POINT" $MOUNT $SNAPSHOT_VOLUME_NAME $SNAPSHOT_MOUNT_POINT -o ro,nouuid \ && log "Snapshot mounted on $SNAPSHOT_MOUNT_POINT" \ || die "Mounting snapshot failed." # Mount target filesystem log "Mounting target filesystem $TARGET_MOUNT_POINT" $MOUNT $TARGET_MOUNT_POINT \ && log "Target filesystem mounted on $TARGET_MOUNT_POINT." \ || die "Mounting target filesystem failed." # Change to the backup source directory cd $SOURCE_DIR \ && log "Changed to $SOURCE_DIR" \ || die "Could not change to $SOURCE_DIR" # Create tar archive log "Creating archive $TARGET_ARCHIVE" $TAR cfz $TARGET_ARCHIVE $SOURCE_DIR \ && log "Archive $TARGET_ARCHIVE created." \ || die "Failed to create archive $TARGET_ARCHIVE" # Perform cleanup cleanup # Log backup succeeded log "Backup succeeded!" |
Daarnaast heb ik het script ook met systemd gescheduled:
homebackup.service:
code:
1
2
3
4
5
6
7
8
9
10
11
12
| [Unit] Description=Home Backup Task After=network.target [Service] Type=oneshot ExecStart=/home/marc/Scripts/homebackup.sh User=root Group=root [Install] WantedBy=default.target |
homebackup.timer:
code:
1
2
3
4
5
| [Unit] Description=Run homebackup.service every day at 1 AM [Timer] OnCalendar=*-*-* 01:00:00 |
Omdat ik Fedora Server gebruik, kan ik hierdoor met de Cockpit web interface eenvoudig zien wanneer de taak voor het laatst is uitgevoerd en de log files bekijken
Ask yourself if you are happy and then you cease to be.
Ik maak hier en daar wel eens een applicatie in bijvoorbeeld C# (mono), daar wil ik soms een beetje leuk uitziende interface bij hebben, maar dat gaat meestal niet zo makkelijk in c# mono. Daarbij komt ook dat het een wel werkt op windows en het andere niet op linux. Meestal maak ik in dat geval een simpele http servertje die ik gebruik om daarmee een webinterface te laten zien. Met html en JavaScript ben ik veel flexibeler in het maken van een interface, plus met de juiste frameworks ziet het er vaak ook nog eens best goed uit. Nu is het zo dat een gebruiker daarvoor telkens naar een IP address moet navigeren, wat nogal eens kan veranderen of gewoon lastig te onthouden is. (In geval dat je bijvoorbeeld een back end hebt draaien op je RPi zoals ik dat vaak heb). Mij leek het dus handig om een library of iets dergelijks te hebben voor javascript die lokaal webservers kan detecteren
. Naar wat rondgesnuffeld te hebben op ze interwebz bleek dat dat niet echt vanzelfsprekend is, ik kon maar weinig vinden, laat staan een complete library die dat voor mij regelde. Ik las toen toevallig iets over webrtc, waarmee je via javascript de lokale ip adres kan achterhalen. Met dat in het achterhoofd bedacht ik me dat ik het misschien zelf ook wel kon maken... en zo gezegd, zo gedaan:
CSWebServerDetection
Werking is een beetje moeilijk zelf te testen tenzij je een webserver bij de hand hebt die ook voldoet aan de in de GitHub beschreven eisen (het is echt bedoeld voor zelf gebouwde http servers waarbij je de headers en al dat soort gebeuren kunt aanpassen) , dus ook maar voor de lol een filmpje gemaakt voor degene die geïnteresseerd zijn onder ons.
CSWebServerDetection
Werking is een beetje moeilijk zelf te testen tenzij je een webserver bij de hand hebt die ook voldoet aan de in de GitHub beschreven eisen (het is echt bedoeld voor zelf gebouwde http servers waarbij je de headers en al dat soort gebeuren kunt aanpassen) , dus ook maar voor de lol een filmpje gemaakt voor degene die geïnteresseerd zijn onder ons.
Toestemming nodig voor bekijken van YouTube
Op deze plek staat ingesloten content die van YouTube afkomstig is. Het tonen van deze inhoud kan ertoe leiden dat YouTube persoonlijke gegevens zoals je IP-adres verwerkt en/of cookies op jouw computer of ander apparaat zet. Hiervoor moet je eerst expliciet toestemming geven voor Sociale media.
Bekijk op YouTubeJavaScript Client side (web) server detection :D
Hallo allemaal,
Ik start dit topic omdat ik al weer een tijdje aan het hobbyen ben met een projectje; Chell PHP Portal.
Dit projectje ben ik begonnen om 1 punt/portal te hebben voor de tools die op mijn server draaien. Zodoende dus een portal opgezet waarvan het doel is dat hij volledig configureerbaar is naar de wensen van de gebruikers (zover is het nog lang niet helaas). Het hele project is in feite een dashboard pagina en een settings pagina, waarbij de dashboard pagina het interessantst is;
Ik start dit topic voor feedback en het zou nog mooier zijn als er mensen willen bijdragen aan de ontwikkeling. Op de Github page staan wat screenshots en een YouTube demo filmpje, beide lopen al wat achter op de huidige ontwikkeling.
Dus neem is een kijkje en schiet maar los!
Ik start dit topic omdat ik al weer een tijdje aan het hobbyen ben met een projectje; Chell PHP Portal.
Dit projectje ben ik begonnen om 1 punt/portal te hebben voor de tools die op mijn server draaien. Zodoende dus een portal opgezet waarvan het doel is dat hij volledig configureerbaar is naar de wensen van de gebruikers (zover is het nog lang niet helaas). Het hele project is in feite een dashboard pagina en een settings pagina, waarbij de dashboard pagina het interessantst is;
- Integratie met PHPSysInfo
- Power status v/d verschillende devices binnen het netwerk (gerealiseerd door simpele ping) met als extra functionaliteit WOL voor apparaten die uitstaan (en goed geconfigureerd binnen de site) en shutdown (enkel via RPC zover).
- rCPU integratie voor een grafische weergave van CPU load op de server.
- Integratie met Kodi voor tonen van laatste media en tonen van NowPlaying. Het tonen van laatste media werkt momenteel enkel met een MySQL database setup van Kodi.
- SubSonic integratie voor tonen van NowPlaying.
- Transmission (BT client) integratie voor tonen actieve torrents en hierbij bijbehorende acties als; pauzeren/starten en verwijderen torrents.
Ik start dit topic voor feedback en het zou nog mooier zijn als er mensen willen bijdragen aan de ontwikkeling. Op de Github page staan wat screenshots en een YouTube demo filmpje, beide lopen al wat achter op de huidige ontwikkeling.
Dus neem is een kijkje en schiet maar los!
[ Voor 3% gewijzigd door jozuf op 10-07-2016 10:46 ]
90710
Drie jaar geleden heb ik een eigen tool gemaakt: Cloud Manager for Office, waarmee je in Office 2013 bijvoorbeeld Dropbox kan toevoegen naast OneDrive om je bestanden op op te slaan.
Nu zag ik dat deze tool niet werkte met Office 2016 dus heb ik vandaag na ruim drie jaar stilte een nieuwe versie gemaakt.
https://cloudmanageroffice.codeplex.com/downloads/get/700684
In tegenstelling tot mijn MicroSE-software is dit programma geheel open source en uitgegeven onder een BSD licentie.

Changelog:
Version 0.5.0.0
- Updated code for .NET 4.5
- Added support for Office 2016
- Fixed detection of DropBox
- Fixed deletion of Services when they're "active" in Office.
Nu zag ik dat deze tool niet werkte met Office 2016 dus heb ik vandaag na ruim drie jaar stilte een nieuwe versie gemaakt.
https://cloudmanageroffice.codeplex.com/downloads/get/700684
In tegenstelling tot mijn MicroSE-software is dit programma geheel open source en uitgegeven onder een BSD licentie.

Changelog:
Version 0.5.0.0
- Updated code for .NET 4.5
- Added support for Office 2016
- Fixed detection of DropBox
- Fixed deletion of Services when they're "active" in Office.
[ Voor 4% gewijzigd door 90710 op 12-07-2016 14:12 ]
Handig scripje.RareAMV schreef op zaterdag 02 juli 2016 @ 18:17:toon volledige bericht
Ik maak hier en daar wel eens een applicatie in bijvoorbeeld C# (mono), daar wil ik soms een beetje leuk uitziende interface bij hebben, maar dat gaat meestal niet zo makkelijk in c# mono. Daarbij komt ook dat het een wel werkt op windows en het andere niet op linux. Meestal maak ik in dat geval een simpele http servertje die ik gebruik om daarmee een webinterface te laten zien. Met html en JavaScript ben ik veel flexibeler in het maken van een interface, plus met de juiste frameworks ziet het er vaak ook nog eens best goed uit. Nu is het zo dat een gebruiker daarvoor telkens naar een IP address moet navigeren, wat nogal eens kan veranderen of gewoon lastig te onthouden is. (In geval dat je bijvoorbeeld een back end hebt draaien op je RPi zoals ik dat vaak heb). Mij leek het dus handig om een library of iets dergelijks te hebben voor javascript die lokaal webservers kan detecteren. Naar wat rondgesnuffeld te hebben op ze interwebz bleek dat dat niet echt vanzelfsprekend is, ik kon maar weinig vinden, laat staan een complete library die dat voor mij regelde. Ik las toen toevallig iets over webrtc, waarmee je via javascript de lokale ip adres kan achterhalen. Met dat in het achterhoofd bedacht ik me dat ik het misschien zelf ook wel kon maken... en zo gezegd, zo gedaan:
CSWebServerDetection
Werking is een beetje moeilijk zelf te testen tenzij je een webserver bij de hand hebt die ook voldoet aan de in de GitHub beschreven eisen (het is echt bedoeld voor zelf gebouwde http servers waarbij je de headers en al dat soort gebeuren kunt aanpassen) , dus ook maar voor de lol een filmpje gemaakt voor degene die geïnteresseerd zijn onder ons.
[video]
Als je toch alleen dit op lokaal netwerk doet, waarom niet gewoon detectie via unicast/multicast?RareAMV schreef op zaterdag 02 juli 2016 @ 18:17:toon volledige bericht
Ik maak hier en daar wel eens een applicatie in bijvoorbeeld C# (mono), daar wil ik soms een beetje leuk uitziende interface bij hebben, maar dat gaat meestal niet zo makkelijk in c# mono. Daarbij komt ook dat het een wel werkt op windows en het andere niet op linux. Meestal maak ik in dat geval een simpele http servertje die ik gebruik om daarmee een webinterface te laten zien. Met html en JavaScript ben ik veel flexibeler in het maken van een interface, plus met de juiste frameworks ziet het er vaak ook nog eens best goed uit. Nu is het zo dat een gebruiker daarvoor telkens naar een IP address moet navigeren, wat nogal eens kan veranderen of gewoon lastig te onthouden is. (In geval dat je bijvoorbeeld een back end hebt draaien op je RPi zoals ik dat vaak heb). Mij leek het dus handig om een library of iets dergelijks te hebben voor javascript die lokaal webservers kan detecteren. Naar wat rondgesnuffeld te hebben op ze interwebz bleek dat dat niet echt vanzelfsprekend is, ik kon maar weinig vinden, laat staan een complete library die dat voor mij regelde. Ik las toen toevallig iets over webrtc, waarmee je via javascript de lokale ip adres kan achterhalen. Met dat in het achterhoofd bedacht ik me dat ik het misschien zelf ook wel kon maken... en zo gezegd, zo gedaan:
CSWebServerDetection
Werking is een beetje moeilijk zelf te testen tenzij je een webserver bij de hand hebt die ook voldoet aan de in de GitHub beschreven eisen (het is echt bedoeld voor zelf gebouwde http servers waarbij je de headers en al dat soort gebeuren kunt aanpassen) , dus ook maar voor de lol een filmpje gemaakt voor degene die geïnteresseerd zijn onder ons.
[video]
Website|Air 3s|Mini 4 Pro|Avata 2|Canon R6|Canon 5d2|8 fisheye|14f2.8|24f2.8|50f1.8|135f2|10-22|17-40|24-105|70-300|150-600
Is dat überhaupt mogelijk met (client side)javascript? Moet toegeven dat ik niet heel erg veel weet van netwerken etc. Maar ik heb wat zitten rond zoeken maar heb nergens iets gevonden over unicast/multicast in combinatie met client-sided javascript. Mogelijk heb ik niet goed gezocht, als het toch mogelijk blijkt wil ik dat graag horenqless schreef op vrijdag 15 juli 2016 @ 09:02:
[...]
Als je toch alleen dit op lokaal netwerk doet, waarom niet gewoon detectie via unicast/multicast?
Heel eerlijk heb ik hier niet eens aan gedacht, maar ik wil het graag cross platform houden. Daarbij komt dat ik mijn backends vaak in c# mono is geschreven en bedoeld is als server die mogelijk 24/7 draait op een rpi bijvoorbeeld. Nu kan ik bijvoorbeeld gewoon op een goedkope webhost mijn interface droppen en door de locale server detectie makkelijk de lokale backend vinden (beetje op de manier waarop plex werkt met hun webinterface, dat soort applicaties). Ook handig als je met dhcp zit en je lease time verloopt en je vervolgens weer mag gaan uitzoeken wat het nieuwe ip is van je backend... dan maakt dit het een stuk makkelijker.appendto schreef op woensdag 13 juli 2016 @ 16:45:
[...]
Handig scripje.maar als je een web applicatie als een desktop app wil gebruiken(dat begrijp ik uit je verhaal) kun je Electron(https://github.com/electron/electron) gebruiken. Je maakt gewoon alles met HTML, CSS en Javascript.
Het gebruik van electron is dan eigenlijk best wel handig
Ik weet dat mijn uitleg een beetje vaag is(nooit mijn sterkste punt geweest) maar het script werkt als volgt:
Client (interface, lokaal geopend/via simpel url van webhost geopend) -> lokaal netwerk -> mijn backend op mijn RPi met onbekende ip.
Benodigd:
backend accepteert CORS http verzoeken en verzend een bericht terug als een client via een bepaalde partial een verzoek doet (bv: xx.xx.xx.xx:8000/isthisabackend), wat overigens niet verplicht is, alleen handig om de juiste server te vinden ^^.
Wat de client doet:
Client doet een reeks ajax verzoeken op alle ips tussen xxx.xxx.xxx.0 - xxx.xxx.xxx.255 (of minder als je dat vast stelt) en controleert welke ajax request succesvol zijn en geeft de ontvangen data terug
Client controleert of de ontvangen data van de backend is die hij zoekt en verbind ermee (of je laat de gebruiker de server selecteren etc... allemaal mogelijk)
Voordeel:
De interface is compleet gescheiden van de backend. Hoeft dus niet op hetzelfde netwerk gehost te zijn en kan zelfs zonder tussenkomst van een webserver werken.
Unicast/multicast kan idd niet in de client, maar in electron (nodejs) wel.
Website|Air 3s|Mini 4 Pro|Avata 2|Canon R6|Canon 5d2|8 fisheye|14f2.8|24f2.8|50f1.8|135f2|10-22|17-40|24-105|70-300|150-600
Jeeej nieuwe versie van Telemeter Indicator is klaar voor gebruik: https://cd-pc.be/?page=telemeter




v1.0.7.7 is al een paar dagen klaar met volgende hoogte punten:
Main:
Add [bug_id:62]: total month usage in a menu item
Add [bug_id:18] Feature request: do something more with "Mijn Telenet Werken" = doesn't update when maintenance is still going
Telegrafiek:
Add [bug_id:62]: total month usage in bottom left corner
Chg: loading saved data
Chg: Peak/off-peak text
Logbook:
Chg: log coloring routine
Chg: when restarting on the same day then the logbook is reloaded


v1.0.7.7 is al een paar dagen klaar met volgende hoogte punten:
Main:
Add [bug_id:62]: total month usage in a menu item
Add [bug_id:18] Feature request: do something more with "Mijn Telenet Werken" = doesn't update when maintenance is still going
Telegrafiek:
Add [bug_id:62]: total month usage in bottom left corner
Chg: loading saved data
Chg: Peak/off-peak text
Logbook:
Chg: log coloring routine
Chg: when restarting on the same day then the logbook is reloaded
[ Voor 17% gewijzigd door Damic op 26-08-2016 10:28 ]
Al wat ik aanraak werk niet meer zoals het hoort. Damic houd niet van zijn verjaardag
Read!

Wat is het?
Een bookmarklet waarmee je sneller stukken tekst kunt lezen. Handig voor mensen die te veel tijd op het web doorbrengen.Hoe gebruik je het?
Sleep de link (die vind je hier) naar je bookmarks toolbar. Selecteer de tekst die je wil lezen. Activeer de bookmarklet, en de speed reading widget verschijnt op de pagina.- Documentatie: https://maksverver.github.io/read/
- Broncode: https://github.com/maksverver/read/
Ik begreep uit jouw eerdere post dat jij eigenlijk een desktop app wilde maken maar je dit niet deed omdat je de UI niet zo mooi kon maken en het daarom met HTML, CSS en JS deed in een webapp. Daarom stelde ik Electron voorRareAMV schreef op vrijdag 15 juli 2016 @ 14:36:toon volledige bericht
[...]
Heel eerlijk heb ik hier niet eens aan gedacht, maar ik wil het graag cross platform houden. Daarbij komt dat ik mijn backends vaak in c# mono is geschreven en bedoeld is als server die mogelijk 24/7 draait op een rpi bijvoorbeeld. Nu kan ik bijvoorbeeld gewoon op een goedkope webhost mijn interface droppen en door de locale server detectie makkelijk de lokale backend vinden (beetje op de manier waarop plex werkt met hun webinterface, dat soort applicaties). Ook handig als je met dhcp zit en je lease time verloopt en je vervolgens weer mag gaan uitzoeken wat het nieuwe ip is van je backend... dan maakt dit het een stuk makkelijker.
Het gebruik van electron is dan eigenlijk best wel handig, het is geen vervanging van maar meer een toevoeging waarbij ik eigenlijk die hele stap van een webhost kan overslaan
. Maar dan heb ik nog steeds dit server detectie scriptje nodig om mn backend te vinden die ergens in mijn netwerk op mn pi draait ^^.
Ik weet dat mijn uitleg een beetje vaag is(nooit mijn sterkste punt geweest) maar het script werkt als volgt:
Client (interface, lokaal geopend/via simpel url van webhost geopend) -> lokaal netwerk -> mijn backend op mijn RPi met onbekende ip.
Benodigd:
backend accepteert CORS http verzoeken en verzend een bericht terug als een client via een bepaalde partial een verzoek doet (bv: xx.xx.xx.xx:8000/isthisabackend), wat overigens niet verplicht is, alleen handig om de juiste server te vinden ^^.
Wat de client doet:
Client doet een reeks ajax verzoeken op alle ips tussen xxx.xxx.xxx.0 - xxx.xxx.xxx.255 (of minder als je dat vast stelt) en controleert welke ajax request succesvol zijn en geeft de ontvangen data terug
Client controleert of de ontvangen data van de backend is die hij zoekt en verbind ermee (of je laat de gebruiker de server selecteren etc... allemaal mogelijk)
Voordeel:
De interface is compleet gescheiden van de backend. Hoeft dus niet op hetzelfde netwerk gehost te zijn en kan zelfs zonder tussenkomst van een webserver werken.
Geen probleem, wat ik zei in die eerst post was eigenlijk ook de eerste reden die ik had om dit zo te doen (heb altijd al een handje gehad van te moeilijk doen x), maar dat maakt het soms juist leuk^^ ), ik had toen nog niet echt gezocht op zoiets als electron, ik had ooit een keer met nodejs en Deskshell gewerkt, alleen mijn applicatie afzonderlijk was toen ~4 mb, en alles gecombineerd werd uiteindelijk 60+mb, wat ik een beetje over de top vond voor alleen een backend + frontend voor een relatief simpel programma. Vandaar dat ik wat sceptisch was over programma's zoals Electron etc. ^^.appendto schreef op dinsdag 19 juli 2016 @ 12:21:
[...]
Ik begreep uit jouw eerdere post dat jij eigenlijk een desktop app wilde maken maar je dit niet deed omdat je de UI niet zo mooi kon maken en het daarom met HTML, CSS en JS deed in een webapp. Daarom stelde ik Electron voorOja Electron is cross platform trouwens. Maar ik heb het denk ik dan verkeerd begrepen dan
Ten opzichte van een website neemt een programma met bijvoorbeeld Electron inderdaad een stuk meer ruimte in - Webkit of Blink wordt meegeleverd, node.js etc. Maar maakt 60MB nou echt zo veel uit? Die download ik in een paar seconden. Ik merk dat veel mensen nogal huiverig zijn voor "grote" hoeveelheden terwijl het in mijn ogen echt niet zo veel uit maakt. Dan wacht je iets langer tot het gedownload is, met de snelheden in Nederland meestal nauwelijks merkbaar. Als je veel gebruikers hebt in landen met lagere internetsnelheden of betaalde verbindingen is het een ander verhaal.RareAMV schreef op dinsdag 19 juli 2016 @ 17:35:
[...]
Geen probleem, wat ik zei in die eerst post was eigenlijk ook de eerste reden die ik had om dit zo te doen (heb altijd al een handje gehad van te moeilijk doen x), maar dat maakt het soms juist leuk^^ ), ik had toen nog niet echt gezocht op zoiets als electron, ik had ooit een keer met nodejs en Deskshell gewerkt, alleen mijn applicatie afzonderlijk was toen ~4 mb, en alles gecombineerd werd uiteindelijk 60+mb, wat ik een beetje over de top vond voor alleen een backend + frontend voor een relatief simpel programma. Vandaar dat ik wat sceptisch was over programma's zoals Electron etc. ^^.
Overigens geen mening over of je programma wel of niet een desktopvariant zou moeten bieden, en ik sta open voor een andere kijk hier op
Persoonlijk vind ik het ongehoord om 60 mb te moeten downloaden alleen maar voor een beetje css/html dat je gaat tonen. En dan vooral 'wat maakt het uit'. Verspilling is dan mijn eerste gedachte. Zijn er geen andere oplossingen die veel minder ruimte nodig hebben?Chris7 schreef op dinsdag 19 juli 2016 @ 20:23:
[...]
Ten opzichte van een website neemt een programma met bijvoorbeeld Electron inderdaad een stuk meer ruimte in - Webkit of Blink wordt meegeleverd, node.js etc. Maar maakt 60MB nou echt zo veel uit? Die download ik in een paar seconden. Ik merk dat veel mensen nogal huiverig zijn voor "grote" hoeveelheden terwijl het in mijn ogen echt niet zo veel uit maakt. Dan wacht je iets langer tot het gedownload is, met de snelheden in Nederland meestal nauwelijks merkbaar. Als je veel gebruikers hebt in landen met lagere internetsnelheden of betaalde verbindingen is het een ander verhaal.
Overigens geen mening over of je programma wel of niet een desktopvariant zou moeten bieden, en ik sta open voor een andere kijk hier op.
Als je het zelf wilt programmeren:Webgnome schreef op dinsdag 19 juli 2016 @ 22:46:
[...]
Persoonlijk vind ik het ongehoord om 60 mb te moeten downloaden alleen maar voor een beetje css/html dat je gaat tonen. En dan vooral 'wat maakt het uit'. Verspilling is dan mijn eerste gedachte. Zijn er geen andere oplossingen die veel minder ruimte nodig hebben?
http://www.awesomium.com/
Kan ook moeilijk doen zonder awesomium + dat het eigenlijk gewoon stom is om te doen(vind ik dus wel leuk x) omdat het kan ) :
Maakt in c# service of winform die in tray draait waarin je een http server opzet. Vervolgens al je html, css en js bestanden hard coded als variabelen of hoe je dat ook wil doen in je c# code vastleggen (of je laat ze gewoon staan in de map van de applicatie staan en dmv van je http server serveer je ze. Vervolgens (en dit is gewoon slecht, punt


Just my 2 cents...
Je zou een slim versie kunnen leveren die de rest download bij/na installatie als er echt mensen zijn die klagen over de grootteChris7 schreef op dinsdag 19 juli 2016 @ 20:23:
[...]
Ten opzichte van een website neemt een programma met bijvoorbeeld Electron inderdaad een stuk meer ruimte in - Webkit of Blink wordt meegeleverd, node.js etc. Maar maakt 60MB nou echt zo veel uit? Die download ik in een paar seconden. Ik merk dat veel mensen nogal huiverig zijn voor "grote" hoeveelheden terwijl het in mijn ogen echt niet zo veel uit maakt. Dan wacht je iets langer tot het gedownload is, met de snelheden in Nederland meestal nauwelijks merkbaar. Als je veel gebruikers hebt in landen met lagere internetsnelheden of betaalde verbindingen is het een ander verhaal.
Overigens geen mening over of je programma wel of niet een desktopvariant zou moeten bieden, en ik sta open voor een andere kijk hier op.
Al wat ik aanraak werk niet meer zoals het hoort. Damic houd niet van zijn verjaardag
Je zou het zelfs zo kunnen maken dat de componenten van de applicatie pas gedownload worden als ze echt nodig zijn. Bijv je vraagt een configuratiescherm op: please wait...downloadingDamic schreef op woensdag 20 juli 2016 @ 07:03:
[...]
Je zou een slim versie kunnen leveren die de rest download bij/na installatie als er echt mensen zijn die klagen over de grootte
Ik heb zelf heel vaak webapplicaties gezien die groter dan 20 MB zijn. Laatst kwam ik er een tegen die had 50 MB aan third party libraries. En als je er zo bij stil staat is dat helemaal niet gek want je hebt vaak niet de tijd om alles vanaf scratch af aan te schrijven. Je hebt misschien een klein deel van een framework nodig maar je included een library van 2 MB. Tja als je dan zo een aantal bibliotheken hebt zit je zo aan 10 MB.
Als ik een webapp maak probeer ik dat zo veel mogelijk met de kale Java EE Servlets te doen en als ik een desktop app maak gebruik ik Java SE met SWT of plain old C voor hele kleine applicaties.
Je kan je app ook met cordova inpakken voor windows:

Klik hier om op linkedIn lid te worden van de Freelance Tweakers groep.
Daar heb je een punt, sommige programma's en games gaan al voorbij de 100GB omdat iedereen toch wel genoeg ruimte heeft... Dan slaat het weer helemaal door naar de andere kant.Webgnome schreef op dinsdag 19 juli 2016 @ 22:46:
[...]
Persoonlijk vind ik het ongehoord om 60 mb te moeten downloaden alleen maar voor een beetje css/html dat je gaat tonen. En dan vooral 'wat maakt het uit'. Verspilling is dan mijn eerste gedachte. Zijn er geen andere oplossingen die veel minder ruimte nodig hebben?
Ik denk dat je er niet te huiverig voor moet zijn om een programma een paar MB groter te maken, in het voorbeeld met Electron: het is een stuk groter dan de standaard website, maar het grootste deel van de 60MB is het framework. Als er meer wordt toegevoegd zijn het lichtgewicht HTML/CSS/JS bestanden waardoor de grootte dan weer niet zo veel toeneemt. Maar het is zoeken naar een balans, wanneer wordt het zo groot dat het te gek wordt voor een simpel programma.
Bij games kan ik nog begrijpen dat je ettelijke gigabytes nodig hebt. Simpelweg om de textures die nodig zijn. Deze nemen, zover ik weet, bij game dev altijd de meeste ruimte in. De balans bij een framework als Eelctron is volgens mij compleet weg. Dat het voordelig is voor de ontwikkelaar om een dergleijk framework te gebruiken ( i.v.m. eerder aangehaalde libraries etc ) begrijp ik helemaal maar het zorgt er ook voor dat mensen, zoals ook al eerder genoemd, een framework donwloaden van 2 mb terwijl ze er maar een handje vol functies van nodig hebben.Chris7 schreef op woensdag 20 juli 2016 @ 16:24:
[...]
Daar heb je een punt, sommige programma's en games gaan al voorbij de 100GB omdat iedereen toch wel genoeg ruimte heeft... Dan slaat het weer helemaal door naar de andere kant.
Ik denk dat je er niet te huiverig voor moet zijn om een programma een paar MB groter te maken, in het voorbeeld met Electron: het is een stuk groter dan de standaard website, maar het grootste deel van de 60MB is het framework. Als er meer wordt toegevoegd zijn het lichtgewicht HTML/CSS/JS bestanden waardoor de grootte dan weer niet zo veel toeneemt. Maar het is zoeken naar een balans, wanneer wordt het zo groot dat het te gek wordt voor een simpel programma.
Daar zou men eens op moeten gaan letten dat men niet zomaar een hele library download maar alleen dat wat men ook daadwerkelijk nodig heeft. Persoonlijk maak ik ook wel eens de fout natuurlijk. Laatst nog tijdens ontwikkeling van mijn eerst Homey app. Daar heb ik een hele library gedownload ( a 6 mb) om rss feeds te parsen. Daar ben ik nu naar het kijken hoe ik die kan opschonen. (maar goed dan kom je weer op een ander punt. Namelijk dat je een framework gebruikt wat eigenlijk niet bedoelt is voor dit soort complexe zaken).
Bottom line. Door de beschikbaarheid van libraries, rest api' s etc etc worden programmeurs steeds luier en luier en kijken totaal niet naar de grote van het systeem want ja.. het draait / werkt toch wel.
526735
En voor sommige mensen maakt de grootte van een applicatie wel uit. Ik had jaren gewerkt met een EEE PC 701 met een 4GB SSD en dan kan je er niet zomaar elk programma op installeren ivm de grootte. Of bij het dramatische netwerk van sommige scholen waar 65MB downloaden al 10 minuten duurt.
Wow.. is je kam om iedereen overheen te scheren wel groot genoeg? Ik, als webdeveloper (PHP/JS/etc), zoek het niet om bijvoorbeeld ook C, Java of whatever erbij te gaan leren. Daar heb ik simpelweg de tijd niet voor, al zou ik 't willen. Voor mij is bijvoorbeeld Electron een uitkomst. Met de stack waar ik vertrouwd mee ben toch crossplatform tools kunnen maken.Bottom line. Door de beschikbaarheid van libraries, rest api' s etc etc worden programmeurs steeds luier en luier en kijken totaal niet naar de grote van het systeem want ja.. het draait / werkt toch wel.
Daarnaast zie ik hier een vergelijking tussen ~60MB voor Electron en 100GB voor games. Die vergelijking slaat natuurlijk nergens op. En sowieso; als ik een app maak in C# (.net) is die misschien maar een paar MB groot. Maar hoe groot zijn de .net runtime libraries? Dat ik die niet meebundel bij m'n app wil niet zeggen dat ik ze niet nodig heb. En als ik die app crossplatform wil uitbrengen, hoeveel moeite moeten mijn gebruikers dan doen voordat alle benodigde runtimes (mono etc.) goed werken? Hetzelfde geldt natuurlijk voor Java met al z'n verschillende runtimes en versies.
Persoonlijk vind ik echt dat mensen hier wel heel erg beperkt denken '60MB voor wat JS/HTML/CSS is teveel dus het is slecht'. Zo zwart/wit is de wereld niet.
edit:
Ja, want 10 minuten wachten kan écht nietOf bij het dramatische netwerk van sommige scholen waar 65MB downloaden al 10 minuten duurt.

[ Voor 5% gewijzigd door Siebsel op 21-07-2016 09:46 ]
Om maar even te reageren op je Edit. Nee 10 minuten kan ECHT NIET. Jij neemt niet de tijd om je te verdiepen in desktop technieken die zich bewezen hebben maar jou klanten moeten zich wel gaan ergeren aan iets dat 10 minuten nodig heeft om te downloadenSiebsel schreef op donderdag 21 juli 2016 @ 09:30:toon volledige bericht
[...]
Wow.. is je kam om iedereen overheen te scheren wel groot genoeg? Ik, als webdeveloper (PHP/JS/etc), zoek het niet om bijvoorbeeld ook C, Java of whatever erbij te gaan leren. Daar heb ik simpelweg de tijd niet voor, al zou ik 't willen. Voor mij is bijvoorbeeld Electron een uitkomst. Met de stack waar ik vertrouwd mee ben toch crossplatform tools kunnen maken.[/b]
Daarnaast zie ik hier een vergelijking tussen ~60MB voor Electron en 100GB voor games. Die vergelijking slaat natuurlijk nergens op. En sowieso; als ik een app maak in C# (.net) is die misschien maar een paar MB groot. Maar hoe groot zijn de .net runtime libraries? Dat ik die niet meebundel bij m'n app wil niet zeggen dat ik ze niet nodig heb. En als ik die app crossplatform wil uitbrengen, hoeveel moeite moeten mijn gebruikers dan doen voordat alle benodigde runtimes (mono etc.) goed werken? Hetzelfde geldt natuurlijk voor Java met al z'n verschillende runtimes en versies.
Persoonlijk vind ik echt dat mensen hier wel heel erg beperkt denken '60MB voor wat JS/HTML/CSS is teveel dus het is slecht'. Zo zwart/wit is de wereld niet.
edit:
[...]
Ja, want 10 minuten wachten kan écht niet

Nee, het is niet mijn fout dat de klant zo'n brakke internetverbinding heeft.Webgnome schreef op donderdag 21 juli 2016 @ 09:52:
[...]
[..] maar jou klanten moeten zich wel gaan ergeren aan iets dat 10 minuten nodig heeft om te downloaden
En daarnaast; kom op, we hebben een discussie over 60MB. Waar gaat dat over? Laten we nu niet met z'n allen schijnheilig gaan lopen doen alsof dat zoveel is. Klakkeloos maar alles includen aan grote packages hoeft inderdaad niet, dat ben ik met je eens, maar (veel) extra tijd steken om 60MB terug te brengen naar 20MB slaat ook nergens op.

[ Voor 24% gewijzigd door Siebsel op 21-07-2016 11:08 ]
1. Nee we hadden een discussie over de verspilling door het niet uit willen pluizen van zaken en het willen blijven gebruiken van technieken op de desktop die in de browser werken waar dus veel effort voor nodig is.Siebsel schreef op donderdag 21 juli 2016 @ 11:02:
[...]
Nee, het is niet mijn fout dat de klant zo'n brakke internetverbinding heeft.
En daarnaast; kom op, 1 we hebben een discussie over 60MB. Waar gaat dat over? Laten we nu niet met z'n allen schijnheilig gaan lopen doen alsof dat zoveel is. 2 Klakkeloos maar alles includen aan grote packages hoeft inderdaad niet, dat ben ik met je eens, maar (veel) extra tijd steken om 60MB terug te brengen naar 20MB slaat ook nergens op.
2. Gelukkig.
Nog niets boeiends, maar het begin is er :
https://nest.dennusb.nl/

De Nest API uitlezen (doet de cronjob nu al een maand) en in grafiekjes en statistieken verwerken
Iemand tips voor een goede GD-lib voor grafieken?
https://nest.dennusb.nl/
De Nest API uitlezen (doet de cronjob nu al een maand) en in grafiekjes en statistieken verwerken
Owner of DBIT Consultancy
Hey,jozuf schreef op zondag 10 juli 2016 @ 10:40:
-- best veel tekst --
Dat ziet er aardig uit. wat ik me echter afvraag: waarom Phalcon?
Denk als je er echt een community ding van wilt maken dat je beter voor iets als Laravel had kunnen gaan.
persoonlijk heb ik nog steeds moeite met het feit dat de developer vind dat ik een C extensie in mn webserver moet haken. kwestie van vertrouwen.
Je zou voor het laden van config files overigens eens kunnen kijken naar dotEnv op github. een PHP library die dat wat meer de unix-standaard manier doet.
Verder vind ik het een leuk dashboard hoor
Sla de data op in InfluxDB en maak er met Grafana grafieken van. Dan ziet het superchique uit. In InfluxDB kun je dan ook retention policy's gebruiken om bijv. alleen de laatste maand aan data te bewaren. En dan met een Continuous Query de boel aggregeren en naar een andere tabel laten wegschrijven voor gemiddelden/min/max per dag/week/maand etc.DennusB schreef op donderdag 21 juli 2016 @ 21:08:
Nog niets boeiends, maar het begin is er :
https://nest.dennusb.nl/
[afbeelding]
De Nest API uitlezen (doet de cronjob nu al een maand) en in grafiekjes en statistieken verwerkenIemand tips voor een goede GD-lib voor grafieken?
Krijg je dit soort dingen: Nicky's TweakBlog: bijmij-grafana: OpenTherm Gateway.
Over het optimalisatie verhaal, ik vind zeker dat je daar naar moet kijken. Het is iemand vast wel eens opgevallen dat, hoe beroerd je internetverbinding ook is (gare hotspot op vakantie ofzo), Tweakers altijd wel snel laadt. Ze doen hier veel moeite voor om de site zo compact mogelijk te krijgen en allerlei query optimalisatie e.d.
Zie o.a.
reviews: Sql-optimalisatie: één grote versus veel kleine queries
reviews: Tweakers' serverpark anno 2013
reviews: Praktisch geheugenbeheer in Java bij Tweakers.net
reviews: Responsive web design: Tweakers-rwd onder de loep
Het is best interessant om af en toe eens de 'Development round-up's' op https://tweakers.net/plan/ door te lezen.
[ Voor 16% gewijzigd door ThinkPad op 23-07-2016 11:28 ]
Bedankt!Xantios schreef op zaterdag 23 juli 2016 @ 11:06:toon volledige bericht
[...]
Hey,
Dat ziet er aardig uit. wat ik me echter afvraag: waarom Phalcon?
Denk als je er echt een community ding van wilt maken dat je beter voor iets als Laravel had kunnen gaan.
persoonlijk heb ik nog steeds moeite met het feit dat de developer vind dat ik een C extensie in mn webserver moet haken. kwestie van vertrouwen.
Je zou voor het laden van config files overigens eens kunnen kijken naar dotEnv op github. een PHP library die dat wat meer de unix-standaard manier doet.
Verder vind ik het een leuk dashboard hoordus zeker meer doorgaan!
Er is geen reden voor de keus behalve dat ik is in dat framework wilde duiken. Maar je hebt zeker een punt, thx voor de tips.
Het framework zelf wordt maar beperkt gebruikt, het overporten naar iets anders zou niet heel veel moeite kosten. De meeste ontwikkeling zit hem in het frontend verhaal (js/css).vind ik ook altijd het leukste om te doen
Dat was een hele goede tipThinkPadd schreef op zaterdag 23 juli 2016 @ 11:21:
[...]
Sla de data op in InfluxDB en maak er met Grafana grafieken van. Dan ziet het superchique uit. In InfluxDB kun je dan ook retention policy's gebruiken om bijv. alleen de laatste maand aan data te bewaren. En dan met een Continuous Query de boel aggregeren en naar een andere tabel laten wegschrijven voor gemiddelden/min/max per dag/week/maand etc.
https://grafana.dennusb.n...qM4aTn8GavGYeU05Kn3NxrdhN
Thanks.
Moet het nog iets verder uitbreiden
Owner of DBIT Consultancy
Met het veld 'ALIAS BY' in de query-editor kun je de naam van de series nog aanpassen en er 'Luchtvochtigheid' van maken i.p.v. 'current_humidity'. De rest kom je vanzelf wel achter door wat pielenDennusB schreef op woensdag 27 juli 2016 @ 20:14:
[...]
Dat was een hele goede tip
https://grafana.dennusb.n...qM4aTn8GavGYeU05Kn3NxrdhN
Thanks.
Moet het nog iets verder uitbreidenMaar dit is wel heel erg tof!
[ Voor 43% gewijzigd door ThinkPad op 27-07-2016 20:18 ]
Daar kwam ik zojuist achter inderdaadThinkPadd schreef op woensdag 27 juli 2016 @ 20:16:
[...]
Met het veld 'ALIAS BY' in de query-editor kun je de naam van de series nog aanpassen en er 'Luchtvochtigheid' van maken i.p.v. 'current_humidity'. De rest kom je vanzelf wel achter door wat pielen
Edit : Zojuist ook even de temp en vochtigheid buiten toegevoegd
[ Voor 7% gewijzigd door DennusB op 27-07-2016 20:20 ]
Owner of DBIT Consultancy
Sinds windows10 zijn prioriteiten voor draadloze netwerken niet meer in te stellen, snel even opgelost

Drag & drop om prioriteit in te stellen, autoconnect en autoswitch is ook onmiddelijk in te stellen.
(Autoswitch: of het netwerk verlaten mag worden voor een beter alternatief)
http://bertware.net/blog/...ork-priority-with-wlan10/
https://github.com/Bertware/wlan10

Drag & drop om prioriteit in te stellen, autoconnect en autoswitch is ook onmiddelijk in te stellen.
(Autoswitch: of het netwerk verlaten mag worden voor een beter alternatief)
http://bertware.net/blog/...ork-priority-with-wlan10/
https://github.com/Bertware/wlan10
[ Voor 5% gewijzigd door bertware op 28-07-2016 08:14 . Reden: Github link toegevoegd ]
Wow, dat is een erg mooie, duidelijke UI!
Veel succes met de development!
Veel succes met de development!
Voor de Mac liefhebbers heb ik een super simpele radio app gebouwd die niks anders dan de audio stream laat horen. Was zelf een beetje klaar met alle brakke webplayers.
http://andrewho.nl/radio-app-for-mac/
http://andrewho.nl/radio-app-for-mac/
Ik ben weer een stuk verder met Voertuig.net. Grootste nieuwe mogelijkheden:
Multi facetted search geimplementeerd:
Mogelijkheid om kentekens te vergelijken:
Ik heb de hele website van de grond af aan opnieuw gebouwd. Maak nu gebruik van Laravel, erg prettig framework als je er eenmaal wat bekender mee bent. Verder loopt nu al het verkeer over een beveiligde verbinding en is de snelheid een stuk verbeterd.
Multi facetted search geimplementeerd:

Mogelijkheid om kentekens te vergelijken:

Ik heb de hele website van de grond af aan opnieuw gebouwd. Maak nu gebruik van Laravel, erg prettig framework als je er eenmaal wat bekender mee bent. Verder loopt nu al het verkeer over een beveiligde verbinding en is de snelheid een stuk verbeterd.
[ Voor 13% gewijzigd door JJ93 op 12-08-2016 20:47 . Reden: URL fix ]
Heb de tool juist een grote update gegeven, inclusief gui.Brent schreef op donderdag 17 maart 2016 @ 15:01:
Heb een klein python-tooltje gemaakt dat een directory recursief scant, en op elk bestand par2 uitvoert. Alle standaard functionaliteit van par2 is er (create, verify, repair), de grootste keuze die ik voor de gebruiker heb gemaakt is dat de tool 1 reparatieset per bestand maakt, zodat je makkelijk bestanden kunt verplaatsen/verwijderen/toevoegen. Heb het bij een simpel script gehouden dat makkelijk crossplatform te gebruiken is.
Ik gebruik het om foto's en muziek te beschermen tegen bitrot en overige fouten (soms zit een programma te rommelen aan je tags bijvoorbeeld). Backup, zet schijf weg, over 10 jaar verifieer je en repareer je indien nodig, alles zoals je het hebt achtergelaten
https://github.com/brenthuisman/par2deep
Humanist | Kernpower! | Determinist | Verken uw geest | Politiek dakloos
Ziet er goed uit. Ik raad je de debugbar van barry aan. Met deze package kan je veel zien kwa performance. Wel een erg leuk topic. Misschien dat ik binnenkort ook eens wat laat zien.JJ93 schreef op vrijdag 12 augustus 2016 @ 20:44:
Ik ben weer een stuk verder met Voertuig.net. Grootste nieuwe mogelijkheden:
Multi facetted search geimplementeerd: [afbeelding]
Mogelijkheid om kentekens te vergelijken: [afbeelding]
Ik heb de hele website van de grond af aan opnieuw gebouwd. Maak nu gebruik van Laravel, erg prettig framework als je er eenmaal wat bekender mee bent. Verder loopt nu al het verkeer over een beveiligde verbinding en is de snelheid een stuk verbeterd.
Tijdens het maken van mijn subtitleplayer in javascript (SubPlayerJS) vond ik het zeer onhandig dat ik niet makkelijk bij de embedded ondertiteling in mijn mkv kon. Eigenlijk ook wel logisch gezien JavaScript en html5 video hiervoor beduidend niet bedoeld is. De vraag of het überhaupt mogelijk was bleef wel knagen. Uit nieuwsgierigheid ben ik begonnen met een beetje rond te klooien met .mkv als bestands formaat. Na letterlijk de bytejes in c# om te zetten naar characters bleek dat de ondertiteling gewoon uit het bestand te lezen was. Weliswaar volledig over het bestand verspreid. Na wat rond te googelen kwam ik er achter dat het mogelijk was om hetzelfde te doen in JavaScript. Met wat hack en slack werk kreeg ik het voor mekaar om uiteindelijk de ondertiteling uit het mkv bestand te lezen d.m.v. het video bestand los van de stream in stukjes op te vragen, afhankelijk van de bitrate van de afgespeelde video. Het is absoluut niet toepasbaar voor groot gebruik... ik vraag me af of het uberhaupt werkt op een webhost vanwege de latency en de vele aanvragen voor een stukje van het bestand, waarnaast dit dus dubbel gebeurt voor de video en de ondertiteling apart^^... maar het was grappig om te zien dat met een flinke omweg het toch werkte:
^^
edit: nieuwe video, hopelijk nu zonder auteursrechten problemen....
Toestemming nodig voor bekijken van YouTube
Op deze plek staat ingesloten content die van YouTube afkomstig is. Het tonen van deze inhoud kan ertoe leiden dat YouTube persoonlijke gegevens zoals je IP-adres verwerkt en/of cookies op jouw computer of ander apparaat zet. Hiervoor moet je eerst expliciet toestemming geven voor Sociale media.
Bekijk op YouTubeJavaScript - real time embedded subtitle parsing (.mkv)
^^
edit: nieuwe video, hopelijk nu zonder auteursrechten problemen....
[ Voor 3% gewijzigd door RareAMV op 15-08-2016 11:23 ]
Je video is geblokkeerdRareAMV schreef op zondag 14 augustus 2016 @ 23:28:
Tijdens het maken van mijn subtitleplayer in javascript (SubPlayerJS) vond ik het zeer onhandig dat ik niet makkelijk bij de embedded ondertiteling in mijn mkv kon. Eigenlijk ook wel logisch gezien JavaScript en html5 video hiervoor beduidend niet bedoeld is. De vraag of het überhaupt mogelijk was bleef wel knagen. Uit nieuwsgierigheid ben ik begonnen met een beetje rond te klooien met .mkv als bestands formaat. Na letterlijk de bytejes in c# om te zetten naar characters bleek dat de ondertiteling gewoon uit het bestand te lezen was. Weliswaar volledig over het bestand verspreid. Na wat rond te googelen kwam ik er achter dat het mogelijk was om hetzelfde te doen in JavaScript. Met wat hack en slack werk kreeg ik het voor mekaar om uiteindelijk de ondertiteling uit het mkv bestand te lezen d.m.v. het video bestand los van de stream in stukjes op te vragen, afhankelijk van de bitrate van de afgespeelde video. Het is absoluut niet toepasbaar voor groot gebruik... ik vraag me af of het uberhaupt werkt op een webhost vanwege de latency en de vele aanvragen voor een stukje van het bestand, waarnaast dit dus dubbel gebeurt voor de video en de ondertiteling apart^^... maar het was grappig om te zien dat met een flinke omweg het toch werkte:
[video]
^^
Al wat ik aanraak werk niet meer zoals het hoort. Damic houd niet van zijn verjaardag
526735
Kan je ook een knop toevoegen om een netwerk te verwijderen?bertware schreef op donderdag 28 juli 2016 @ 00:03:
Sinds windows10 zijn prioriteiten voor draadloze netwerken niet meer in te stellen, snel even opgelost![]()
[afbeelding]
Drag & drop om prioriteit in te stellen, autoconnect en autoswitch is ook onmiddelijk in te stellen.
(Autoswitch: of het netwerk verlaten mag worden voor een beter alternatief)
http://bertware.net/blog/...ork-priority-with-wlan10/
https://github.com/Bertware/wlan10
RIP vergeten dat trailers ook onder de auteurswet valt... en nu ook niet in staat om iets zelf in elkaar te flansen....
Edit: toch een nieuwe video kunnen maken ^^
[ Voor 8% gewijzigd door RareAMV op 15-08-2016 11:24 ]
Thx, zal eens kijken naar die package!Ryatzu schreef op zondag 14 augustus 2016 @ 14:33:
[...]
Ziet er goed uit. Ik raad je de debugbar van barry aan. Met deze package kan je veel zien kwa performance. Wel een erg leuk topic. Misschien dat ik binnenkort ook eens wat laat zien.
Vet! Altijd tof als een proof of concept 'werkt' na een heleboel geklooi. Je zou denken dat het wel mogelijk is om de stream maar eenmaal in te laden en daarna te tonen en tegelijkertijd de ondertiteling parsen. Maarja hoe weet ik ook nietRareAMV schreef op zondag 14 augustus 2016 @ 23:28:
Na letterlijk de bytejes in c# om te zetten naar characters bleek dat de ondertiteling gewoon uit het bestand te lezen was. Weliswaar volledig over het bestand verspreid. Na wat rond te googelen kwam ik er achter dat het mogelijk was om hetzelfde te doen in JavaScript. Met wat hack en slack werk kreeg ik het voor mekaar om uiteindelijk de ondertiteling uit het mkv bestand te lezen d.m.v. het video bestand los van de stream in stukjes op te vragen, afhankelijk van de bitrate van de afgespeelde video.
Is ook via github gevraagd en kan zeker, komt er vermoedelijk ergens deze week aan.526735 schreef op maandag 15 augustus 2016 @ 08:30:
[...]
Kan je ook een knop toevoegen om een netwerk te verwijderen?
Wederom een update voor WebDAV streamer. Naast wat klein oppoetswerk ook wat grote dingen toegevoegd:
Voor de rest doet het nog hetzelfde als voorheen: Het afspelen van muziekbestanden (en video) van WebDAV in de browser (een beetje zoals Spotify). Het hele systeem vereist niet veel, alleen een simpele server met PHP (en ffmpeg en youtube-dl, al werkt het systeem ook zonder, maar sommige dingen zullen dan niet meer werken).
Ik wilde eerst een simpele speler maken zodat ik de muziek op m'n STACK makkelijk kon afspelen. Dat is enigszins uit de hand gelopen, met dit als resultaat
. De ideeënbus nog steeds open, dus suggesties zijn zeker welkom 
Het hele project is te vinden op:
https://github.com/Koenvh1/WebDAV-streamer
https://bitbucket.org/Koenvh/webdav-streamer
Mocht je een demo willen, stuur dan even een berichtje. Het draait op m'n Pi, en die kan meer dan vijf gelijktijdige gebruikers niet aan
- Bibliotheek toegevoegd, zodat nu ook op album, artiest, genre e.d. gesorteerd en gezocht kan worden.
- Optie om YouTube URLs af te spelen.
- Optie om WebDAV streamer vanaf afstand te bedienen.

Voor de rest doet het nog hetzelfde als voorheen: Het afspelen van muziekbestanden (en video) van WebDAV in de browser (een beetje zoals Spotify). Het hele systeem vereist niet veel, alleen een simpele server met PHP (en ffmpeg en youtube-dl, al werkt het systeem ook zonder, maar sommige dingen zullen dan niet meer werken).
Ik wilde eerst een simpele speler maken zodat ik de muziek op m'n STACK makkelijk kon afspelen. Dat is enigszins uit de hand gelopen, met dit als resultaat
Het hele project is te vinden op:
https://github.com/Koenvh1/WebDAV-streamer
https://bitbucket.org/Koenvh/webdav-streamer
Mocht je een demo willen, stuur dan even een berichtje. Het draait op m'n Pi, en die kan meer dan vijf gelijktijdige gebruikers niet aan
[ Voor 6% gewijzigd door Koenvh op 20-08-2016 00:56 ]
🠕 This side up
Wat
Een batch srt-subtile extractor uit mkv-files
Waarom
De interne mediaplayer van mijn TV kan niet overweg met embedded subs... Aangezien de meeste films/series die ik download embedded subs hebben, moest ik die steeds rippen (en renamen) met bijvoorbeeld mkvextract. Dat werd vermoeiend..
Hoe
Voorwaarde: Zorg dat "mkvmerge.exe" en mkvextract.exe" in je path staan (of roep de absolute locaties aan)...
Geef bovenaan in het script een directory op (nu: M:\Films). De tool crawlt die map en alle submappen, op zoek naar mkv-bestanden.
Indien gevonden, gaat mkvmerge op zoek naar subtitles in de container.
Zodra subtitles van met als taalcode "dut", "eng", of "und" (= undefined) worden aangetroffen, wordt een laatste check uitgevoerd: Er wordt gekeken of al een bestand met "filmnaam.nl.srt"(of .en.srt, of .und.srt) bestaat. Is dit niet het geval, dan wordt de ondertitel door mkvextract geript en correct hernoemd.
Een batch srt-subtile extractor uit mkv-files
Waarom
De interne mediaplayer van mijn TV kan niet overweg met embedded subs... Aangezien de meeste films/series die ik download embedded subs hebben, moest ik die steeds rippen (en renamen) met bijvoorbeeld mkvextract. Dat werd vermoeiend..
Hoe
Voorwaarde: Zorg dat "mkvmerge.exe" en mkvextract.exe" in je path staan (of roep de absolute locaties aan)...
Geef bovenaan in het script een directory op (nu: M:\Films). De tool crawlt die map en alle submappen, op zoek naar mkv-bestanden.
Indien gevonden, gaat mkvmerge op zoek naar subtitles in de container.
Zodra subtitles van met als taalcode "dut", "eng", of "und" (= undefined) worden aangetroffen, wordt een laatste check uitgevoerd: Er wordt gekeken of al een bestand met "filmnaam.nl.srt"(of .en.srt, of .und.srt) bestaat. Is dit niet het geval, dan wordt de ondertitel door mkvextract geript en correct hernoemd.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
| @ECHO OFF SETLOCAL SET "rootfolder=M:\Films" ECHO Ga alle mkv-bestanden in "%rootfolder%" na op ondertitels. REM voor alle *.mkv in de rootfolder (inclusief subdirectories) FOR /r "%rootfolder%" %%a IN (*.mkv) DO ( REM voor alle mkv-bestanden; zoek naar ondertitels in het mkv-bestand FOR /f %%b IN ('mkvmerge --ui-language en -i "%%a" ^| find /c /i "subtitles"') DO ( REM als er geen ondertitels voorkomen IF "%%b"=="0" ( ECHO %%~nxa ECHO ..bevat geen ondertitels REM als er wel ondertitels voorkomen ) ELSE ( ECHO %%~nxa ECHO ..bevat ondertitels SET "line=" REM zoek naar nederlandstalige (dut) ondertitel-sporen FOR /f "delims=" %%i IN ('mkvmerge --ui-language en --identify-verbose "%%a" ^| sed "/subtitles/!d;/language:dut/!d;s/.* \([0-9]*\):.*/\1/"') DO ( REM geen nl-subs gevonden (variabele %%i is leeg) IF [%%i] == [] ( ECHO ...deze film bevat geen nl-subs ) ELSE ( ECHO ...deze film bevat nl-subs REM ga na of er al een *.srt bestand voor nl-subs bestaat IF exist %%~dpna.nl.srt ( ECHO ....nl-ondertitels bestaan al voor deze film. ) ELSE ( ECHO ....nl-ondertitels nog niet geript... ECHO .....nl-ondertiteling wordt uit de film gehaald... CALL SET line=%%line%% %%i:"%%~dpna.nl.srt" setlocal enabledelayedexpansion mkvextract tracks "%%a" --ui-language en !line! ||(ECHO Demuxing error!&goto:eof) endlocal ) ) ) SET "line=" REM zoek naar engelstalige (eng) ondertitel-sporen FOR /f "delims=" %%i IN ('mkvmerge --ui-language en --identify-verbose "%%a" ^| sed "/subtitles/!d;/language:eng/!d;s/.* \([0-9]*\):.*/\1/"') DO ( REM geen en-subs gevonden (variabele %%i is leeg) IF [%%i] == [] ( ECHO ...deze film bevat geen en-subs ) ELSE ( ECHO ...deze film bevat en-subs REM ga na of er al een *.srt bestand voor en-subs bestaat IF exist %%~dpna.en.srt ( ECHO ....en-ondertitels bestaan al voor deze film. ) ELSE ( ECHO ....en-ondertitels nog niet geript... ECHO .....de en-ondertiteling wordt uit de film gehaald... CALL SET line=%%line%% %%i:"%%~dpna.en.srt" setlocal enabledelayedexpansion mkvextract tracks "%%a" --ui-language en !line! ||(ECHO Demuxing error!&goto:eof) endlocal ) ) ) SET "line=" REM zoek naar undefined (und) ondertitel-sporen FOR /f "delims=" %%i IN ('mkvmerge --ui-language en --identify-verbose "%%a" ^| sed "/subtitles/!d;/language:und/!d;s/.* \([0-9]*\):.*/\1/"') DO ( REM geen und-subs gevonden (variabele %%i is leeg) IF [%%i] == [] ( ECHO ...deze film bevat geen undefined subs ) ELSE ( ECHO ...deze film bevat undefined subs REM ga na of er al een *.srt bestand voor und-subs bestaat IF exist %%~dpna.srt ( ECHO ....undefined ondertitels bestaan al voor deze film. ) ELSE ( ECHO ....undefined ondertitels nog niet geript... ECHO .....de undefined ondertiteling wordt uit de film gehaald... CALL SET line=%%line%% %%i:"%%~dpna.srt" setlocal enabledelayedexpansion mkvextract tracks "%%a" --ui-language en !line! ||(ECHO Demuxing error!&goto:eof) endlocal ) ) ) ) ) ECHO ... ECHO .. ECHO . ) |
Ziet goed uit , in ewlke scripttaal is het geschreven?
Windows batchfile zo te zienHatsieflatsie schreef op zaterdag 20 augustus 2016 @ 16:16:
Ziet goed uit , in ewlke scripttaal is het geschreven?
There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.
Je eigen tweaker.me redirect
Over mij
Ben der weer.... x)
Was een beetje verveeld en wou eens iets totaal nutteloos maar toch grappig om te zien maken (als je van nummers en real time informatie houd
)
[YouTube: https://www.youtube.com/watch?v=NzCfrH6TdLs]
Kort door de bocht: Een real time Team Fortress 2 Informatie display van de server waarin je je bevind, waarbij gegevens in het globaal getoond worden (totaal aantal kills van beide teams (vanaf dat je gejoined bent) etc.. )
Ik kan helaas niet veel meer persoonlijke informatie dan op je aantal kills na etc ophalen. (Heb ik ook nog niet geïmplementeerd).
Een gitje voor de geïnteresseerde:
https://github.com/EldinZenderink/TF2LocalStats
Was een beetje verveeld en wou eens iets totaal nutteloos maar toch grappig om te zien maken (als je van nummers en real time informatie houd

[YouTube: https://www.youtube.com/watch?v=NzCfrH6TdLs]
Kort door de bocht: Een real time Team Fortress 2 Informatie display van de server waarin je je bevind, waarbij gegevens in het globaal getoond worden (totaal aantal kills van beide teams (vanaf dat je gejoined bent) etc.. )
Ik kan helaas niet veel meer persoonlijke informatie dan op je aantal kills na etc ophalen. (Heb ik ook nog niet geïmplementeerd).
Een gitje voor de geïnteresseerde:
https://github.com/EldinZenderink/TF2LocalStats
Kan het niet met https://www.w3.org/TR/media-source/ ?RareAMV schreef op zondag 14 augustus 2016 @ 23:28:
ik vraag me af of het uberhaupt werkt op een webhost vanwege de latency en de vele aanvragen voor een stukje van het bestand, waarnaast dit dus dubbel gebeurt voor de video en de ondertiteling apart
Maak je niet druk, dat doet de compressor maar
Al geprobeerd, maar daarvoor moet ik specifiek weten wat voor codec het video gedeelte van de mkv is, wat ik juist niet wil gezien mkv heel veel verschillende soorten kan bevatten. Zie http://www.leanbackplayer.com/test/h5mt.html Volgens mij kan ik dat niet dynamisch checken.DJMaze schreef op dinsdag 23 augustus 2016 @ 00:51:
[...]
Kan het niet met https://www.w3.org/TR/media-source/ ?
RobIII heeft het idd goed. Is gewoon windows batch...Hatsieflatsie schreef op zaterdag 20 augustus 2016 @ 16:16:
Ziet goed uit , in ewlke scripttaal is het geschreven?
copy-pasten naar notepad en opslaan als een *.bat bestand.. en gaaan
Nadat je SED ook hebt gedownload, he.. ;-)breew schreef op dinsdag 23 augustus 2016 @ 09:22:
[...]
RobIII heeft het idd goed. Is gewoon windows batch...
copy-pasten naar notepad en opslaan als een *.bat bestand.. en gaaan
Verder... leuk stukje bat code!
[ Voor 5% gewijzigd door NaN op 23-08-2016 15:37 ]
Een maand na de initiële release (bertware in "[Alg] Welke tools heb jij gemaakt? - deel IV") ook een optie toegevoegd om netwerken te verwijderen (na vragen op zowel git als hier).526735 schreef op maandag 15 augustus 2016 @ 08:30:
[...]
Kan je ook een knop toevoegen om een netwerk te verwijderen?
De backend is nog steeds krachtiger dan wat er getoond wordt (wat te zien is in de code), is echter een afweging (functionaliteit tegenover gebruiksvriendelijkheid, ik probeer het zo simpel mogelijk houden).

http://bertware.net/blog/...ork-priority-with-wlan10/
https://github.com/Bertware/wlan10
[ Voor 0% gewijzigd door bertware op 23-08-2016 16:29 . Reden: Afbeelding verkleind ]
Het is nu alleen niet duidelijk meer of je na Forget ook nog moet opslaan. Zou je het niet consistent maken en of alle wijzigingen (incl. checkboxes) pas opslaan na een expliciete opdracht daartoe, of alles meteen toepassen (incl. wijzigingen in de volgorde)?bertware schreef op dinsdag 23 augustus 2016 @ 16:27:
[...]
Een maand na de initiële release (bertware in "[Alg] Welke tools heb jij gemaakt? - deel IV") ook een optie toegevoegd om netwerken te verwijderen (na vragen op zowel git als hier).
[...]
[ Voor 39% gewijzigd door Z-Dragon op 23-08-2016 17:20 ]
^ Wat hij zegt.
oh ja, dat moest ook nog iddSangroid schreef op dinsdag 23 augustus 2016 @ 15:37:
[...]
Nadat je SED ook hebt gedownload, he.. ;-)
Verder... leuk stukje bat code!
De code is het bewijs dat je met googlen, howto's lezen en een dosis nieuwsgierigheid (en veeel trial & error) best iets nuttigs kunt maken ;-)
Hmmm, goed punt. Opslaan is een actie die op alle netwerken van toepassing is (voor elk netwerk nieuwe plaats bepalen), waardoor het daarvoor pas met bevestiging is (om onnodige spam van netshell commando's te voorkomen). Al de rest werkt direct. Ik zal de uitleg in de tool aanpassenZ-Dragon schreef op dinsdag 23 augustus 2016 @ 17:19:
[...]
Het is nu alleen niet duidelijk meer of je na Forget ook nog moet opslaan. Zou je het niet consistent maken en of alle wijzigingen (incl. checkboxes) pas opslaan na een expliciete opdracht daartoe, of alles meteen toepassen (incl. wijzigingen in de volgorde)?
Juist een update gedaan van het volgende programma zitten op v 1.0.0.3

Laatste change:
Fix: weird behavior
Fix: OGR packages, only with dnet for cpu client!!!
Fix: when ther isn't a buffer-in to start with error (import_0 not found)
Source enzo: https://cd-pc.be/?page=dnetc_lbc

Laatste change:
Fix: weird behavior
Fix: OGR packages, only with dnet for cpu client!!!
Fix: when ther isn't a buffer-in to start with error (import_0 not found)
Source enzo: https://cd-pc.be/?page=dnetc_lbc
Al wat ik aanraak werk niet meer zoals het hoort. Damic houd niet van zijn verjaardag
Sommigen kennen of hebben in het verleden zelf gebruik gemaakt van www.mitro.co/faq.html. Een tijd nadat deze dienst is gestopt ben ik overgestapt naar https://www.passwordstore.org/ voor het beheren van mijn wachtwoorden. 't Grote verschil met mitro is uiteraard dat alles via een terminal gaat i.p.v. een browserextensie, ook moest je de password store synchroniseren tussen apparaten als je niet wilt ssh'en.
Toch moest dit anders kunnen, op de website www.passwordstore.org worden enkele apps genoemd, maar ik zocht iets veel simpelers in gebruik met de gegevens gewoon op 1 plek. Uiteindelijk heb ik een server/proxy geschreven dat de bestandsstructuur en .gpg-bestanden ontsluit via HTTP(S) wat de mogelijkheid bood om zelf een read-only client te schrijven die ik prettig vind. Puur omdat het voor mij onbekend terrein is, wat een grote drijfveer is voor mij, heb ik deze server geschreven in nodejs
(ik heb er -nog- geen moeite in gestoken om dit als npm-package beschikbaar te stellen).
De server doet niets anders dan bestanden serveren (doorgeefluik) en heeft geen mogelijkheid om met een pgp-key met de pass-binary te praten en zo wachtwoorden toe te voegen, genereren of aan te passen; dat blijft een actie voor de terminal.
server
- source
- een kleine specificatie hoe er tegen aan kan worden gepraat.
Dit is puur een nodejs applicatie; je moet het dus zelf achter een (nginx-)proxy zetten zodat er clients bij kunnen (of je moet alles op 1 machine willen draaien). Zelf gebruik ik daarvoor een passenger-docker waarbij ik acmetool heb geinstalleerd voor m'n SSL-certificaat: https://github.com/cpoppema/docker-nginx-nodejs-lets-encrypt
In de README zijn sowieso deze clients te vinden:
chrome extensie
- source
- store
- screenshots zijn te vinden in de store, maar hier is er toch 1:

firefox extensie
- source
- store
- geen screenshots, deze versie is dankzij het WebExtensions-formaat 99% identiek gelijk aan de chrome extensie.
Deze firefox add-on is geschreven in het WebExtensions-formaat dus werkt alleen vanaf versie 48+, maar ik kan 50+ aanbevelen. Dit formaat is nog niet af en omdat de WebExtensions API nog niet volledig is geimplementeerd:
- werkt de 'copy'-knop bijvoorbeeld nog niet (CTRL+C, CTRL+V en laten invullen werkt wel).
- kan de popup zich nog niet automatisch aanpassen aan de grootte van de content en heeft deze een fixed hoogte van 600px.
android app
- source
- store
- screenshots zijn te vinden in de store, maar hier is er toch 1:
Toch moest dit anders kunnen, op de website www.passwordstore.org worden enkele apps genoemd, maar ik zocht iets veel simpelers in gebruik met de gegevens gewoon op 1 plek. Uiteindelijk heb ik een server/proxy geschreven dat de bestandsstructuur en .gpg-bestanden ontsluit via HTTP(S) wat de mogelijkheid bood om zelf een read-only client te schrijven die ik prettig vind. Puur omdat het voor mij onbekend terrein is, wat een grote drijfveer is voor mij, heb ik deze server geschreven in nodejs
De server doet niets anders dan bestanden serveren (doorgeefluik) en heeft geen mogelijkheid om met een pgp-key met de pass-binary te praten en zo wachtwoorden toe te voegen, genereren of aan te passen; dat blijft een actie voor de terminal.
server
- source
- een kleine specificatie hoe er tegen aan kan worden gepraat.
Dit is puur een nodejs applicatie; je moet het dus zelf achter een (nginx-)proxy zetten zodat er clients bij kunnen (of je moet alles op 1 machine willen draaien). Zelf gebruik ik daarvoor een passenger-docker waarbij ik acmetool heb geinstalleerd voor m'n SSL-certificaat: https://github.com/cpoppema/docker-nginx-nodejs-lets-encrypt
In de README zijn sowieso deze clients te vinden:
chrome extensie
- source
- store
- screenshots zijn te vinden in de store, maar hier is er toch 1:

firefox extensie
- source
- store
- geen screenshots, deze versie is dankzij het WebExtensions-formaat 99% identiek gelijk aan de chrome extensie.
Deze firefox add-on is geschreven in het WebExtensions-formaat dus werkt alleen vanaf versie 48+, maar ik kan 50+ aanbevelen. Dit formaat is nog niet af en omdat de WebExtensions API nog niet volledig is geimplementeerd:
- werkt de 'copy'-knop bijvoorbeeld nog niet (CTRL+C, CTRL+V en laten invullen werkt wel).
- kan de popup zich nog niet automatisch aanpassen aan de grootte van de content en heeft deze een fixed hoogte van 600px.
android app
- source
- store
- screenshots zijn te vinden in de store, maar hier is er toch 1:

526735
Cool! Ik gebruik zelf ook Pass, maar waarom gebruik je op Android niet gewoon Password Store? Ik heb dan een Git repository op mijn computer staan waar mijn telefoon nieuwe wachtwoorden van pullt…C0rnelis schreef op woensdag 31 augustus 2016 @ 14:09:toon volledige bericht
Sommigen kennen of hebben in het verleden zelf gebruik gemaakt van www.mitro.co/faq.html. Een tijd nadat deze dienst is gestopt ben ik overgestapt naar https://www.passwordstore.org/ voor het beheren van mijn wachtwoorden. 't Grote verschil met mitro is uiteraard dat alles via een terminal gaat i.p.v. een browserextensie, ook moest je de password store synchroniseren tussen apparaten als je niet wilt ssh'en.
Toch moest dit anders kunnen, op de website www.passwordstore.org worden enkele apps genoemd, maar ik zocht iets veel simpelers in gebruik met de gegevens gewoon op 1 plek. Uiteindelijk heb ik een server/proxy geschreven dat de bestandsstructuur en .gpg-bestanden ontsluit via HTTP(S) wat de mogelijkheid bood om zelf een read-only client te schrijven die ik prettig vind. Puur omdat het voor mij onbekend terrein is, wat een grote drijfveer is voor mij, heb ik deze server geschreven in nodejs(ik heb er -nog- geen moeite in gestoken om dit als npm-package beschikbaar te stellen).
De server doet niets anders dan bestanden serveren (doorgeefluik) en heeft geen mogelijkheid om met een pgp-key met de pass-binary te praten en zo wachtwoorden toe te voegen, genereren of aan te passen; dat blijft een actie voor de terminal.
server
- source
- een kleine specificatie hoe er tegen aan kan worden gepraat.
Dit is puur een nodejs applicatie; je moet het dus zelf achter een (nginx-)proxy zetten zodat er clients bij kunnen (of je moet alles op 1 machine willen draaien). Zelf gebruik ik daarvoor een passenger-docker waarbij ik acmetool heb geinstalleerd voor m'n SSL-certificaat: https://github.com/cpoppema/docker-nginx-nodejs-lets-encrypt
In de README zijn sowieso deze clients te vinden:
chrome extensie
- source
- store
- screenshots zijn te vinden in de store, maar hier is er toch 1:
[afbeelding]
firefox extensie
- source
- store
- geen screenshots, deze versie is dankzij het WebExtensions-formaat 99% identiek gelijk aan de chrome extensie.
Deze firefox add-on is geschreven in het WebExtensions-formaat dus werkt alleen vanaf versie 48+, maar ik kan 50+ aanbevelen. Dit formaat is nog niet af en omdat de WebExtensions API nog niet volledig is geimplementeerd:
- werkt de 'copy'-knop bijvoorbeeld nog niet (CTRL+C, CTRL+V en laten invullen werkt wel).
- kan de popup zich nog niet automatisch aanpassen aan de grootte van de content en heeft deze een fixed hoogte van 600px.
android app
- source
- store
- screenshots zijn te vinden in de store, maar hier is er toch 1:
[afbeelding]
526735 schreef op vrijdag 02 september 2016 @ 08:31:
[...]
Cool! Ik gebruik zelf ook Pass, maar waarom gebruik je op Android niet gewoon Password Store? Ik heb dan een Git repository op mijn computer staan waar mijn telefoon nieuwe wachtwoorden van pullt…
- De hoofdreden is dat bestandstructuur "incompatibel" is met hoe de browser plugins zijn geschreven: deze volgen de bestandstructuur "website/username" en de plugins en app gaan hier helemaal van uit: daarom kan je dus website/username en wachtwoord kopieren en bieden de browser plugins de mogelijkheid tot het on-demand invullen van formulieren/beste match voor de huidige pagina bovenaan de lijst te laten zien. Het zal wel functioneel zijn, maar de insteek is net even anders.
- In mijn app wordt sowieso geen kopie (git clone) van de hele password store gemaakt, dus een mobiel kan me op die manier letterlijk gestolen worden en ik kan server-side gewoon netjes direct de pgp-key intrekken bij gpg en pass, maar dat voorkomt ook dat andere apps toegang hebben tot de directory als je je telefoon hebt ge-root (al zal vermoedelijk de bestandsrechten op 600 zetten dat ook kunnen voorkomen). Persoonlijke voorkeur.
- Passphrase is niet optioneel zoals dat bij een ssh-key wel is. Persoonlijke voorkeur.
Ziet er weer goed uit. Hoewel kenteken search nog niet goed lijkt te werken.JJ93 schreef op vrijdag 12 augustus 2016 @ 20:44:
Ik ben weer een stuk verder met Voertuig.net. Grootste nieuwe mogelijkheden:
Multi facetted search geimplementeerd: [afbeelding]
Mogelijkheid om kentekens te vergelijken: [afbeelding]
Ik heb de hele website van de grond af aan opnieuw gebouwd. Maak nu gebruik van Laravel, erg prettig framework als je er eenmaal wat bekender mee bent. Verder loopt nu al het verkeer over een beveiligde verbinding en is de snelheid een stuk verbeterd.
Als ik merk ferrari selecteer en in het kenteken filter zoek op GX zijn er geen resultaten. Als ik met getallen zoek lijkt het wel goed te gaan?
Is het met de verbeterde search ook mogelijk om wildcards te ondersteunen, bijv. 7ZRZ?5 ? (zoals ik ooit al eens opgemerkt heb).
Ah, ik zie waar het daar fout gaat. Zoekt namelijk op wildcard met lowercase voor al die filters en kenteken is het enige veld wat uppercase is.Butz0rs schreef op woensdag 07 september 2016 @ 13:49:
[...]
Ziet er weer goed uit. Hoewel kenteken search nog niet goed lijkt te werken.
Als ik merk ferrari selecteer en in het kenteken filter zoek op GX zijn er geen resultaten. Als ik met getallen zoek lijkt het wel goed te gaan?
Is het met de verbeterde search ook mogelijk om wildcards te ondersteunen, bijv. 7ZRZ?5 ? (zoals ik ooit al eens opgemerkt heb).
Ja, zoals hierboven genoemd werk ik nu met wildcards. Ik filter nu nog wel alle ^a-z0-9 karakters er uit. Maar de API ondersteund het wel.
Bv: https://api.voertuig.net/v2/kentekens/*JJ93*
Omdat iedereen van döner kebab houdt, heb ik samen met 2 maatjes NuDöner in elkaar gestampt. NuDöner brengt je naar de dichtstbijzijnde geopende Döner toko.
We hebben als backend gebruik gemaakt van Firebase, deze backend vullen we vanaf de Google Places API. Voor de ontbrekende gegevens hebben we een toevoeg mogelijkheid voor de gebruikers.
Het is ook de bedoeling zo snel mogelijk een Android app uit te brengen, daar zijn we ook al aan begonnen.

Website
App Store
We hebben als backend gebruik gemaakt van Firebase, deze backend vullen we vanaf de Google Places API. Voor de ontbrekende gegevens hebben we een toevoeg mogelijkheid voor de gebruikers.
Het is ook de bedoeling zo snel mogelijk een Android app uit te brengen, daar zijn we ook al aan begonnen.

Website
App Store
Toffe applicatie, maar waarom niet gewoon thuisbezorgd?BorisN schreef op dinsdag 13 september 2016 @ 10:56:
Omdat iedereen van döner kebab houdt, heb ik samen met 2 maatjes NuDöner in elkaar gestampt. NuDöner brengt je naar de dichtstbijzijnde geopende Döner toko.
We hebben als backend gebruik gemaakt van Firebase, deze backend vullen we vanaf de Google Places API. Voor de ontbrekende gegevens hebben we een toevoeg mogelijkheid voor de gebruikers.
Het is ook de bedoeling zo snel mogelijk een Android app uit te brengen, daar zijn we ook al aan begonnen.
[afbeelding]
Website
App Store

Omdat je niet altijd wil laten bezorgen, soms ben je snachts op zoek naar een "fix"...Marco1994 schreef op dinsdag 13 september 2016 @ 11:36:
[...]
Toffe applicatie, maar waarom niet gewoon thuisbezorgd?
Maar eigenlijk gewoon omdat dit leuker is.
Ik houd 'm in de gaten, zit te wachten op de android appBorisN schreef op dinsdag 13 september 2016 @ 11:39:
[...]
Omdat je niet altijd wil laten bezorgen, soms ben je snachts op zoek naar een "fix"...
Maar eigenlijk gewoon omdat dit leuker is.
Cool, ik hoop hem van de week af te maken. Als het zover is zet ik hier wel een update!Marco1994 schreef op dinsdag 13 september 2016 @ 12:35:
[...]
Ik houd 'm in de gaten, zit te wachten op de android app
Hartelijk bedankt! Ik gebruik voor mijn werk Mac OSX en ben dus extreem gewend aan mijn ALT+Space combinatie. Dit werkt (bijna) net zo lekker als op OSX en veel beter dan de standaard zoekfunctie van Windows 10.Jogai schreef op zaterdag 11 juni 2016 @ 08:27:
[...]
Voor windows is er wox: http://www.getwox.com/
Signature
Ik heb html2xpath (Github) gemaakt, omdat ik een manier nodig had om specifieke informatie van een website te scrapen.
Yahoo! had hier een mooie tool voor, maar die hebben ze helaas offline gehaald.
Als je html2path ergens host dan kan je hem bijvoorbeeld als volgt aanroepen (documentatie staat op Github).
Wat er gebeurt is dat je de site doorloopt via de xpath expressie en wat je vervolgens terugkrijgt is een JSON representatie van de HTML-element(en) die je hebt opgezocht.
Yahoo! had hier een mooie tool voor, maar die hebben ze helaas offline gehaald.
Als je html2path ergens host dan kan je hem bijvoorbeeld als volgt aanroepen (documentatie staat op Github).
http://html2xpath/?u=http://m.imdb.com/title/tt2310332&x[0]=//div[contains(@id,'ratings-bar')]/div/span[2]&x[1]=//div[contains(@id,'ratings-bar')]/div/span[2]/small/text()[2]
Wat er gebeurt is dat je de site doorloopt via de xpath expressie en wat je vervolgens terugkrijgt is een JSON representatie van de HTML-element(en) die je hebt opgezocht.
JSON:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| { "0": { "attributes": [ { "class": "inline-block text-left vertically-middle" } ], "textContent": [ "7.9" ] }, "1": { "textContent": [ "91,217" ] }, "exec_time": 0.87327790260315 } |
USB Ejected Check
Aangezien ik wel 'ns vergeet USB-sticks uit de computer te halen heb ik USB Ejected Check gemaakt. Het controleert of een USB-stick nog in de computer zit tijdens het afsluiten (of afmelden), zo ja, dan zal het afsluiten stoppen en krijg je de melding te zien dat je je USB-stick moet uitwerpen.Er zijn drie modi:
1. Standaard: Je krijgt een scherm te zien waar je je USB-stick kunt kiezen en activeren
2. Vanaf USB-stick: Als je het programma op je USB-stick zet en uitvoert, zal automatisch die USB-stick gecontroleerd worden (als je het programma start)
3. Silent: De PC controleert dan welke schijven er aanwezig zijn bij het opstarten, en welke bij het afsluiten. Als er een schijf wel inzit tijdens het afsluiten die er niet tijdens het opstarten was, krijg je een melding.
https://github.com/Koenvh1/usb-ejected-check/releases
(Enkel voor Windows)
🠕 This side up
Weer in de weer met een nieuw projectje (altijd goed in het afronden ervan
)
https://github.com/joszz/HyperVAdmin
Een website om je hyperv VMs in te kunnen beheren. Ik wilde zelf met name een tool om ze via een website te kunnen stoppen en starten en dat kan inmiddels al.
Wel heel erg WIP nog dus nog verre van echt bruikbaar denk ik.
Gemaakt op asp.net mvc/C#, go check it out, feedback is welkom, feature requests ook.
https://github.com/joszz/HyperVAdmin
Een website om je hyperv VMs in te kunnen beheren. Ik wilde zelf met name een tool om ze via een website te kunnen stoppen en starten en dat kan inmiddels al.
Wel heel erg WIP nog dus nog verre van echt bruikbaar denk ik.
Gemaakt op asp.net mvc/C#, go check it out, feedback is welkom, feature requests ook.
De Android versie van NuDöner is nu in Beta:BorisN schreef op dinsdag 13 september 2016 @ 13:06:
[...]
Cool, ik hoop hem van de week af te maken. Als het zover is zet ik hier wel een update!
https://play.google.com/apps/testing/nl.nudoner.nudoner
Feedback is leuk/welkom
Heb hem gedownload, zal van het weekend even laten weten hoe die bevalt.BorisN schreef op woensdag 28 september 2016 @ 20:29:
[...]
De Android versie van NuDöner is nu in Beta:
https://play.google.com/apps/testing/nl.nudoner.nudoner
Feedback is leuk/welkom
Edit: een paar tips: bij het eerste keer opstarten en doner zoeken crasht de app, daarna doet die het wel gewoon. Als ik zoek naar doner laad hij alle donertenten in heel nederland en zoomt hij extreem ver uit, zodat ik heel nederland zie. Misschien niet de meest handige optie. Tops: GUI ziet er mooi en verzorgd uit.
[ Voor 33% gewijzigd door Marco1994 op 29-09-2016 00:08 ]
Ik ga naar de crashes kijken, als het goed is heb ik crash logs uit Firebase. Bedankt voor de moeite!Marco1994 schreef op donderdag 29 september 2016 @ 00:01:
[...]
Heb hem gedownload, zal van het weekend even laten weten hoe die bevalt.
Edit: een paar tips: bij het eerste keer opstarten en doner zoeken crasht de app, daarna doet die het wel gewoon. Als ik zoek naar doner laad hij alle donertenten in heel nederland en zoomt hij extreem ver uit, zodat ik heel nederland zie. Misschien niet de meest handige optie. Tops: GUI ziet er mooi en verzorgd uit.
Ik had inderdaad hetzelfde. Jammer dat van veel zaken in mijn omgeving geen gegevens bekend zijn.BorisN schreef op donderdag 29 september 2016 @ 10:35:
[...]
Ik ga naar de crashes kijken, als het goed is heb ik crash logs uit Firebase. Bedankt voor de moeite!
Daar kunnen we wel wat aan doen. We hebben op dit moment nog geen mogelijkheid voor gebruikers om aanpassingen te doen maar dat staat wel op de planning. Als je de openingstijden kunt emailen naar nudoner@brkzk.nl dan kan ik handmatig het een en ander aanpassen.dimmak schreef op donderdag 29 september 2016 @ 10:39:
[...]
Ik had inderdaad hetzelfde. Jammer dat van veel zaken in mijn omgeving geen gegevens bekend zijn.
Edit: Ik heb naar de bug gekeken, als het goed is zou de crash verholpen moeten zijn in de beta versie. Het lijkt niet aan het drukken op de knop te liggen maar aan raar gedrag van Firebase. Als het blijft gebeuren dan hoor ik het graag.
[ Voor 19% gewijzigd door BorisN op 29-09-2016 18:16 ]
Vandaag heb ik versie 6.0 van Kenteken Check voor Android gereleased.
Aan deze update heb ik een aantal maanden gewerkt, tegelijkertijd met het volledig herschrijven van voertuig.net, en het herschrijven van de iOS app.
De belangrijkste nieuwe feature is de geavanceerd filter mogelijkheid. Je kunt nu bijna 14 miljoen voertuigen filteren op eigenschappen. Bijvoorbeeld, kleur: rood, merk: ferrari, model: 360, 430, 599. Vooral filteren op meerdere waardes per eigenschap was een uitdaging om te implementeren.
✓ Kenteken suggesties bij zoeken.
✓ Kenteken samenvatting toegevoegd.
✓ Delen van kentekens gegevens verbeterd.
✓ Long press om een kenteken te verwijderen of favoriet te maken.
✓ Beschikbare filters zijn uitgebreid en geavanceerder.
✓ Klik op een voertuig eigenschap om direct te filteren.
✓ Automatisch laden van meer eigenschappen en voertuigen.
✓ Netwerk data caching tijdens app sessie.
✓ Material design doorgevoerd in de hele app.
✓ Android Wear verbeteringen.
✓ Android 7.0 Nougat optimalisaties.
Smartphone - Kenteken details

Tablet portrait - Geschiedenis

Tablet landscape - Filteren op basis van eigenschappen.

Android Wear: Kenteken samenvatting

Download Android versie
Download iOS versie (update volgt spoedig)
Aan deze update heb ik een aantal maanden gewerkt, tegelijkertijd met het volledig herschrijven van voertuig.net, en het herschrijven van de iOS app.
De belangrijkste nieuwe feature is de geavanceerd filter mogelijkheid. Je kunt nu bijna 14 miljoen voertuigen filteren op eigenschappen. Bijvoorbeeld, kleur: rood, merk: ferrari, model: 360, 430, 599. Vooral filteren op meerdere waardes per eigenschap was een uitdaging om te implementeren.
✓ Kenteken suggesties bij zoeken.
✓ Kenteken samenvatting toegevoegd.
✓ Delen van kentekens gegevens verbeterd.
✓ Long press om een kenteken te verwijderen of favoriet te maken.
✓ Beschikbare filters zijn uitgebreid en geavanceerder.
✓ Klik op een voertuig eigenschap om direct te filteren.
✓ Automatisch laden van meer eigenschappen en voertuigen.
✓ Netwerk data caching tijdens app sessie.
✓ Material design doorgevoerd in de hele app.
✓ Android Wear verbeteringen.
✓ Android 7.0 Nougat optimalisaties.
Smartphone - Kenteken details

Tablet portrait - Geschiedenis

Tablet landscape - Filteren op basis van eigenschappen.

Android Wear: Kenteken samenvatting

Download Android versie
Download iOS versie (update volgt spoedig)
HyperV Admin geupdate.
Paar highlights van de verbeteringen;
- Compiled binaries in github (om het makkelijk op te zetten te maken, hoort er eigenlijk niet want SOURCE control
)
- Auto refresh van lijsten met AJAX
- Wat verbeteringen op UI vlak en responsiveness
- Beheer van IIS sites toegevoegd (en nu al maakt de naam geen "sense" meer
)
https://github.com/joszz/HyperVAdmin
Paar highlights van de verbeteringen;
- Compiled binaries in github (om het makkelijk op te zetten te maken, hoort er eigenlijk niet want SOURCE control
- Auto refresh van lijsten met AJAX
- Wat verbeteringen op UI vlak en responsiveness
- Beheer van IIS sites toegevoegd (en nu al maakt de naam geen "sense" meer
https://github.com/joszz/HyperVAdmin

[ Voor 12% gewijzigd door jozuf op 01-10-2016 15:43 ]
@JJ93: Wat ik handig zou vinden is een link naar http://www.autoweek.nl/kentekencheck/{KEN-TE-KEN}. Of is dat teveel linken naar 'concurrentie'?
Klik hier om op linkedIn lid te worden van de Freelance Tweakers groep.
Laatst heb ik een Captcha scriptje bedacht en geïmplementeerd in PHP. In plaats van die irritante letters moet je nu simpele vormen tellen.

De vormen zijn willekeurig gedraaid, overlappen soms en hoekpunten krijgen een paar pixels afwijking. De ene keer wordt naar het aantal cirkels gevraag en de andere keer naar vierkanten bijvoorbeeld.
Deze methode lijkt me makkelijk voor mensen en lastig voor computers. Ik ben geen expert op dit gebied dus ik ben benieuwd wat jullie er van vinden!
De source te vinden op https://github.com/dirkjan00001/Shapecap

De vormen zijn willekeurig gedraaid, overlappen soms en hoekpunten krijgen een paar pixels afwijking. De ene keer wordt naar het aantal cirkels gevraag en de andere keer naar vierkanten bijvoorbeeld.
Deze methode lijkt me makkelijk voor mensen en lastig voor computers. Ik ben geen expert op dit gebied dus ik ben benieuwd wat jullie er van vinden!
De source te vinden op https://github.com/dirkjan00001/Shapecap
Klinkt heel leuk en aardig, echter is dit wel het heruitvinden van het wiel. Dit is vaak niet verstandig. Zeker als je er een vierkant wiel van maakt.dirkjan00001 schreef op maandag 03 oktober 2016 @ 20:21:
Laatst heb ik een Captcha scriptje bedacht en geïmplementeerd in PHP. In plaats van die irritante letters moet je nu simpele vormen tellen.
[afbeelding]
De vormen zijn willekeurig gedraaid, overlappen soms en hoekpunten krijgen een paar pixels afwijking. De ene keer wordt naar het aantal cirkels gevraag en de andere keer naar vierkanten bijvoorbeeld.
Deze methode lijkt me makkelijk voor mensen en lastig voor computers. Ik ben geen expert op dit gebied dus ik ben benieuwd wat jullie er van vinden!
De source te vinden op https://github.com/dirkjan00001/Shapecap
Voor een computer is het vrij makkelijk om vormen te herkennen. Een simpele google opdracht levert mij de volgende link op: link, waar je hele scriptje al snel zijn nut verloren lijkt te hebben. Sowieso, de gebruikte library daarbij, opencv, is zelfs bedoeld voor objectherkenning
Mijn advies is om het bij bestaande, bewezen technieken te houden zoals ReCAPTCHA. Overigens helpt het gebruik van deze implementatie bij het verbeteren van beeldherkenning. Zo heeft ReCAPTCHA in het verleden flink geholpen bij de ontwikkeling van betere OCR implementaties
[ Voor 7% gewijzigd door Lye op 03-10-2016 20:44 ]
Let op:
Dit topic is alleen bedoeld om zelfgemaakte tools te showen en te bespreken. Net als in de rest van Programming is het hier dus ook niet toegestaan om 'even te vragen of iemand iets kan maken'. Dit is een forum over zelf programmeren, geen McDonalds afhaalbalie voor lappen code of software.
Dit topic is alleen bedoeld om zelfgemaakte tools te showen en te bespreken. Net als in de rest van Programming is het hier dus ook niet toegestaan om 'even te vragen of iemand iets kan maken'. Dit is een forum over zelf programmeren, geen McDonalds afhaalbalie voor lappen code of software.