2008年2月26日火曜日

810P 用に ubiqun の設定変更(3)

 810P 用に ubiqun の設定を行っているが,SoftBank 3G 携帯は,漢字コードが UTF-8 なので,ubiqun のバイト数カウントがうまくいかず,284bytes 送れるのに暫定的に 188bytes 毎に分割する設定にした,てのが前回までのあらすじ.

これだと,半角文字が含まれるメールだともったいないことになってしまうので,ubiqun を改造して,
・全角文字は 3bytes/1文字 でカウントする
・メールは 284bytes/1通 で分割する
を実装.

で,ubiqun_lib.pl に当てるパッチを作ったので,欲しい人はどうぞ
バージョンは ubiqun_20030913 ベースで作ってます.

これ以外に,user_phone.dat の [PHONE1] セクションとかで

phone_type = jsky_longmail_free

mail_optimize_zenhan = no
mail_jcode_3g = yes
macro_header_from_2 = &MACRO_CUT($header{'FROM'}, 55)
macro_body_header_1 = $header{'X-UBIQUN-FILENAME'}
macro_byte_header = 100
macro_header_subject_2 = &MACRO_CUT($setting{'mail_split_now'} . '/' . $setting{'mail_split'} . ']' . $header{'SUBJECT'}, 40, $setting{'mail_jcode_subject'})

に設定するのと,ubiqun_phonetype.dat の [JSKY_LONGMAIL_FREE] セクションに

mail_jcode_3g = no

を追加すれば,うまくいくはず.(これつけないと config ファイルの仕組みがうまく働かなかった)

ポイントは,
・mail_jcode_3g = yes に設定することで全角文字を 3bytes でカウントする
・JIS コードの KI/KO を考慮する必要がないので mail_optimize_zenhan = no に設定する
・macro_byte_header = 100 に設定する事で,本文は 384 - 100 = 284bytes 固定
で,残りの macro_* 設定はお好みで.

0 件のコメント:

コメントを投稿