Script per creare contatti iPhone


8

Qualcuno sa come creare un elenco di contatti con un numero definito di contatti? Possono essere voci fittizie, ma ho solo bisogno di creare una rubrica con> 2000 voci. Una sceneggiatura di Automator è ciò che ho in mente, ma non sono sicuro di come procedere.

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

Risposte:


11

Un Applescript può creare in blocco voci della rubrica di OS X, che puoi importare sul tuo iPhone. Ne ho inventato uno di base per te:

-- 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 Applications/Utilities/cartella) e incollalo in un nuovo script. Così com'è, ti farà 5 contatti numerati in questo modo: contatti di esempio

È possibile modificare il numero nella set numberOfEntries to "5" as integerriga in base al numero desiderato e, se lo si desidera, modificare i dati. Se hai bisogno di altri campi (come i numeri di telefono), chiedi e ti posso mostrare come.

Versione migliorata

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

Aggiunge inoltre tutti i contatti a un gruppo ("Gruppo di prova") in modo da poter scegliere facilmente tutti quelli fittizi se si sta aggiungendo a una rubrica esistente e si desidera ripulirlo in seguito.

Modifica: l' ho anche modificato per richiedere il numero di elementi da 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: contatti fittizi 2


1
Sembra PERFETTO! Grazie! Lo proverò e ti farò sapere se ho bisogno di qualcos'altro!
Thomas,

Amico, vorrei poterlo fare +1000 per lo sforzo extra. Grazie ancora!!!
Thomas,

Prego, felice che sia stato utile. A volte è divertente mettere insieme un piccolo script per risolvere un problema.
robmathers,

1
Ho modificato la versione "migliorata" per includere un prompt per il numero di contatti da generare, piuttosto che richiedere la modifica dello script.
Robmathers,

4

Ho usato il codice di Rob in forma più breve per creare un servizio di automazione che ti consente di fare clic con il tasto destro su un'e-mail e creare un contatto:

inserisci qui la descrizione dell'immagine

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

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.