- Mod: choose user
Distribute selected tracks to more than one remote user.
The first two rsync scripts are intended to run in the background with launchd so there can be no user-interaction (well, I suppose a dialog could pop out of nowhere every launchd cycle and ask for user input but that's rilly oogly). However, the current script can easily accomodate a choose from list dialog whereby one or more of several remote users can be selected as recipients. (Or,a list of remote users could be looped through.)
Make these property declarations at the very beginning of the script:
property listOfUserNames : {"cleanuser", "mamauser", "sonicuser"} property listOfHostIPs : {"192.168.1.206", "192.168.1.201", "192.168.1.202"}
Supply the usernames and corresponding IP addresses for the users you want to choose from. The order of the items in the listOfHostIPs list must correspond to the order of items in listOfUserNames. Each of these users should have been given the ssh-keygen treatment.
Here is the choose from list routine, which will set the remUserName, remHostIPAddr and remAddr variables:
set chosenUsername to (choose from list listOfUserNames) as text if chosenUsername is "false" then return repeat with i from 1 to (length of listOfUserNames) if chosenUsername is (contents of item i of listOfUserNames) then set remUserName to (contents of item i of listOfUserNames) set remHostIPAddr to (contents of item i of listOfHostIPs) set remAddr to (remUserName & "@" & remHostIPAddr) as text exit repeat end if end repeat
Use this routine instead of the hard-coded remUserName, remHostIPAddr and remAddr section. This could also be adapted such that a multiple selection of users or, by foregoing the choose box altogether, all the users loop through the main routine re-written as a subroutine.