Nokia E-63 on Linux

Recently I bought a Nokia E-63 Symbian Series 60 3rd edition smartphone. It looks similar to the Blackberry smartphones. It has got QWERTY keypad, WiFi, 2MP Camera, 3G and Bluetooth. I have been using Nokia 6300 for a long time; and a month ago it fell down and the panel got broken. After the fall it had a poor voice clarity and I was thinking of taking a new phone. Finally I decided to take a QWERTY handset for the sole purpose of Social Networking and ended up with Nokia E-63 which is the cheapest QWERTY handset with WiFi.
The biggest challenge of moving from Nokia 6300 to E-63 was to transfer all the contacts. As I had more than 300 entries in my phonebook, copying it to the SIM wasn’t a good idea. So I installed Gnokii on Ubuntu and backed up all the contacts from 6300 into a vcf file issuing the following command

gnokii --getphonebook ME 1 end --vcard > myphonebook.vcf

Then I copied myphonebook.vcf to E-63 memory card’s Other/Contacts directory using the USB data cable shipped with the handset. The “Copy from Memory Card” option in the Handsets wasn’t woking for the above vCard file which is containing all the contacts. As I opened that file in File Manager, it was showing only the first contact. That means it reads only one contact entry from a single vcf file. So I wrote a Python script to split myphonebook.vcf into single contact vcf files.

#! /usr/bin/env python
"""
File: split_vcf.py
A Python Script to split vcf files generated by gnokii into multiple
contacts so that most of the Nokia mobiles can restore it.
"""
 
import sys
import os
 
def split():
    if len(sys.argv) < 2:
        print 'Specify vcf file'
        sys.exit()
 
    gnokii_vcf = os.path.abspath(sys.argv[1])
    if not os.path.exists(os.path.join(
                            os.path.dirname(gnokii_vcf), 'contacts')):
        os.mkdir(os.path.join(os.path.dirname(gnokii_vcf), 'contacts'))
 
    vcf = []
    number = 0
    for line in open(gnokii_vcf, 'r').readlines():
        if line.startswith('\n') or line.startswith('\r\n'):
            continue
        elif line.startswith('END'):
            vcf.append(line)
            print 'Writing contact number', number
            contact = open(os.path.join(os.path.dirname(gnokii_vcf),
                            'contacts', str(number) + '.vcf'), 'w')
            contact.writelines(vcf)
            contact.close()
            number += 1
            vcf = []
        else:
            vcf.append(line)
 
def copy():
    gnokii_vcf = os.path.abspath(sys.argv[1])
    for contact in os.listdir(os.path.dirname(gnokii_vcf)):
        print 'Copying %s to Phone' % contact
        os.system('gnokii --writephonebook --vcard <%s' %contact)
 
if __name__ == '__main__':
    split()

Run it and you will get a directory named contacts flooded with vcf files.

python split_vcf.py myphonebook.vcf

Copy them to Other/Contacts directory of Phone’s Memory Card and use the “Copy from Memory Card” option in Contacts to restore your Phonebook. Enjoy your Nokia-E63 !!!

This entry was posted in Applications, Hardware, Linux, Personal, Python, Scripts, Tips, Ubuntu and tagged , , , , . Bookmark the permalink. Post a comment or leave a trackback: Trackback URL.

6 Comments

  1. Posted December 18, 2009 at 8:38 pm | Permalink

    Dear Author semk.in !
    You are absolutely right. In it something is and it is excellent idea. It is ready to support you.

  2. Posted December 25, 2009 at 3:03 pm | Permalink

    I want to quote your post in my blog. It can?
    And you et an account on Twitter?

  3. lolo
    Posted January 10, 2010 at 4:46 pm | Permalink

    Thank you for this script, just have the same problem, works great !!

  4. Sreejith K
    Posted January 10, 2010 at 5:21 pm | Permalink

    @chepalova

    Definitely you can use the content in your blog. My twitter link is http://twitter.com/sreejithemk

  5. Sreejith K
    Posted January 10, 2010 at 5:23 pm | Permalink

    I also wrote an application for E-63 that does the same from your phone. I’ll post it here soon.

  6. Jesse
    Posted February 18, 2010 at 11:13 pm | Permalink

    Works Great!! Used this to copy my Google contacts to my Windows mobile phone…

One Trackback

  1. [...] VCF backup contacts to Nokia E Series : http://semk.in/2009/11/nokia-e-63-on-linux/ Tags: fresh, [...]

Post a Comment

Your email is never published nor shared. Required fields are marked *

*
*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">