ブログをリニューアルしました

この度、「しもたさんのメモ」をお引っ越しすることにしました。最近記事を書いていなかったのは、プライベートが忙しくなったこともありますが、実はサーバーのお引っ越し作業をしていました。引っ越しをする理由としては、以下です。

  • IT系ブログとその他でブログを分けたかったか
  • 表示速度を速くしたかった

新しいサイトは、色々迷いましたが、次の2つです。

ヨガと子育てに関するブログ。ヨガは、最初は思いつきと勢いではじめましたが、肩こりが改善したり体調が崩れることが少なくなりました。ヨガ教室がどのようなところなのかとヨガの基本的な用語の解説や私の感想を交えて書いています。子育てに関しては私が有益な情報だと思ったことを書きます。

激動の顧客常駐型SEから、自社サービスを持っている会社の社内SEの転職しました。生活はかなり安定しましたが、新しいIT技術には触れる事ができなくて物足りなさを感じる様になりました。30歳を超えてもやっぱり新しい技術には関心があって、自分で調べたことをブログで書き留めるようになりました。最初は一人でコツコツやっていたんですが、最近ではエンジニアどうしのIT勉強会支援SNSに参加し、その情報をまとめつつ自分の好きなIT技術情報をまとめています。IT系といっても幅広いですが、私が気になって書いていることは、ブログサブメニューのカテゴリーを御覧ください。

 

しもたさんのメモについては、新しいサイトにドメインパワーが移動するまでは残しますが、いずれは、消去する予定です。新しいサイトのブックマークかRSSFeed登録をお願いいたします。なお、新しいサイトは、微調整や画像の移転が不十分なところがあり、私からのPUSH通知設定は、行っていません。(いずれは、導入予定)

 

今後とも、宜しくお願いいたします。

LAVAを休会しました

この記事ではLAVAさんを休会したことについて書きます。

休会の理由

休会の理由は人それぞれですが、私の場合は次の理由です。

  • ※決して嫌いになったわけではない。
  • 転職したことにより、仕事に集中したい。
  • 2018年夏が暑すぎて、暑さを避けるようになっていた。

個人的な事情ですが、転職と気象状況の影響で、毎月定期的に3回以上通えていたのが、7月は0回、8月中旬に入るですが1回という利用状況でした。2年弱通っていたので寂しい気持ちになりますが、無理せず続けたいので、しばらくヨガのペースを落とすことにしました。ヨガ自体が嫌いになったとか、現場スタッフさんが嫌いになったわけではありません。

休会の方法

休会は、気持ちが整えばとても簡単です。

  • いつも通っているメイン店舗の受付に休会したい旨を伝える
  • (3分ぐらい待つ)
  • 「休会届出書」と言うものに、サインをする

休会自体は5分位で終わりですね。

休会の注意点/特記点

注意点は次の点です。

  • 休会・復会への手数料は0円。
  • 休会中でも、事務手数料として、月額2000円程度かかる。
  • 15日(定休日の場合は14日まで!)までに手続きをしないと当月の休会とならず、次月の休会になる。
  • 休会中でも1回あたり3500円(くらい?)でヨガを受講することが可能
  • 復会の手続きを休会と同時にできる

解約して再登録をすると再登録時に5000円がかかるので、休会にしました。

1ヵ月をしなかった場合の体の変化

受講履歴をみると1ヵ月半くらいヨガをしていませんでした。1ヵ月半たった体の変化を考えてみたところ、私の場合はあまりありませんでした。夏休みの子供とプールや公園で運動していたり、気にして毎晩ストレッチをしていました。

でもまったくなかったかというとそうでもありません(笑)1ヵ月半ぶりのヨガで感じたことは、「左右の疲れ方のバランス差には自分では気づけない」「やっぱりやるとスッキリする」です。(※個人差があると思います)

まとめ

この記事では、ホットヨガのLAVAさんを休会したことについて書きました。休会は簡単ですね。私は仕事の変化で休会をしましたが、ちょっと他の習い事をやりたくなった等の理由で休会はありな気がします。LAVAに通い始めてから、仕事のパフォーマンスを安定させることができたのでとても感謝しています。

なんだか辞めるみたいなまとめになっていますが、休会中でも月1くらいは行くつもりです!

自作Clovaスキルを実機で動かすまで

この記事では、LINE Clovaに自作スキルを実装する方法について書いていきます。2018/7/12にClovaのスキルを誰でも開発できるClova Extensitons Kitが公開されました!早速、イジリ倒してみます。

猛者の方々はすでにAWS上にFunctionを導入して審査とか出していそうです。。。私は、そこまではできていなくて、チュートリアルを見ながら、ローカルにサーバを立てて実機で動作確認するところまで出来ましたので、その内容と私が詰まった点をこの記事に書いていきたいと思います。

 

1.完成系

私:「ねぇClova、サイコロ占いを起動して

Clova:「サイコロをいくつ振りましょうか?」

私:「サイコロをつ振って

Clova:「サイコロを3つ振ります。結果は2、3、4で合計は9です」

2.準備するもの

私が実機でテストするまで必要だったものを書きます。

チュートリアル上は、「Git」「Node.js」「Chrome拡張機能」の3つが必要だと書いてあります。しかし、チュートリアルだと、専用のコンソールで発話に対するレスポンスの確認をするようになっていますが、やっぱり実機でどうなっているか確認したいため、①ローカルサーバを外部からHTTPS参照できるようにするngrokと②実機(ClovaFriends)を準備します。また、Clova Developer Center βにログインしているアカウントと同じアカウント(メールアドレス)でログインしたClovaFriendsがあると、ClovaFriendsが認識した発話をテキストで確認できるため、③スマホのLineClovaアプリで設定を確認します。

他の方は引っかからないと思いますが、Node.jsのバージョンが古すぎると、チュートリアルが失敗しますので、Node.jsのバージョンは最新版を使うようにしましょう。

3.環境の準備

私の環境は、次のものです。「1.準備するもの」のソフトウェアインストール後の状態です。

  • OS:Windows8.1の64bit
  • Node.js:v8.11.3
  • Clova:v1.7.1
  • (Git:git version 2.12.0.windows.1)

ローカルへのExtensionサーバーの準備

ここは、何も考えずに、チュートリアル通りのコマンドを実行しましょう。

サーバーの起動確認をChrome拡張機能のPostmanを利用して行います。Chromeのアドレスバーに「chrome://apps/」と入力して、「Postman」を選択しましょう。入力例はチュートリアル通りこのURLを参考に次の赤い四角を入力します。

最後に青い「Send」ボタンをクリック。このとき、400エラーとかえって来た場合は、先ほど起動した、ローカルサーバの「node app.js」のコマンドプロンプトを確認しましょう。

【起動直後】

【PostmanからSend直後】

何かリクエストが届いていれば、OKです。 ここまでで、Postmanの役割は終わりです。

Gitからダウンロードしたソース(Node.js)を変更した場合は、一度「Ctrl+C」でサーバを停止したのちに、「node app.js」でサーバーを再起動しましょう。

4.Extensionの基本情報の登録と設定

Extensionの基本情報を登録

サーバーが上手く起動出来たら、Clova Developer Center βからExtensionの基本情報を登録します。次の画面は、作成後の画面です。初めての方は、「LINE Developersでスキルチャンネルを新規作成」という緑色のボタンをクリックしましょう。

この中で、重要なところは、「Extension ID」(後で変更不可)と「呼び出し名」「ExtensionサーバーのURL」(後で変更可)です。私の場合は、次のように設定。

  • 基本設定タブ
    • Extension ID
      • simota.clova.extension.sampledice
    • 呼び出し名
      • サイコロ占い
  • サーバー設定タブ
    • ExtensionサーバーのURL
      • ngrokの値 (※1)
    • アカウント連携の有無
      • なし
  • 配布情報タブ
    • 未記入
  • 個人情報の保護および規約同意
    • 設問の通りわかる範囲で記入

※ngrokの設定について

ngrokについては、以前私が書いた記事があります。

これを参考にして、「ngrok.exe http 3000」というコマンドを打つと次のような画面になります。

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

注意点としては、「/clova」を付けること。そして、ngrokは起動のたびにURLが変わるため、サーバー設定を都度変更する必要があります。設定は即反映されるので、毎度設定する手間以外は、開発に影響がでません。

5.Extensionスキルの開発とブラウザ上でのテスト

対話モデルを登録する

対話モデルの設定は、Extensionの基本情報を設定した場所から開くことができます。

開くとこんな感じの画面になります。この中で、「カスタムインテント」というものを作っていきます。

※この画面は、あとで何回も来ます。ここからが一番のつまりどころでした。

出来上がりの「ThrowDiceIntent」は次のような画面です。

Intentが2つ「サイコロを振って」「サイコロを1つ振って」です。Intentとは、実際にスマートスピーカーに話しかける言葉を指しています。IntentやSlotを変更したあとはビルドをする必要があります。ビルドには3分~5分かかるのでちょっとした開発をする際は、ストレスになります。もう少し早くして欲しい。

テストの前に、Gitのソースを修正するところがある

applicationIdという項目があるので、そこを自分で設定したExtensionIdに変更します。これをしないと、ずっとステータスコード400が返ってきます。

シミュレータでテスト

左側の「テスト」を選択すると、対話モデルのテスト画面に遷移します。ここのテキストボックスに試したい発話(スマートスピーカーに喋りかける言葉)を記載します。

テストの結果は次のように返ってきます。

  • サンプル発話
  • サービスの応答
  • 実行されるイベント
  • 解析されたインテント
  • 解析されたスロット
  • リクエストJSON
  • レスポンスJSON

このようにうまくいけばいいのですが、ここもたくさんはまりました。

サービスの応答が404になる

  • サーバー設定タブのExtensionサーバーのURLが間違っています。見直しましょう。
サービスの応答が500になる

  • 作成したソース内で、ヌルポや0除算等の実行時エラーが発生しています。

一番はまったのは、解析されたスロットの有無によってJSONデータが変わることです。Node.js苦手なので、NULL判定が埋まっくできなかったよ。。。解析されたスロットがない場合は、次のJSONになる。

しっかりローカルサーバの「node app.js」のコマンドプロンプトにもログが出ています。

サクラエディタでやっていたんですが、VIsualStudioCodeだとローカルでデバッグもできるんでしょうかねぇ。

参考)スロットの設定方法

チュートリアルを見ていると、この記事を書いている時点では、対話モデル作成時のスロットの設定方法がちゃんと書いてありませんでした。ここで、書いておきたいたいと思います。

(a)利用するビルトインスロットタイプ(利用したい型)を有効にする

有効になったスロットタイプは、「ビルトイン スロットタイプ」に表示される

(b)スロットリストに使用したい変数名を登録する

(c)スロットリストに登録した変数名に型を紐付ける

(d)カスタム インテントのサンプル発話で変数として扱いたい部分を指定し、変数名を割り当てる

これでOKです。次の発話が1つのサンプルで表現できるようになります。テストシミュレータで確認してみてください。

  • サイコロを1つ振って
  • サイコロを2つ振って
  • サイコロを6つ振って

また、変数の部分は、Node.js上は「this.request.intent.slots.diceCount.value」で取得することができます。(ヌルポに注意)

6.実際にClovaFriends上で動かしてみる

ブラウザのシミュレータ上である程度の動作確認がとれたら、最後は実機でテストしてみたいところです。ここがまた、行間が広いところです。準備として、LINE Developersコンソールと実機のClovaFriendsのログインアカウントを同じにします。詳しい設定方法はよくわかりませんが、アカウントを分けている方は、チュートリアルに沿ってテスターIDの追加を行ってください。

設定に成功すると、実機(ClovaFriends)に話しかけた言葉を拾うことができるようになります。実際に3言ぐらい喋りかけてみました。このサンプルでは、スキルに対応していないので、「すみません、わかりませんでした」という反応が返ってきます。

 

実際にスキルを試してみる

実機に喋った内容と、リクエストとレスポンスログを並べてみます。

■「サイコロ占いにつないで」と喋りかけた場合のリクエストとレスポンス

■「サイコロを3つ振って」と喋りかけた場合のリクエストとレスポンス

■「終わり」と喋りかけた場合のリクエストとレスポンス

リクエストとレスポンスの内容をみるとシミュレータでテストしたときと動作が異なりますね。このあたりがベータ版といったところでしょうか。ここまでで、私のCEKのチュートリアル完了です。

実機をシミュレータで動作が異なる部分

一番詰まった部分は次の点です。

  • シミュレータだとIntentRequestのみのテストが可能だか、スキル起動直後は、LaunchRequestが実行される

チュートリアルだったので、深いところまでドキュメントを読み込んでいませんでしたが、ClovaExtensionKitに組み込まれているビルトインされたイベントの制御をしっかり覚えないと開発が難航するかもしれませんね。

その他

チュートリアルを進む上でかいつまんだ情報

  • 類似語を登録でき誤認識を減らせることができます。。
  • Clova Extensions Kitで開発できる言語は今は2種類。今後増える予定
    • Node.js
    • Swift
  • サーバーの指定はありません。ngrok、AWS、GCPなどで利用可能なことが確認されている。

まとめ

自作Clovaスキルを実機で動かすまでをまとめました。GoogleのDialogFlowになれてからClovaExtensionKitを利用するとちょっと感覚が違って手間取りますね。また、ベータ版ということもあって、ドキュメントが不足しているところもあります。今後改善に期待しましょう。今後としては、何か1つスキルをリリースしてみたいですね。

LAVAのボディメイクヨガとは?

(http://www.evolv-ems.com/trial/ より)

会員制LINEでLAVA×EMS「効率ボデイメイクヨガ」のお知らせが来ました。LINE@の内容は、会員限定のものですので、過去のスタッフブログから情報を集めてみました。

  • 強度:3.5
  • レッスン時間:90分
  • 当日の持ち物:お水500㎖以上/フェイスタオル/シャワータオル
  • レッスン説明:「ボディメイク」「ダイエット効果」「体質改善」短時間で3つの効果が期待できるといわれる 話題のEMSスーツ。ヨガの呼吸やポーズの妨げにならない適度な刺激を効果的に筋肉に与えて、効率よくボディメイクします。 集中的な効果を得たい方にオススメです。 EMSとはTVなどで話題の電気刺激によって筋肉を収縮させる運動器具です。電気刺激を直接筋肉に与えることで、運動時の筋肉活動に近い状態を実現します。
  • 料金:
    • 同一店舗のフリーフルの方は4500
    • 同一店舗のマンスリー4の方は5500円
      • 別店舗の方は、別途施設使用料がかかります

http://yoga-lava.com/saitama/omiyrakuun/topics/lavaems_6.html

https://yoga-lava.com/news/upload_pdf/all_topics_180301_ems_lesson.pdf

EMSって、二の腕に電極貼ったり、お腹に巻きつけるものではなくて、この記事冒頭のスーツを来てやるらしい。何だか、カッコイイですね。私の場合は5500円ですね。これは、迷いますね。

実際にレッスンを受けたわけではないですが、EMSを使用する場合は、次の注意点があります。

  • EMSを使用してはいけない人・いけない場合
    • 病気の時
    • 皮膚に炎症やかゆみがあるとき
    • 生理中のお腹まわり
    • 骨が弱い人
    • 医師から運動を禁じられている人
    • 心臓周りに疾患を抱えていたり動機がある場合

http://www.ems-diet.org/effective/safe.html

なお、このレッスンを受講する際は、次のお願いがされています。

LAVA×EMS「効率ボデイメイクヨガ」をご受講される方はスーツの着用と同意書記載があるため、遅くとも15分前までにはご来店ください。
http://yoga-lava.com/saitama/omiyrakuun/topics/lavaems_6.html

 

埼玉では大宮ラクーン店のみで実施していて、7/7からレッスンに取り入れるとのことです。お腹のたるみが際立って来たのでちょっと試してみたい気持ちがあります。1年に1回あるかないかのもので、定員が決まっているので、ご希望の方はお早めに予約しましょう。

国際ヨガの日(6/21)に向けて日本のヨガについて考えてみた

この記事では、6/21の国際ヨガデーに向けてヨガについて改めて調べたことを書きます。


国際ヨガデーとは、2015年に国連が創設したもので、なんで6月21日かというとwikiでは次のように書かれています。

国連総会において6月21日と定める理由について、これが北半球において最も日が長くなる夏至に(ほぼ)相当し、世界各地にこの日を特別な日とする考えが共有されているからだと述べた。
(wikipedia)

北半球の夏至ということは、太陽に感謝をしてヨガをする日ですね。

LAVAさんでも国際ヨガデー(6/21)にレッスンに参加すると「ヨガに感謝する瞑想」と題して、全レッスンで開催するそうです。特別なレッスンがあるわけではなく、レッスンはじめかレッスン終わりに瞑想の時間をとる感じでしょうか。


話は代わり、セブン&アイ出版さんが、2017年の日本のヨガマーケット調査した資料がWEB上に公開されていました。これが、とても面白かったです。内容をかいつまんで記載します。

サマリの内容は次の通りです。

  • 日本のヨガ人口は、月に1回以上行っている人が約590万人、年1回以上の実施者は約770万人と推定されます。
  • 今後2~3年以内にヨガをおこなってみたいとする人は、約880万人で、潜在者を含めた今後のヨガ人口は、約1600万人と推定されます。
  • ヨガを行っている場所は、男女ともに、フィットネスクラブ、ヨガスタジオなどが60%を超えています。
  • 現在、日本のヨガマーケットの市場規模は2600億円に成長。

日本のヨガマーケット調査 – セブン&アイ出版 

月に1回というのはちょっとレンジが広い感じがしますが、結構な人数ヨガをやっているのがわかりますね。今調査は結構細かいところまで調査がをしていて年代別の表もあります。

  • 月1回以上ヨガをやっている割合を見ると、男性は、年齢とともに減少していって、女性は一様に同じような割合で実施しています。
    • 20代女性: 9.4%、20代男性: 7.4%
    • 30代女性: 9.1%、30代男性: 5.8%
    • 40代女性:10.5%、40代男性: 3.4%
  • 男女比は、男3割:女性7割。ヨガを始めた年代は20代と30代が多い。

その他、私が気になったことを抜粋すると次の点です。

  • 実施時間帯は、男女ともに平日の夜が最多。
  • ヨガをやっている場所は、男女で差が出ている。男性と女性の割合表示のため、絶対数では男性は、棒の長さを1/2にして見る必要がある。
  • ヨガは、他のスポーツに比べ「美容・体型維持」や「ストレス発散・リラックス」の期待が高いは、納得です。
  • ヨガをやっている人の年収別と地域別。
  • ヨガをやっていない人のうち、男性の約20%、女性は半分の人がヨガをやってみたいと考えている。
  • 今後ヨガをやってみたいと思わない人は、「ヨガが楽しそうに思わない」「お金がかかりそう」と感じている。
  • 過去にヨガ経験はあるものの続けなかった人は、忙しい中での時間確保や場所・設備がネックとなっていた。

日本のヨガマーケット調査 – セブン&アイ出版 

ヨガはこれからまだまだ成長していきそうですが、施設が近くにあるかどうかがネックですね。私も無理せず楽しく続けていきたいものです。