Engine's blog

MVNOやガジェットに関する散財履歴、れびゅー、エンジニア的な技術に関する何か

Googleフォームでファイルアップロード機能をつけようと思ったら存外大変だった

Googleフォームでファイルアップロード機能をつけようと思ったら存外大変だった話

isseiです。 ずっと記事更新しているつもりで数ヶ月たってたんだけど、よくみたら更新したはずの記事全部下書きにいってました。

今回はタイトル通りなんだけど、 Googleフォームでユーザーがログインすることなくファイルアップロードできるフォームをつくろうと思ったら存外大変だった話 です。

こんなこと多分滅多にないと思うんだけど、今回とある知人(?)が困ってて、なんとかしてあげられんかなと思って手を挙げたら思いの外大変だったので備忘的に書き記したいと思う。

Googleフォームとは

www.google.com

Googleフォームは、WEBの知識は一切必要とせず画面の支持にしたがって進めれば誰でも手軽に、しかもちょっと凝ったこともできるアンケート作成ツール。


凝ったことっていうのは、例えば選択肢をいくつか作って、選択された回答によって次に提示する質問を変えられたり、ファイルアップロード機能を使えたりするのである。


HTMLで作るの結構めんどいんだよね。もちろん作ること自体は簡単だけど、条件分岐とかアップロード、そもそものデプロイ先の手配とか全部やると地味な作業の連続なのです。(もちろん私はそれでお金をもらっている人なのでごにょごにょ)

で、今回は勝手に色気付いて条件分岐、必須であるファイルアップロード機能をつけたフォームを作ったらハマったよという。

今回作るもの

テーマ:

**画像をアップロードできる** WEBフォーム

必須要件:

  1. 画像投稿フォーム
  2. ログイン認証なし

ファイルアップロード機能をつけるとログインは強制

まず前提として書いておかなければいけないのは、大抵のフォームは フォーム作成画面からテンプレート選んで進めば作れます ということ。

で、今回は完全にログインを不要にしなければいけないんだけど、このアップロード機能を利用しようとするとGoogleフォームではどうやってもログインを強制されてしまった。


ここから考察。

googleフォームを作成すると、作成者自身のアカウントのGoogle Driveに作成したgoogleフォーム専用のフォルダが作成されます。回答者の回答結果もここに蓄積されていく。

アップロード機能を使用した場合も上記に漏れず、作成されたGoogle Driveのフォルダ内に格納されるんだけど、 Google Driveって人のページを見るときもログイン必要なんですよ。確か。

GoogleフォームもDriveを使っているわけなんで、それでかなってのが一つ目の考察。

(パブリックな設定にしている特定のファイルだかディレクトリならフリーアクセスにできたかも)

もう一つあって、ウィルスが混入したデータがアップロードされた場合の検知、および特定を目的にしてたりするのかなと。(セキュリティ的な観点ですね)

考察終了。

アンケートフォームを作る方法はWEBのテンプレートからだけではなかった

で、どうやらログインを強制しない方法として、GASというGoogleスプレッドシートからのみ作成できるJavascriptに似たプログラムからフォームを作ればいけるらしいという情報を得た。

ここからは手順系の話になっていきます。

GASのエディタ画面にいくまでの手順

まず以下にアクセスして [ Googleスプレッドシートを使う ] を押す。
Google スプレッドシート - オンラインでスプレッドシートを作成、編集できる無料サービス

[ 新しいスプレッドシートを作成 ] から [ 空白 ] という項目を選択。 f:id:engine_is:20181012162151p:plain

画面上部の [ ツール ] -> [ <> スクリプトエディタ] を選択 f:id:engine_is:20181012162921p:plain

そうすると 無題のプロジェクト というタブが新規で作成されて、こんな感じの画面になっている。 f:id:engine_is:20181012163144p:plain

フォームを作成して見る

お待ちかねのフォーム作成。

超簡単。

今は以下のようになっていると思います。

function myFunction() {
  
}

これを以下のように書き換えてください。

function createEventForm(){
  FormApp.create('てすとふぉーむ');
}

続いて保存します。 f:id:engine_is:20181012164554p:plain ※確認画面が出てきますが、新しいプロジェクト名を てすとふぉーむ とかにしてくとわかりやすいかも。

保存が完了したら実行してみましょう。
[ ▶️ ]のボタンを押して出てくるウィンドウの [ 許可を確認 ] を押してください。 f:id:engine_is:20181012165104p:plain

この [ 許可を確認 ] は、 あなたのGoogleドライブ上にフォームのファイルを作成する許可が必要です。 ということを示しています。
画面を進めて許可をしてください。

さて、どうでしょう。

さっきまでのGASエディタ画面に戻っただけじゃね?

って感じですよね。

もうフォームはできています。

作成したフォームをみて見る

Google ドライブ - 1 か所であらゆるファイルを保管
ご自身のGoogle Driveに上記からアクセスするとありませんか?

てすとふぉーむ f:id:engine_is:20181012170012p:plain

※ クリックして開いてください。

質問ももちろんコードから作成できる

function createEventForm(){
  FormApp.create('てすとふぉーむ');
  
  
  form.addMultipleChoiceItem()
  .setTitle('ご自身は人間だと思いますか?')
  .setChoiceValues(['はい', 'いいえ']);
}

※ 上記でラジオボタンの質問が作成できます。

最後に

ここから今度はWEBアプリケーションで起動してどうこうやったら ログインさせるより恐怖心をかられるメッセージが画面上に表示されたり 色々あったんですが今日はここまでにしておこうと思います。

ちなみに今回作ったアンケートはフォルダIDを取得していたりするわけではないので、ぼんぼこぼんぼこファイルが作成されていきます。 カスタマイズしないともちろん使えないので気をつけてくださいね。

それではまた。

Spotifyで見つけた素晴らしいプレイリストをiPhoneのミュージックにインポートする

こんちあーす。isseiです。 どうでもいいけど昔いろんなブログで おはこんばんにちわ って見かけたよね。 クッソどうでもうすら寒い感じしない?陰キャって言葉がなかった時代のガチ陰キャのにおいする。


私の最近の音楽事情

最近仕事中に音楽を聴いているのは前回記事でも書いた通りなんだけど、一通り聞いてるとやっぱり飽きる。 飽きるし、可視なんか覚えちゃうと大変。歌っちゃうし。

で、基本的にYoutubeでMixList的なもの拾ってAppleMusicで検索して取り込んで..ってしてるんだけどこれがまた結構な手間だったりする。

なので更新できずいつも同じPlay listをローテートしている。

Apple Musicについて

Apple Musicはすごい。とにかく最新曲からオールディーズまで幅広く、しかもメジャーからニッチなものまでカバーされていてかなりすごい。 そんでもって自分のローカルPC(自宅)をサーバーホストとして、iPhoneに曲を取り込んでおかなくても自宅のサーバーにアクセスして全曲聞ける。 ストレージ管理がすごく楽になった。 ※ ただし通信料が跳ね上がった。普段どこ行っても移動圏内は無線飛んでるし問題にならないけど学生(高校生以下)はつらいかもな。

メジャーな最新曲もすごい速度で追加されるから、最新アルバムもすぐに手に入る。

もともとコレクター気質なところがあるので音源はCDとかから必ずローカルにインポートしていたんだけど、 やっぱり切りがなくて自宅のストレージも結構やばおだったので、Apple Music様様なのである。

でも肝心の 何を聞こう という情報がないのでせっかく使えるのに腐りかける。

音楽のストリーミング配信時代と一般人の自己顕示欲とDJ文化の大衆化

そして 絶対はやらないわ と思っていた音楽配信。Napstarが先がけだったように思う。 SMAPだかが宣伝してたり、渋谷では街宣車が走ってた。 誰も使ってなかった。

それが、スマホの普及で需要が爆発した。 おかげで、今まで以上に、本当にみんなが音楽に触れるようになって、そのうち飽食気味になった。

で、結果一般人がエセDJみたいなことをはじめるようになって、音楽で遊ぶようになった。

その結果、いろんな人が自己顕示欲全開でPlay listを共有しだすようになって、 Spotifyが人気になってきた。

自分の理解では音楽業界はこんな感じ。

JASRACさえいなければもっと自由にいろんな人が音楽のやり取りを始めるようになるのではないかなとも思ったり思わなかったり。

Spotifyと出会う。

今までSpotify使ったことなかったんすよ。 ほんと、さっきまで細かい使い方知らなかった。

でね、今日の朝新しいMixListと出会うべくYoutubeサーフィンしていたのさ。音楽チャンネル。

したらば、結構いいのに出会えて、その人のChannelで出されてるミックスリストがSpotifyで公開されているって書いてある。

どんなもんかなって使ってみたけど、音質も別に悪いわけでもなく。でも音楽検索とかは 何を聞きたいっていうテーマがないと検索仕様がないし、 やっぱりYoutubeって偉大だなって思ったわけ。おすすめ出してくれるし。

でもはたと思ったんすよ。

このMixList、まるまるApple Musicに取り込んでプレイリスト化できないかな?

ということで色々調べた結果素晴らしいツールと出会ったので紹介したいという記事です。


SpotifyのプレイリストをAppleMusicに取り込む方法

この記事では前提として以下が必要です。

  • Apple Musicの契約
  • Spotifyの登録済みアカウント

Apple Musicの契約がない人。

であるならきっと今回の記事は興味ないと思うので、ここまで読んで契約がないなんて人はいないですよね..?

Spotifyアカウント

ない人は無料なのでこの機会にいかがでしょう。 意地でも登録しないという人もいないでしょうが..

Spotify

1. Youtubeなりで好きなプレイリストを探そう

これは助言しようもないので、好みのプレイリストを探そう。

今回はこのChannelを使います。

www.youtube.com


このChannelにこんな感じでSpotifyのリンクが張られていました。

f:id:engine_is:20171115170515p:plain

リンクをたどってSpotifyにアクセスしましょう。

SpotifyでPlayListをフォローしよう

Linkにとんだらたぶんプレイリストの一覧が出てくると思うので、好きなPlay Listを右クリックして、プレイリストをフォローして下さい。

iPhoneで連携させるためのアプリをインストール

今回の一番重要なアプリ

SONGSHIFT (たぶんクリックしたらapp storeに飛べるはず..)

Songshift上で各アカウントにログイン

  • apple musicについてはiPhone側でいい感じにしてくれるので、とりあえずTAPして許可してあげてください。
  • Spotifyはログインするだけ

SongshiftでSpotifyからApple Musicに転送

  1. 画面一番下の Star New Shift からSpotifyを選択
  2. SpotifyのPlay List画面に遷移するので、中から転送したListを選択して Continue
  3. 画面が変わって転送先選択画面になるので、 Destination アイコンをタップしてApple Musicを選ぶ。
  4. 画面下部に Available Destination 一覧が出るので、 Create New Playlist を選択。

これだけ。

ちなみに複数選択は有償、2つのPlaylistを連続して転送しようとすると広告画面が出てくる。 広告に関しては30秒くらい待っていると画面右上に×が出てくるのでTAPすれば問題ない。


例のごとく本編が雑。

前書きのほうが大体長くなるし、本編の雑さがいつも隠せない。

本当は手順で画像とか乗せるべきなんだけど、いかんせん面倒で。。

ちゃんと後日更新しようと思うけど、いったん今回はここまで。

ストリーミングチャンネルの紹介

集中したいときにどうするか

よく言われる心理学的な話だけど、人って無理矢理にでも集中したいとき とりあえず5~10分間やってみるってのがいいんだってね。

調子が上がってきたらそのまま継続するでいいんだけど、 無理に集中して続けようとすると嫌になる、先が見えていればできるという理屈。

それでも無理なら5~10分違うことをして、を繰り返すといいらしい。

でも、実際向き合ってもテンション上がらんから俺は上の理屈だけだと無理で、 必ず音楽を流すようにしている。集中してきたら聞こえなくなるんだけどね。

でも、歌ものだともちろん曲中にキャッチーなフレーズとかいれてくるから結構うざい。

Dir en greyとかmiyaviが昔から好きなんだけど、これらはマジで集中したいときに適さない。 すげーボェボェ言ってくるし、やたらリズミカルだしで、ほんと集中できない。

だから昔から集中したいときはインストを聞くことにしている。

集中したいときに聞く音楽

ここから本題。

結構前から紹介したかったものがある。


Lofi Hip Hop Radio 24/7 🎧 Chill Gaming / Study Beats

Youtubeで24hライブ放送しているチャンネルなんだけど、本当にぜひ一度聞いてみてほしい。

曲自体すごくかっこいいんだけど、何より集中できる。

俺もともとDTMとか苦手というか、なんか打ち込み音みたいなのが嫌だったんですよ。

でもこのストリーム聞くようになってMixCloudとか手を出し始めた。 ※MixCloudはSoundCloudみたいなもの。

ぜひ、聞いてみてください。

ストリーム以外の集中できる曲紹介。

ぜひ試してほしいのがコイツ。


toe - metronome メトロノーム


[HQ] toe - C

Toeはマジでかっこいい(信者

普通に聞いててもかっこいいし、とにかく世界がすごい。

最後に

趣味全開なチョイスなのでハマる人とそうでない人といると思うんだけど、 もしハマった人がいた、知ってたという人がいたら、 コメントで あなたのオススメ を教えてほしいです。

相談窓口はじめました

こんちわ。

なんかかきたいなーと毎日思いながらだらだら過ごしているisseiです。

夜中の2時に電話で起こされてリモートで機器直した話だとか、 仕事ですげードはまりしたけどリセット忘れてただけで実は悩み始めてから2分で解決してた話だとか、 書こうとすると仕事のことしか浮かばないくらいには社会と接点がなくなってることに気が付きました。

まじで、友達いないんだな、俺。

そう感じている毎日です。

さてさて、そんな私ですがこんなもの始めました。

スマホに関する相談ききます 30分調べて答えが見つからなければ誰かにきこう!

一体これが何なのかというと、自分のスキルを低価格で誰かに提供しよう内容。

詳細についてはリンクを見てもらうとわかる..というかタイトルの通りなんだけど、要は

スマホで困ったことはいいからとりあえず聞いてこい?秒速で解決してやるからな?

っていうだいぶ自分を過信した商品販売。です。

常々、自分の持ってるスキルって誰かの役に立てるべき内容だよなって思ってて、

ていうか役に立ちたい欲が強すぎて、何かやりたいなって思ってたんですよ。

今までやってきたことっていうか、今後やりたいことと経歴を並べてみるとこんな感じ。

電話相談:コールセンター アウトバウンド経験2年
出張整体(リフレクソロジーも): 母から伝授され5歳でスタート 1年店舗で修業ののち野良整体師に
パソコンのオンラインサポート:コルセン4年経験 (某大手通信会社のリモートサポート窓口)

変なスキルばっかりだなって思うけど、人のためにやることばっかりなんですよ。

でも、ヤフオクで売るってなんかうさん臭さが出すぎるし違うなって。

更に言うと、個人ブログとかECサイト自分で作っても、それを広める方法が結構難しいんですよ。 (アフィブログくらいならちょろい)

だもんで、すごくもやもやしてた。

だから、手始めに何かしたいな、と思った結果です。

無茶ぶりでもなるべくこたえたいなー。

また何か始めたら紹介しようと思います。

今日はここまで!