こんなサービスをつくってみた
いきなりですが、PayPalを使ったサービスを思いつきました。
PayPalって何?という方はこちらを見てみてください。
http://r.nanapi.jp/702/
主にインターネットショッピングでの決済に使われる事が多いようです。
アイデア
思いついたのはこんなサービスです。
リアルで会っているのに、わざわざPayPalで決済するサービスです(キリッ
上の絵で、
青い人=お金を受け取る人、
赤い人=お金を払う人
です。
青い人が、自分のPayPal IDと、もらいたい金額を入力し、
赤い人がQRコードリーダーで読み取ると、PayPalのボタンが表示されます。
PayPalボタンを押すと、PayPalのサイト上で承認を求められますので
承認すると、支払い完了です。
という訳で、
こちらがそのデモサイトです。
http://goo.gl/lEhuf
マーチャントIDには、P36WPNDPPYHSA を指定してみてください。
飛ばされるPayPalサイトはテスト環境ですので、以下の情報でログインもできます。
- ID:buyer_1289487333_per@gmail.com
- パスワード:buyerpass
ログイン後、「承認」しても大丈夫です。
用途
直接会ってるなら現金でいいじゃんというごもっともな突っ込みを頂きました。ので、自分の思う使い道をいくつか。
例えば、
......もっと考えます(笑)
注意点
- もちろん数%の手数料が掛かりますので、それはどちらかが負担することになります。
- 日本国内では、PayPalを使った個人間の「送金」は法律で禁止されているそうですので、何らかの物品、サービスに対しての対価としてご利用頂く前提になります。
Mashup Award 6に応募しました!
ご存知の方も多いと思いますが現在Mashup Award 6が開催されていて、
ちょうどAppEngineとChrome拡張を使ったアイデアを思いついたので作って応募しました。
http://ma6works.mashupaward.jp/oubo/342/
PinIt(ぴんいっと)といいます。
https://chrome.google.com/extensions/detail/fmkklenggkaimfbahdenjjibgihlndcn
あらゆるWebサイトの好きな部分に、
この拡張をインストールした人にだけ見える共有メモを貼付けることができます。
きっかけ
きっかけは「はてぶ」のコメントを見ていた時です。
わざわざ別のページで見ないといけないの面倒くさいな、ってところで思いつきました。
Chrome拡張
Chrome拡張おもしろいです!
http://code.google.com/chrome/extensions/trunk/getstarted.html
今まで作った事無くてこれを思いついた時には実現可能かどうかもよくわからなかったんですが
id:bluerabbit さんに教えて頂いた事もあり、
JSが苦手にも関わらず^^大した戸惑いもなくあっという間に作成を始められました。
jsonengine
バックエンドはjsonengineを使っています。
別件でコミッターをやらせて頂く事になっていたため、せっかくなので使おうと決めたのですが、
これがドンピシャ!今回のようなアプリでは最高の選択だったと思います。
Google Accountとの連携部分は自分で作ってコミットしましたが( ꒪⌓꒪)
id:higayasuo さんの2つのエントリーでもありましたが、
http://d.hatena.ne.jp/higayasuo/20101108/1289206846
http://d.hatena.ne.jp/higayasuo/20101109/1289290143
このアプリはまさにそのもので、
AppEngineの使い方としては最高の使い方の一つじゃないかと自負してます(^^;
もし仮にこのアプリがブレイクしても何も怖くないですね。
(マネタイズは考えないといけないですが^^)
jsonengineはまだまだ機能不足の面もあり、
AppEngineのDatastoreを意識しないといけない面もありますが、
今後はもっと使いやすくなるはずです!オススメ!!
今後
メモの色を変えられるとか、Twitterと連携させるとか、
リアルタイムで他人の変更が反映されるとか、いろいろ考えています。
チームエディションも作りたいですね。
シンプルさを保ちつつ、楽しさを提供できればいいなーと思います。
DatastoreのDump/Restoreツールが既存プロジェクトにバインドできるようになりました。
以前こちらで書かせてもらったgobo-toolsですが、
http://d.hatena.ne.jp/knj77/20101007/1286462560
バグ修正と同時に、既存アプリにもバインドできるよう修正を施しましたので紹介させてもらいます。
Slim3には依存していませんので(未確認ですが)ほとんどのアプリで動作できると思います。
gobo-toolsのインストール方法
1.zipのダウンロード
以下のページから最新のzipをダウンロードしてください。
http://code.google.com/p/gobo-tools/downloads/list
ダウンロードしたzipを展開すると以下のものが含まれています。
- gobo-tools.20101021.jar
- gdata-media-1.0.jar
- gdata-docs-3.0.jar
- google-collect-1.0-rc1.jar
- gdata-spreadsheet-meta-3.0.jar
- gdata-spreadsheet-3.0.jar
- gdata-core-1.0.jar
- gdata-client-meta-1.0.jar
- gdata-client-1.0.jar
- gobo(フォルダ)
2. jarのコピー
1で展開した中にある全てのjarをwar/WEB-INF/lib直下にコピーしてください。
3. JSPのコピー
1で展開した中にあるgoboフォルダをwar直下にコピーしてください。
4. web.xmlの編集
web.xmlに以下の内容を記述してください。
<servlet> <servlet-name>GoboServlet</servlet-name> <servlet-class>gobo.GoboServlet</servlet-class> </servlet>
<servlet-mapping> <servlet-name>GoboServlet</servlet-name> <url-pattern>*.gobo</url-pattern> </servlet-mapping>
<security-constraint> <web-resource-collection> <url-pattern>*.gobo</url-pattern> </web-resource-collection> <auth-constraint> <role-name>admin</role-name> </auth-constraint> </security-constraint>
5.専用のURLにアクセス
http(s)://your-app-id.appspot.com/index.gobo 拡張子に注意
にアクセスすると、gobo-toolsにアクセスできます。
以上です。
注意事項
仕様として注意してもらいたいポイントを列挙します。
- Dump/Restoreでは最初にAuthSubの認証があります。(Google Spreadsheetの読み書きを行うため)
- 内部的に _GOBO_CONTROL_ というKind名でDatastoreに書き込みを行います。(まず無いと思いますが)プロジェクトで左記のKind名をご利用の場合はご注意ください。また、各動作終了後、_GOBO_CONTROL_ というKindは自動的に削除されます。
- Dumpはスナップショットではありません。TaskQueueで少しづつ取得しながらspreadsheetに書き込みますので、最初の行と最後の行では時間的に差があります。
- Blob、ShortBlob、Textは対応していません。(Restore時にnullで上書きしないようにはなっています。)
- Production環境でのDump/Dropはスキーマ情報にDatastore Statisticsを参照しますのでStatistics更新前は正しく動作しません。
- Dumpした結果、全てのデータはダブルクオートで囲まれています。これはSpreadsheetの自動変換を避けるためで、Restore時にはあってもなくても構いません。
その他
バグを見つけた方は @knj77 までご連絡頂くか、
http://code.google.com/p/gobo-tools/issues/list にご登録頂ければと思います(日本語で構いません)
感想、ご要望などもお聞かせ頂けると嬉しいです。
なお、このツールをご利用頂いた結果被った損害については一切の責任を負いかねますのでご了承ください。
特にProduction環境で用いる場合は、事前にステージング用の別アプリIDなどで十分な検証を行う事をお勧めします。