以前、Androidで利用できるSIPアプリの比較記事を公開しました。
今回はiOSで動作する無料SIPアプリの比較を行ってみました。
意外にも、前回Android版の記事でご紹介したアプリのほとんどが、iOS版も公開されていました。
・ZoiPer
・AGEphone
・Linphone
・SmarTalk 公式アプリ
今回はこれらのiOS版のアプリで検証してみたいと思います。
・ZoiPer
まずはSIPクライアントの中でも人気の高いZoiPer。
Android同様にUIは英語版のみですが、とても見やすく、迷わず設定できる点も変わりません。

ただし設定画面はAndroid版とは少し違う印象になります。
ダイヤラーもAndroid版同様見やすいです。


そしてAndroid版と最も異なるのが、着信画面がiOS標準のものとなる点。
システム標準電話アプリのUIとほぼ同等になりますが、同じ操作で使えるうえ、端末をロック中でも応答できるので、むしろこっちの方が使いやすいかもしれません。
ちなみに、この後ご紹介するすべてのアプリで、ロック中の着信画面はシステム標準のものが使用されるようになってます。
ちなみに、どういうわけか初期設定でNAT越えサーバーの設定が有効になっており、SmarTalkをZoiPerで使う場合はこの設定が原因でレジストに失敗します。

赤枠のスライドスイッチをオフにし、右上の”SAVE”をタップすることで、レジストができるようになります。
音質はAndroid版同様ばっちりで、問題なく通話できました。
・AGEphone
次はAGEphoneのiOS版を確認していきます。
こちらはAndroid版と同様で、日本語のUIで使用することができます。


設定画面とダイヤラー画面。
いずれもAndroid版のデザインとほぼそろえられているような印象です。

ただ、中身の設定画面についてはデザインが微妙にiOS仕様になっていました。(こっちの方が操作はしやすい気がします…w)
Amdroid版のAGEphoneの欠点として、ロック中でもワンタップで電話に応答できてしまうのが個人的にはいまいちでしたが、

iOS版はZoiPer同様システム標準の着信画面が使用されているため、ロック画面ではばっちりスライドスイッチになっていました。
これならAGEphoneでもUI的には安心して使えそうです。
音質もそこそこよく、十分実用的に通話ができるレベルです。
・Linphone
完全オープンソースのSIPクライアントであるLinphoneですが、iOS版でもリリースされていました。
こちらも初期設定画面はほぼAndroid版同様のUIになっていました。


個人的に、Linphoneは3アプリの中で最もUIがAndroid版と近いように感じました。
ボタンの配置などもほぼそのままです。
ただ、ロック中の着信画面はLinphoneもOS標準のものとなっていました。

対応しているコーデックも多いためか、音質もばっちりでした。
・SmarTalk 公式アプリ
最後に、SmarTalkの公式アプリも確認してみました。



SmarTalkユーザーであればやはり設定が一番簡単なのが公式アプリでしょう。
音質も問題なく、操作性もシンプルで、十分実用的に使えます。
また、Android版の公式アプリもワンタップで応答できてしまいましたが、

こちらもシステム標準のUIを使用し、ロック中はスライドスイッチになるため誤応答の心配もなさそうです。
この後、端末再起動後の動作をチェックするため、iPhoneを再起動して試したところ…
なんとある衝撃的な事実が判明しました。
・iOSアプリはシステムの仕様上自力で自動起動することができない
今回ご紹介したすべてのアプリで端末再起動後の着信ができるか確認したところ、なんとSmarTalk公式アプリを除くすべてのアプリで、着信ができませんでした。
設定項目を見直してはみたのですが、自動起動オプションなどの、いずれも関係がありそうな設定項目は適切に設定されていました。
実はAndroidと違い、iOSでは端末のシステムが起動時に、アプリが自力で立ち上がったり、常駐したりする方法が用意されていないようです。
androidアプリにできてiOSアプリにできないこと – WEB BANANA UNITE
例外的に、プッシュ通知を受け取ったり、ユーザーが一度アプリを起動した後でバックグラウンドにした後であれば、対象のアプリが着信を受けた際に起動することは可能なようです。
ただし、公式アプリ以外でプッシュ通知オプションをONにしても、残念ながらアプリをユーザーが立ち上げて終了しないようにしておかない限り、着信を受けることはできませんでした。
また、バックグラウンドにしておけばしばらくは着信できますが、一定期間使わないままにしておくとiOS側から自動で終了させられてしまう可能性があります。
ということで、SmarTalkを使用して、本当の意味で電話として使用したいのであれば、唯一SmarTalkからのプッシュ通知を受信して起動、着信することができる公式アプリ一択になりそうです。
この部分はiOS側の制限になり、アプリ側ではどうしようもない部分のため、サードパーティアプリで着信できるようにするためにはやはりiOS側から何らかの仕組みが提供されるのを待つ必要があります。
・まとめ
意外にもAndroidと同等以上に沢山の種類のSIPアプリが公開されており、かなり充実している印象でした。
ただ、もしSIPなどのインターネット経由の電話を確実に受ける場合は、現時点ではプッシュ通知以外に方法がないことがわかりました。
やはりIP電話機として使用する場合は、現状Androidの方が向いているといえそうです。
とはいえ、iOS端末をすでに持っている方の場合はインターネット電話を受けられないわけではないので、まずはiOS上で利用できるアプリを試してみるとよいのではないかなと思いました。
電池の持ちとのトレードオフになるので非常に悩ましい要素ではありますが、個人的にはもう少しiOSアプリのバックグラウンド動作のオプションを増やしてほしいなぁと感じました。