iPhone」カテゴリーアーカイブ

自前メールサーバで、iPhoneにメール着信のプッシュ通知を受け取る

CentOS6+Postfix+Dovecotな環境で自前メールサーバを運用している。
表題のようなことはできないと思っていたが、やってみたら簡単にできた。
日本語の扱いに問題があると指摘しているサイトもあるが、試した限りでは問題は見つけられない。
バージョンアップで修正されたということだろう。

概要

Z-PushなるPHPソフトを利用する。
デーモンとして起動するようなものを想像していたが、PHPなのは驚いた。
どういう仕組みなのか興味を持ったので、いずれ勉強したい。

設置作業

公式サイトからダウンロードして展開し、サーバの適当な場所に配置し、Apacheが読み書きできるように所有者とパーミッションを設定。
取説には/usr/share/z-pushに設置するように書かれていたが、Apacheの扱うものはまとめておきたいので、ここでは/var/www/z-pushに配置した。今のところ特に問題は起きていない。

次にconfig.phpを設定。
ここでは

 define('TIMEZONE', 'Asia/Tokyo');

 define('BACKEND_PROVIDER', 'BackendIMAP');

の2カ所を変更。
最後にApacheの設定。ここではhttpd.confに以下を追記した。

Alias /Microsoft-Server-ActiveSync /var/www/z-push/index.php
<Directory "/var/www/z-push">
AddType application/x-httpd-php .php
php_flag magic_quotes_gpc off
php_flag register_globals off
php_flag magic_quotes_runtime off
php_flag short_open_tag on
</Directory>

これでApacheを再起動したら、
http://[ドメイン]/Microsoft-Server-ActiveSync
にアクセスし、

GET not supported
 This is the Z-Push location and can only be accessed by Microsoft ActiveSync-capable devices

とか書かれたエラーページが表示されれば、ここまでは成功。

iPhoneの設定

設定アプリからメールアカウントを追加、アカウントの種類はExchangeを選択。
メールアドレスやIMAPのパスワードを求められるままに入力。
認証できませんとのエラーが出るが、とにかくアカウント設定を保存。
追加したアカウントの設定を開き、詳細設定からSSLの使用を外す。
これでエラーが出なくなり、メールアプリでメールの確認が可能に、そしてプッシュ通知を受け取る設定も可能になる。

iPhone5のLED(フラッシュ)が点灯しない

世間ではiPhone5のボタンの無償修理が話題なようだが、手持ちの本体はその対象ではなかった。

そのときふと思い出したのが、手持ちiPhone5の購入後1年の保証がそろそろ切れるということ。
そして、しばらく前からLED(フラッシュ)が点灯しない症状が発生していたが放置していたこと。
ソフト的な問題ではないと思ったがいちおうリストアを試した。当然効果なし。

これはもしかして保証修理の対象になるのではないだろうか。
地方都市なのでジーニアスバーはないが、県内唯一の正規サービスプロバイダが徒歩圏内にある。
試しに行ってみると、無償新品交換となった。
イヤッホウ

補足-点灯しなくても仕様な場合

公式カメラアプリでフラッシュをオフにしていると、コントロールセンターの懐中電灯ボタンがグレーアウトしてLEDを点灯できない。
これは仕様だが個人的には納得いかない。

iOS7にしたiPhone5で横長の画像を横幅合わせで壁紙に指定する

…ことはできないようなのだ。
どうしてもしたければ、画像の上下に帯を追加することで強引に横幅全体を表示できる壁紙となる。
というワケで、画像をそのように加工するWebサービスを作ってみた。

成果物

  • 送信された画像ファイルを、iPhone5で壁紙にする際全体が入りきるように、上下に帯を追加して返します。
  • PNG,GIF,JPG,BMP形式に対応します。
  • 容量制限3MB(実際には2MBくらいでもだいぶきついです)



自動(試験的)

iOS7以降のiPhone(iCloud)のリマインダーと、ThunderbirdのLightningでTODOを同期する

9月上旬くらいまでこちらの方法でiPhone(iCloud)のリマインダーとThunderbirdのLightningでTODOを同期して利用していたが、しばらく前からLightning側がエラーで同期できなくなった。

調べてみると、iOS7のダウンロード開始と同時にiCloudもリニューアルされたらしく、その影響と推測される。

参考サイトのツールで「リマインダー」のアドレスを確認してみると、以前使用していた

https://p01-caldav.icloud.com/xxxxxxxx/calendars/tasks/

から

https://p01-caldav.icloud.com/xxxxxxxx/calendars/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/

に変わっていた。

新しいアドレスに変更すると、以前のように同期できた。

解決。