Suche Umgebungsbildschirmrekorder

Ich bin ein Work-from-Home-Entwickler, der stundenweise bezahlt wird.

Ich suche eine App, die im Hintergrund läuft und meine Bildschirme aufzeichnet und (alle 20 Sekunden oder so) über FTP auf meinen Webserver hochlädt.

Auf diese Weise kann ich eine einfache Website für meine Kunden einrichten, und sie können mir „bei der Arbeit zusehen“ und sicher sein, dass ich wirklich für sie arbeite und nicht nur rumalbere oder Spiele spiele.

Es muss eine Ambient-App sein, was bedeutet, dass sie sehr diskret sein und meine Arbeit nicht stören sollte (hauptsächlich Xcode/Unity-Zeug).

Ich bin bereit, eine faire Shareware-Gebühr zu zahlen, aber nichts auf Abonnementbasis.

Ich habe diese Art von Vertrauensproblemen im Allgemeinen gelöst oder verhindert, indem ich zu Beginn eines Jobs und ein paar Tage später an ihrem Standort gearbeitet und eine Arbeit versprochen habe, die ich in meinem eigenen Büro erledigen und am [bestimmten Tag liefern werde ]. Dann tauche ich an diesem Tag fertig auf. Sie sind normalerweise erleichtert, wenn sie herausfinden, dass sie mich nicht babysitten müssen, und es interessiert sie selten, wo oder wann ich danach arbeite.

Antworten (2)

Sie könnten Automator verwenden, um dafür einen Workflow zu erstellen. Automator kann Screenshots erstellen und Sie müssen ein Shell-Skript verwenden, um den Screenshot hochzuladen, es sei denn, Sie haben einen FTP-Client, der mit Automator kompatibel ist. Beachten Sie, dass das Hochladen eines Screenshots je nach Bildschirmgröße und Geschwindigkeit Ihrer Internetverbindung länger als 20 Sekunden dauern kann. Ein 5-Minuten-Intervall könnte angemessener sein.

Hier ist ein Automator-Workflow, den ich gerade erfolgreich getestet habe, um einen Screenshot zu machen und ihn auf einen FTP-Server hochzuladen.

NB: Sie müssen den Shell-Skriptschritt so einstellen, dass Eingaben aus dem vorherigen Schritt ignoriert werden, oder er schlägt fehl, wenn Sie versuchen, das Bild in Text umzuwandeln. Automator-WorkflowSie können diesen Workflow als .workflow-Datei speichern und müssen ihn dann so planen, dass er in einem beliebigen Intervall ausgeführt wird, das Sie für angemessen halten. Sie könnten dies über iCal tun, aber ich denke, iCal würde Ihnen nur erlauben, es täglich oder seltener auszuführen. Sie brauchen also etwas anderes. Sie könnten dies tun, indem Sie ein launchdSkript schreiben, oder Sie könnten ein Dienstprogramm wie lingon verwenden , um das Skript für Sie zu erstellen. Auf diese Weise können Sie es so einstellen, dass es in einem beliebigen Intervall ausgeführt wird.

Großartige Verkettung von Tools – stellen Sie nur sicher, dass Sie den launchd-Job entladen, bevor Sie schlafen gehen. Launchd erkennt Jobs, die hätten ausgeführt werden sollen, und könnte vielleicht ein paar Snapshots mehr planen, als Sie möchten. Ein schneller Test, um den letzten Pass zu verfolgen, und dieser Pass würde verhindern, dass veraltete oder zu viele Snaps ausgegeben werden, wenn launchd sie zu schnell plant.
Wow, das ging richtig ins Geld. Ich werde sofort versuchen, ein Skript damit zu erstellen. +1 und genehmigt.
Ich hoffe, es funktioniert dann für Sie. Die einzige Hürde besteht darin, dass es alle x Sekunden / Minuten ausgeführt wird. Wenn Sie also launchd etwas komplex finden, macht es diese App "lingon" möglicherweise einfacher

/3/ftp_screenshots.sh:

#!/bin/sh

tmp=${TMPDIR}`uuidgen`.png
screencapture $tmp
fn=`date '+%m-%d-%H-%M'`.png
ftp -in ftp.server.tld<<FTP
user username pa55word
binary
cd www
put $tmp $fn
bye
FTP
rm $tmp

Ich würde SSH bevorzugen ( ssh - Upload file with SCP bash script - Stack Overflow ), aber ich habe immer noch nicht herausgefunden, wie man SSH-Schlüssel einrichtet.


~/Library/Preferences/ftp_screenshots.plist:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Disabled</key>
    <false/>
    <key>Label</key>
    <string>ftp_screenshots</string>
    <key>ProgramArguments</key>
    <array>
        <string>sh</string>
        <string>/3/ftp_screenshots.sh</string>
    </array>
    <key>StartInterval</key>
    <integer>1800</integer>
    <key>RunAtLoad</key>
    <true/>
    <key>ExitTimeOut</key>
    <integer>60</integer>
</dict>
</plist>

Diese Funktionen könnten hilfreich sein:

laload() { launchctl load ~/Library/LaunchAgents/"$1".plist; }
launload() { launchctl unload ~/Library/LaunchAgents/"$1".plist; }
Cool! +1 für dich