Inserito da: thedarshan | Novembre 12, 2008

Esportare la rubrica dei vecchi telefoni lg in formato vcard (da csv a vcard)

Finalmente quel maledetto lg8330 ha cotto la sua seconda batteria!
adesso mi posso liberare di lui senza sentirmi dedito al consumismo.

L’ultima cosa da fare e copiare la rubrica…e qui cominciano i problemi
il programma di gestione della lg è il famigerato e multibuggato Lg Phone Manager in particolare la versione 1.3.0.18
Questo esempio di alta tecnologia corana (nn sapevo che ci fossero le scimmie in corea) permette di esportare la rubrica in uno formato csv strutturato nel seguente modo:

Nome,Telefono 1,Telefono 2,Telefono 3,Telefono 4,Telefono 5,E-mail 1,E-mail 2,Ufficio,Ruolo,Indirizzo ufficio,Indirizzo personale,Home Page,Appunti

invece il modo ideale per spostare i contatti verso un altro telefono (qualunque esso sia purchè abbastanza evoluto) è il formato vcard.
quindi ho scritto uno script che passa da quel formato csv al vcard standard.

lo script crea un vcard per ogni contatto. i vcard possono essere aggiunti alla rubrica dal software di gestione del telefono (mandarli tutti via bluetooth potrebbe essere una pessima idea)

#converte le rubriche lg in formato csv in vcards
require 'csv'

$tail="END:VCARD"
$head=<<AMMACCABANANE
BEGIN:VCARD
UID:
VERSION:2.1
AMMACCABANANE

def crea_vcard(linea)
    nome=linea[0]
    out=File.new("./vcf/#{nome}.vcf","w")
    out<<$head
    out.puts("N:#{nome};;;;")
    out.puts("TEL;CELL:#{linea[1]}")
    out.puts("TEL;PREF:#{linea[2]}") if linea[2].size>5
    out.puts("TEL;HOME:#{linea[3]}") if linea[3].size>5
    out.puts("X-CLASS:PRIVATE")#non credo sia un tag standard
    out.puts("NOTE:#{linea[13]}") if linea[13].size>5
    out.puts($tail)
    out.close
end

array = CSV::parse(File.open(ARGV[0], 'r') {|f| f.read })
`mkdir vcf`
array.each{|linea| crea_vcard(linea)}

Nel caso il vostro telefono usasse un formato csv diverso da questo basta modificare l’ordine dei campi nella funzione crea_vcard()
Se non sapete come farlo mandatemi le prime righe del file csv e una descrizione del modello del telefono e ci penso io

Ho aggiunto un link per scaricare direttamente il files, visto che lo script per evidenziare il codice di wordpress combina dei casini. [DOWNLOAD]


Risposte

  1. ciao,
    potresti dirmi come si usa uno script? come lo eseguo? perchè nn sono molto pratico..
    Grazie.

  2. Dunque. ho fatto delle modifiche allo script.
    adesso si avvia da terminale con:

    ruby vcards.rb filecsv.csv

    dove filecsv.csv è il file esportato con il Lg Phone Manager.
    (se sei sotto windows devi scaricarti l’interprete del ruby)

  3. Ciao…anche io ho lo stesso problema..il punto è che nn ho capito niente di quello che hai scritto!! Come posso fare??
    Grazie!

  4. Dunque…beh è la risposta al commento di prima

    1.Ti scarichi l’interprete del ruby
    2.esporti con il programma della lg la rubrica in formato csv
    3.crei una cartella e ci infili il file csv e lo script
    4.vai col prompt dei comandi in quella cartella e avvii lo script con il comando ruby nomescript nomefilecsv

  5. risolto!! grazie mille!! sei un mito!!!

  6. Ciao, avendo ucciso in piscina il mio LG KE970 sono molto interessato a questo script dato che sono riuscito a salvare la rubrica.
    Non riuscendo a farlo funzionare ti chiedo il favore di indicarmi le modifiche da apportare allo script: ecco la prima riga del file CSV

    “Nome,Telefono1,Tipo telefono 1,Telefono2,Tipo telefono 2,Telefono3,Tipo telefono 3,Telefono4,Tipo telefono 4,Telefono5,Tipo telefono 5,E-mail1,E-mail2,Società,Ruolo,Indirizzo ufficio,Indirizzo personale,Indirizzo WEB,Memo”

    Grazie!!!

  7. io avevo detto le prime righe, non l’intestazione. se non mi dai nessun dato non posso provare il codice.

    falsifica nomi e numeri ma dammi dei dati per provare

  8. ciao ..io ho un lg u8550..l’altra mattina è caduto e si è spezzato a meta’ irreparabilmente ..ma sono riuscita a salvare i dati della rubrica…cosidera che dopo aver letto tutto quello che hai scritto 2 vote(commenti inclusi ) nn c’ho capito nulla …quindi tralasciando la vergogna per la mia inettitudine..vorrei chiederti se per favore potresti spiegarmi di nuovo quello che devo fare per passare i dati sul nokia…nn ho la minima idea di quello che sia un interprete di ruby…e nn so come si usano gli script …immagino sia difficile farlo capire ad una rapa come me ma te ne sarei infinitamente grata. grazie mille!


Lascia un commento

La tua risposta:

Categorie