Script per creare contatti iPhone

8

Qualcuno sa di un modo per creare un elenco contatti con una quantità definita di contatti? Possono essere voci fittizie, ma ho solo bisogno di creare una rubrica con > 2000 voci. Uno script di Automator è quello che ho in mente, ma non sono sicuro di come farlo.

Mi scuso se questo è nel posto sbagliato. Stavo considerando SU o SE, ma ho pensato che avrei iniziato qui.

    
posta Thomas 22.08.2012 - 17:53
fonte

2 risposte

11

Un oggetto Applescript può creare in blocco le voci della rubrica di OS X, che puoi quindi importare sul tuo iPhone. Ne ho creato uno di base:

-- Change these to your desired data
set firstName to "Test"
set lastName to "User"
set numberOfEntries to "5" as integer

set counter to "1" as integer
tell application "Address Book"
    repeat numberOfEntries times
        set thePerson to make new person with properties {first name:firstName, last name:lastName & " " & counter}
        make new email at end of emails of thePerson with properties {label:"Work", value:"test" & counter & "@example.com"}
        make new address at end of addresses of thePerson with properties {label:"Home", city:"Fakeville", street:(counter as string) & " Some St."}
        set counter to counter + 1
    end repeat
    save
end tell

Apri AppleScript Editor (nella tua cartella Applications/Utilities/ ) e incollalo in un nuovo script. Così facendo, ti farà 5 contatti numerati in questo modo:

PuoimodificareilnumeronellarigasetnumberOfEntriesto"5" as integer in tutti i casi necessari e modificare i dati se lo desideri. Se hai bisogno di altri campi (come i numeri di telefono), chiedi e io posso mostrarti come.

Versione migliorata

Sono andato un po 'fuori bordo e ho creato una versione che ha nomi più belli. Ho preso i 20 nomi maschili e femminili più popolari, 40 cognomi più popolari e ho aggiunto un'iniziale di mezzo, quindi hai una probabilità piuttosto bassa di duplicati (un po 'meno del 5% in un set di 2000, secondo la mia matematica) senza il pippo di contatti numerati.

Aggiunge anche tutti i contatti a un gruppo ("Gruppo di test") in modo da poter selezionare facilmente tutti quelli fittizi se stai aggiungendo a una rubrica esistente e vuoi pulirlo in un secondo momento.

Modifica: L'ho modificato anche per chiedere quanti elementi creare, quindi non è necessario modificare il codice.

-- name lists: 20 most popular (US) male and female first names, 40 most popular last names
set firstNameList to {"Mary", "Patricia", "Linda", "Barbara", "Elizabeth", "Jennifer", "Maria", "Susan", "Margaret", "Dorothy", "Lisa", "Nancy", "Karen", "Betty", "Helen", "Sandra", "Donna", "Carol", "Ruth", "Sharon", "James", "John", "Robert", "Michael", "William", "David", "Richard", "Charles", "Joseph", "Thomas", "Christopher", "Daniel", "Paul", "Mark", "Donald", "George", "Kenneth", "Steven", "Edward", "Brian"}
set lastNameList to {"Smith", "Johnson", "Williams", "Jones", "Brown", "Davis", "Miller", "Wilson", "Moore", "Taylor", "Anderson", "Thomas", "Jackson", "White", "Harris", "Martin", "Thompson", "Garcia", "Martinez", "Robinson", "Clark", "Rodriguez", "Lewis", "Lee", "Walker", "Hall", "Allen", "Young", "Hernandez", "King", "Wright", "Lopez", "Hill", "Scott", "Green", "Adams", "Baker", "Gonzalez", "Nelson", "Carter"}
set initialList to "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
set counter to "1" as integer

-- prompt for how many contacts to create
set dialogText to "Number of contacts to create?"
repeat
    display dialog dialogText default answer ""
    set numberOfEntries to text returned of result
    try
        if numberOfEntries = "" then error
        set numberOfEntries to numberOfEntries as number
        exit repeat
    on error

    end try
end repeat

-- populate the address book
tell application "Address Book"
    set theGroup to make new group with properties {name:"Test Group"}
    repeat numberOfEntries times
        set firstName to some item of firstNameList
        set lastName to some item of lastNameList
        set middleInitial to some item of initialList & "."
        set thePerson to make new person with properties {first name:firstName, middle name:middleInitial, last name:lastName}
        make new email at end of emails of thePerson with properties {label:"Work", value:firstName & middleInitial & lastName & "@example.com"}
        make new address at end of addresses of thePerson with properties {label:"Home", city:"Fakeville", street:(counter as string) & " Some St."}
        add thePerson to theGroup
        set counter to counter + 1
    end repeat
    save
end tell

Ecco cosa genera:

    
risposta data 22.08.2012 - 18:48
fonte
4

Ho utilizzato il codice di Rob in forma più breve per creare un servizio di automazione che ti consente di fare clic con il pulsante destro del mouse su un'email e creare un contatto:

Grazie mille Rob - mi hai risparmiato ore e ore di lavoro: -)

    
risposta data 30.04.2014 - 13:46
fonte

Leggi altre domande sui tag