Windows 10 更新後 Chrome・Opera・Vivaldi でタッチ操作できないときの解決法

Windows 10 に更新後、Google Chrome や同じエンジンを使う OperaVivaldi で、タッチパネルでの操作ができないという問題が報告されています。

私が利用しているパソコンでも、動作するときとしないときがあるようです。
ただ、以前の Windows 10 のプレビュー版では動作していたように思います。(毎回タッチ操作をしていたわけではありませんが)

解決法は、試験運用機能のタッチ イベントを有効にするを自動設定から有効に変更するだけです。
chrome://flags/#touch-events
Chrome も Opera も Vivaldi も上記のリンクから、直接設定項目に移動できます。

[H27.08.08] Chrome-flags touch-events

ポータブル版を除き、タッチパネルを利用している PC であれば常に「有効」にしておいても良さそうですね。

WordCamp Kansai 2015 1日目(7/25)に参加しました!

大阪大学豊中キャンパス 大阪大学会館で行われた、「WordCamp Kansai 2015 “Get Involved” 進化を続ける未来に出会おう」に参加しました。

その前に、検索で初めて来る方もいるので簡単に自己紹介をしておきます。

  • 学生(情報系)
  • WordPress は 2008 年から自分のサイトのみ利用
  • まともに使い始めたのは、2010年7月のこのブログを WordPress に移転してから
  • プラグインやテーマを公開用に作成したことはない
  • IT系のイベントは、以前 IIJmio Meeting に一度参加しただけ
  • 企業ではなくコミュニティが主催するイベントとしては初参加
  • 今回は 7/25 の土曜日だけ参加
  • ブログ書いてるけど、実行委員ではない

行き

10時スタートですが、11時45分のセッションを目指して出発しました。が…

新快速列車に40分閉じ込められてしまいました。

大阪駅から阪急電車に乗り換えて最寄り駅である石橋駅へ。
石橋駅から会場までは、WordCamp 公式ブログの写真付きの説明で予習していたため、スムーズにたどり着きました。

IMAG1805

昼食休憩

12:30頃に到着し、昼食休憩の時間でした。

参加者には、無料でペットボトル飲料・おにぎり・菓子パンの提供がありました。
おにぎりは全て大学生協のものでしたし、ペットボトルのお茶は大学生協のものでした。

DAY1 セッション

セッション講堂はこんな感じでした。

2015_07_25_13_12_37

写真では分かりにくいですが、前からテーブルが出せるシステムでした。

私は13:30~最後までセッションを聞いていました。

まだ、公式サイトの方でもスライドのまとめが紹介されていないので、自分が見ていない分のスライドもここで紹介します。

スライドにコメントをつけていますが、認識に誤りがあるかもしれません。

10:30-

11:45-

  • Contributing to WordPress for Professional Development / WordPress への貢献、それは圧倒的成長への道
    (スライド未公開?)

13:30-

ここから参加しました。

14~16ページの会場アンケートで、お仕事で作成している人の参加が多いんだなと感じました。

テーマはどうあるべきかという話で、プラグインの領域との違いについて説明されていました。

理想だけではなく、「とはいえ」という事情も説明されていていました。

  • 日本語版Codexを救うんだ!90日間更新を続けてみた

WordPress の Wikipedia 的存在である、WordPress Codex の話です。

英語のドキュメントは世界中の人が更新できるが、日本語は日本人しか更新しない。それでこの情報量はすごいというような話をされていました。

日本語の Codex は子供用のプール
英語の Codex は競技用のプール
という例えは、他のドキュメントでもいえることでとても納得できました。

14:45-

従来の開発手法でのトラブル(自分で書いた仕様を忘れた・うっかり動かないコードでアップしてしまった)とそれをどのように改善したかという話でした。

継続的インテグレーション」や「テスト駆動開発」という言葉も最近よく聞くようになりましたが、これについての理解も深められました。
WP-CLI も名前や機能は知っていましたが、こういうときにも使うんだなと思いました。

15:45-

オープンデータの名前は知っており、東京メトロのオープンデータコンテストにも関心はありました(実際は応募せず)
どういうデータなのか、それに関する政府などの取り組みも理解が深まりました。

このブログも WordPress で運営していますが、ページを開く速度が… と思うときがあります。
(月額500円のサービスに多くを求めるなというところですが)
将来的に自分で PHP や MySQL を設定した際に活用できそうな高速化の話もありますが、翻訳キャッシュは全く気づきませんでした。

17:00-

多言語対応という話だけでなく、ITスタッフが少ない・導入後の予算が少ないという環境で大切になってくる「メンテフリー」の考え方も理解できました。

様々な情報を仕入れたり、信頼できるパートナーを探すという意味で、コミュニティを活用するというのは、聞けて納得しました。

  • WordPress の言語別機能とそのあり方について

スライド中で説明があったのかもしれませんが、WP Multibyte Patch 作者だということは後で知りました。

英語圏での開発されているプログラムだと、言語別機能があるといってもその重要性を理解していないこともあるというのは、最近他のプロダクトに関わるようになって共感する部分がありました。

DAY2 セッション

参加していないのですが、一応紹介しておきます。

10:30-

http://www.slideshare.net/kurudrive/wordcampkansai-2015

11:45-

  • How I built a WordPress-powered SaaS (Software as a Service) in 3 Days / WordPress を使って3日で SaaS を作る方法

13:30-

地域活動におけるソーシャルの活用

14:45-

15:15- LT大会

順番がよく分からなかったので、適当に貼っておきます。

16:00-

16:45-

  • Why WordPress Contributions Drive us to the Road of Innovation / WordPressへの貢献がイノベーションに繋がる理由
  • Going Global: Introduction & Benefits of Multilingual WooCommerce using WPML Plugin

Chrome 44 に更新すると、調子悪くなったというウェブページがあると Chrome のフォーラムに投稿され、その原因を調べてみると WooCommerce が原因だったということで初めて知りました。

参考:Mac版のChromeだけCSSが読み込まれてないような表示になる

  • 日本のWordPressホスティングの動向とレンタルサーバーの選び方

ファーストサーバーの方の発表だそうです。

まとめ

「WordPress」といっても、コアやプラグイン、テーマー、サーバー、セキュリティ、サイトの運営と多くの分野があります。
自分が知らなかった分野の話も話において行かれることなく、どういう問題があってどのような改善を行っているかなど理解することができました。

自分の反省点ですが、懇親会ではもう少し自分から話しかけることができたら良かったなと思いました。
他の参加者と違って、学生なので宣伝することもないのですが、いろいろとお話を聞けるいいチャンスなのでもっと活かしたいです。

余談ですが

懇親会にも参加し、一日目の帰りのこと。

一日に2回も人身事故の影響を受けるとは。

2クリックで Chrome 44 のユーザーを切り替える方法

Google Chrome 44 では、ユーザーの切り替えに使用するアバターメニューの設定が変更され、試験運用機能(chrome://flags)では変更できなくなりました。

以前、Chrome 39 がリリースしたときに更新したこの記事は、 Chrome 43 まで有効な情報となってしまいました。

インターネット上には、起動オプションを追加することで従来のメニューに戻す方法が多く紹介されていますが、今回は「新しいユーザーメニューを有効にしたまま」

  • 2クリックでユーザーの切り替え
  • 8個以上のユーザーを切り替え

する方法を紹介したいと思います。

“2クリックで Chrome 44 のユーザーを切り替える方法” の続きを読む

スパムコメント誤判定を修正しました

2014年12月22日より7ヶ月間、このブログにおけるスパムコメントの判定が全てスパム扱いとなっており、正常なコメントも投稿できない問題がありました。

現在は修正し、投稿できることを確認しています。

影響のあったコメント

期間中に投稿されたコメントを確認しました。

こちらの記事の3件のコメントが誤判定により無視されていました。
実際にスパムであったコメント・トラックバックは422件でした。

プラグインを利用した、外部サービスのコメントはこの影響を受けていません。

  • Facebook ログインによるコメント
  • ツイートをコメントとして表示

原因

このブログでは、日本語が含まれない・URLが多すぎる・外部のスパムリストに登録されているIPアドレスからのコメントは、プラグインにてブロックしていました。

2014年12月22日にリリースされた Version 2.6.5 より従来利用していた「スパムちゃんぷるー(ベータ)」のサービス終了に伴い、フィルタが変更されました。

・バージョン2.6.5  2014/12/22  スパムフィルタを自身で設定できるように変更しました。  選択肢「bsb.spamlookup.net, bsb.empty.us, list.dsbl.org, all.rbl.jp」  及び自由記入欄にてカンマ区切りでサービスのURLを入力できます。  ※記述に誤りがありますと通信が返ってこないためコメント出来ない可能性がありますのでご注意ください。

プラグインの設定で「スパムブラックリストサービスに登録されているIPアドレスからのコメントを拒否する」を無効に変更すると、コメントができるようになりました。
スパムフィルタは bsb.spamlookup.net が有効になっていましたが、ブラウザでそのページを確認したところ自分の IP アドレスはリストに登録されていませんでした。

また、別のサーバーにあるテスト用の WordPress で確認したところ、上記の設定を有効にしていてもコメントができたので、サーバーの問題やプラグインの相性も考えられます。

まとめ

スパムフィルタの設定を変更した際は、自分でも動作を確認していましたが、プラグインの更新までは考えていませんでした。

現在は、IPアドレスによる判断は行わず、内容のみでスパムを判断しています。
フィルタを通り抜けるスパムコメントが増えるようであれば、通常のコメントはできる範囲で対策を考えたいと思います。

ConoHa で WebSocket 接続を試みるも 502 エラーが出現

またまたMacbook が欲しいために「ConoHa」の API に関する記事を公開します。

タイトルにもありますが、今回は上手くいかなかった例を紹介します。
どなたか詳しい方がいらっしゃれば、アドバイスをいただけると嬉しいです。

挑戦したいこと

先日更新した記事で、ConoHa には noVNC コンソールと HTTP のシリアルコンソールがあると紹介しました。

API ドキュメントにはあるものの紹介していないコンソールがありました。

WebSocket については Wikipedia にもありますが、サーバーとクライアントを常時接続するようなプロトコルで、プロキシサーバーが必要な環境でも接続できるのが特徴です。

WebSocket 接続用 URL の取得

前回紹介した PowerShell のスクリプトの

{"os-getVNCConsole":{"type": "novnc"}}

{"os-getSerialConsole":{"type": "serial"}}

に書き換えるだけです。

$apiUser = "APIユーザー名"
$apiPassword = "APIパスワード"
$tenantId = "テナントID"
$identityServiceUrl = "https://identity.tyo1.conoha.io/v2.0"
$computeService = "https://compute.tyo1.conoha.io/v2"
$uuid = "VPS設定-UUID"
# 有効な期間のトークンがあれば
$token = "" 

# トークンの取得
function getToken([string] $tenantId, [string] $apiUser, [string] $apiPassword, [string] $authurl){
    $body = '{"auth":{"passwordCredentials":{"username":"' + $apiUser + '","password":"'+$apiPassword+'"},"tenantId":"'+$tenantId+'"}}'
    $url = $identityServiceUrl+"/tokens"
    $result = Invoke-RestMethod $url -Method POST -Body $body
    return $result
}

# コンソールの URL 取得
function getWebSocketConsole([string] $tenantId, [string] $uuid, [Hashtable] $tokenHeader, [string] $computeService){
    $body = '{"os-getSerialConsole":{"type": "serial"}}'
    $url = $computeService + "/" + $tenantId + "/servers/" + $uuid + "/action"
    $result = Invoke-RestMethod $url -Method POST -Body $body -Headers $tokenHeader
    return $result.console.url
}

# 処理
if ($token -eq "") {
    $mytokens = getToken $tenantId $apiUser $apiPassword $identityServiceUrl
    $token = $mytokens.access.token
}
$tokenHeader = @{"X-Auth-Token" = $token}
$url = getWebSocketConsole $tenantId $uuid $tokenHeader $computeService
# URL 表示
Write-Output $url

成功するとこのような wss で始まる WebSocket の URL が得られます。

wss://console.tyo1.conoha.io/?token=○○

WebSocket クライアントからの接続

とりあえず WebSocket の接続サンプルを使うことにしました。

JavaScript

WebSocket の公式サイトにテストがあったので試してみました。

WebSocket の URL を入力して接続しても、ERROR:undefined と表示されてしまいました。
Creating your own test を自分で書き換えても同様のエラーが発生しました。

テストサーバーである、
ws://echo.websocket.org/
wss://echo.websocket.org/
は問題なく接続できるので、回線が WebSocket を制限しているわけでもなさそうです。

ブラウザの開発者ツールで確認してみると、502 Bad Gateway エラーが発生しているようです。

[H27.07.17]ConoHa WebSocket 502

C#

こちらのブログを参考に、C# での確認も行いました。

こちらも、ws://echo.websocket.org/ や wss://echo.websocket.org/ は問題なく接続できました。
違うネットワークから接続してもだめでした。

サポートに問い合わせてみた

困ったので、ConoHa のサポートに問い合わせてみました。

回答は「APIで接続用URL取得後の動作については案内が困難」とのことでした。
クライアントの問題や利用者の回線の問題も考えられるため、そこまではサポートできないというのも納得できます。

今回は、こうしてブログに書くことによって、誰かの参考になればと思います。

おわりに

現在友達の紹介キャンペーンを実施しており、こちらのリンクから ConoHa に登録していただくと、1000円分のクーポンがもらえますので是非登録し、試してみてください。