投稿

電話番号登録しているものとは別のdアカウントでスマートフォンのdアニメストアにログインする手順

イメージ
 はじめに dアニメストアを使い始めて2年ほどになりますが、表題のケースでログインする手順を毎回忘れてしまって困っていたのでまとめます。 前提条件とやりたいことの整理 この記事で紹介する手順が必要になる前提条件とやりたいことを整理します。 利用する端末はスマートフォン(Android) そのスマートフォンの電話番号はdアカウントAと紐付いている 電話番号と紐付いていないdアカウントBでdアニメストアにログインしたい dアニメストアを使わずにしばらく放置しておくと、自動的にログイン状態が解除されてしまいます。この状態から復旧するのが目的です。なお、電話番号に紐付いたdアカウントでログインする場合は、何も考えず自動ログインできるので、この記事の手順は不要です。 手順 1. dアニメストアアプリ設定のリセット はじめに、dアニメストアアプリの画面右上のメニューから「 アプリ設定 > ユーザーデータリセット 」を選択して設定をリセットします。ここでdアニメストアアプリが自動的に終了します。 2. dアニメストアを起動 次に、dアニメストアアプリを起動して「 規約に同意して利用を開始 」を選択します。 このタイミングで、電話番号と紐付いているdアカウントAで自動的にログインされてしまいます。最初はここでうろたえますが、大丈夫です。 3. ログアウト そのまま同じ画面で一番下までスクロールして「 dアカウント ログアウト 」を選択します。ここが第一関門です。ログアウトのメニューを見つける難易度が高い。 ログアウトが完了したら画面に表示される「 dアニメストア TOP 」を選択してdアニメストアアプリのホーム画面が表示されることを確認します。 4. 別のアカウントでログインしなおす dアカウントBでログインするため、dアニメストアアプリホーム右上にある「 ご利用可能ポイント 」を選択します。ここが第二関門です。「dアカウント ログイン/発行する」を選択してはいけません。そちらを選択すると自動ログインが発動してしまい、最初からやり直しです。 次に「 dアカウント アカウントA 」の部分を選択します。ここが第三関門で、すでにログアウトしているはずなのに古いログイン情報が残っており、自分が一体何をしていたのかわからなくなります。精神を落ち着けて状況を想像するに、dマーケット側はま

Batchノードを使う(その2)

イメージ
 ここのところずっと Node-RED のサンプルを見ながら各ノードの使い方を確認しています。 頭出しの記事はこちら をご確認ください。今回はBatchノードの第2回目です。 確認するサンプルは、「 読み込み > サンプル > flows > node-red > sequence > batch > 02 - Time based group mode 」です。時間ベースでメッセージをグループ化できるみたいです。 時間ベースでメッセージをグループ化する ざっくりとした流れは以下のとおりです。 Functionノードがバラバラのメッセージを送信する Delayノードが流量制限を行い、1秒1メッセージ流すようにする Batchノードが指定した時間間隔ごとにグループ化(partsプロパティに自動生成した値を設定)する Joinノードが同じpartsプロパティの値ごとに1つのメッセージにまとめる 上流から順にノードの設定を見ていきます。入力データを生成するFunctionノードでは、0〜29の値をPayloadに持つメッセージを送信しています。ここは 前回の記事 と同じです。 続いて、Delayノードで流量制限を行います。 続いて、Batchノードで指定した時間間隔ごとにグループ化します。 続いて、Joinノードで複数メッセージをまとめます。動作が自動なので、partsプロパティの値ごとにまとめます。ここも 前回の記事 と同じです。 実行すると、以下のログが出力されます。画面キャプチャからは読み取れませんが、ログは約5秒毎に出力されます。流量制限したメッセージがグループ化されるのに時間がかかるんでしょうね。 まとめ まとめます。 複数メッセージを時間ベースでグループ化できます Batchノードシリーズはもう少し続きます。

Batchノードを使う(その1)

イメージ
ここのところずっと Node-RED のサンプルを見ながら各ノードの使い方を確認しています。 頭出しの記事はこちら をご確認ください。今回はBatchノードの第一回目です。 確認するサンプルは、「 読み込み > サンプル > flows > node-red > sequence > batch > 01 - Number based group mode 」です。サンプルを見る限りBatchノードを利用すると指定した条件ごとにメッセージをグループ化できるようです。「グループ化」って言葉だけを見ても何をするのか想像がつきませんが、「メッセージにpartsプロパティを付加する」のがより詳細な挙動の説明になると理解しました。複数のメッセージをまとめるのはJoinノードが実施しますが、そのJoinノードが動くために、複数のメッセージに同じpartsプロパティを付与するのがBatchノードの役割です。 バラバラのメッセージを指定した数ずつまとめる 最初に確認するのは1段目です。ざっくりとした流れは以下のとおりです。 Functionノードがバラバラのメッセージを送信する Batchノードが指定した数ごとにグループ化(partsプロパティに自動生成した値を設定)する Joinノードが同じpartsプロパティの値ごとに1つのメッセージにまとめる 上流から順にノードの設定を見ていきます。入力データを生成するFunctionノードでは、0〜29の値をPayloadに持つメッセージを送信しています。 続いて、Batchノードで指定したメッセージ数ごとにグループ化します。 続いて、Joinノードで複数メッセージをまとめます。動作が自動なので、partsプロパティの値ごとにまとめます。 実行すると、以下のログが出力されます。5ずつまとめられていますね。なお、Batchノードの出力にDebugノードをつなげて出力メッセージ全体を確認するとpartsプロパティに自動生成した値が設定されているのが確認できるはずです。 要素をオーバーラップする Batchノードでは、グループ化する要素を一部オーバーラップさせることができます。この説明だけで伝わると思えないので詳しく説明します。確認するサンプルは2段目です。基本的な流れは一つ前のサンプルと同じで、違うのはBat

Sortノードを使う(その3)

イメージ
ここのところずっと Node-RED のサンプルを見ながら各ノードの使い方を確認しています。 頭出しの記事はこちら をご確認ください。今回はSortノードシリーズの3回目です。 確認するサンプルは、前回に引き続き「 読み込み > サンプル > flows > node-red > sequence > sort > 02 - Sort message sequence 」です。前回紹介したサンプルとの違いは、Payloadを直接ソートするのではなく、複数メッセージをソート対象にしている点です。ソート対象の入力メッセージとソート後の出力ともに複数のメッセージのまま取り扱っているのがポイントです(前回紹介したサンプルは単一のメッセージ内でのソートでした)。それを再現するため、Sortノードの前にSplitノードを経由してメッセージをバラバラにしています。実運用ではわざわざSplitノードを利用することはなく、元々独立したメッセージをソートできることを示したいのだと思います。たぶん。 バラバラのメッセージをソートする 確認するのは1段目です。 入力データを生成するTemplateノードでは、単純な文字列配列を指定しています。 こいつをSplitノードでバラバラにしています。入力が配列なので固定長1でバラしてます。 Sortノードはmsg.payloadで昇順ソートするよう指定してあります。いたってシンプル。 実行すると、以下のログが出力されます。一度バラされた複数メッセージのmsg.payloadの値で昇順ソートされています。 ちなみに、2段目のサンプルは降順ソートです。3段目、4段目も文字列ソートに関するものです。これらは説明不要だと思うのでスキップします。 バラバラのメッセージに指定されたJSONオブジェクトのプロパティ値でソートする 続いて確認するサンプルは5段目です。フローの見た目は最初に確認したものと同じに見えますが、バラバラに飛んでくるJSONオブジェクトのプロパティ値でソートします。 入力データを生成しているTemplateノードでは、JSONオブジェクト配列を生成しています。 これをSplitノードで配列要素ごとにPayloadを分割します。Splitノードの内容は一つ前のサンプルと同じなので省略します。さらにSortノ

Sortノードを使う(その2)

イメージ
ここのところずっと Node-RED のサンプルを見ながら各ノードの使い方を確認しています。 頭出しの記事はこちら をご確認ください。今回はSortノードシリーズの2回目です。 確認するサンプルは、前回に引き続き「 読み込み > サンプル > flows > node-red > sequence > sort > 01 - Sort array payload 」です。 シンプルなJSONata式でJSON配列をソートする 確認するのは5段目です。  入力データを生成するTemplateノードでは、name(文字列)とprice(数値)をプロパティに持つJSON配列を指定しています。 SortノードではJSONata式でキー「price」で昇順ソートするよう指定してあります。 実行すると、以下のログが出力されます。msg.payload.priceの値で昇順ソートされていますね。特に説明の必要はないと思います。 複数のプロパティを条件に組み込んでソートする 最後は6段目です。先ほどより少し複雑なJSONata式を利用して複数プロパティの値を条件に組み込んでソートします。 入力データを生成しているTemplateノードでは、先程と同様JSON配列を指定していますが、今度は複数の要素で同じ値のpriceを持っています。このサンプルではnameの値も考慮に入れてソートを行っています。 Sortノードを開くと、キーに何やら長ったらしいJSONata式が設定されています。このままだと見づらいので、右側の「...」ボタンを選択します。 SONata式の全体像が確認できます。この内容を言葉で表現すると以下のようになります。 priceの値を4桁のゼロ埋めした文字列を生成して、nameの値と文字列結合する 「 テスト 」タブを選択して、「 メッセージ例 」に name と price プロパティを持つJSONオブジェクトを指定すると、「 結果 」欄でこの式の動作を確認できます。この文字列でソートを実行します。 結果は以下の通り、priceの値が同じ場合、nameの値でソートされました。 まとめ まとめます。 ソート条件にJSONata式を利用すると複雑な動作を実現できる Sortノードシリーズはまだまだ続きます。

Sortノードを使う(その1)

イメージ
ここのところずっと Node-RED のサンプルを見ながら各ノードの使い方を確認しています。 頭出しの記事はこちら をご確認ください。今回からSortノードを見ていきます。 確認するサンプルは、「 読み込み > サンプル > flows > node-red > sequence > sort > 01 - Sort array payload 」です。配列をソートするってことですかね。内容はシンプルなのでサクサク見ていきます。 文字列配列を昇順にソートする 内容は見出しの通りです。 Templateノードでmsg.payloadに文字列配列を設定する 要素の値をキーにして昇順でソート 結果は以下の通り、文字列配列の要素が昇順でソートされました。予想通りかと思います。 文字列配列を降順にソートする 続いて2段目は降順ソートです。先ほどとの違いはSortノードの順序設定のみ。 結果は以下の通り、先ほどとは逆順になりました。 文字列配列を昇順ソートする再び 続いて3段目は1段目と同じく昇順ソートのサンプルですが、入力するデータが数値っぽい文字列です。 文字列として昇順ソートされましたね。特に説明は必要ないかと思います。 文字列配列を数値として昇順ソートする 4段目は3段目と入力データは同じですが、数値として昇順ソートします。 文字列なのに数値として昇順ソートできました。いちいち数値に変換しなくていいので、これは意外と便利かもしれない。 まとめ いったんここらでまとめます。 基本的に配列は文字列としてソートします 入力が文字列であっても、数値としてソートすることもできます 順序は昇順と降順から選択できます Sortノードシリーズは続きます。