JR品川駅の中にある旧東海道線の電車を模したポスト。
ポストの見た目も旧東海道線の見た目になっており、レトロで懐かしい感じのポスト。用事があって品川駅にいったので、撮影してみた。
余談だが、品川駅にも大量のガチャガチャマシンが置いてあり、それなりに賑わっていた。大量においてあるので、ほかでみられなくなったものもあり、そっちもなかなか楽しかった。まわしはしなかったけれど。
JR品川駅の中にある旧東海道線の電車を模したポスト。
ポストの見た目も旧東海道線の見た目になっており、レトロで懐かしい感じのポスト。用事があって品川駅にいったので、撮影してみた。
余談だが、品川駅にも大量のガチャガチャマシンが置いてあり、それなりに賑わっていた。大量においてあるので、ほかでみられなくなったものもあり、そっちもなかなか楽しかった。まわしはしなかったけれど。
Hangouts ChatのChat Botからのメッセージは、JSONオブジェクトで内容を記述して返す。
ポイントは、onMessage() で返す(return)内容を返すときに、return { “cards”: [ ここにJSON ]}; の形式で記述すること。
とくに、cardsのあとの[]の中にJSONオブジェクトでプロパティを記述することが重要。
ユーザからのメッセージが届いたら、カード型メッセージで返信を返す。
/**
* Responds to a MESSAGE event in Hangouts Chat.
*
* @param {Object} event the event object from Hangouts Chat
*
*/
function onMessage(event) {
return {
"cards": [
{
"header": {
"title": "タイトル(カード型のメッセージを返信する)",
"subtitle": "サブタイトル(画像も表示させてみる)",
"imageUrl": "https://goo.gl/yKKjbw",
"imageStyle": "IMAGE"
}
}
]
};
}
Hangouts ChatのChat Botが送信するメッセージの形式は、JSONオブジェクト。JSONオブジェクトとして、送信することで、Chat API側でテキストメッセージやカード形式のメッセージに変換されて表示される。
GASでの変数の宣言は、JavaScriptと同じ。varキーワードを使う、型の宣言はいらない。
var 変数名;
定数の宣言も、JavaScriptと同じ。constキーワードを使う、型の宣言はいらない。定数を使う場合は、constキーワードでの宣言と同時に値の代入を行う。
const 変数名 = 値;
定数の宣言と同時に値を代入するのは、定数への再代入(書き換え)はできないため。
久しぶりにPCを乗り換えたら、Deleteキーを押したら、即ファイルが消える(ゴミ箱イン)するようになっていた。間違えることもあるので、Deleteキーを押したら確認メッセージを表示させるようにしたい。
ゴミ箱を右クリックして、プロパティをクリックする。
「ゴミ箱のプロパティ」で「削除の確認メッセージを表示する」にチェックをつけて、適用をクリックする。
これでおしまい。
もし、確認メッセージを表示させずに削除する場合は、「削除の確認メッセージを表示する」のチェックを外せばよい。
Windows 10に、April 2018 Update(RS4)を当てたあとに、Big-IP Edge Clientをインストールしたら、VPN接続できなくなった。認証先への接続は出来ているようで、新しくVPN用のインターフェースをオープンできなくて、こけているような感じだ。Big-IPのサポートフォーラムでも、RS4で接続できない問題が載っていたので、たぶん同じ問題だろう。Big-IPクライアントを最新にすれば、回避できるようだ。
ただ、問題が発生しているのは、ソフトバンクのインターネットVPNサービスの環境のため、サービス側で新しいクライアントの配布を待たないといけなさそうだ。Windows 10の大型アップデートは鬼門だ。
余談だが、CiscoのAnyConnect Clientは、RS4でも問題なくVPN接続できている。
ゴールデンウィークの課題と決めていたゼルダの伝説 BREATH OF THE WILDは、予定通りのスケジュールでクリアした。プレイ時間は、なんだかんだで長かった。50時間くらいだったかな。
クリアして、ストーリーを思い返してみると、メインクエスト系はそんなに長くなく、各々がいいストーリーだったと思う。100年前の惨劇の無念や思いが散りばめられていていい感じだ。ストーリーは、ほんとよかったし、楽しかった。まぁ、ややムカつく感じのスネ夫みたいなキャラもいたが、あれはあれでいいんじゃないかな。キャラに個性があるのはいいこと。ゼルダをちゃんとやったのは、初めてなのでなんともいえない部分はあるが、基本的にメインクエストを進めていっても、時は止まったまま、ラスボスが攻めてくるとか、世界が崩壊するとかはない。なので、リンクが使命を忘れて堕落した生活を送っていたとしても、世界は変わらない。よくもわるくも。そこの世界の動きがあったら、面白かったのかも、とか思う。
あと、個人的な感想ではあるが、ラスボスよりも、神獣についてるカースガノンの方が強かった気がする。足場が悪かったり、いろいろな制約があったり、それに比べたら、ラスボスの方が楽勝だった、時間はかかるけれど。それから、ラスボスよりも、イイガ団幹部と正面からやりあう方が厄介だった。まともにやりあうと、ちょっとした油断で即死させられるし、本当に厄介だった。
なんだかんだでゴールデンウィーク中、ずっとプレイしていた楽しいゲームでした。もうちょっと、未踏の地を旅したら、スプラトゥーン2に帰るとするかな。
Hangouts Chatで、GASで作ったChat Botと会話するとき、Chat BotのGASプログラム側では”onMessage(event)”関数が呼び出されている。この関数の中で、ユーザからの送られてきたテキストの中身を処理することで、ユーザと様々なやり取りをすることができる。
function onMessage(event) {
return { "text": "このメッセージをチャットで返す" };
}
ちなみに、ユーザ側が入力した内容は、`event.message.text`で取得することができる。
Hangouts Chatで、GASで作ったChat Botを呼び出すとき、関数のonAddToSpace(event)がHangouts Chat APIから呼び出される。このイベントが発生するのは、Chat Botを追加したときのみ。
function onAddToSpace(event) {
return { "text": "このメッセージを返す" };
}
■Googleのサンプルプログラム。
function onAddToSpace(event) {
var message = "";
if (event.space.type == "DM") {
message = "Thank you for adding me to a DM, " + event.user.displayName + "!";
} else {
message = "Thank you for adding me to " + event.space.displayName;
}
return { "text": message };
}
eventは、オブジェクトで、Hangouts Chatから渡される。このオブジェクトの中に、ユーザ名やDMかどうかなどの情報が入っている。
returnで指定した内容がユーザのチャットに返信される。