mi2's Slotter Page.
TOP -> 雑文 -> 携帯電話 SO505iについて

メモリーカードが搭載されていて、データをパソコンとやりとりできるようになったので、色々と実験してみました。

スケジュール機能

SO505iで以下の様なスケジュールを作成し、携帯からエクスポートしてみました。

日付2004/10/04
時間終日指定のため入力不能
終日ON
表題"内容"
アイコンETCと書いた絵柄
at"場所"
電話番号00011112222
アラーム終日指定のため?入力不能
繰返し毎日
繰返し回数2回
休日OFF
画像内蔵カメラ画像を指定
シークレットOFF
BEGIN:VCALENDAR
VERSION:1.0
BEGIN:VEVENT
DTSTART:20041003T150000Z
DTEND:20041004T150000Z
DESCRIPTION;ENCODING=QUOTED-PRINTABLE;CHARSET=SHIFT_JIS:=93=E0=97e
LOCATION;ENCODING=QUOTED-PRINTABLE;CHARSET=SHIFT_JIS:=8F=EA=8F=8A
CLASS:PUBLIC
CATEGORIES:
AALARM:;;;
RRULE:D1 #2
X-SEMC-ALLDAY:ON
END:VEVENT
END:VCALENDAR

各項目はvCalender1.0の仕様にほぼ忠実になっているようです。しかし、以下の点が謎です。

  • 日本語エンコーディング
  • CHARSET-SHIFT_JISとなっていますが、nkf -mQするとJISの様です。

  • 時刻(DTSTART,DTEND)
  • 何故かGMTです。試しにローカルタイムで作成したvCalendarをインポートしてみましたが、問題なく読み込めました。ローカルタイムを指定する場合、末尾のZが不要になります。

    調査中ですが月末のデータをうまく扱えない場合があるようです。

  • 終日指定(X-SEMC-ALLDAY)
  • なんのためにあるのか不明です。

  • 失われる情報
  • アイコン、電話番号、画像がエクスポートにより失われています。

    ちゃんとvCalendar1.0に対応している様ですが、私が使用している某スケジュールソフトは vCalendar形式での出力はできません。CSV形式では出力可能可能なので、csv→vCalenderへの変換スクリプトを作ってみましたが、問題なく読み込めてるようです。

    アドレス帳

    SO505iで以下の様なアドレス帳を作成し、携帯からエクスポートしてみました。
    ※SOUNDは半角で出力されます

    項目設定値備考
    NAMEテスト 太郎
    ヨミテスト タロウ半角カナ
    GP1グループ名編集済
    NO140自動採番
    電話1111
    電話アイコン1一般電話
    電話2222
    電話アイコン2自宅
    電話3333
    電話アイコン3携帯電話1
    メール1444
    メールアイコン1一般メール
    メール2555
    メールアイコン2会社メール
    メール3666
    メールアイコン3自宅メール
    住所777
    BEGIN:VCARD
    VERSION:2.1
    N;CHARSET=SHIFT_JIS:テスト 太郎;;;;
    SOUND;X-IRMC-N;CHARSET=SHIFT_JIS:テスト タロウ;;;;
    TEL;VOICE:111
    TEL;HOME;VOICE:222
    TEL;CELL:333
    EMAIL;INTERNET:444
    X-SEMC-EMAIL:INTERNET
    EMAIL;INTERNET:555
    X-SEMC-EMAIL:WORK
    EMAIL;INTERNET:666
    X-SEMC-EMAIL:HOME
    ADR;CHARSET=SHIFT_JIS;DOM;HOME:;777;;;;;
    X-CLASS:PUBLIC
    END:VCARD

    グループ名が出力されないようでしたが、全件出力するとグループ名も出力されました。
    ※SOUNDは半角で出力されます

    項目設定値備考
    NAMEテスト 次郎
    ヨミテストジロウ半角カナ
    GP2グループ名編集済
    NO141自動採番
    電話1111
    電話アイコン1携帯1
    電話2222
    電話アイコン2携帯2
    電話3333
    電話アイコン3ポケベル
    メール1444
    メールアイコン1携帯メール1
    メール1シークレット1234
    メール2555
    メールアイコン2携帯メール2
    メール2シークレット5678
    住所666
    BEGIN:VCARD
    VERSION:2.1
    N;CHARSET=SHIFT_JIS:テスト 次郎;;;;
    SOUND;X-IRMC-N;CHARSET=SHIFT_JIS:テストジロウ;;;;
    X-GNO:2
    TEL;PCS:111
    TEL;WORK;VOICE:222
    TEL;PAGER:333
    EMAIL;INTERNET:444
    X-SEMC-SECODE:1234
    X-SEMC-EMAIL:CELL1
    EMAIL;INTERNET:555
    X-SEMC-SECODE:5678
    X-SEMC-EMAIL:CELL2
    ADR;CHARSET=SHIFT_JIS;DOM;HOME:;666;;;;;
    X-CLASS:PUBLIC
    END:VCARD

    いくつかの項目においてvCard2.1に準拠していないようです。

  • 名前
  • エンコードされていません。SHIFT_JISでそのまま書かれています。

  • SOUND
  • エンコードされていません。SHIFT_JISでそのまま書かれています。

  • 電話番号
  • アイコンは以下の様に対応している模様

    一般電話VOICE
    自宅HOME;VOICE
    携帯電話1CELL
    携帯電話2PCS
    会社WORK;VOICE
    クイックキャストPAGER
    FAXFAX
  • メール
  • 種別は拡張を使用しています。X-SEMC-EMAIL:値

    一般メールINTERNET
    会社メールWORK
    自宅メールHOME
    携帯メール1CELL1
    携帯メール2CELL2
  • グループ名
  • グループ名は失われますが、グループ番号は拡張を使用している模様。X-SEMC-EMAIL:番号

    vCard2.1対応みたいですが、独自拡張が一杯です。:-)

    しかも私が使用している年賀状ソフトは何故かvCardに対応していません。しかしContactXMLに対応。そこで変換スクリプトを作ってみました。

    データの受渡しについて

    ものが用意できたのはいいのですが、パソコン<->携帯間のデータ受渡しが面倒この上ありません。そこで色々と実験してみました。

    メールでの受渡し

    vCardの仕様にInternetRecommentedが載っていてそれによると、メールでは以下の方法で受渡しをするようです。
    1. Plain-Text
    2. MIME Content-Type:text/plain;
    3. MIME Content-Type:text/x-vCard;
    4. MIME Content-Type: application/directory

    DoCoMo携帯では添付ファイルは削除されるハズなので 2以降は、はなから無理だと思われるので、Plain-Textで送ってみましたが、当然の様に取り込みはできませんでした。

    駄目元でMIME Content-Type:text/plain;で送信したところ、削除されませんでした。まさかと思ってContent-Type:text/x-vCardを試してみましたが、やはり削除されていました。:-)

    参考までに実験用の Mewの設定は以下の通り。

    (eval-after-load "mew" '(add-to-list 'mew-mime-content-type
         '("text/x-vCalendar" "\\.VCS$"
           nil mew-prog-plain mew-icon-text)))
          

    Webでの受渡し

    vCardの仕様で定められていますが、Webサーバ用意してアップロードして携帯でアクセスしてなんてやってられないので、接続ケーブル、もしくは赤外線で実験する予定です。