• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

AppleScript iSync

commander

Baldwins roter Pepping
Unvergessen
Registriert
25.02.04
Beiträge
3.206
Nabend,

ich hab mir ein winziges AppleScript geschrieben, dass meine portablen Geräte mehrmals am Tag automatisch synct, wenn ich normalerweise nichts mit dem Rechner mache und Handy usw. irgendwo im Raum rumkugelt.

Allerdings habe ich es als AppleScript DAU nicht hinbekommen, darauf zu warten, dass die Synchronisation abgeschlossen ist. Mit if auf result zu prüfen, bringt nix, denn result ist anscheinend immer sofort da und true ... :(

Das Script schaut so aus:


Code:
tell application "Finder"
	activate
	
	open application file "iSync.app" of folder "Applications" of startup disk
	try
		tell application "iSync" to synchronize
	end try
end tell

Auf das 'synchronize' sollte eigtl ein quit application folgen, aber dann poppt natürlich immer ein iSync-Dialog auf, ob ich wirklich beenden will weil ja gerade synchronisiert wird usw...

Wie wartet man auf das Ende einer Anweisung?

Gruß,

.commander
 

space

Neuer Berner Rosenapfel
Registriert
02.12.05
Beiträge
1.949
Die Delay Zeiten sind zur Sicherheit und können bei Bedarf verändert -oder ganz rausgeschmissen werden

Code:
tell application "iSync"
	activate
	synchronize
	repeat while (syncing is true)
		delay 5
	end repeat
	delay 2
	quit
end tell

Liebe Grüsse
Space
 

commander

Baldwins roter Pepping
Unvergessen
Registriert
25.02.04
Beiträge
3.206
Danke! Das geht ja viel einfacher als gedacht - wie immer ;)

Ist das ein Standard, dass iSync diesen 'syncing' - Boolean mitschleppt, auf man dann warten kann? Also, ich mein, machen das auch andere Applikationen so, was bedeuten würde dass ich immer synchronisieren muss, sprich, per repeat auf Ausführung warten muss, bevor ich etwas neues mache?

Gruß,

.commander
 

stk

Grünapfel
Registriert
05.01.04
Beiträge
7.141
Moin,

warum nimmst Du nicht einfach »SyncNow« und rufst es via cronjob/launchd auf?

Gruß Stefan