カントリーモーニング(仮)

しがないサラリーマンが不定期に更新する雑記帳。
【LINE】おしゃべりbot。
前回作成した【LINE】かんたんbot をベースに、
docomo 自然対話APIを使用して、【LINE】おしゃべりbotにしてみました。

■ docomo 自然対話API
(概要)
https://dev.smt.docomo.ne.jp/?p=docs.api.page&api_name=natural_dialogue&p_name=api_usage_scenario
(仕様)
https://dev.smt.docomo.ne.jp/?p=docs.api.page&api_name=natural_dialogue&p_name=api_4#tag01



上記「docomo 自然対話API」ページからアカウント作成/申請すると、
docomo 自然対話APIを使用可能になるAPIKEYが発行されます。

発行された「ほげほげ」というAPIKEYを使って、
「https://api.apigw.smt.docomo.ne.jp/naturalChatting/v1/dialogue?APIKEY=ほげほげ」
にPOSTリクエストすると、JSON形式でレスポンスが返ってきます(DApiNaturalChattingUtil.java:新規作成ファイル)。

LINE SDK内 EchoApplication.javaで取得できるユーザからの入力メッセージを
DApiNaturalChattingUtil.java に渡して、docomo 自然対話APIから返ってきたメッセージを
EchoApplication.javaでユーザへの出力メッセージとしてTextMessageで返却します。

modifiedMessageText = DApiNaturalChattingUtil.callPost(originalMessageText);
return new TextMessage(modifiedMessageText + "げぼ");

すると、


みたいになります。

あと、以下、備忘録メモです。

・デバッグの方法
「System.out.println("ほげほげ");」でソース上にログを埋め込み、以下で確認が可能。
> heroku login
> heroku logs --tail --app {HEROKU_APP_NAME}

・findbugsの無効化
デプロイ後のビルドで、findbugsでのエラーが取れなかったので
(line-bot-sdk-java>gradlew findbugsMain でローカルでもビルド確認可能)、
残念ながら、findbugsの処理はひとまず無効化しました。
-------------------
line-bot-sdk-javabuild.gradle
//apply plugin: 'findbugs'
-------------------

あと、以下は、ソースコードです。
・EchoApplication.java(ユーザからの入力メッセージ受付部:修正ファイル)
・DApiNaturalChattingUtil.java(自然対話API使用処理本体:新規作成ファイル)
・build.gradle(sample-spring-boot-echoのbuild.gradle:修正ファイル)

■ EchoApplication.java(ユーザからの入力メッセージ受付部:修正ファイル)


■ DApiNaturalChattingUtil.java(自然対話API使用処理本体:新規作成ファイル)


■ build.gradle(sample-spring-boot-echoのbuild.gradle、java-json.jarを追加:修正ファイル)



エンタメゴルフ(コンペ賞品&ゴルフギフトのお店)
¥ 430
コメント:「うんこ味のカレーとカレー味のうんこ、どっちがいい?」って聞かれると困るけど、これは「カレー味のうんこ(先生んちの)カレー」だから大丈夫です。

| LINE | 20:44 | comments(0) | trackbacks(0) | pookmark |
【LINE】かんたんbot。
LINEで かんたんbot(オウム返しするだけ)が、とても簡単に作れました。



1. LINE developers から 新規channelを作成する
[ LINE developers ]
https://developers.line.me/console/
→ 「Messageing API」を選択し、各種情報を入力する
作成後、
→ アクセストークンを発行する(「アクセストークン」の「再発行ボタン」を押してトークンを表示させておく)

2. HEROKUで新規アプリを作成する
[ HEROKU ]
https://dashboard.heroku.com/apps
→ 「New」->「Create new app」->「Create app」

3. PCに LINE bot作成用 sdkを 用意する
https://github.com/line/line-bot-sdk-java
→ 以下を実施(事前に http://git-scm.com 等からgit環境を用意しておく)
> git clone https://github.com/line/line-bot-sdk-java

・line-bot-sdk-javasample-spring-boot-echosrcmainresourcesapplication-template.yml
を「application.yml」にリネームする
・application.ymlの以下の記載を削除
-------
This is tempalte file for configuration.
Please copy as `application.yml` and change your value.
-------
・application.ymlの以下の記載を変更
-------
<変更前>
line.bot:
channel-token: 'Put Your Channel Token Here.'
channel-secret: 'Put Your Channel Secret Here.'

<変更後>
line.bot:
channel-token: (1.LINE developersページ->Channel基本設定->メッセージ送受信設定->アクセストークン の値を記載)
channel-secret: (1.LINE developersページ->Channel基本設定->基本情報-> Channel Secret の値を記載)
-------

4. 3.のbot環境をデプロイする
→ 3. で作成した「line-bot-sdk-java」フォルダに移動し、以下を実行する。
{HEROKU_APP_NAME}は、2.HEROKUで作成したアプリ名
> heroku git:remote -a {HEROKU_APP_NAME}
> git add .
> git commit -m "First commit"
> git push heroku master


5. LINE developers から channel情報を更新する
[ LINE developers ]
https://developers.line.me/console/

・「メッセージ送受信設定」→「Webhook送信」を「利用する」に変更
・「Webhook URL」に以下を入力({HEROKU_APP_NAME}は、2.HEROKUで作成したアプリ名)
---------
https://{HEROKU_APP_NAME}.herokuapp.com/callback
---------

6. 動作確認
LINE developers→アプリ名選択→「LINEアプリへのQRコード」の画像を
LINEアプリ→「友だち追加」→「QRコード」から読み込ませて、作成したLINEアプリを追加。
[ LINE developers ]
https://developers.line.me/console/

→ 友だち追加後、何かメッセージを送ってみると同じメッセージが返ってくる。


7. 動作時のログの確認
以下のコマンドを実行しておき、6.を実施
> heroku login
> heroku logs --tail --app {HEROKU_APP_NAME}


8. 文末に「げぼ」を付加してから応答するよう変更
→ 以下のソースを変更
line-bot-sdk-javasample-spring-boot-echosrcmainjavacomexamplebotspringecho
・EchoApplication.java
-------
<変更前>
@EventMapping
public Message handleTextMessageEvent(MessageEvent event) {
:
default:
return new TextMessage(originalMessageText);

<変更後>
@EventMapping
public Message handleTextMessageEvent(MessageEvent event) {
:
default:
return new TextMessage(originalMessageText + "げぼ"); //★文末に「げぼ」を追加
-------
変更したファイルを push。
>cd sample-spring-boot-echosrcmainjavacomexamplebotspringecho
>git add EchoApplication.java
>git commit -m "Add GEBO at the end of the text"
>git push heroku master





まるか商事株式会社
¥ 7,100
コメント:ぺ・ヤンジュンさんもぺヤング食べるのだろうか。

| LINE | 22:28 | comments(0) | trackbacks(0) | pookmark |
【Google Home】言いたいことも言えないこんな世の中ポイズンじゃ。
ZimpliKids
¥ 1,080
コメント:ゼリーに漬かりたいくらい大好きな人向け(ただし、たべられません)。

普段は恥ずかしくて言えないあんなことやこんなことも
Google Homeに言わせればいいじゃないかー、ということで、
卑猥な言葉をしゃべらせて 試してみました。

1. Actions on Google で プロジェクト作成(Add/import project)。


2. プロジェクト名と国を入力し、CREATE PROJECT。


3. Dialogflow(旧api.ai)をBUILD。


4. CREATE ACTIONS ON DIALOGFLOWでアクション作成。


5. CREATEを選択し、


6. CREATE INTENTを選択。


7. 反応させるトリガとなる言葉(User says)と、その時にしゃべらせる言葉(Text response)を入力し、SAVE。


8. 左のメニューからIntegrationsを選択し、Google AllistantのSETTINGSをON。


9. で、TESTボタンを押してみる。


10. テストアクティブ状態へ。


11. Actions on Googleページに戻り、Simulator画面へ。「ヘイ、尻!」と大きく叫んだ後、「OK!Google、テスト用アプリにつないで」と言うと、Google Homeが先ほどの 7.で設定した言葉を受け付けるようになる。


12. しゃべる声も変更することが出来るみたい(Male1, Male2, Femail1, Femail2)。



できたー。









| Google | 15:01 | comments(0) | trackbacks(0) | pookmark |
【AutoUTubeforChromecast】Firebase Hostingサービスへの移行
ロイヤルガストロ
¥ 1,080
コメント:どら焼きが好きな人や、ねこが嫌いな人にオススメです。

Google DriveでWeb Hosting機能が使えなくなり、
AutoUTubeforChromecast
が動作していなくなっていました。


【Android版】AutoUTube for Chromecast



AutoUTubeforChromecast
は、
Google Castのカスタムレシーバ
を使用しています。

カスタムレシーバアプリは、httpsサーバでの配信が必要のため、今までは、Google DriveでWeb Hosting機能で実現していました。

今回、Google DriveのWeb Hosting機能が使えなくなり、代わりに httpsサーバでのHosting機能が使えるFirebaseへ移行しました
(Editey等Google Drive上で動作するアプリで公開自体は出来そうでしたが、
httpでは公開されるものの、httpsでの公開ではないため、調べた範囲ではだめそうでした)。


■ 使い方
1. node.jsをインストールする
https://nodejs.org/ja/
2. コマンドプロンプトを起動し、以下のコマンドを打つ
> npm install -g firebase-tools
> firebase login
> firebase init
3. デフォルト設定では、コマンドプロンプトを起動したパスに
publicフォルダが生成されるので、ローカルPC上で、
publicフォルダ以下に、公開したい.htmlファイル等を用意する。
4. 以下のコマンドを打ち、公開する(Hosting URL: https://〜 で公開される)
> firebase deploy



【Android版】AutoUTube for Chromecast
| Android | 16:35 | comments(0) | trackbacks(0) | pookmark |
【Android】プライバシーポリシー追加(みまもりベーコンくん)。
Google様より以下のようなメールが届いたので、対応することに。

---------------------
お客様のアプリ みまもりベーコンくん(パッケージ名 noriaf.norinoriafter.jp.monitoringbacon)が、Google Play の個人情報や機密情報に関するユーザー データ ポリシーに違反していることが確認されました。

警告の詳細: Google Play では、ユーザーや端末に関する機密情報を要求する、または取り扱うアプリの場合、デベロッパーは有効なプライバシー ポリシーを提供する必要があります。当該のアプリは、個人情報または機密情報に関わる権限 (カメラ、マイク、アカウント、連絡先、スマートフォンなど) またはユーザー データを要求していますが、有効なプライバシー ポリシーが確認できませんでした。

必要な対応: [ストアの掲載情報] ページとアプリ内に有効なプライバシー ポリシーへのリンクを記載してください。詳しくは、こちらのヘルプセンター記事をご参照ください。
---------------------


みまもりベーコンくんではBeacon機器を検知してGMailを送信します。
その際、GET_ACCOUNTS の permissionを使用しています。
今回の指摘は、どうやらそれに起因しているようです。

プライバシーポリシーの記載をWebページとアプリに必要とのこと、
以下の「アンドロイドスマートフォンプライバシーガイドライン(*)」を参考にさせていただきつつ、追加しました。
(*)http://www.taosoftware.co.jp/android/android_privacy_policy/android_smartphone_privacy_guideline.pdf




Webページに追加し、アプリのヘルプからwebview経由でダイアログ表示。





みまもりベーコンくん




| Android | 11:34 | comments(0) | trackbacks(0) | pookmark |
【Android】みまもりベーコンくん。
手頃なBeacon端末を見つけたので、
子供のみまもり用に作成しました「みまもりベーコンくん」。
あらかじめ設定しておいた宛先に、iBeacon機器を検出した時にメールを送ることができます。


みまもりベーコンくん


【使い方】
1. 「メール設定」で宛先を設定します。
2. iBeacon機器を検出したら、設定した宛先にメールが送られます。

【使用想定シーン(例)】
1. iBeacon機器を用意します(amazonで購入など)。
2. 使わなくなったスマホなど、家に常にあるスマホやタブレットなどに「みまもりベーコンくん」をインストールし、起動しておきます。
3. 普段、家に一人で帰宅する鍵っ子のお子様のかばんにiBeacon機器を入れておきます。
4. 家に帰宅したタイミングでメールが届くので、ちゃんと帰宅したかどうかが確認できて安心です。

【見つけた手頃なBeacon端末】
BVMCN1101AA。
http://www.products.braveridge.com/beacon/bvmcn1101aa-b/


今回、ハマった点をいくつか。。。

■ iBeacon検出について
altbeaconというライブラリを使用。
以下の各種参考サイトに沿って使用すれば特に困ることはなかったが、
その他のポイントとしては、
・startMonitoringBeaconsInRegion()で
検索対象のBeacon機器のuuidをnullで指定すると、すべての機器が検索できる
・その場合、見つけたBeacon機器のuuidは、
didEnterRegion/didExitRegionでは特定できないっぽいので、
startRangingBeaconsInRegion()を使った。

【参考にさせていただいたサイト】
http://dev.classmethod.jp/smartphone/android-beacon-library-introduction-1/
http://qiita.com/a_nishimura/items/2974fd0956c9e00b6bec
https://www.gaprot.jp/pickup/tips/altbeacon
http://grandbig.github.io/blog/2015/05/16/altbeacon/
など

■ GMailでメール送信
iBeacon機器を検出時に、設定した宛先にメール送信するためGMailを使用。
GMailを使用するためには認証処理が必要。
1. ベーシック認証
2. OAuth認証
の2つの方法があるが、1.は、ユーザが明示的に、
Google設定から「安全性の低いアプリ設定」をOFFにしないと使えないため、
今回は、2. の方法を選択。

以下の参考サイトに沿ってjavamail-androidを使用して作成するも、はまった点は以下。

認証時、以下のエラーログ。
---------
javax.mail.MessagingException: 334 eyJzdGF0dXMiOiI0MDAiLCJzY2hlbWVzIjoiQmVhcmVyIiwic2NvcGUiOiJodHRwczovL21haWwuZ29vZ2xlLmNvbS8ifQ==
---------
Base64 decodeすると、
{"status":"400","schemes":"Bearer","scope":"https://mail.google.com/"}
って出て、以下が原因の様子。

// GMail認証開始
//mHelper = new OAuthHelper(this, "oauth2:" + "https://www.googleapis.com/auth/gmail.send", this);
mHelper = new OAuthHelper(this, "oauth2:" + "https://mail.google.com/", this);

スコープが https://www.googleapis.com/auth/gmail.send ではだめで、
https://mail.google.com/ を使うとエラーは出なくなった。


【参考にさせていただいたサイト】
http://ja.stackoverflow.com/questions/16296/javamail-android%E3%81%A7gmail%E3%81%AEoauth%E3%81%AE%E3%83%88%E3%83%BC%E3%82%AF%E3%83%B3%E3%81%AB%E3%82%88%E3%82%8B%E8%AA%8D%E8%A8%BC%E3%82%92%E8%A1%8C%E3%81%86%E6%96%B9%E6%B3%95%E3%82%92%E6%95%99%E3%81%88%E3%81%A6%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84
http://kawaidesu.hatenablog.com/entry/2015/01/04/071658
http://diary.syarihu.net/2015/05/androidandroidoauthoauthhelper.html
http://qiita.com/daisy1754/items/788cf32d9379746bba14
など


■ GooglePlayへのアップロード時に非承認
上記をクリアしてやっと動作するようになり、喜び勇んでアップロードしたら、
Google様から露骨なので非承認というメールをいただく。
---------------
Google Play にアプリを送信していただきありがとうございます。審査の結果、Monitoring Bacon(パッケージ ID noriaf.norinoriafter.jp.monitoringbacon)は、露骨な性表現を含むコンテンツに関するポリシーに違反しているため、不承認となりました。送信したのがアップデートの場合は、アプリの以前のバージョンが引き続き Google Play に掲載されます。
---------------


「露骨な性表現を含むコンテンツ」は含んでいないので異議申し立てを行ったところ、
Google様からやっぱり露骨なので非承認というメールをいただく。
---------------
Google Play チームにお問い合わせいただき、ありがとうございます。
詳しく審査した結果、お客様のアプリは、露骨な性表現を含むコンテンツに関するポリシーに違反しているため、元に戻すことができません。
ポリシーの記載事項:
- ポルノなど、露骨な性的コンテンツを含む、または助長するアプリは認められません。一般に、性的満足を意図したコンテンツは認められません。
たとえば、お客様のアプリには次に示す違反が含まれています。
- ウェブサイトで露骨な性的コンテンツが含まれている広告を発見いたしました。
---------------



ん?ウェブサイト?

アプリではなく、ウェブサイト?


ウェブサイト???










これかー!









ハァハァしてたからだめだったのかー!



デベロッパーコンソールの「連絡先情報」-「ウェブサイト」の記載欄から、
このHP「カントリーモーニング(仮) http://norinoriafter.jugem.jp/」を削除したところ、
めでたく承認、公開されました。めでたしめでたし。



みまもりベーコンくん






オムニバス,白雪みるく,河原木志穂,くーたん,森永まみ,たぬまゆみ
Ciffon
コメント:ハァハァすると承認してもらえません。

| Android | 23:53 | comments(0) | trackbacks(0) | pookmark |
【Android】Google Mobile Ads SDK更新。
Google様より以下のようなメールが届いたので、「AutoUTube for Chromecast」の Google Mobile Ads SDKを更新することに。

AdMob では常に時代の先端をいく効果的な収益化ソリューションをお届けできるよう努めております。そうした進化を遂げるには最新のテクノロジーの活用が不可欠であり、この取り組みの一環として、Android 向け Google Mobile Ads SDK の 6.4.1 以前のバージョンは、2016 年 9 月 15 日をもってサポートを終了させていただきます。
2016 年 9 月 15 日以降も引き続き広告を配信していただくには、Google Mobile Ads SDK を 7.0.0 以降のバージョンにアップグレードしてください。


元々、eclipseで作っていたので、まずは、Android Studio に
「Import project(Eclipse ADT, Gradle, etc.)」からインポート。

その後、build.gradle の記載を

----------------
//compile 'com.google.android.gms:play-services:4.2.+'
//↓
compile 'com.google.android.gms:play-services:9.2.0'
----------------

に変更してビルドすると、エラー発生。

--------------
Error:Execution failed for task ':dexDebug'.
> com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:¥Program Files¥Java¥jdk1.7.0_79¥bin¥java.exe'' finished with non-zero exit value 2
--------------


各種参考ページを見ていると、「play-services:9.2.0」を使うと、
どうやら、1つのアプリで使えるメソッド最大数の65536個をはみ出す様子。

1つのアプリで使えるメソッド最大数を増やすため、

-------------------
compile 'com.android.support:multidex:1.0.0'
defaultConfig multiDexEnabled true
-------------------

を指定すると、ビルドエラーは取れるけど、
Android KitKat以前では、結局 65536個以上は使えないままのようなので、解決にならず。。。

結局、以下のように、使いたいGoogle PlayサービスAPIのみ使うようにして、
なおかつ、メソッド数が大きくない少し前のバージョンを使うように、
かつ、Google Mobile Ads SDK が 7.0.0 以上になるように変更して、
動作するようになりました。めでたしめでたし。

------------------
//compile 'com.google.android.gms:play-services:4.2.+'
//↓
compile 'com.google.android.gms:play-services-cast:7.0.0'
compile 'com.google.android.gms:play-services-ads:7.0.0'
------------------


【参考にさせていただいたサイト】
http://qiita.com/niusounds/items/f9a0ab3cbe07878ed8f6
http://stackoverflow.com/questions/30410140/android-studio-java-exe-is-finished-with-non-zero-exit-value-2



AutoUTube for Chromecast








| Android | 23:03 | comments(0) | trackbacks(0) | pookmark |
【YouTube】IFrame Player API を使うか。
AutoUTube for Android2 が動かないまま放置していたのをとうとう修正しました。
(【Android版】)



【Android版】AutoUTube for Android2


==============================================
■ 現象
開始ボタンをおしても再生開始されず、アプリが終了する。

■ 原因
Android上でのFlash再生が限られた方法でしかできなくなったため。

■ 対策
Flashを用いず、IFrame Player API
使用するよう変更しました。

[ 変更前 ]


[ 変更後 ]

==============================================

あと、アイコン変えたり、ヘルプの文言変えたり 細かい変更しました。




【Android/Chromecast版】AutoUTube for Chromecast



【mixi版】AutoUTube for mixi



【PC版】AutoUTube



| Android | 23:15 | comments(0) | trackbacks(0) | pookmark |
【Amazon】AWS EC2 上で、node.js を使ってスピードオセロを作ってみた。


今回は、AWS EC2 上で、node.js を使ってみたお話です。

node.js を使うことで、サーバ側の処理も、javascriptを使って書けるとのこと、
お勉強のために、スピードオセロゲームを作ってみました。

題して「みんなでリバーシブル」。
スマホやPCなど、各自で持っているそれぞれのデバイスから、
共有のURLにブラウザ経由でアクセスし、
好き勝手に白や黒を置くことしかできませんができます。
相手の番の時に自分も置けてしまうるのでスピードが勝負です。
あと、3人以上の複数人でも楽しめてしまいます。

【ブラウザからのアクセスの様子】


【スマホからのアクセスの様子】


■ やったこと
1. AWSアカウント作成
アカウント作成後、12ヶ月無料で使える利用枠があるので、それを利用しました。
https://aws.amazon.com/jp/free/

2. EC2インスタンス作成
アカウント作成後、AWSホーム画面から、EC2 を選択し、
「インスタンス」メニューから、EC2インスタンスを作成します。
https://console.aws.amazon.com/console/home

3. TeraTermのインストール、設定を行い、接続、ファイルアップが出来るようにする
# 以下のページ(*1)を参考にさせていただきました。
-----------
ユーザー名 : ec2-user
接続先ホスト名 : ec2-xx-xxx-xxx-xx.compute-1.amazonaws.com
秘密鍵 : ec2-2015xxxx-1.pem
-----------
みたいな感じ。xxのところは、作成したインスタンスの情報を入れる。
(*1)Amazon EC2編〜EC2インスタンスにTera Termで接続するには?〜
http://recipe.kc-cloud.jp/archives/27

4. TeraTerm経由で接続し、node.js をインストールする
# 以下のページ(*2)を参考にさせていただきました。
(*2)Amazon EC2でnode.js,Expressアプリケーションを立ち上げる
http://qiita.com/Sugima/items/670924901e38cf9eb84a

5. TeraTerm経由で「othelo」フォルダを作成し、その下に、socket.io をインストールする
[ec2-user@ip-xx-xx-xx-xx ~]$ mkdir othelo
[ec2-user@ip-xx-xx-xx-xx ~]$ cd othelo
[ec2-user@ip-xx-xx-xx-xx ~]$ npm install socket.io

6. TeraTerm の SSH SCP機能を使って、「othelo」フォルダにファイル(app.js, index.html)をアップロードします。
# 以下のページ(*3)を参考にさせていただきました。
(*3)TeraTermのSCP機能で送信・受信共に「To:」欄のデフォルト値が変更可能です
http://www.j-oosk.com/teraterm/file-transfer/1213/

7. TeraTerm経由で、app.jsを実行
[ec2-user@ip-xx-xx-xx-xx ~]$ node app.js

8. ブラウザ経由で、以下にアクセスする。
http://ec2-xx-xx-xx-xx.compute-1.amazonaws.com:3000/



app.js(サーバ側処理), index.html(クライアント側処理) のソースコードです。

■ app.js(サーバ側処理)


■ index.html(クライアント側処理)



PS. 今回初めて、ソースコード表示の見た目を変えてみました(便利!)。
# 以下のページ(*4)を参考にさせていただきました。
(*4)GitHubのGistを使う
http://raptor36.hateblo.jp/entry/2015/04/11/202438

| Amazon | 11:21 | comments(0) | trackbacks(0) | pookmark |
【YouTube】AutoUTube が また 動かなくなっていた。
AutoUTube が また動かなくなってしまっていたので修正しました。
(【Android版】【mixi版】【PC版】、いづれも)

==============================================
■ 現象
開始ボタンをおしても再生開始されず、
「www.youtube.com/devicesupport」が表示される

■ 原因
YouTube Data API v2 が廃止され、v3への移行に追従できていなかったため
・一部の古い YouTube アプリのサポート終了(2015 年 4 月)について

・YouTube Data API v3 に向けて


■ 対策
Data API v2 から v3 を使用するよう変更。

[ 変更前 ]
function search(keyword) {
:
var query = "http://gdata.youtube.com/feeds/api/videos?"
+ "vq=" + keyword
+ "&max-results=30"
+ "&format=5"
+ "&alt=json-in-script"
+ "&callback=view";
:
}

[ 変更後 ]
function search(keyword) {
:
var query = "https://www.googleapis.com/youtube/v3/search?key={APIキー}"
+ "&q=" + keyword
+ "&maxResults=30"
+ "&part=id,snippet"
+ "&callback=view";
:
}

function view(data) {
:
// VideoIDの取得
var videoid = data.items[rnd].id.videoId;
// Videoタイトルの取得
var title = data.items[rnd].snippet.title;
// サムネイルURLの取得
thumbnailimg.src = response.data.items[0].snippet.thumbnails.default.url;
:
}
==============================================


【Android版】AutoUTube for Chromecast



【Android版】AutoUTube for Android2



【mixi版】AutoUTube for mixi



【PC版】AutoUTube




トミーテック
¥ 2,850
(2013-06-08)
コメント:これで、自宅でもICOCA使いたい放題だぜー。

| YouTube | 21:53 | comments(0) | trackbacks(0) | pookmark |
デザイングッズストア。
CALENDAR
S M T W T F S
   1234
567891011
12131415161718
19202122232425
262728293031 
<< August 2018 >>
SPONSORED LINKS
AMAZON RECOMMEND
ハァハァCD
ハァハァCD (JUGEMレビュー »)
オムニバス,白雪みるく,河原木志穂,くーたん,森永まみ,たぬまゆみ
SELECTED ENTRIES
CATEGORIES
ARCHIVES
RECENT COMMENT
デザイングッズストア。
心頭MakeUp Tシャツ。
2009_09_18_11_39_28
ブロカン
サンプル・モニターの口コミ広告ならブロカン
おしゃれショップ「かさぶた人生」
MOBILE
qrcode
LINKS
PROFILE