2018年6月26日火曜日

ブラステルの呼び出し音をなぜ変えたか?

前回のブログでブラステル同士の呼び出し音を変える件を記載しました。


これによってブラステル同士は、ごく普通に国内固定電話と同じ呼び出し音が鳴るようになりました。



変えたかった理由はいくつかありますが、1点目は、娘一家が今夏帰省するので帰省中に使う電話(スマホ)用にブラステル電番を個々人向けに確保したことです。


スマホにはブラステルを GS Wave で使う設定と、PremiumDialer で通常発信は GS wave にしてあり、標準電話アプリや連絡帳から発信した場合でも、一部(3桁サービスや緊急電話)を除き GS Wave からの発信(ブラステルからの発信)になるようにしてあります。



彼らが家族間で電話をかける/受ける、ときに発信側の違和感をなくしたかったことです。


フランス仕様の方がよければそのようにすることもできます。

孫の、次男坊の方は、前回のブログ記事で紹介したある映画のサウンドトラックがいい、というかも知れません(w).

いまは、国内仕様に合わせていますが、実際に帰省したときに聞いてみて、どちらがいいかで最終的に決めるつもりでいます。


2点目は、連れ合いの携帯の 10分話し放題をやめることです。
最近は、電話の回数が減っており契約継続する必要性が薄くなったのです。


でもかけるときは通話料は安くしたい、ということで連れ合いにもブラステル電番を確保したわけです。


そうすると、連れ合いを含めた家族間はブラステル同士で無料で済みますが、呼び出し音の違和感をなくしたかった、というのもありました。


それであれこれ模索してやっと国内仕様の呼び出し音にすることができました。



家族や親しい人たちとは LINE 通話が殆どですが、彼らが友だちやほかの通話をするときのためにブラステルも使えるようにしたのです。


LINE アカウントは彼らの iPhone 用のものがすでにあって、帰省中に使う Android スマホの LINE アカウントは別途確保したものなので、友達同士でも使いづらいかも知れない、が連絡手段は欲しだろうということも考慮しました。


ブラステルがモバイル時でも問題なく発着信できること、通話も遅延を殆ど感じずに話せることはすでに何度も検証済です。




P20 Lite を注文してしまいました。

これはワタシ用にして、いまワタシ用の P10 Lite は連れ合い用にし、連れ合いがいま使っている g07+ を長男坊用にするつもりです。

 ワタシ:P20 Lite
 連れ :P10 Lite
 娘  :motoG4plus
 長男坊:g07+
 次男坊:Nexus5

孫たちはそれぞれに日本の友だちがいますので使う機会があるでしょう。

今夏はダンナは帰省しませんので、ダンナ用はありません。

まぁイギリス人ですから用意したところで家族以外に連絡することもありませんし、一緒に帰省のときは娘と一緒に行動する場合が殆どですのでまず使うことはないはずです。









2018年6月22日金曜日

ブラステルの呼び出し音(Ring Back Tone)【追記あり・行末】

「呼び出し音(Ring Back Tone)」は「着信音(Ring Tone)」とは明確に違います。

前者は発信側が呼び出し中に発信側に流れる音をいい、後者は着信側に流れる音をいいます。

混同されるとここで記述する内容の意味が不明になりますので、違いをきちんとわけて考えてください。



呼び出し音は通常はプロバイダ側(NTT、ドコモ、au やブラステル、FUSION IP-Phone Smart などをプロバイダといっています)が流している音で、着信音は着信側のデバイスが流している音です。


ですからドコモのメロディコールはプロバイダ側のサーバー設備からのサービス、ということになるわけですね。

これに対して着信音はデバイスが流すわけですから、デバイスに用意された音源の中から自由に選択できるわけです。


SIP のシーケンスは下記のようになっていますが、"180 Ringing" が呼び出し音をエンドポイントに流します。



POI(Point Of Interface : 各事業者と NTT 東西との接続点)を通じた呼び出しでは日本仕様の呼び出し音を流す決まりになっているようで、IP 電話で事業者が異なっても日本仕様の呼び出し音になっているようです。



ブラステル同士の場合は、ブラステル固有の呼び出し音になっていて Asterisk の標準呼び出し音と同じ音が流れます。

これによって、相手がブラステルである(つまり無料通話になる)ことがわかりますので、わざとこういうふうにしているのかも知れません。

もっとも、ブラステル同士の場合は「○○分ご利用できます。・・・」というメッセージが流れずにすぐに呼び出しが始まりますから、呼び出し音を区別する必要性を感じませんが。


下図は SIP による通話シーケンスですが、200 OK は着信応答を呼び出し側に伝えています。

太郎側は呼び出しされたとき(INVITE)、太郎のデバイスで設定した「着信音」が鳴ります。



ブラステル番号から携帯電話や NTT の固定電話、他 ITSP 電話を呼び出した場合は、日本の仕様である 400Hz ±15Hz の変調をかけた音が1秒、無音が2秒繰り返し流れます。

逆に呼び出された場合も同じく日本仕様の呼び出し音です。


いわゆる「トゥルルルー、トゥルルルー」という音ですね。

ソフトバンクはこの音の前に事業者識別音という「プップップッ」と鳴った後に「トゥルルルー、トゥルルルー」という音に変わります。



一方、ブラステル同士で呼び出すと「ブラステル固有の呼び出し音」が発信側に流れます。

日本仕様とは違って少し違和感があります。

Asterisk の標準呼び出し音である 450Hz ± 40Hz の変調音を2秒、無音が3秒の繰り返しと同じ音のようです。

ブラステルは Asterisk を使っているのかも知れません(?)。
ブラステルの SIP サーバーは kamailio (4.1.0-pre0 (x86_64/linux)) でした。

米国仕様に近いのですが、異なります。


米国の場合は 440Hz ± 40Hzの変調音を2秒、無音を4秒の繰り返しです。
フランス仕様の場合は 440Hz が 1.5秒、無音が 3.5秒の繰り返しです。

無音が長いと間延びを感じます。


このように各国固有の呼び出し音が規定されているわけです.


どうも違和感ありすぎなのですが、ブラステル側が対応しないと本来はどうしようもないわけですね。




そこで Asterisk(IP-PBX)でなんとかならないか、と考えたのです。


ブラステルの場合は複数デバイスでレジストでき、そのいずれも着信鳴動し、いずれかが応答するとほかは鳴動停止(着信がなかったかのようにふるまい元の待ち受けに戻ります)します。


この仕組みを利用してスマホと Asterisk の両方を呼び出しするようにします。

このときに国内仕様の呼び出し音に変えようという試みです。


Early Media という仕組みを使います。

通常は Answer(着信応答)するまでの間、Ringing(着信応答はしないが呼び出し音は流す)で呼び出し音を流します。


上の図で 180 Ringing のあとの 200 OK が着信応答です。
Ringing は 200 OK を出さないで 180 Ringing だけを呼び出し元に返す、ということになります。

Answer は 200 OK も返しますのでその時点で、Asterisk が着信応答ですから、スマホ側は鳴動停止し元の待ち受け状態に戻ります。

そこで「Ringing が流す呼び出し音」を変えればいい、と考えいろいろ調べましたがどうやれば変更できるかがわかりませんでした。


資料を漁っているうちに、Early Media という仕組みにたどり着きました。

Early Media は早期のメディアということで、何が早期かというと着信前に音を流す、という仕組みです。
ただし、実際の音(メディア)は Playback と PLayTones で設定します。


; extensions.conf 抜粋
exten => s,1,Progress
exten => s,n,Wait(1)
exten => s,n,Playback(silence/1,noanswer)
exten => s,n,PlayTones(400+415/1000,0/2000) ; "=ring":: Japanese ring back tone
exten => s,n,Wait(30)
exten => s,n,Answer
exten => s,n,StopPlayTones
exten => s,n,Wait(1)
exten => s,n,Voicemail(${BOXNUM}) ; "発信音のあとにメッセージをお話しください。"
exten => s,n,Hangup                       ; "終わりましたら電話を切るか、シャープを押して
;                                                       ください。ピーっ!"


したがってエクステンションの1〜3行目はセットで記述します。
Progress アプリケーションが Early Media の仕組みですが "183 Session Progress" メッセージをエンドポイントに流します("180 Ringing" 相当)。

再生するメディアファイルまたは呼び出し音は PLayback または PLayTones で指定します。

Progress は Playback(xxxx,noanswer)とペアで使用します。
上の例では Wait 1秒で Playback の動作開始準備時間を与えています。
Playback は無音を1秒流しますが、着信応答はしない、という設定です。

このときに "noanswer" 指定しておかないと「応答(200 OK)」になってしまい、その時点でスマホ側は着信鳴動停止してしまいますから、注意が必要です。


引き続き、PlayTones で日本仕様の呼び出し音を流します。

30 秒経って、スマホ側が応答しなければ留守電ボックス "BOXNUM" 番に留守電します。

留守電ファイルはメールに添付して通知するようにし、メール通知後に留守電を削除するようにすれば、数秒〜10秒前後に通知が届き、留守電管理も不要になります。


ブラステルにはこの記事記載時点ではまだ留守電機能がありませんが、私の場合は Asterisk で留守電機能をすでに持たせており、今回はブラステル同士の呼び出し音を変更したということです。


これはブラステルが複数デバイスで同一アカウントを登録でき、着信時はすべて鳴動し、どれかが応答すると他は鳴り止む、ということができるので、ここに記載したようなことが可能になるのです。


ほかの Fusion IP-Phone Smart や 050plus などではこういうことはできません。
最新に登録したデバイスだけが有効だからです。


つまり Asterisk とスマホの両方に同一アカウント登録してどちらも有効に作用するのはいまのところブラステルくらいです。





こうするとブラステル同士の呼出し音は Asterisk で自由に設定可能ですから日本仕様でも米国仕様でも自由です。


例では日本仕様にしています。


これはドコモの「メロディーコール」のようなことも可能になります(ブラステル同士だけですが)。

上例の PlayTones の代わりに Playback / BackGround で任意の音源ファイルを指定すれば、まさに「メロディーコール」です。

BackGround の場合はオプション "n" で使用します。
Playback の "noanswer" オプションと同じです。


PlayTones を次のように置き換えれば、

exten => s,n,BackGround(time-to-say,n) ; "Time to say Good bye" presented by Katherine Jenkins

メロディコールになります(呼び出されて "Time to say Good bye" は!? (w))。


楽曲は .ulaw 形式に変換して Astersk の sounds ディレクトリに置く必要があります。




Playback と BacGraound は似た機能ながらオプションの指定形式が違うため間違えやすいので注意が必要です。

Playback はメディアファイルの再生が終わるまで次のエクステンションに制御は移りませんが、BackGround はメディアファイル再生と同時に IVR に対応した数字入力が可能になっているアプリケーションです。


ちなみに前記の「extensions.conf 抜粋」の PlayTones の音を

「262/400,392/500,0/100,349/400,330/400,294/400,524/400,392/500,0/100,349/400,330/400,294/400,524/400,392/500,0/100,349/400,330/400,349/400,294/500,0/2000」

にしてみてください。

とある映画のサウンドトラックが流れます。




これはまぁ単なるお遊びなのですが、Asterisk を使うとこういうこともできる、という例です。



ちなみに、Ring Back Tone は /etc/asterisk/indications.conf で定義されていますが、デフォルトは us(米国仕様)になっており、jp(日本仕様)に変更が必要です。


また、Asterisk の日本仕様には誤りがあって "400+15/1000,0/2000" と記述されていますが、正しくは "400+415/1000,0/2000" または "400*15/1000,0/2000" です。


PlayTones アプリケーションは Answer で着信応答(または、Ringing もしくは Progress+Playback)したあとでないと、音が流れません。

停止は StopPlayTones アプリケーションで行います。



ブラステルと他事業者との間では呼び出し音は上の仕組みでは変わりません。
日本仕様の呼び出し音のままです。


これは Ringing(もしくは Early Media)では PlayTones も Playback も BackGround も流れないからです。


Answer(着信応答)したあとでないと音は流れません。

これでは他事業者との間ではメロディーコール的なことはできませんが、少し変則的な仕組みをかませるとできそう(?)なので、考え中です。





【2018/06/28 追記】


他の IP 電話プロバイダ、携帯電話事業者等のユーザーからの呼び出し時の「メロディーコール」的な処理は次のようにすればできました。


exten => s,1,NoOp(${ENV(CALL_SW)})
same  => n,GotoIf($[ENV(CALL_SW)=1]?${EXTEN},play-media)
same  => n,Set(ENV(CALL_SW)=1)
same  => n,NoOp(${ENV(CALL_SW)})
same  => n,Answer
same  => n,Wait(1)
same  => n,Dial(SIP/${BRASTEL}@brastel-GW,,m(default)) ;default=time-to-say_40s
same  => n(play-media),Set(ENV(CALL_SW)="")
same  => n,Wait(30)
same  => n,NoOp(${ENV(CALL_SW)})
same  => n,Voicemail(${EXTEN})
same  => n,Hangup


ブラステル番号が一つ余分に要ります。

呼び出しを受ける側は ${BRASTEL} 番号です。
brastel-GW は転送用ゲートウェイの番号です。


${BRASTEL} が呼び出しを受けると Asterisk が Answer で着信応答します。
Answer でなく Early Media では音が流れないためです。

ところが Asterisk 側が Answer すると、呼び出しされた ${BRASTEL} 番号のスマホは鳴動停止して待ち受け状態に戻ってしまいます。

そこで、もう一度ゲートウェイから ${BRASTEL} を呼び出します(つまり「転送」です)。

着信側スマホは引き続き鳴動します。
厳密にいいますと、一旦待ち受け状態に戻り再び転送で呼び出しを受けるわけですから、
一瞬途切れているのですが呼び出しが途切れた感じはしません。

大もとの呼び出し側は黙って転送されているわけですから、こちらは途切れません。



転送によってこのエクステンションの先頭に再び戻ってきますので、2度めの呼び出しであることを判別して、一定時間スマホ側の着信応答を待ち、応答がなければ留守電にする、という流れです。


ゲートウェイからの呼び出し時に「保留音」として楽曲を使う設定にしておくと、この楽曲のメロディーが最初に呼び出した人(他の IP 電話プロバイダや携帯電話の人)に、呼び出し音(正確には保留音ですが、発信者には区別はつきません)として流れます。


Playback や BackGround で楽曲を再生しないのは、これらの場合楽曲の終わりまで次のエクステンションに戻ってこないからです。

「保留音」ならば、着信側スマホはいつでも着信応答できますし、呼び出し側も呼び出しを途中でやめることもできます。


ゲートウェイから再呼び出しされても(転送です)大もとの発信者番号がスマホ側に表示されます。

これは、このブログの別記事で転送時の表示を大もとの発信者にするやり方で触れています。



欠点は、最初に呼び出した人が呼び出し中に呼び出しをやめた場合でも1課金単位分が課金されてしまうことです。

例えば携帯電話からかけた場合は 30秒が1課金単位ですし、ひかり電話は3分が1課金単位です。


Asterisk が一旦着信応答するからですが、そのまま会話または留守電の場合は数秒程度通話時間が加算される程度で済みます。


着信側は通話料はかかりません(スミマセン m(_ _)m )。









2018年6月18日月曜日

ブラステルの留守電を考える

ブラステルには残念なことが2つあります。

1つはブラステル以外の電番への発信時に「○○分ご利用できます。ブラステルのご利用ありがとうございます。このまましばらくお待ち下さい。」というアナウンスが流れることです。

「このまま・・・」くらいのところで相手側への発信が始まります。

”**(アステリスク2つ)” をダイヤルパッドから入力すればアナウンス途中でこれをやめさせることはできますが、少々煩わしく、ブラステルにはなくすように要望しているのですが、なかなかやめてもらえません。


2つ目は留守電がないことです。

こちらはかなりの方が不満に感じておられるようで、いろいろ工夫していらっしゃる方も少なくありません。


大きく3つのやり方があると思います。


1.Asterisk サーバーを構成して留守電を設定する。

  これが一番しっくりするのですが、誰でもできることでもありません。
  詳細は「Asterisk の再セットアップ --- ボイスメールを設定する」に記載しています
  のでそちらをご参考ください。

  Asterisk の留守電は、留守録ファイルを添付してメール通知する機能を構成できます
  から、着信を逃したとき通知メールの添付ファイルの再生で、いつでもどこでも留守
  電を聞くことが可能です。

  また、通常はボイスメールボックスに留守録が残るのですが、通知メール送信後に
  自動的にボイスメールボックスの留守録を削除することもできます。

  私はこの運用をしています。
  留守録の際に通話料の類はかかりません。



2.留守録してくれる電話に転送する。

  留守録してくれる電話なら何でもいいのですが、ブラステルの転送機能を使って一定
  時間(例えば30秒)呼び出されて応答しなかったら転送する設定にします。

  転送される側は留守電設定しておきます。



  転送先でよく使われているのが FUSION IP-Phone Smart です。
  FUSION IP-Phone Smart の留守電機能は大変きれいに録音され、メール通知もして
  くれます。

  留守録は最大10個まで保存が可能ですが、保存しないで通知メール送信後に自動削除
  設定することもできます。

  転送を受ける FUSION IP-Phone Smart 側は着信したら即時に留守電になる設定を
  しておきます。

  ブラステルから転送した場合、ブラステル側に通話料が発生しますが携帯電話などに
  転送する場合に比べて格段に安くて済みます。



3. AGEphone が持つ留守電機能を使う

  転送を無料化することを考えた方がおられて、素晴らしい発想だなぁと関心し、脱帽
  です。


  空いているスマホかタブレットに AGEphone で同時着信させ、AGEphone の留守電
  機能を使う、というものです。

  AGEphone はソフトフォンのなかでも珍しく「留守電」機能があります。
  ソフトフォンの中でも留守電機能があるのはこの AGEphone しかないようで、私も
  知りませんでした。


  本来的には留守電は ITSP(IP電話サービス事業者)が用意するものなので、ほかの
  ソフトフォンには実装されていないのだと思います。
  (通話録音できるものは GS Wave や Zoiper ほかにもありますが)。


  AGEphone の留守電はスマホ(またはタブレット)の特定フォルダに格納されます。

  格納されたフォルダを Google Drive や Dropbox と Autosync させて、かつそこに
  留守録ファイルが入ったら IFTTT とか Tasker、Automate などの自動化アプリを
  使って自動的にメールに添付して送信する、というものです。

  これだとブラステルで完結しますから、 FUSION IP-Phone Smart に転送する場合に
  比べて通話料の類はかからず無料で済みます。


  そんな面倒かけずに AGEphone を使えばいいじゃあないか、とおっしゃると思い
  ますが、AGEphone は着信の確実性に欠け、フォアグラウンドで起動しっぱなしに
  しておかなければならないなど、ソフトフォンとしては非常に使い勝手が悪いのです。


  ですから本来のスマホは GS Wave や  Zoiper などで使いたいわけです。




ほかにもバリエーションはあります。

例えば、Asterisk と FUION IP-Phone Smart を組み合わせて、Asterisk 自体の留守電機能は使わずに、無料で FUSION IP-Phone Smart に転送(正確には発信)する、というやり方です。


例えばブラステルに着信したとします。

これを Asterisk 内で FUSION IP-Phone Smart が、自分自身を呼び出すようにする、というものです。

FUSION IP-Phone Smart は自分自身を呼び出すと、当然ビジーになりますが、ビジーだと無条件に留守電に回りますので、これを利用するわけです。

正確にはブラステルから FUSION IP-Phone Smart には転送していなくて、ブラステルの着信鳴動が一定時間経過したら、FUSION IP-Phone Smart から自分自身を呼び出すようにするわけです。


このアイデアも 3. 項で記載の AGEphone を使うやり方を考えられた方のアイデアです。


Asterisk の留守電機能を使う設定が面倒、ということで思いつかれたらしいのですが、Asterisk を使える方が Asterisk 自体の留守電機能を使えないことはないと思っています。

つまり、冒頭の 1. 項で済むはずなのですが。。。


また、このやり方ではどこからの電話が留守電になったかがわからないことです。

通知メールでわかるのは FUSION IP-Phone Smart から自分自身を呼び出したことだけがわかります。


ソフトフォンの同時間の履歴を見ればわかる、とおっしゃっています。


これには少し解説がいるかも知れません。

Zoiper だと履歴が残るのですが、GS Wave はほかが着信を受けると(この場合 Asterisk が受けています)、そのほかのスマホ等の GS Wave には履歴が残らないのです。

こういう使い方は想定外なのだと思います。


そもそも「複数デバイスへのレジストが可能でかついずれも着信鳴動し、どれかが応答するとほかは鳴り止む」というのはブラステルくらいしかありません。


結局、確実でどこからかがわかる、という意味では前記の 1. 項か 2. 項しかないように思います。



ブラステルが留守電に対応してくれれば済むことなのですが。。。




あるいは、G-Call50 を使う、という手があるかも知れません。
G-Call50 は留守電機能があります。

こちらは、ブラステルのリバースプロキシを使っていますので、おそらく複数デバイスでのレジストもブラステル同様にできるのではないかと推測しています(未検証)。


そうすると冒頭の、2つあるブラステルへの不満が解消するかも知れません。

あくまで、「複数デバイスでのレジストが可能」、という前提ですが。。。


この「複数デバイスへのレジストが可能」で初めて Asterisk も活き、より便利な使い方ができるので、ひかり電話などよりも素晴らしい電話環境が構築できるのです。



いずれ G-Call50 も検証しなくてはならないのですが、少し先になると思います。








2018年6月13日水曜日

IP 電話サービスはどこがいいか(再)

IP 電話サービスは色々ありますが、主だったところは次のようなものでしょう。

○ 050plus
○ FUSION IP-Phone Smart(SMARTalk)
○ LaLa Call
○ ブラステル
○ 番外:ひかり電話

ほかにも G-Call50、050Call、Biglobe フォンや Nifty フォンなどがありますが、番外のひかり電話を除くと実用に即していると思われるのは上記の4つくらいでしょう(異論はあるかも知れませんが)。


このうち、050plus と LaLa Call は月額料金が発生します。


ブラステルと FUSION IP-Phone Smart は月額無料ですが、1年間有料使用(有料通話)がない場合に解約されてしまいます。

これは最小課金で有料発信すれば、その時点から1年に延びますからすれば済む話しで大したことではないのですが、このことをとても重く考える人たちがいるのも事実です。


国内通話料は、
          050plus    ブラステル  SMARTalk  LaLa Call
 固定電話向け  8.64円/3分   8.64円/3分 8.64円/30秒 8.64円/3分
 携帯向け     17.28円/1分 14.58円/1分 8.64円/30秒 8.64円/30秒

となっています。

加入者同士はいずれも通話料無料です。



また、ブラステルは有料発信の冒頭に「○○分ご利用いただけます」「ブラステルのご利用ありがとうございます」という余計なアナウンスが流れ、煩わしさを感じます。

最初のアナウンス途中でダイヤルパッドから **(アステリスク2つ続けて)打てば消え、2つ目のアナウンスでもう一度 ** と打てばこれも消えて接続に行きます。

これはブラステル同士以外のときに流れ、050Free アプリを使っていても流れます。


相手呼び出し始めまで約 10秒かかリますので、その間無音よりはいいだろう、ということかも知れませんが、携帯電話のように「プッ プッ プッ …」「プルルルー  プルルルー …」のようにした方がいいと思います。


また、このアナウンスの前に CM が流れることがあり、これは何? と思う人もいるでしょう。

この CM はサポートに電話して「流さないで欲しい」といえば即座に対応してくれ、次からは流れなくなりますが、「何分話せます・・・」「ブラステルのご利用・・・」は現時点では消せないそうです。

消すように強く要望してはいますが。


ただ、ブラステルは加入に際して唯一クレカを必要としませんので、加入障壁は低い、といえますし、個人情報を登録せずに匿名で使うことも可能です。




利用者は、というと 050plus が 300 万アカウントといっていますからダントツですが、ホントにそんなに使っているの? という疑念を持っています。

というのも、050plus はひとクセあって標準アプリでは遅延もあり、使い勝手は必ずしもよくはないからです。

遅延はかなりあり、私の受け止めでは使い物にならないレベルです。
音声ストリームがサーバー経由していると思われ、これが大きいのではないかと。



GS Wave に設定したときは遅延はさほどには感じませんが、問合せに対する 050plus のサポートからはあくまで 050plus で使えといっていて感じよくありません。


050plus 同士ではもっといいのかも知れませんが、これは検証していませんのでなんともいえませんが、一般電話や携帯電話が通話先の場合は(これが殆どと思います)遅延が無視できません。


LaLa Call もまた同様の仕組みですので、どうでしょうか。
こちらは試用していませんのでなんともいえません。

050plus アプリ以外のソフトフォンアプリが使えないのも評判が悪い。

SIP 情報をハッキングすれば使えるソフトフォンアプリもありますが、すべてではありませんし、ハッキングは誰しもできるわけではありません。
また、サポート対象外です。


さらに 050plus 側が着信側のときに、050plus 側が切断しても発信側には BYE が流れないという障害(仕様?)があります(当初からの障害《と思っています》で今だに改修されていません)。

かけた相手が陽に切断しない場合、タイムアウトで切れるまで1分くらいかかり、その間は通話料課金は続いてしまいます。

本件は 050plus サポートに問い合わせ中です。

本件は 050plus アプリを使っていても 20 秒くらい引っ張られ即断しません。

サポートからは、こちらの環境的な問題、スマホの設定問題ではないか、との回答でラチがあきません。

あくまで、真面目に調査する気がないようで、大変に感じが悪い。

まぁ、なんとか使えば使えるがオススメできない、という結論ですね。



050plus は検証用に使っているだけですので実害はありませんが、これを実際に使っている人たちはどうなんでしょうか。



LaLa Call もまた SIP 情報が非公開でこちらはまだハッキングされていないのでほかのソフトフォンアプリが使えません。

パケットキャプチャーしてアクティベートと呼び出しまではした方がいらっしゃるのですが、音声が通らず諦めたそうです。

その方によると 050plus に似て TLS/SRTP が使われているようです。

LaLa Call は試用したことがありませんので、よくはわかりません。




050plus や LaLa Call に限らず、他のソフトフォンアプリが使えないのはすこぶる評判が悪い。

というのも、各社の「標準アプリ」はどれも出来が悪すぎるからです。


できの悪いアプリを押し付けられ、いいアプリで使うこともできないというのは、提供側の頑なな自己満足性のためでしかありません。

LaLa Call などはその典型事例みたいで、利用者の声ではこのことが度々取りあげられていますが、聞く耳持たず、という感じで困ったもんです。。




ネットに飛び交う情報を散見する限りではブラステルの評判がいい印象です。

Acrobits、CSipSimple、Zoiper、GS Wave などで使われていて、あまり 050Free や Cloud Softphone(Acrobits の機能限定版で 050Free のベースになっています)の評判は芳しくないようです。

ブラステル以外の通話先への発信時のアナウンスがなくなって、留守電できるようになればいうことはないのですけどね。

私の場合は Asterisk がありますから留守電は対応できていますが。。。



FUSION IP-Phone Smart は通話料金が高めなので、着信用には使うけど発信用では使わない、という人たちが少なからずいるようです。

しかし転送・留守電は優れていますので、ブラステルと組み合わせるという使い方もあります。




G-Call50 はブラステルのリバースプロキシを使っているみたいです。
ブラステルの他事業者番号への発信時のアナウンスが煩わしい人はこちらを使う手があるかも知れません。

また G-Call50 は留守電機能もありますし、推定ですがブラステルのリバースプロキシを使っているなら、ブラステル同様に複数デバイスへのレジスト/同時着信鳴動が可能と思われます。

本件はホームページには複数デバイスでのレジストはしないで欲しいと記載されていますけど。




私の場合、アナログアダプターを介してブラステル電番の1つをイエデンにしていますが、同じアカウントをスマホにも設定しており、外でもイエデンにかかってきた電話を受けることができ、これまでにも何回もそういうことがありました。

外でスマホで受けても、全く問題はなく、相手も拙宅にかけて、私が普通に自宅で受けて話している、と思っているようでした。

いったん、電話を切った後にまたコールしてきたこともありますが、もちろん問題はありません。









P10 Lite が IP 電話不着信を起こさない設定(再)

安定しなかった IP 電話不着信問題はいろいろ設定をいじっているうちに、設定誤りがあったことに起因していたと思います。

改めてクリーンインストールしたところ、最適化しないアプリ/画面ロック時に閉じないアプリにいくつかデフォルトで入っているものがあり、それらが外れたりしていたのが原因と思われます。

また、バックグラウンド処理を停止してもいいと思ったアプリを停止したのも設定誤りにつながったようです。

バッテリー消費を気にして設定を触っているうちに、外してはならないものを外したりしていたようです。


クリーンインストール後はこれらは触らずに、追加的な設定にとどめたところ IP電話不着信問題は解消したようです。



クリーンインストールに先がけて LINE だけは引き継ぎしなくてはいけませんので、トークのバックアップと、引き継ぎ設定をしておきます。


他は Google ドライブに保存してあったり、メールは IMAP ですしなんとでもなります。



次に P10 Lite をいったん電源オフ(シャットダウン)し、リカバリモードで起動して Cache Wipe & Data/Factory Reset します。


その後、初期設定からやり直します。


このときに Google バックアップからは戻さずに新規セットアップします。



【インストールしたアプリ】

 ファーウェイのアプリは「カメラ」「電卓」「電話」「SMS 用メッセンジャー」
「端末管理」「設定」「ランチャー」以外には使っていません。

 電卓、電話、SMS メッセンジャー、連絡帳などは Google 版と同等または同じものでもアイコンがファーウェイ独自のものに置き換わっています。

 プレインストされた Google アプリでは「マップ」「フォト」「ドライブ」
「Google Play ストア」「YouTube」を使用し、これら以外は無効化しました。



プレインストされているファーウェイ/Google アプリ以外にインストールしたものは以下のものです。


❏ カレンダー(Google 版)… ファーウェイ版はウェジット機能がよくない
❏ 時計(Google 版)… 同上
❏ 乗換案内 … 都内にでかけたときに重宝するので
❏ 青空文庫ビューア Ad. … 昔の文豪たちの作品を読むため
❏ 全国バス乗換案内 … 自宅近辺のバス時刻を知るため
❏ 端末エミュレータ … スマホ自体のターミナルおよび他機器にログインのため
❏ 翻訳(Google 版)… 殆ど使っていないが何かの折にと
❏ ASUS ファイルマネージャー … NAS をアクセス可能なので
❏ Adobe Acrobat … pdf 閲覧のため
❏ BlueMail … 以前は K9 を使っていたが設定の面倒さとアイコンがダサいので
❏ ColorNote … メモ帳として(ウェジットを画面に貼り付可能で同期も可)
❏ Facebook … SNS 定番
❏ Filter Proxy … ブラウザ以外でも広告をブロックしたいから
❏ Firefox … Mac 版と同じアドオン(広告/トラッカーのブロック)が使えるので
❏ Google 日本語入力 … 結局これが一番いいかな
❏ GS Wave … VoIP 用(自宅IP電話を外でも発着信可能、家族間無料、最安通話料)
❏ Heartbeat Fixer for GCM … プッシュ通知を逃さないために
❏ Holo Launcher … Apex/Nova は IP 電話不着信問題を起こすことがが判明のため
       「画面ロック」ウェジットを置けるのでフローティングボタンより便利

           ホーム画面上の画面ロック(赤まる囲み部分)


           左下の電池アイコンは端末管理で作成

❏ LINE … SNS 定番
❏ Messenger … Facebook でのメッセージングのため
❏ NoRoot Firewall … ファイヤーウォール(ルート化不要)
❏ OpenVPN for Android … 自宅ネットに VPN で入るため
❏ PNF Root … Root 版は Google Play 開発者サービスの動作状態を見れるので
       “*#*#426#*#*”をダイヤルしても同じ状態が見れる
❏ Premium Dialer … GS Wave デフォルト電話化のため
❏ Push Notification Tester … プッシュテスト用(テスト終了後アンインスト)
❏ Quick 電話帳 … 使い勝手のいい電話帳(Huawei 標準連絡帳と同期される)
❏ radiko.jp … ラジオを聞く
❏ SmartNews … ニュースアプリ定番
❏ Speedtest … 無線LAN スピードテスト用
❏ SSHDroid … Mac からスマホにログインするため用
❏ WiFi Analyzer Classic … 無線LAN の状態確認用
❏ ZoiperBeta … 予備の VoIP 用(アカウント設定は行うが、起動オフ)

❏❏ ウェジットで画面に貼り付け
  カレンダー(予定確認用)
  時計(日仏の時刻確認用)
  メモいくつか(リマインダー的に使う)



【設  定】

❏ 機内モード:オフ
❏ デュアルSIM管理:SIM1 に MVNO の SIM を挿して
         「その他 → モバイルネットワーク」を設定で SIM1 がオン
❏ WiFi → 設定 → スリープ時にWiFi接続を維持:維持する
   → Wi-Fi+ : オフ
❏ Bluetooth:オフ
❏ モバイルデータ通信(右上の設定ボタンクリック)
   →1ヶ月の利用可能なデータ通信量:契約 MVNO のデータ量上限値
   開始日:1
   通信量の通知
     : 1ヶ月の上限超過時の動作 : 通知する
     : 1ヶ月のデータ通信量通知 : 80%
     : 1日のデータ通信量の通知 : 50%
   → ネットワーク通信を行うアプリ:デフォルト
          (システムアプリ含めすべてチェックオンを確認)
   → 詳細なネットワーク管理:デフォルト
          (システムアプリ含めすべてチェックオンを確認)
   → データセーバー:オフ
❏ その他 → モバイルネットワーク
   → モバイルデータ通信:オン
   → 常時接続を有効にする:オン
   → キャリアアグリケーション:オン(MVNOのサービスに応じて設定)
   → データローミング:オフ
   → アクセスポイント:契約 MVNO を使用(使わない MVNO はすべて削除)
   → 優先ネットワークタイプ:4G/3G/2G
❏ ホーム画面のスタイル:標準・ドロワーのどちらでも(使わないので)
    ランチャーは Holo Launcher(デフォルトに設定するのはほかの場所)
❏ 画面:変更箇所「スリープ=30秒 → 2分」
❏ 音:変更したのは「着信音」「デフォルトの通知音」
   音源は adb で他からコピーして選択(ファーウェイのはダサい)
❏ 通知とステータスバー
   → 通知管理(右上の設定をクリック)
   → 端末がロックされているとき:すべての通知内容を表示する
   → 通知で画面を点灯:オン
   → LED通知:オン
❏ ナビゲーションキー:一番上の組み合わせ(”◁ ○ ”)
❏ 指紋ID:PIN コードと指紋(左右の人差し指を登録)
❏ 画面ロックとパスワード
   → 画面のロック:PIN コードを登録
❏ セキュリティとプライバシー
   → その他の設定
   → パスワードを表示する:オン
   → 端末管理:すべてオフ
   → 使用履歴にアクセスできるアプリ(デフォルトを確認)
   → 位置情報サービス
     → 現在地にアクセス:オン
     → 位置情報モード:WiFiとモバイルネットワークを利用
     右上の3つの縦に並んだ「・」をクリック → スキャン設定
      → WiFiのスキャン:オン
❏ スマートアシスト
   → フローティングボタン:オン(電源キーの延命のため)
     Holo Launcher の画面ロックウェジットと併用
❏ 通知の鳴動制限(デフォルトのオフのまま)
❏ アカウント:インストールアプリのいくつかがある
       → 右上の3つの縦に並んだ「・」をクリック
          → データの自動同期:オン
❏ Google
   → 広告 → 広告のパーソナライズをオプトアウト:オン
❏ アプリ
   → 設定
     → デフォルトのアプリ
       ランチャー:Holo Launcher ランチャー
       通話・メッセージ・カメラ:デフォルト
       ギャラリー:Google フォト
       音楽:Google Play Music
       Eメール:デフォルト(BuleMail)--- Gmail アプリを無効にしている
       ブラウザ:デフォルト(Firefox)--- Chrome アプリを無効にしている
   → 特別なアプリ
     → バッテリー最適化を無視(デフォルトを外さないよう注意
       システム更新(Huawei 版 : デフォルト)
       スクリーン録画(Huawei 版 : デフォルト)
       バックアップ(Huawei 版 : デフォルト)
       BlueMail
       Filter Proxy
       GeofenceService(Huawei 版 : デフォルト)
       Google Play開発者サービス(デフォルト)
       Googleアカウントマネージャー(デフォルト)
       Googleサービスフレームワーク(デフォルト)
       GS Wave
       Heartbeat Fixer for GCM
       LINE
       NoRoot Firewall
       OpenVPN for Android
       Premium Dailer
       ZoiperBeta
      以上のアプリ等を最適化無視の許可
❏ 権限:変更なし
❏ メモリとストレージ:変更なし
❏ 電池
  右上の設定ボタンをクリック → スリープ時にモバイルデータ通信を維持:オン
                 これ以外はオフ
   → 省電力モード:オフ
   → ウルトラ省電力モード:オフ
   → 画面ロック時に閉じるアプリ:以下のアプリ等を閉じる対象から外す
    (最適化無視の対象アプリに追加する設定にする)
       カレンダー(Google版)
       システム更新
       テーマ
       バックアップ
       マップ
       時計
       BlueMail
       ColorNote
       Filter Proxy
       GS Wave
       Heartbeat Fixer for GCM
       Holo Launcher
       LINE
       NoRoot Firewall
       OpenVPN for Android
       Premium Dialer
       ZoiperBeta
❏ 詳細設定
  言語と文字入力:Google日本語入力を選択・設定
  ユーザ補助:
   → サービス:「TalkBack、選択して読み上げ、スイッチアクセス」以外が
          ないことを確認(Apex/Nova はインストするとここに現れる)
   →電源ボタンで通話を終了:オン
  バックアップとリセット → データのバックアップ:オン
❏ 端末情報 → ビルド番号を連打して「開発者向けオプション」を有効化
      (通常時、スイッチはオフ)

❏ 端末管理アプリ:右上の歯車アイコン → ショートカット
         → 電池:オン(ホーム画面に置く)

❏ GCM プッシュのために Heartbeat Fixer for GCM:WiFi:2分、モバイル:5分

 ルーターの udp/tcp のタイムアウトは WXR1900DHP3 では設定変更できない。
 dd-wrt の SPI のタイムアウトは、デフォルトの 120 ➡ 300 に変更
 (管理➡管理➡IP Filter Settings)



以上の設定をしたら GS Wave は Deep Doze でも不着信問題は解消しました。

BlueMail / LINE / Messenger 等、プッシュされるべきアプリもちゃんとプッシュされます。










2018年6月12日火曜日

GS Wave に 050Free / FUSION IP-Phone Smart / 050plus を収容する

GS Wave にこれまではブラステルの IP 電話を 050Free に代えて収容していましたが、今回 FUSION IP-Phone Smart と 050plus も追加で収容してみました。

現在、050 電番は、

❏ ブラステル --- 4つ(イエデン用1つと、家族用3つ。あと1つ7月に追加予定)
❏ FUSION IP-Phone Smart --- 2つ(Fax 受信専用1つと検証・留守電用1つ)
❏ 050plus --- 1つ(検証用1つ)

合計で7つ保有しています。



基本料は、すべて合わせて 0 円ですから、保有するのために月額料金は一切発生しません。

050plus はホントは 300円(税抜)/月額 がかかるのですが、ウラがあって無料です。

7つも持ってどうするの? といわれそうですが、実用と検証のためです。


ということで、それぞれの GS Wave での設定を記載します。
触れていない項目は GS Wave インストール時のデフォルトのままの項目です。

共通設定事項

 ○ Advanced Settings
   ▷ GENERAL SETTINGS
   - Edit Before Dial:オフ
    ・オンの場合、電話帳に登録された番号にハイフンが含まれている場合、
     発信エラーになる。
     発信前に相手番号編集できるので、ハイフンを取り除く必要がある。
    ・オフの場合、ハイフンが含まれていても正常発信される。
   - Default Account Registration Notification:オン
   - Vibrate When Ringing:オン
   - Start on Boot:オン
  ▷ CALL SETTINGS
   - Use hard encoder:オン
  ▷ AUDIO SETTINGS
   - Noise Reduction Level:Low
  ▷ NETWORK SETTINGS
   - Network → 2G/3G/4G/WiFi すべてチェック
   - STUN Server Setttings:未使用だが "stun.l.google.com:19302" を設定
   - Random Port:オン050plus はオンが必須。他はどちらでも可)

 ○ Custom Settings:お好みで

 ○ Debug
   - Report Bugs:オフ
   - SIP Message Trace:通常時オフ(検証時オン)
   - SIP Message Retention Period:検証時は1day or 3days



【ブラステル】イエデンを含めてスマホへの設定(イエデンは外へ持ち歩くため)
       別途イエデンはアナログ電話アダプター HT701 に設定収容

  ○ Account Settings
   - Account Name:ブラステル電番(”050 xxxx xxxx” を設定)
   - SIP Server:"softphone.spc.brastel.ne.jp"
   - SIP User ID:ブラステルカードのアクセスコード欄の USER ID 8桁の数字
   - Password:ブラステルカードのパスワード欄の英数字(変更していればそれを)
   新規追加時は右上のマークのクリックを忘れずに。
   あとで修正等は可能です。
  ▷ GENERAL SETTINGS
   - Activate Account:オン
   - Set as Default:1つだけならチェックされている。複数アカウント登録時は
            主アカウントにチェックする(あとで変更自由)
  ▷ CALL SETTINGS
   - Ringtone:お好みで
   - Use # as Dial Key:オフ
  ▷ SIP SETTINGS
   - Register Expiration (m):1(分)
    → 通常はデフォルトの 60 分でいいが、ファーウェイなど一部のスマホの
     スリープ時の不着信を防止したい場合1分にする
    - Only Accept SIP Requests from Known Servers:オン
   - Check SIP User ID for Incoming Invite:オン
  ▷ CODEC SETTINGS
   - Preferred Vocoder
    → WiFi:PCMU/GSM が必須。あとはお好みで
        設定したら、右上のマークのクリックを忘れずに。
    → 2G/3G/4G:(同 上)
        同じく、右上のマークのクリックを忘れずに。
 


【FUSION IP-Phone Smart】Fax 受信用は Asterisk に収容。以下は通話用の設定

  ○ Account Settings
   - Account Name:FUSION IP-Phone Smart電番(”050 xxxx xxxx” を設定)
   - SIP Server:"smart.0038.net"
   - SIP User ID:USER ID(050電番の ”050" を除いた8桁の数字)
   - Password:FUSION IP-Phone Smart から通知されたパスワード
         (変更していればそれを)
   新規追加時は右上のマークのクリックを忘れずに。
   あとで修正等は可能です。
  ▷ GENERAL SETTINGS
   - Activate Account:オン
   - Set as Default:1つだけならチェックされている。複数アカウント登録時は
            主アカウントにチェックする(あとで変更自由)。
  ▷ CALL SETTINGS
   - Ringtone:お好みで
   - Use # as Dial Key:オフ
  ▷ SIP SETTINGS
   - Register Expiration (m):1(分)
   - Only Accept SIP Requests from Known Servers:オン
   - Check SIP User ID for Incoming Invite:オン
  ▷ CODEC SETTINGS
   - Preferred Vocoder
    → WiFi:PCMU/GSM が必須。あとはお好みで
        設定したら、右上のマークのクリックを忘れずに。
    → 2G/3G/4G:(同 上)
        同じく、右上のマークのクリックを忘れずに。


【050plus】

最初に SIP 情報をハッキングします。
これは、NTT コミュニケーションズからは公式には通知されない情報です。

以下の電話番号欄に 050plus の電番を入力し、パスワード欄に 050plus のパスワードを入力して「送信」ボタンをクリックするとその下の図のようなテキスト情報が得られます。

入力する ”パスワード” は 050plus アプリ設定時に必要なパスワードで、以下にある "パスワード" や "Authenticaionパスワード" とは異なります。


電話番号 : パスワード:     




これをもとに以下の設定をします。

  ○ Account Settings
   - Account Name:050plus 電番(”050 xxxx xxxx” を設定)
   - SIP Server:上で得られた"SIP-GWアドレス"
   - SIP User ID:上で得られた"ユーザ名"
   - SIP Authentication ID: 上で得られた"Authenticationパスワード"
   - Password:上で得られた"パスワード"
   新規追加時は右上のマークのクリックを忘れずに。
   あとで修正等は可能です。
  ▷ GENERAL SETTINGS
   - Activate Account:オン
   - Set as Default:1つだけならチェックされている。複数アカウント登録時は
            主アカウントにチェックする(あとで変更自由)。
  ▷ CALL SETTINGS
   - Ringtone:お好みで
   - Use # as Dial Key:オフ
   ▷ SIP SETTINGS
   - SIP Port:5075 に設定
   (共通設定「Advanced Settings」→ NETWORK SETTINGS → Random Port
    を一旦オフにし、ここに戻ってきて変更する。その後 Random Port を再びオン
    に戻す)
   - Transmission Protocol:TLS
   - Register Expiration (m):1(分)
   - Only Accept SIP Requests from Known Servers:オフ
   - Check SIP User ID for Incoming Invite:オン
   ▷ NETWORK SETTINGS
   - Outbound Proxy:上で得られた"SIP-GWアドレス"
  ▷ CODEC SETTINGS
   - Preferred Vocoder
    → WiFi:PCMU/G729 必須あとはお好みで
        設定したら、右上のマークのクリックを忘れずに。
    → 2G/3G/4G:(同 上)
        同じく、右上のマークのクリックを忘れずに。
   - SRTP Mode:Enabled And Forced
   - Enable SRTP Key Life Time:オフ



以上です。


050plus を GS Wave に収容したのはおそらく国内初ではないかと思います。
(国内初ならば、世界初でしょう(w))




これでブラステル / FUSION IP-Phone Smart / 050plus の3種類の VoIP アカウントがGS Wave に一本化できました。

3種類の VoIP アカウントすべて、2時間程度のスリープ時は Doze から抜けてプッシュ着信するのは確認しました。

Deep Doze は、ブラステルについては問題ないことを確認済みですが、FUSION IP-Phone Smart と 050plus はまだ検証中です。




【2018/06/16 050plus 着信検証結果】

夜に放置して翌朝、着信確認した結果2晩続けて着信 OK でした。
Deep Doze からちゃんと復帰して着信していますので、おそらく問題ないとみていいでしょう。

ブラステルと 050plus が問題ありませんから、FUSION IP-Phone Smart も問題ないと思います。


【2018-06-19 追記】

 FUSION IP-Phone Smart と 050plus は Deep Doze でも着信することを確認しました。


P10 Lite はスリープ中に WiFi が切れ、レジスト失敗状態に陥る事があり、この場合1回目は不着信、引き続き2回目は着信する、という障害があるようです。

ファーウェイ機種は結構この事象が発生していて、おそらく Google Play開発者サービスからの処理をファーウェイ側でミスっているのではないかと推定しています。





【ちょっと便利な使い方】

Premium Dialer というアプリがあります。

これと組み合わせると、通常発信をいつでも GS Wave にできます。
「電話」アプリから発信しても GS Wave に自動的に切り替わって発信できます。

普段は GS Wave で発信し、特別な場合だけ(117などの3桁サービスや緊急番号向けなど)携帯電話から発信するように使い分けるのです。

この使い方だと、通常発信は 050 から発信できますので固定電話向けも携帯電話向けも通話料がとても安くて済みます。

ブラステルの場合では、

 固定電話向けは   8.64円/3分
 携帯電話向けは 14.58円/1分

ですから、携帯電話からの発信に比べて、固定電話向けは3分で1/6、携帯電話向けは少し安くて1分につき 2.7円 ほど安くて済みます。

MVNO のプリフィックスよりも1分当たり 5.42円安くて済みますから、もうプリフィックスサービスは使う必要性すら感じません。

さらに国際電話の場合は格段に安くて済みます。

例えばフランスの場合、ブラステルは 3.99円/1分です。

ドコモの国際電話料金だと平日は 108円/30秒(夜間等 78円/30秒)ですから、1分話すだけで実に 54倍もの差になります。



具体的な Premium Dialer の設定は次のようにします。

アプリを起動すると最初に設定画面がでます。
一番上の「通話アプリ選択」は最初は「オフ」になっていますから、これにチェックを入れます。
すると権限で「電話」「連絡帳」へのアクセス許可を求められますので「許可」し、改めてこの画面でチェックを入れます。




次に「通話アプリ自動選択設定」をクリックします。




「通話アプリ選択自動化」にチェックを入れて「電話番号種別設定」をクリックします。




図はすでに GS Wave に設定されていますが、各項目をクリックすると「編集」できますので、GS Wave にしていきます。

上から「フリーダイヤル」まで GS Wave に設定します。




それより下の部分は変更しなくても結構です。

2つ前の画面まで戻ります。

「通話アプリ一覧表示設置」をクリックします。





「常に表示」を「GS Wave」と「電話」だけに設定し、ほかは「表示しない」にします。

スクショでは LINE 電話のプリフィックスを表示設定していますが、これはしなくても結構です。

1つ前に戻ります。

「プリフィックス設定」に移りますが、先に記載のとおりブラステルは十分に安い通話料ですので、ここは設定しなくても大丈夫です。

設定の場合は、次のように設定します。




1つ前に戻り、「通話履歴設定」を行います。




上2つにチェックを入れ「記録対象アプリ設定」を行います。




 GS Wave のみにチェックを入れて2つ戻り、最初の設定画面に戻ります。
「高度な設定」 画面に移り、上から4つにチェックを入れ、戻ります。




「LINE out専用」設定を開き、「メニュー追加」をチェックオフにします。




以上で設定は終わりです。

念のために、最適化しないアプリの設定をしておきます。


以上の設定で、GS Wave からのみならず、連絡帳や電話アプリから発信先番号を選べば、GS Wave が自動起動されて、GS Wave から発信されるようになります。


このときに GS Wave の「Advanced settings → GENERAL SETTINGS → Edit before Dial → オフ」にしておくと、連絡帳に登録した番号にハイフンが含まれていても正しく呼び出しされます。


ハイフン以外の ".( )[ ]{ }/" など(Zoiper ではスプリット文字にデフォルト定義されている)の文字が含まれていた場合にどうなるのかについては未検証です。










2018年6月7日木曜日

P10 Lite がスリープ中に IP 電話不着信を起こす原因

P10 Lite 設定あれこれ で IP 電話の不着信問題があることに触れました。



サードパーティ Launcher(今回不着信の原因となったのは Nova/Apex の両方)が悪さしていたみたいです。

これが判明するまで1週間格闘してました(😢😢😢)。


価格.com のクチコミ掲示板 に『設定 → 詳細設定 → ユーザー補助 → サービスの項目に「TlakBack とスイッチアクセス」以外がないかを確認。
電源管理やタスク管理などの機能があるアプリがあるかもしれません。』


とあったのは気付いていました。
確かに Nova Launcher があります(Apex Launcher もインストールすると現れます)。

デフォルトではオフです。


Nova Launcher の場合、オンにすると以下のような振る舞いになるとあります。

--------------------
Nova Launcher provides the Nova Action for system functions such as expanding the notification shade or showing the recent apps screen to improve their accessibility when invoked from the home screen.

On some devices or Android versions, Accsessibility access is required for these Nova Actions to work.
You will be prompted to enable Accessibility if this is the case. If you have not been prompted there is no need to enable this service.

Nova Launcher uses the minimal possible accessibility service configuration and does not observe any user actions from the Accessibility services. However this privilege is mandatory for all accessibility services. Nova disregards any events the system does send.

Nova Launcher uses the performGlobalAction Accessibility service feature to perform either the expand notifications or show recent apps action on your behalf. This is triggered by a user action including, but not limited to, a gesture, swipe action or tapping an icon.



Nova Launcherは、通知シェードを拡大するようなシステム機能や、ホーム画面から呼び出されたときにアクセシビリティを向上させるため最近のアプリ画面を表示するような Nova Action を提供します。

一部のデバイスまたは Android バージョンでは、これらの Nova Action が動作するために、アクセシビリティのアクセスが要求されます。

この場合、アクセシビリティを有効にするように求められます。 
プロンプトされない場合は、このサービスを有効にする必要はありません

Nova Launcher は最小限のアクセシビリティサービス設定を使用しており、アクセシビリティサービスからのユーザアクションは監視しません。ただし、この権限はすべてのアクセシビリティサービスにとって必須です。Nova はシステムが送信するイベントを無視します。

Nova Launcher は、あなたに代わって拡大通知または最近のアプリを表示するアクションを実行するために performGlobalAction アクセシビリティサービス機能を使用します。これは、ユーザーの操作がジェスチャー、スワイプアクション、またはアイコンタップ(これらに限定されていません)を含むことによって引き起こされます。

--------------------



つまりオンにしなければ影響はしない、と考えていたのです。


ですが上記の太字部分が気になり、試しに Nova Launcher をアンインストールして P10 Lite のオリジナルランチャー(Huawei ホーム)に戻してみたところ、スリープ中の不着信問題がなくなりました。
 

一晩放置しての Deep Doze でも問題なく着信します。


オフにしてあっても、ランチャーとしてアクティブな状態では何らかの悪さをするようで、 GCM の重要なコンポーネントである com.google.android.gsf.gtalkservice が Google Play開発者サービスの動作状況では確認できない状態、つまりこのコンポーネントが働かず、それがプッシュ着信しない原因だと思われます。


ともあれ「設定 → 詳細設定 → ユーザー補助 → サービス」の項目に「TlakBack とスイッチアクセス」以外がないかをチェックすることが大事だ、と改めて認識しました。

ウチの P10 Lite では上記の二つのほかに「選択して読み上げ」というアプリも「サービス」に含まれていますが、 これは影響ないようです。

三つともデフォルトはオフで、このままにしています。



Nova Launcherに限らず Apex Launcher も同じく不着信問題があり、P10 Lite ではサードパーティのランチャーで使えないものがあることを意味し、とても使い勝手が悪くなります。



とりあえずオリジナルランチャーにしました(ドロワー型を選択)。


Launcher の中にはこういう問題を起こさないものもあるのですが、Nova や Apex ほど使い勝手に優れたものはどうでしょうか。


「無料版があって、広告がないもの」については下記くらいですね。
「有料版でもクソ」なランチャーがあるようですから。

 Apex Launcher
 Evie Launcher
 Google Now ランチャー
 Holo Launcher
 Lawnchair(ドックを2行にできる)
 Lean Launcher(Google 検索バーが画面下部にしか置けず、違和感がある)
 Lollipop Launcher(未検証)
 Microsoft Launcher(未検証)
 Nova Launcher
 Torque Launcher(未検証)
 ZenUI Launcher(未検証:いまはなくなっちゃかも)



これらのうち、Apex と Nova は今回のような問題を引き起こします。

ほかはすべてを検証できていませんので、なんともいえません。




2018/06/10 時点で Holo Launcher を入れて、様子を見ています。

これは「設定 → 詳細設定 → ユーザー補助 → サービス」の項目の「TlakBack、選択して読み上げ、とスイッチアクセス」には現れません。

Apex や Nova に似ていますので、使い勝手があまり変わらずにすむのが利点です。
また、Apex や Nova と同様にドックが一つ以上にできるのも気に入っています。


更に、ホーム画面に「画面ロック」ウェジットを置けるので、ファーウェイのフローティングボタンよりも便利です。

フローティングボタンはほかの操作時の邪魔になることがある、クリックのタイミングが少々使いづらい、一回クリックしてロックアイコンを押すという二段アクションが必要でしたが、画面ロックウェジットは一発でロックされます。


アイコンが少し小さめでホーム画面のアイコンの大きさを調整できないのが難点でしょうか。



motoG4plus では Apex Launcher を長らく使っていましたが、こちらは不着信問題を引き起こしません。


P10 Lite との間の問題なのかも知れません。

なおこの問題は、ファーウェイの最近の機種に共通的にでる問題のように思います。
というのも、不着信問題がこれら最近の機種に共通しているようなので。





不着信問題に関するもう一つの留意事項がありました。

当該アプリ(GS Wave や Zoiper など)を起動し、「スマホ起動時にアプリ自動起動を行う」設定にし、アプリを終了せずにスマホの強制再起動を行うというものです。

これによって、不着信問題がさらに改善されるようです。







2018年6月5日火曜日

WXR1900DHP3 の件でバッファローから

バッファローから、WXR1900DHP3 を貸し出すのでいまの V6プラス接続用のものと一緒に配置し、使って異常がないかどうかを確認して欲しい、との依頼があり受けることにしました。

ここでは詳しくは書けませんが、ある事象を想定しているようでした。



こちらからはシステムログを取るか、見れるように ssh で入れるファームウェアを提供して欲しいとお願いしていたのですが、ssh は機密保持の観点から却下されました。

システムログ採取を仕込むのも大変らしく、代わりに前述のような提案がありました。


当方でも類似の箇所に疑いがあって、設定を一部変更したばかりなので、バッファローの想定内容が当たりなら、進展があるでしょう。

ただ、このバッファローの想定の他にも、まだフリーズにつながる要因があるようには考えています。


まぁ、一つ一つつぶすしかありません。


再現しなければまたやり直しになりますが、機器を貸し出ししてもやってほしいとのことですから、かなり疑いを深めているのではないかとの印象を感じました。


機器が届くのを待ってみたいと思います。