狠狠撸
Submit Search
谤耻产测、蝉颈苍补迟谤补で作る蹿补肠别产辞辞办アプリ
?
5 likes
?
3,874 views
Toshiya Kurishima
Follow
チャレンジャーズにおいてリリースした【予定を入れないスケジューラー】の开発において、蹿补肠别产辞辞办アプリの作り方、苦労した点や注意点などを绍介します。
Read less
Read more
1 of 15
Download now
Downloaded 16 times
More Related Content
谤耻产测、蝉颈苍补迟谤补で作る蹿补肠别产辞辞办アプリ
1.
搁耻产测/厂颈苍补迟谤补で简単に作る
Facebookアプリ NTTレゾナント ? 栗島聡哉
2.
自己紹介 ?? どんな人物か ?
–? サーチエンジンの開発をずっとしていました ? –? ここ最近はあまりコードを書かない仕事が多かったので、 半分リハビリをかねて開発しています ? ?? 「予定をいれないスケジューラ」とは ? –? h5p://yotesuke.jp ? –? 予定を入れるのではなくて暇を入れるスケジューラー ? –? 暇を入れるとイベント?アクションをおすすめしてくれます ? –? NTTレゾナント主催のイベント(Challengers第一回)で発表 ? ?? ベータサービスとして世に出すことに ? ?? Facebookアプリとして実装しています ? –? 初めて作ったので色々とわからないことが多かったです ?
3.
「予定をいれないスケジューラー」 ?
ってどんなサービス?
4.
Facebookアプリってどんなもの? ?? 基本はWebサービス ? ??
Facebookの情報を利用できる ? ?? Facebookの機能が使える ? ?? APIを叩いて上記機能が使える ?
5.
FacebookAPIを何に使うのか ?? 最初にこの部分をじっくり考えたほうがいいかも ? ??
ログイン認証だけ使いたい ? –? ユーザの特定だけに利用するのであれば、Facebook だけじゃなく、twi5er、googleなどのアカウントにも対 応。逆に固有の機能は使いにくくなる ? ?? Facebookのソーシャル情報の取得やwallに書き 込みをして広げたい ? –? ソーシャル的な機能を使うのであれば必要かも ? –? ほんとにそのサービスにとってその機能が必要なの かじっくり考える必要があるかなと思います
6.
sinatraとは? ?? rubyのwebフレームワーク ?
–? 簡単にwebアプリケーションが作れる ? require ?“sinatra” ? get ?’/hello' ?do ? ? ?“hello” ? end ?? 起動確認 ? ? ruby ?hello.rb ?19:27:09] ?INFO ? ?WEBrick ?1.3.1 ? [2012-?‐07-?‐10 ? [2012-?‐07-?‐10 ?19:27:09] ?INFO ? ?ruby ?1.9.3 ?(2012-?‐04-?‐20) ?[x86_64-?‐darwin11.3.0] ? == ?Sinatra/1.3.2 ?has ?taken ?the ?stage ?on ?4567 ?for ?development ?with ?backup ?from ?WEBrick ? [2012-?‐07-?‐10 ?19:27:09] ?INFO ? ?WEBrick::HTTPServer#start: ?pid=16952 ?port=4567 ?
7.
システム構成 ?? 開発環境 ?
–? 初期段階ではVaioZ上で仮 想環境構築 ? –? 現状はMBAのVB上で動か しています ? ?? AWS ? –? 本番環境 smallインスタン ス * 2 ? –? ステージング環境 microイ ンスタンス ?
8.
システム環境について ??
AWS ? –? 実行環境としてはAWSを選択 ? –? Smallインスタンスの2ノードを使用 ? –? OSはUbuntu10.04 ?serverを選択。12.04はまだ出ていなかったので ? ?? Nginx ? –? とりあえず最近流行りなので ? ?? Ruby ? –? 1.9.3を選択。今までは1.8系を使っていたが最新のものも使ってみようかと。RVMで環境構築 ? ?? Unicorn ? –? 流行っているようなので ? ?? Sinatra ? –? RoRはあまり慣れていないので、使い慣れているSinatraを選択 ? ?? FacebookAPI ? –? Oauthはomniauth ? –? APIへの接続はkoala ? ?? Co?eeScript ? –? JSを書くのは苦手なので、rubyっぽい書き方が出来るCo?eeScriptを使っています ? ?? Twi5er ?bootstrap ? –? デザインを作るのは苦手なので。Cssも苦手なのでSassを使っています(ほとんど書いてない ですが) ?
9.
Facebookアプリを作る ?? developers.facebook.comにてアプリの登録 ?
–? まずは普段のfacebookアカウントから、携帯電話、ク レジットカードなどの認証処理を行う ? –? 詳細はWebで探せばすぐに見つかると思います ? ?? AppIDとシークレットキーを取得 ? –? developersページから取得します ?
10.
Facebookのログイン認証 ?? ログイン認証をなぜ使うのか ?
–? アカウント管理はめんどくさい ? ?? アカウントを登録して、管理して、設定して、削除して、云々する機能は作りたくない ? ?? ID/PWの情報はなるべく持ちたくない ? ?? けどユーザは特定したい ? ?? omniauthを利用したアカウント認証 ? –? ライブラリをrequireすると下記pathを追記 ? –? /auth/facebook ? ?? 上記pathへアクセスすると認証ページへredirectしてcallback ? ?? callbackのpathで認証処理を行う。下記の例では認証情報をsessionに保存しています ? require ?"omniauth" ? require ?"omniauth-?‐facebook” ? get ?'/auth/:name/callback' ?do ? ? ?auth ?= ?request.env['omniauth.auth’] ? ? ?session[“provider”] ?= ?auth["provider”] ? ? ?session[“userid”] ?= ?auth["uid”] ? ? ?session["token"] ?= ?auth["credenkals"]["token"] ? ? ?session["expires_at"] ?= ?auth["credenkals"]["expires_at"] ? ? ?redirect ?'/' ? end
11.
Facebookから/それ以外のアクセス ?? Facebookアプリと普通のWebページ ?
–? FacebookアプリはFacebook上からはcanvas? iframeを通して見えます。 ? –? その場合は認証情報をparseすることで access_tokenが取得できます ? ?? 普通のページからだと、OAuth後にtokenが取 得できます ? –? sessionなどの保存しておきますが、2時間程度で 使えなくなります
12.
FacebookAPIを使ったデータ取得 ?? 公開されていない情報にアクセスする場合はaccess_tokenが必要 ? ??
access_tokenの取得方法 ? –? Facebookページからのアクセス ? ?? signed_requestをparseすれば取得可 ? –? OAuthによる認証の場合 ? ?? ログイン後に取得できるのでsessionで保存しておく ? ?? koalaモジュールを使った友達一覧の取得方法 ? –? tokenがあればすぐにできます ? –? 下記FacebooAPIのgraphAPIを叩いてデータを取得しています ? –? h5ps://graph.facebook.com/me/friends?access_token=hoge ? require ?"koala” ? ? get ?‘get_friendlist’ ? ? ?token ?= ? ?session["token"] ? ? ? ?graph ?= ?Koala::Facebook::API.new(token) ? ? ?friend_list ?= ?graph.get_conneckons("me","friends",{:locale ?=> ?"ja_JP",:limit ?=> ?5000}) ? end ? ?
13.
FacebookAPIを使わない/使えない ?
機能について ?? APIで使える機能使えない機能がある ? –? Wallへの書き込みや、データの取得などはAPIで取得可 能 ? –? アプリからのメッセージ送信はそのままでは出来ない ? –? あまり使い慣れていないので正直どこまで出来るのか、 出来ないのかは調査不足です ? ?? アプリからのメッセージ送信 ? –? ?下記URLへのリンク、redirectを行う ? –? h5p://www.facebook.com/dialog/apprequests? app_id=#{app_id}&#{opt} ? –? オプション仕様はこちら ? ?? h5ps://developers.facebook.com/docs/reference/dialogs/ requests/ ?
14.
Facebookアプリでのデバッグ ?? テスト用にアカウントを作ると怒られる ? ??
テスト用アカウント作成APIよりアカウント作成 test_users ?= ?Koala::Facebook::TestUsers.new(:app_id ?=> ?appid, ?:secret ?=> ?secret) ? test_users.create(true, ?“publish_stream”, ?{:name ?=> ?“tes5est”}) ? ?
15.
チームの課題 ?? 3人よれば文殊の知恵 ?
–? チームは偶数より奇数の方がいい ? –? 二人だと決定まで時間がかかる? ? ?? リソースが足りない ? –? 人、時間が足りないのは基本 ? ?? 申し訳程度の募集 ? –? いまよてスケチームでは一緒に開発してくれる人 を募集しております ? –? 興味が有る方がいれば @kuribone までご連絡を ?
Download