How to export your T-Mobile Contacts to Google Contacts

Oct 26, 2008 23:50

UPDATE (8/1/2009) : It appears that T-Mobile released a contacts sync app! http://apps.t-mobile.com/ I haven't tried it, but it probably nicely solves the problem that this post solved a year ago.

UPDATE (6/25/2009) : Changed instructions and code to a bookmarklet! Much easier and doesn't require firefox! keywords: T-Mobile, google, mytouch 3g, g1 ( Read more... )

Leave a comment

extended version anonymous July 4 2009, 10:12:29 UTC
Mike - Thank you so much for this!

I have edited/personalized to include all fields on the T-Mobile contact details page (as of July 4, 2009, USA T-Mobile), with the exception of person title ('civility') and notes ('comment'). I left off title because it is a dropdown and I could only get it to include the item number on the list (e.g., "4" for "Dr") instead of the value itself (e.g., "Dr"). I left the state field dropdown ('persoCounty' and 'proCounty') and country field dropdowns (persoCountry and proCountry) but assume these will have the same issue if a contact has a values there (none of mine do).

Hope this helps someone out....

javascript:var data = ["First Name,Last Name,Section 1 - Description,Mobile Phone,Home Phone,Home Phone 2,Pager,Home Fax,E-mail Address,Personal Web Page,Home Street,Home Street 2,Home Country,Home City,Home State,Home Postal Code,Section 2 - Description,Business Phone 2,Business Phone,E-mail 2 Address,Business Fax,Web Page,Company,Job Title,Business Street,Business Street 2,Business Country,Business City,Business State,Business Postal Code,"];TMO.ABPORTAL.LIBAB.contactManager._datas.each(function(person) {var a = [];a.push(person.firstname);a.push(person.lastname);a.push("Personal");if(person.homeMobile != null) {a.push(person.homeMobile.value); } else { a.push("") }if(person.homePhone1 != null) {a.push(person.homePhone1.value); } else { a.push("") }if(person.homePhone2 != null) {a.push(person.homePhone2.value); } else { a.push("") }if(person.homePager != null) {a.push(person.homePager.value); } else { a.push("") }if(person.homeFax != null) {a.push(person.homeFax.value); } else { a.push("") }if(person.homeEmail != null) {a.push(person.homeEmail.value); } else { a.push("") }if(person.homeWebSite != null) {a.push(person.homeWebSite.value); } else { a.push("") }if(person.persoStreet1 != null) {a.push(person.persoStreet1.value); } else { a.push("") }if(person.persoStreet2 != null) {a.push(person.persoStreet2.value); } else { a.push("") }if(person.persoCountry != null) {a.push(person.persoCountry.value); } else { a.push("") }if(person.persoCity != null) {a.push(person.persoCity.value); } else { a.push("") }if(person.persoCounty != null) {a.push(person.persoCounty.value); } else { a.push("") }if(person.persoZipCode != null) {a.push(person.persoZipCode.value); } else { a.push("") }a.push("Work");if(person.workMobile != null) {a.push(person.workMobile.value); } else { a.push("") }if(person.workPhone1 != null) {a.push(person.workPhone1.value); } else { a.push("") }if(person.workEmail != null) {a.push(person.workEmail.value); } else { a.push("") }if(person.workFax != null) {a.push(person.workFax.value); } else { a.push("") }if(person.webSite != null) {a.push(person.webSite.value); } else { a.push("") }if(person.company != null) {a.push(person.company.value); } else { a.push("") }if(person.jobtitle != null) {a.push(person.jobtitle.value); } else { a.push("") }if(person.proStreet1 != null) {a.push(person.proStreet1.value); } else { a.push("") }if(person.proStreet2 != null) {a.push(person.proStreet2.value); } else { a.push("") }if(person.proCountry != null) {a.push(person.proCountry.value); } else { a.push("") }if(person.proCity != null) {a.push(person.proCity.value); } else { a.push("") }if(person.proCounty != null) {a.push(person.proCounty.value); } else { a.push("") }if(person.proZipCode != null) {a.push(person.proZipCode.value); } else { a.push("") }data.push(a.join(","));});var dataHolder = '' + data.join('\r\n') + '';document.write(dataHolder);

Reply

Re: extended version anonymous July 4 2009, 10:14:41 UTC
PS - Forgot to mention: the headers (field names for CSV) are all based on standard Outlook headers. The idea was to improve automatic mapping to fields when importing to Gmail contacts (which seems to do well with these Outlook standards).....

Reply


Leave a comment

Up