投稿者: zen

  • Windows 10 Proのライセンス認証問題にあたった

    もう、復旧しているとのことだが、Windows 10 Proのライセンス認証で障害が発生し、正規ライセンスなのに、ライセンス認証を求められるという問題があった。

    このWindows 10 Proのライセンス問題は、一部のユーザのみということだったので、安心していたのだが・・・見事にこの問題を対処することになった。自分のPCは問題はなかったが、サポート対象の一部で発生。問い合わせに対応が発生した。マイクロソフト側でやってもらうしかないので、様子見。それだけでも、サポートの労力はかかるもの。運用やっていると、こういう問題にあたることもあるか。

    ちなみに対応は、本当に何もしなくてよい。24時間に1回、自動的にアクティベートされるということなので、待つだけでよい。

    https://forest.watch.impress.co.jp/docs/news/1152471.html

    https://forest.watch.impress.co.jp/docs/news/1152549.html

  • ギラティナをゲット

    ギラティナ

    Pokemon GOでギラティナをゲットした。なかなかタイミングが合わずに、レイドバトルができていなかったので、1回でゲットできてよかった。ハロウィンの日を過ぎてもタイミングが合わなかった時は、ドキっとしたけれど、倒し、捕まえることができてよかった。

  • 朽ちた箱舟 ポラリス

    スプラトゥーン2のサーモンランに新しく追加されたステージ「朽ちた箱舟 ポラリス」。4方からシャケに攻め込まれるので、ステージが狭い。ライドレールが走っているので、そこに乗っていると楽しいがそうすると「金のいくら」は運べない。攻め込まれた時の逃げ道としては、よいのだけど、死ににくいだけで追い込まれていることに代わりない。ステージとしては楽しいが、なんというか難しい。本当にメンバー次第。ステージ1で全滅するも、最後まで残るも、メンバーとの助け合い次第だ。たのしい。

    公式発表では、サーモンランへのステージ追加は最後らしい。まぁ、スプラトゥーン2の発売日から1年以上も、武器やステージ追加があるだけでもすごいわけだし。そろそろ終わりが見えるのも仕方ない。3でもつくるのかな、それとも定期的なエキスパンションでも出してくれるのだろうか。

  • Windowsでバッチファイルを実行したら、正しいパスなのにエラーになる

    Windows10で作成したバッチファイルを、Windows10でバッチファイルを実行したらエラーになった。

    問題の箇所を切り分けていったところ、バッチファイルから実行したときのみ、パスに日本語を含むフォルダの処理でエラーになっていることがわかった。
    バッチファイルの文字コードを調べたところ、「UTF-8」だった。同じようなバッチファイルでエラーにならないものは文字コードが「SJIS」だった。エラーになっていたファイルの文字コードを「UTF-8」から「SJIS」にして実行したところ、正常に処理ができた。Windowsのバッチは、UTF-8で保存すると任後を含むパスのマウントや参照ができない。

    Windows10でUTF-8対応されているが、Windowsのバッチファイルで日本語のパスを扱うところは、いまだにSJIS限定のようだ。

  • ミカルゲをゲット

    ミカルゲ

    Pokemon GOのハロウィンイベントで、ミカルゲをゲット。なかなかに見た目が面白いヤツだ。

    色違いデルビル

    あと、ハロウィン期間中に大量のデルビルが出ている中で、色違いのデルビルをゲット。たくさん、デルビルを捕まえたが結局色違いの遭遇は1匹のみ。出会いやすくなっているとはいえ、色違いはレアだ。

  • Chat Botのボタンをクリックしたときに発生するイベント

    Hangouts ChatのチャットボットをGASで作る場合、カードの中のボタンをクリックしたときに発生するイベントは、onCardClick()イベント。

    カードに設定したボタンの`actionMethodName`で設定したをユニークにすることで、複数のボタンを識別することができる。

    /**
     * Card click event handler
     **/
    function onCardClick(e) {
    
      // button is clicked.
      if (e.action.actionMethodName === '****') {
        return ******;
      }
    
    }
    
  • Fusion Tablesで日本語文字列で検索できない問題の対処

    Where句でのシングルクォートとダブルクォートの違いが原因。
    Fusion Tablesでは、文字列の囲みは、シングルクォートを使う。ダブルクォートの場合、解釈されず、エラーになる。

    検証していて厄介だったのは、Where句を用いた検索で、ダブルクォートを使うと、中身が数字だと検索できるのに、中身がマルチバイト文字列だとエラーになる。
    しかも、FusionTables.Query.sqlGet(sql)でクラッシュする。

    OKパターン

      var sql = 'select * from ' + tableId;
      sql += " where name like '%" + keyWord + "%'";
    

    NGパターン

      var sql = 'select * from ' + tableId;
      sql += ' where name like "%' + keyWord + '%" ';
    

    Fusion TableのSQLは、厳密に”を解釈するようだ。

  • iCloud.comにSMTPサーバからメールが送信できない

    システムからのメール送信用サーバから、@icloud.com宛にメールを送信すると、メールが届かなくなった。メールサーバのログを見てみると、コード450、4.7.1のステータスだった。配送先ドメインによっては DNS の MX レコードから送出元の MTA が正しいホスト名を名乗っているかどうかを確認している場合があり、これでリジェクトされたときが、「450 4.7.1」を返す。

    450 4.7.1: Helo command rejected: Host not found

    icloud.comのメールサーバで、メールを受信した際に送信元のホスト名の確認を行うようになったようだ。もしかしたら、だいぶ前から、そういう設定になっていて気が付いていなかっただけの可能性は否定できないが。

    450+4.7.1+:+Helo+command+rejected:+Host+not+found 0 0 83 0 733 SMTP - - - -
  • 楽天テクノロジーカンファレンスにいったときの話

    楽天テクノロジーカンファレンス2018

    先月の終わり頃に開催された楽天テクノロジーカンファレンスに行ってきた。

    毎年開催されている楽天のテクノロジーのイベント。日本だけど、ほぼ英語のカンファレンスで、受付も英語対応。というか、スタッフで日本語をできる人だけ、日本語対応の印をつけているほど、逆転している。当然内容も英語。ちょっとした英語のシャワーを浴びにいくような感じで参加してきた。

    楽天テクノロジーカンファレンス2018

    メインの講演も当然英語。内容の半分も理解できていないじゃないかと思う。内容的には、GAFAを山にたとえて、道のりだったり、今の目指す位置をしめしていたり。医療、製薬の分野を開拓していくようなことを言っていた。楽天って、ITとか金融の分野には、いろいろと手を出している感覚があったけれど、医療系にも手を広げているとは知らなかった。

    他にもいくつか聞いたけれど、スタートアップ系の話とか。わかるかどうかは別として、聴きやすい英語もあれば、聴きにくいものもあった。いろいろな意味で、刺激にはなった。ただ、会場もいろいろで、公演中に雑談をされてしまうと、講演が聞けない。聴き慣れていない言語だから、聞こうと意識を傾けるが、それが雑談で邪魔をされる感じ。会場の不満ではなく、単純に自分の言語力を悟る。

    楽天テクノロジーカンファレンス2018

    あと目当ての一つが、食堂での食事。メインは美味しいのだけど、米がおいしくない。サラダとかヨーグルト、納豆とかを取れるのはいいけれど、ご飯の質がちょっと難あり。これなら、健康系のお菓子やフルーツがおいてあるGoogleのオフィスの方が魅力的。

    なんだかんでカンファレンスを楽しんだ感じだ。

  • JSON型のテキストをJSONのオブジェクトにする

    JSON形式のテキストをJSONとして扱うには、テキストをJSONオブジェクトに変換(パース)する必要がある。 JSON.parse() 関数を使用して、JSON形式のテキストをJSONオブジェクトに変換する。 これを行うことで、JSONを扱う関数などにJSONデータとして、値を渡すことできるようになる。(Hangouts Chatへの応答はJSONでデータを作って返す必要があり、それを関数などで作ろうとするとJSONオブジェクトにパースする場面がでた)

    var jsonObj = JSON.parse(JSON形式のテキスト);

    例) Chat Bot用に実際にJSON形式のテキストをつくり、JSONオブジェクトにする

    // JSON形式のテキストを作る
    var jsonText = "";
    jsonText += '{';
    jsonText += '"header": {\n';
    jsonText += '"title": "タイトル", \n';
    jsonText += '"subtitle": "サブタイトル"\n';
    jsonText += '}\n';
    jsonText += '}\n';
     
    // JSON形式のテキストを、JSONオブジェクトに変換する
    var jsonObj = JSON.parse(jsonText);