How to transfer SMS from your old phone?

Ben Wong lists.openmoko.org at wongs.net
Sat Nov 21 01:49:29 CET 2009


My older brother, a world traveler, had a box full of SIM cards from
which he wanted to back up all the old SMS and address books.  We used
my FreeRunner to do it using a quick hack script I wrote that dumps
the info to a text file.  The result was not in UTF-8, so I wrote a
tiny C program to fix it.  I'm sure my method could be vastly
improved, but this works.  I've pasted them below for everyone's
enjoyment.

By the way, the slowest part of the process was rebooting the
FreeRunner between each SIM.  I didn't want to risk my FreeRunner by
hot-swapping the SIM (and SD card since that's in the way).  Does
anyone know if it would have been safe to do that?

--Ben

----- Start backupsim.sh -----
#!/bin/sh

exec 1>simbackup-$(date '+%Y-%h')

echo "GetSimInfo"
mdbus -s org.freesmartphone.ogsmd \
        /org/freesmartphone/GSM/Device \
         org.freesmartphone.GSM.SIM.GetSimInfo
echo

for book in $(mdbus -s org.freesmartphone.ogsmd \
        /org/freesmartphone/GSM/Device \
         org.freesmartphone.GSM.SIM.ListPhonebooks \
        | tr ',' '\n' | egrep -o "'\w*'")
do
        echo $book
        mdbus -s org.freesmartphone.ogsmd \
                /org/freesmartphone/GSM/Device \
                 org.freesmartphone.GSM.SIM.RetrievePhonebook \
                $book
        echo
done

mdbus -s org.freesmartphone.ogsmd \
        /org/freesmartphone/GSM/Device \
         org.freesmartphone.GSM.SIM.RetrieveMessagebook 'all'

---- End of backupsim.sh ----

---- Start sim2utf8.c ----

#include <stdio.h>
main() {
  int c;
  char h[3];

  while ((c=getchar()) != EOF) {
    if (c== '\\') {
      c=getchar();
      if (c!='x') {
	putchar('\\');
	putchar(c);
	continue;
      }
      c=hexme (getchar(), getchar());
      putchar(c);
      continue;
    }
    putchar(c);
  }
}

int hexme(int x, int y) {
  if (x>= '0' && x<='9')
    x=x-'0';
  else
    x=x-'a'+10;

  if (y>= '0' && y<='9')
    y=y-'0';
  else
    y=y-'a'+10;

  return x+16*y;
}
---- End of sim2utf8.c ----

P.S.  I pasted the text instead of using MIME attachments (or an
external web site) because I'd like this to be google-able.



On Fri, Nov 20, 2009 at 1:07 AM, Jan Vlug <jan.public at famvlug.nl> wrote:
> Hi all,
>
> I would like to transfer my old SMSes from my previous Windows Mobile
> phone to my Openmoko FreeRunner. I vaguely remember to have seen
> instructions on a user page on the wiki about how to do this. But I
> cannot find this page any more.
>
> Please, let me know how to do this if you know.
>
> Thanks,
> Jan.
>
> _______________________________________________
> Openmoko community mailing list
> community at lists.openmoko.org
> http://lists.openmoko.org/mailman/listinfo/community
>



More information about the community mailing list