2014年4月25日金曜日

GAS: HTML出力時のハイパーリンクの埋め込み方

しょうもないネタですけど、ちょっとハマったのでメモ書き。

GASを動的なHTML出力をする時には、doGetメソッド内でcreateHTMLを利用すればいいのですが、ハイパーリンクを利用するときには注意が必要です。createHTMMLの中にアンカータグを入れてもダメです。無視されます。ハイパーリンク(アンカータグ)を追加したいときは、createAnchorを使います。


2014年4月22日火曜日

PuttyGenでTeraTerm用秘密鍵を作成する際の注意事項

ちょっと手間取ったのでメモ書き。SSH等のセキュアな接続のために秘密鍵/公開鍵をWindowsで生成するには、
を利用するのが、一般的かと思います。しかし、Teratermで秘密鍵を読み込ませると、
SSH2 秘密鍵の読み込みに失敗しました。error:pem_read_bio no start line
というエラーが出ます。これは、 秘密鍵ファイルの形式が異なっている可能性があります。メニューから、【Conversions】→Export OpenSSH key】と保存しなおしましょう。


これでログインが行えるはずです。



2014年4月20日日曜日

GoogleサイトでのApp スクリプト呼び込み時にUserPrefを設定する方法

久しぶりのGAS(Google App Script)ネタです。

Google サイトでもGASは利用可能
ほとんどの人が知っていると思いますが、GASはGoogleサイトに埋め込みが可能です。Googleサイトは、JavaScriptの利用に関していろいろ制約がありますが、GASを利用することでちょっとした動的なページ生成が自然にできるという利点があります。その埋め込み方ですが、Googleサイトではデフォルトで埋め込みができるようにウィザードが用意されています。


Google Gadget用のXMLスクリプトを書かなくてもいいというのは便利ですね。

UserPrefの設定ができない
しかし、その便利さが欠点を生み出しています。それは、UserPrefを独自設定できないということ。XMLを書かなくてもいいということはカスタマイズできないというわけです。UserPrefを利用できれば、Gadgetの埋め込み時に初期パラメーターを任意に設定できるようになるので、URLパラメーターとしてGASに渡すことで、汎用的な使い方ができるという利点があります。そこで標準のウィザードに頼らず、GoogleGadgetのXML記述を自分で用意してiFrameの形式で呼び出せば、、と試みたんですが、どうもうまくいなかい。私のミスの可能性もありますが、少なくともiframeではなぜかGASを呼び出せないという結論になりました。

解決策:自作GadgetからスクリプトGadgetを呼ぶ
とりあえず試行して成功したのは、自作のGadgetXMLファイル内でiframeを介してスクリプトGadgetを呼ぶという荒業です。手順を以下に示します。
1.標準のApp スクリプトGadgetを利用して、対象のスクリプトを呼びページに埋め込む
 まずは、対象のAppスクリプトを標準のウィザードで呼び出しページに埋め込みましょう。
2.ページをHTMLモードで表示し、App スクリプトGadgetのURLを見つける
 Gadgetの中でdata-origsrcというのがGadgetURLの設定パラメーターのようですので、そのURLをメモします。


3. 自作のGadgetXMLファイル内でuserprefとiframeタグを記述する。
 iframeタグで先ほどメモしたApp スクリプトGadgetのURLを指定します。UserprefのパラメーターをURLパラメーターに渡すことはもちろん可能です。


これで、GAS+Googleサイトを利用したちょっとした面白いアプリができそうです。

2014年4月6日日曜日

Googleドライブでビデオ教材を公開する

今日は、講義運用系ネタです。昨今、オンラインでビデオ教材を公開するのがあたり前になってきており、個人的にも何かやってみたいとは考えているのですが、実際に運用する際に気になるのはサーバをどうするかです。一昔前であれば自前でサーバ用意してましたが、ビデオ配信となるとそれなりの帯域も使いますし、マシンスペックも必要となります。またユーザ管理とかサーバー自体のメンテナンスも負担になってきます。

Googleのサービスを利用する
上記の問題に対する解決策として、Googleのサービスを利用することにしました。Googleで動画を公開するには2つのアプローチがあります。
  • Youtubeで公開する
  • Googleドライブで公開する
おそらくYoutubeを使うというのが一番メジャーだと思われますが、ここではあえてGoogleドライブを勧めます。その理由は
  • Youtubeにすると、学生がついついYoutubeの他のページを見てしまう可能性がある
  • ユーザ制限をするなら断然Googleドライブ
という点です。特に後者が重要。youtubeの限定公開はURLがわかるとだれでもアクセス可能なのが要注意です。Googleドライブではユーザ単位(Googleアカウント)で制限できます。

ゼミ生向けの動画コンテンツをアップ
試しに、ゼミ生向けの卒研テーマの説明資料を、音声付きスライド動画資料としてアップしてみました。今は就活で皆が一斉に集まりにくい時期なので、卒研テーマの説明を音声をつけて配信することで、より詳しく意図が伝わるのではないかという狙いです。下記は、再生時のスクリーンショットです。


再生時の見た目はほとんどyoutubeと同じ。wmv形式のファイルをアップしましたが、ストリーミング配信が可能な形に自動で変換してくれます。バックがおそらくyoutubeとほぼ同じと思われます。ただ、youtubeにアップした時と比べ、ストリーミング変換にちょっと時間がかかるため、アップした直後はGoogleドライブ上では再生できません。もちろん、ゼミ生以外は閲覧することは不可能です。

ビデオ教材配信を検討している方の参考になれば幸いです。