aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Expand)AuthorFilesLines
2019-08-30script-updates: add donation hint in configuration warning notificationchange-8Gravatar Christian Hesse4-13/+33
2019-08-30add info about past contributionsGravatar Christian Hesse2-0/+20
2019-08-30README: add contribute section, including donate optionGravatar Christian Hesse1-1/+19
2019-08-30use shorter url for my repositoryGravatar Christian Hesse3-6/+6
2019-08-30ipv6-update: get values into array•••... and concatenate name and regexp - just either of both is set. Gravatar Christian Hesse1-7/+4
2019-08-30unattended-lte-firmware-upgrade: add valid script to schedulerGravatar Christian Hesse1-1/+2
2019-08-30mode-button-event: add valid script to schedulerGravatar Christian Hesse1-1/+2
2019-08-30README: add valid script to schedulerGravatar Christian Hesse2-8/+8
2019-08-29script-updates: better regex matchingGravatar Christian Hesse1-1/+1
2019-08-29capsman-rolling-upgrade: do not fail on missing cap•••This is a long running process, chances are that a cap disappears intermittently. So find cap by name and do not fail. Gravatar Christian Hesse1-1/+1
2019-08-28check-health: check for valid psu state data•••This is required with recovery notifications Gravatar Christian Hesse1-9/+12
2019-08-27check-health: also send recovery notificationsGravatar Christian Hesse1-0/+11
2019-08-27add script 'check-health'•••This may be incomplete... Please report if you have missing PSUs, ttemperature sensors, whatever. change-7Gravatar Christian Hesse4-4/+70
2019-08-18upload-backup: make notification silentGravatar Christian Hesse1-1/+1
2019-08-18cloud-backup: make notification silentGravatar Christian Hesse1-1/+1
2019-08-18check-routeros-update: make notifications silentGravatar Christian Hesse1-2/+3
2019-08-18check-lte-firmware-upgrade: make notification silentGravatar Christian Hesse1-1/+1
2019-08-18global-functions: support sending silent telegram notificationsGravatar Christian Hesse1-4/+6
2019-08-18global-functions: split off $SendEMail and $SendTelegramGravatar Christian Hesse1-9/+31
2019-08-08check-routeros-update: fail on empty version stringGravatar Christian Hesse1-0/+5
2019-08-08sms-forward: add sender in subjectGravatar Christian Hesse1-1/+1
2019-08-05sms-forward: fix array access in conditionGravatar Christian Hesse1-1/+2
2019-08-02capsman-download-packages: syntax error with missing parenthesisGravatar Christian Hesse1-1/+1
2019-08-01global-functions: $DownloadPackage: re-introduce check for valid package•••Even if fetch tool does its job right now... Chances are that the download servers have corrupted or empty files. Gravatar Christian Hesse1-0/+5
2019-07-31check-certificates: fix renewing certificate in placeGravatar Christian Hesse1-14/+18
2019-07-26global-functions: add $RandomDelayGravatar Christian Hesse1-0/+7
2019-07-26global-functions: add $GetRandomGravatar Christian Hesse1-0/+13
2019-07-25script-updates: get source from arrayGravatar Christian Hesse1-2/+1
2019-07-25sms-forward: get values into arraysGravatar Christian Hesse1-8/+5
2019-07-25update-tunnelbroker: get values into arrayGravatar Christian Hesse1-5/+4
2019-07-25script-updates: get values into arraysGravatar Christian Hesse1-19/+17
2019-07-25dhcp-to-dns: get values into arrays, general reworkGravatar Christian Hesse1-29/+23
2019-07-25dhcp-lease-comment: get values into arrayGravatar Christian Hesse3-15/+12
2019-07-25capsman-download-packages: get values into arrayGravatar Christian Hesse1-7/+6
2019-07-24cloud-backup: do not remove but replace cloud backup•••The replace functionality for cloud backup is available with version 6.45beta42. routeros-6.45beta42Gravatar Christian Hesse1-2/+5
2019-07-24upload-backup: get values into arrayGravatar Christian Hesse1-4/+3
2019-07-24cloud-backup: get values into arrayGravatar Christian Hesse1-4/+3
2019-07-24email-backup: get values into arrayGravatar Christian Hesse1-4/+3
2019-07-24check-routeros-update: get values into arrayGravatar Christian Hesse1-4/+3
2019-07-24upload-backup: get values into arrayGravatar Christian Hesse1-4/+3
2019-07-24cloud-backup: get values into arrayGravatar Christian Hesse1-4/+3
2019-07-24email-backup: get values into arrayGravatar Christian Hesse1-4/+3
2019-07-24check-routeros-update: get values into arrayGravatar Christian Hesse1-21/+19
2019-07-24packages-update: allow to downgrade on change of update channelGravatar Christian Hesse1-0/+9
2019-07-24packages-update: break if latest version is unknownGravatar Christian Hesse1-0/+5
2019-07-24packages-update: get values into arrayGravatar Christian Hesse1-5/+4
2019-07-19global-functions: $DownloadPackage: fix downloading for CHR / x86_64Gravatar Christian Hesse1-0/+3
2019-07-19packages-update: run email-backup and/or upload-backupGravatar Christian Hesse1-2/+2
2019-07-19add script 'upload-backup'change-6Gravatar Christian Hesse4-2/+84
2019-07-19global-config: move config for email-backup•••Signed-off-by: Christian Hesse <mail@eworm.de> Gravatar Christian Hesse1-4/+5
2019-07-18email-backup: no more than one dot in file name•••Looks like some providers do not allow more than one dot in attachment's file name to mitigate something like `holiday.png.exe`. Let's just replace dots with underscores. Fixes #2 Reported-by: @Kampfwurst Gravatar Christian Hesse1-1/+3
2019-07-18capsman-download-packages: do not require extra permission•••The idea was to run capsman-download-packages from netwatch when upgrade.mikrotik.com is up. Instead run it from scheduler at startup, but add a delay: / system scheduler add name=capsman-download-packages \ on-event=":delay 2m; capsman-download-packages" start-time=startup Gravatar Christian Hesse1-2/+0
2019-07-18daily-psk-schedule: better matchingGravatar Christian Hesse1-1/+1
2019-07-18update-tunnelbroker: use $ParseKeyValueStoreGravatar Christian Hesse1-6/+4
2019-07-18check-certificates: use $ParseKeyValueStoreGravatar Christian Hesse1-11/+3
2019-07-18ipv6-update: use $ParseKeyValueStoreGravatar Christian Hesse1-7/+7
2019-07-17global-functions: add $ParseKeyValueStoreGravatar Christian Hesse1-0/+16
2019-07-16global-functions: $CharacterReplace: use same condition in loopGravatar Christian Hesse1-1/+1
2019-07-16global-functions: append system note in e-mail signatureGravatar Christian Hesse1-1/+6
2019-07-10update-gre-address: handle missing dynamic addressGravatar Christian Hesse1-2/+4
2019-07-09gps-track: remove workaroundrouteros-6.45rc42Gravatar Christian Hesse1-7/+0
2019-07-08capsman-rolling-upgrade: log with info, give identityGravatar Christian Hesse1-2/+3
2019-07-05lease-script: give hint about mis-usageGravatar Christian Hesse1-0/+8
2019-07-05sms-action: give hint about mis-usageGravatar Christian Hesse1-0/+5
2019-07-05ppp-on-up: give hint about mis-usageGravatar Christian Hesse1-1/+6
2019-07-05ipv6-update: give hint about mis-usageGravatar Christian Hesse1-0/+5
2019-07-01update-gre-address: get values into arraysGravatar Christian Hesse1-10/+7
2019-07-01update-gre-address: update for latest routeros•••With RouterOS 6.45 "remote-peers" was renamed to "active-peers": *) ipsec - renamed "remote-peers" to "active-peers"; routeros-6.45Gravatar Christian Hesse1-3/+3
2019-07-01check-routeros-update: link a changelog that opens in browser•••The old link was delivered with MIME type 'application/octet-stream', browsers wanted to download it as file. Gravatar Christian Hesse1-1/+1
2019-06-26bridge-port-to-default: handle special value 'dhcp-client'...•••... which disables the bridge port, but enables a dhcp client. Gravatar Christian Hesse1-5/+17
2019-06-25bridge-port-to-default: get bridge port values into arrayGravatar Christian Hesse1-8/+7
2019-06-25gps-track: fix the condition for workaround•••A null byte is always matched in regexp... Gravatar Christian Hesse1-2/+2
2019-06-24add script 'certificate-renew-issued'Gravatar Christian Hesse1-0/+14
2019-06-14backup: split off cloud-backup•••Currently backup to MikroTik cloud is pretty unreliable and script can not catch errors at runtime. Looks like this does not change any time soon (Ticket#2019052022003204). So let's just split off the cloud backup to make sure email backup works as expected. change-5Gravatar Christian Hesse5-44/+61
2019-06-13daily-psk: add hint about device specific rule•••I tricked myself several times... If a more device specific (or just earlier matching) rule exists the daily PSK is not applied! Gravatar Christian Hesse3-0/+3
2019-06-12mode-button-scheduler: beep for confirmation•••But be silent if silent-boot is enabled. Gravatar Christian Hesse1-1/+10
2019-05-24daily-psk.capsman: pick only first configurationGravatar Christian Hesse2-2/+2
2019-05-23check-lte-firmware-upgrade: drop literal 'notification'Gravatar Christian Hesse1-2/+2
2019-05-23check-routeros-update: drop literal 'notification'Gravatar Christian Hesse1-4/+4
2019-05-21check-certificates: get certificate values into arrayGravatar Christian Hesse1-43/+28
2019-05-09gps-track: make workaround conditional•••This is fixed in 6.45rc42. Gravatar Christian Hesse1-2/+7
2019-05-09email-backup: make sure to act on first cloud backupGravatar Christian Hesse1-2/+2
2019-05-02check-certificates: do not try to renew locally issued certificatesGravatar Christian Hesse1-1/+1
2019-05-02check-certificates: give issuer info on locally issued certificates•••Certificates issued locally do not have an 'issuer' property, but a 'ca' one. Looks like either of both is filled, so just concatenate. Gravatar Christian Hesse1-1/+2
2019-04-30global-functions: $CertificateAvailable: fetch by CommonName•••Now that we have a proper $UrlEncode function... Fetch certificates by CommonName. Also remove the PEM after import. Gravatar Christian Hesse7-11/+15
2019-04-30global-functions: add $WaitForFile, wait for file on fetch•••The fetch command is asynchronous, the file is not guaranteed to be available when command terminates. I opened an issue at Mikrotik support (Ticket#2019041722004999), their answer: > You should perform a check in a loop. > :delay until file exist > > That can happen also with any configuration not just files. So add a function to wait for a file with given name. I have not seen this with other configuration, though. Gravatar Christian Hesse5-4/+35
2019-04-16daily-psk-schedule: try to rotate ntp after five minutes uptimeGravatar Christian Hesse1-0/+3
2019-04-11check-certificates: make sure fingerprint is a string•••This makes sure the condition below works for certificate templates, which do not have a fingerprint. Gravatar Christian Hesse1-1/+1
2019-04-11check-certificates: do not send notification for templatesGravatar Christian Hesse1-1/+1
2019-04-11check-certificates: always return a string in $GetIssuerCNGravatar Christian Hesse1-0/+1
2019-04-10check-certificates: add url encoding for certificate downloadGravatar Christian Hesse1-4/+6
2019-04-10check-certificates: try to fetch PEM and P12 fileGravatar Christian Hesse1-4/+10
2019-04-10check-certificates: use full path...•••... to make sure syntax does not break if package is not installed. Gravatar Christian Hesse1-3/+3
2019-04-10check-certificates: just change certificates, no loopGravatar Christian Hesse1-12/+4
2019-04-09drop deprecated mode= for fetchGravatar Christian Hesse7-8/+8
2019-04-05sms-forward: group messages for same senderGravatar Christian Hesse1-15/+26
2019-04-05global-config: change duplicate word from daily pskGravatar Christian Hesse1-1/+1
2019-04-04ipv6-update: fix with prefix containing section(s) of zerosGravatar Christian Hesse1-3/+6
2019-04-03daily-psk: use the template systemGravatar Christian Hesse3-2/+8
2019-04-03always write warnings and errors to logGravatar Christian Hesse10-12/+25