ちょっと目標変更

0 views
Skip to first unread message

kabayan

unread,
Mar 21, 2011, 12:55:05 PM3/21/11
to helpcast
安否状況お知らせ
http://kuronyankotan.com/cross_finder/sign.php
というサービスと組み合わせる方向にしようとおもいます。

ユースケース
1.アプリ入れる
2.最初の起動時に連絡先の電話番号がweb171もしくは携帯の安否案内に登録されたら
端末のgmailにメールする設定を自動的に行う。
3.連絡先が変更追加されたら2の処理を行う(サービス)
4.災害が発生したら、アプリを起動し自分の安否を登録&連絡先の人の安否を確認。

問題点
2のスケーラビリティはどう担保するか?
4の自分の安否は自動的にweb171等に登録できるか?現在はtwitterのみ。

最初のバージョンでやること
1.自分の生存情報をtwitterに残す(電話番号)ことを1クリックで行う。
2.余裕が少しある場合&Twitterアカウントを持っていたら自分のアカウントで
twitter公認ハッシュタグをつかった形式でツイートできるようにする。
3.電話番号を直接入力して安否確認(Twitterとkuronyankotanさんサービスを使う)
4.電話をかけるアクションのintentをフックして安否確認(Twitterとkuronyankotanさんサービスを使う)

ご意見をお待ちしています。

kabayan

kuronyankotan

unread,
Mar 22, 2011, 3:16:13 AM3/22/11
to helpcast
初めまして!
kabayan様にお誘いいただいて参加することになりました。kuronyankotanです。
よろしくお願いします!

早速ですが、
>3.電話番号を直接入力して安否確認(Twitterとkuronyankotanさんサービスを使う)
こちらをrest「風」に組んでみました。

http://kuronyankotan.com/cross_finder/rest.php

パラメータはすべてクエリー文字列にて処理する予定です。(メソッドが良ければおっしゃってください^^)

仕様としましては、

http://kuronyankotan.com/cross_finder/rest.php?mode=get&tel=090********
というようなURLをGETしてくると以下の情報が帰ってきます。

// docomo伝言板に載っていた場合
found|http://dengon.ezweb.ne.jp/service.do?p1=dmb221

// au伝言板に載っていた場合
found|http://dengon.ezweb.ne.jp/service.do?p1=dmb221

// web171に載っていた場合
found|https://www.web171.jp/top.php

// 見つからなかった場合
not found.

// modeが不正な場合、電話番号が無い場合
No data.

現在modeの仕様としましては、
get   → 安否確認情報の検索 (実装済み)

regist  → 安否情報検知への登録(未実装)
update → 安否情報検知にて登録電話番号とメールアドレスの変更(未実装:この場合は以前登録していた変更前の電話番号とメールアドレスが必要
になります。)
del   → 安否情報検知リストから削除(未実装)

という形になっています。

>4の自分の安否は自動的にweb171等に登録できるか?現在はtwitterのみ。
たしかスマートフォンではdocomoしか対応していない気がします。。
携帯用の伝言板は現状ではガラケーのみ。と考えたほうがいいのかもしれないです。

逆にWeb171では電話番号、登録者、メッセージの登録のみであれば自動登録は出来なくはなさそうです。(画像は拒否されます。)


また、安否確認情報の検索では「found|http://dengon.ezweb.ne.jp/service.do?p1=dmb221」という
ようなメッセージを返してはいますが、
実際見つからない限りは「http://dengon.ezweb.ne.jp/service.do?p1=dmb221」などのアドレスは出ないの
で「found|」の部分は不要かもしれません。
本来ならこのURLをクリックするとその人の情報に飛べれば一番だとは思いますが、docomo、auなどは何故かTOPページのセッションIDを保持
していないとエラーになってしまうので直リン出来ない状態です。(不便ですよね^^;softbankは直リンOKなのですが。。。)

現在のところはこのような形です。

ご意見をお待ちしております!よろしくお願いします。

kuronyankotan

unread,
Mar 22, 2011, 4:57:03 AM3/22/11
to helpcast
こんにちは!kuronyankotanです。

先ほど
regist  → 安否情報検知への登録(未実装)
update → 安否情報検知にて登録電話番号とメールアドレスの変更(未実装:この場合は以前登録していた変更前の電話番号とメールアドレスが必

になります。)
del   → 安否情報検知リストから削除(未実装)
となっておりましたが、現在すべて実装完了致しました。

パラメータ例としましては、

・regist  → 安否情報検知への登録
http://kuronyankotan.com/cross_finder/rest.php?mode=regist&tel=090********&mail=****@gmail.com

mode = regist
tel = 登録したい電話番号
mail=登録したいメールアドレス

結果は
同じデータが既にある場合→exist.
登録完了の場合→Success.
その他(パラメータ欠落など)→No data.
と返ってきます。


・update → 安否情報検知にて登録電話番号とメールアドレスの変更
http://kuronyankotan.com/cross_finder/rest.php?mode=update&tel=更新後電話番号&mail=更新後メールアドレス&old_tel=更新前電話番号&old_mail=更新前メールアドレス

mode = update
tel = 登録したい電話番号
mail=登録したいメールアドレス
old_tel = 更新前電話番号
old_mail=更新前メールアドレス

なお、既に安否検知されてメールが届いている場合には更新出来無いようにしてあります。

結果は
データがない、または送信済みデータしか無い→no exist.
更新完了の場合→Success.
その他(パラメータ欠落など)→No data.
と返ってきます。

・del   → 安否情報検知リストから削除
http://kuronyankotan.com/cross_finder/rest.php?mode=del&old_tel=090********&old_mail=*****@gmail.com

mode = del
old_tel = 電話番号
old_mail=メールアドレス

結果は
データがない→no exist.
更新完了の場合→Success.
その他(パラメータ欠落など)→No data.
と返ってきます。

また、全機能共通でDBの何らかのエラーは「DB error.」と返ってきます。

このような形でよろしいでしょうか?
アプリ→API→DBの流れのみですので、電話番号などは特に暗号化処理はいれていません。
また、個人情報のからみも考えられるので、電話番号とメールアドレス以外の個人データはデータベースに保持されていません。
(探したい人の名前も登録してGoogle personalなどを検索しても良かったのですが、それだと電話番号と名前が結びついてしまう可能性が高
いので・・・^^;)

以上です。
このAPIは既に稼動していますので、テストなどご自由に試していただいて問題ないです。
よろしくお願いします。

kabayan

unread,
Mar 22, 2011, 10:49:47 AM3/22/11
to helpcast
kabayanです。

作業ありがとうございます!!
形式はいずれも問題ありませんが、1点だけ
> ・del   → 安否情報検知リストから削除
> http://kuronyankotan.com/cross_finder/rest.php?mode=del&old_tel=090******** &old_mail=**...@gmail.com


>
> mode = del
> old_tel = 電話番号
> old_mail=メールアドレス

ここで電話番号がなければマッチするメールアドレスの検知対象が全削除できるといいとおもいます。

気になるのは安否情報検知の件数が数十万件になっても大丈夫かというところです。
こちらのサーバーサイドは何台でも(割と)簡単にスケールするように作ってあるので
DNSさえ死ななければ100万アクセス/hでもいけるはずです。
(だれかGAEで作り直してくれないかなぁ。。。)

あとはdocomo(携帯はすべてここだけでいけるはず)の掲示板、またGoogle Person Finderへの
登録のみ(削除などは自力でやってもらえばいいかなと)ができれば完璧です。
Google Person Finderに対応できれば海外でも使えるはずです。
web171は固定電話しか登録できないので、今回はサポートする必要はないと思います。

いかがでしょうか?

よろしくお願いします。

kabayan

On 3月22日, 午後5:57, kuronyankotan <miy...@gmail.com> wrote:
> こんにちは!kuronyankotanです。
>
> 先ほど
> regist  → 安否情報検知への登録(未実装)
> update → 安否情報検知にて登録電話番号とメールアドレスの変更(未実装:この場合は以前登録していた変更前の電話番号とメールアドレスが必
> 要
> になります。)
> del   → 安否情報検知リストから削除(未実装)
> となっておりましたが、現在すべて実装完了致しました。
>
> パラメータ例としましては、
>
> ・regist  → 安否情報検知への登録

> http://kuronyankotan.com/cross_finder/rest.php?mode=regist&tel=090********& mail=*...@gmail.com


>
> mode = regist
> tel = 登録したい電話番号
> mail=登録したいメールアドレス
>
> 結果は
> 同じデータが既にある場合→exist.
> 登録完了の場合→Success.
> その他(パラメータ欠落など)→No data.
> と返ってきます。
>

> ・update → 安否情報検知にて登録電話番号とメールアドレスの変更http://kuronyankotan.com/cross_finder/rest.php?mode=update&tel=更新後電話番号&mail=更新後メールアドレス&old_tel=更新前電話番号&old_mail=更新前メールアドレス


>
> mode = update
> tel = 登録したい電話番号
> mail=登録したいメールアドレス
> old_tel = 更新前電話番号
> old_mail=更新前メールアドレス
>
> なお、既に安否検知されてメールが届いている場合には更新出来無いようにしてあります。
>
> 結果は
> データがない、または送信済みデータしか無い→no exist.
> 更新完了の場合→Success.
> その他(パラメータ欠落など)→No data.
> と返ってきます。
>
> ・del   → 安否情報検知リストから削除

> http://kuronyankotan.com/cross_finder/rest.php?mode=del&old_tel=090******** &old_mail=**...@gmail.com

kuronyankotan

unread,
Mar 22, 2011, 8:24:52 PM3/22/11
to helpcast
おはようございます!

形式はいずれも問題ありませんが、1点だけ
> ・del   → 安否情報検知リストから削除
> http://kuronyankotan.com/cross_finder/rest.php?mode=del&old_tel=090**... &old_mail=**...@gmail.com


> mode = del
> old_tel = 電話番号
> old_mail=メールアドレス


ここで電話番号がなければマッチするメールアドレスの検知対象が全削除できるといいとおもいます。

こちらの機能を追加致しました。

(電話番号を入れ忘れて実行すると該当メールアドレスのデータすべて消えてしまうのでご注意ください^^;)

あとはdocomo(携帯はすべてここだけでいけるはず)の掲示板、またGoogle Person Finderへの
登録のみ(削除などは自力でやってもらえばいいかなと)ができれば完璧です。

docomoの伝言板登録は携帯もしくはスマートフォンのspモード対応機種のみですね。。。こちらのAPIからは登録は出来なさそうです。
Google Person Finder の登録を考えてみましたら、案外入力必須項目が多いですね。。クエリー文字列ではオーバーしてしまうので、
XMLでちゃんとしたRESTを実現する必要がありそうです。
結局同じ項目を入力するので、Google Person Finderの登録は直接Webサービスを表示してもいいかもしれないですね。

安否情報の検知はテストで20000件ほどを並行処理させてみましたが特に問題は無いです。
本当に十数万件追加されたときにはさすがに共有サーバではなく占有にして数万件毎分散して処理する方式に変えれば特に問題なさそうです。(むしろ
docomoが落ちるか心配な所ですね。。。笑)
なので負荷については段階的に行っても大丈夫なレベルと認識しております。

いかがでしょうか?よろしくお願いします。

On 3月22日, 午後11:49, kabayan <tkab...@gmail.com> wrote:
> kabayanです。
>
> 作業ありがとうございます!!
> 形式はいずれも問題ありませんが、1点だけ> ・del   → 安否情報検知リストから削除

> >http://kuronyankotan.com/cross_finder/rest.php?mode=del&old_tel=090**...&old_mail=**...@gmail.com

> >http://kuronyankotan.com/cross_finder/rest.php?mode=regist&tel=090***...mail=*...@gmail.com


>
> > mode = regist
> > tel = 登録したい電話番号
> > mail=登録したいメールアドレス
>
> > 結果は
> > 同じデータが既にある場合→exist.
> > 登録完了の場合→Success.
> > その他(パラメータ欠落など)→No data.
> > と返ってきます。
>
> > ・update → 安否情報検知にて登録電話番号とメールアドレスの変更http://kuronyankotan.com/cross_finder/rest.php?mode=update&tel=更新後電話番号&mail=更新後メールアドレス&old_tel=更新前電話番号&old_mail=更新前メールアドレス
>
> > mode = update
> > tel = 登録したい電話番号
> > mail=登録したいメールアドレス
> > old_tel = 更新前電話番号
> > old_mail=更新前メールアドレス
>
> > なお、既に安否検知されてメールが届いている場合には更新出来無いようにしてあります。
>
> > 結果は
> > データがない、または送信済みデータしか無い→no exist.
> > 更新完了の場合→Success.
> > その他(パラメータ欠落など)→No data.
> > と返ってきます。
>
> > ・del   → 安否情報検知リストから削除

> >http://kuronyankotan.com/cross_finder/rest.php?mode=del&old_tel=090**...&old_mail=**...@gmail.com

kabayan

unread,
Mar 24, 2011, 2:51:53 PM3/24/11
to helpcast
じりじり作ってます。

今できること
*SOS - HelpCast
ワンタッチで自電話番号を専用アカウントでつぶやく
Google Person Finderへのリンク
*HelpCast
電話番号をいれる  or 連絡先から選んで(日本語限定:Web171等の横断検索)+Twitter検索

あとやること
・電話番号をいれる  or 連絡先から選んで安否情報通知登録と解除
・自分のTwitterアカウントで状況をつぶやく(標準ハッシュをどこかから読み込む)
・標準ハッシュでTwitter検索
・Google Person Finderから検索(課題あり)

課題
・他の国でも使えるように標準ハッシュを動的に読み込んだほうがいいはず
→災害を選ぶ?どうやって?
・どのGoogle Person Finderを対象にする?

いいアイデアがあれば教えてください。

kabayan

kabayan

unread,
Mar 27, 2011, 1:15:07 PM3/27/11
to helpcast
今日の成果です。
・英語リソース作成
・電話番号で検索。連絡先から選んで検索。
・Twitter & Web171系検索(英語版はTwitterのみ)

アルファ版までやること
・ネットワークがないときのエラーチェック
・電話番号がない場合の処理
・HelpCast側にGPFへの誘導ボタン
・安否通知登録・削除対応(日本語版のみ)

web171への自動登録をだれかjavaで書いてもらえないですかね。。。もしくは
サーバーサイドでもいいんですけど。
土曜はそれで1日つぶしたんですけどうまくいきませんでした orz.

kabayan

> > > >http://kuronyankotan.com/cross_finder/rest.php?mode=del&old_tel=090**...d_mail=**...@gmail.com

> > > >http://kuronyankotan.com/cross_finder/rest.php?mode=regist&tel=090***...l=*...@gmail.com


>
> > > > mode = regist
> > > > tel = 登録したい電話番号
> > > > mail=登録したいメールアドレス
>
> > > > 結果は
> > > > 同じデータが既にある場合→exist.
> > > > 登録完了の場合→Success.
> > > > その他(パラメータ欠落など)→No data.
> > > > と返ってきます。
>
> > > > ・update → 安否情報検知にて登録電話番号とメールアドレスの変更http://kuronyankotan.com/cross_finder/rest.php?mode=update&tel=更新後電話番号&mail=更新後メールアドレス&old_tel=更新前電話番号&old_mail=更新前メールアドレス
>
> > > > mode = update
> > > > tel = 登録したい電話番号
> > > > mail=登録したいメールアドレス
> > > > old_tel = 更新前電話番号
> > > > old_mail=更新前メールアドレス
>
> > > > なお、既に安否検知されてメールが届いている場合には更新出来無いようにしてあります。
>
> > > > 結果は
> > > > データがない、または送信済みデータしか無い→no exist.
> > > > 更新完了の場合→Success.
> > > > その他(パラメータ欠落など)→No data.
> > > > と返ってきます。
>
> > > > ・del   → 安否情報検知リストから削除

> > > >http://kuronyankotan.com/cross_finder/rest.php?mode=del&old_tel=090**...d_mail=**...@gmail.com

kuronyankotan

unread,
Mar 28, 2011, 8:40:52 PM3/28/11
to helpcast
おはようございます!

>web171への自動登録をだれかjavaで書いてもらえないですかね。。。もしくは
サーバーサイドでもいいんですけど。

もしかして自分呼ばれましたか?(汗)

今ちょうど出張中のバスの中ですので、登録まで無事にできるところまでちょっと作ってみます!

kuronyankotan

unread,
Mar 28, 2011, 8:54:21 PM3/28/11
to helpcast
お疲れ様です。

web171の確認プログラムを改良してサーバサイドですが作成してみました。
無事web171に登録できるようになっています。

http://kuronyankotan.com/cross_finder/rest_web171.php?val=0266227569&name=%E5%AE%AE%E4%B8%8B&msg=%E7%84%A1%E4%BA%8B%E3%81%A7%E3%81%99

val=電話番号
name=名前(ここだとURIエンコードされていますが、ブラウザで直接叩く場合は日本語ままでOKです。)
msg=伝言(上に同じくです)

書き込みを行う基幹プログラムを作っただけなので、本当にGETパラメータに入れるかは微妙です(笑)
POSTで呼んでもらうのが手っ取り早いですが、ちゃんとした形式であればXMLを使ったものも可能です。

基幹があるのであとはがわの問題ですので、やりやすい形式を言っていただければと思います。

> > > > > >http://kuronyankotan.com/cross_finder/rest.php?mode=del&old_tel=090**...ail=**...@gmail.com

> > > > > >http://kuronyankotan.com/cross_finder/rest.php?mode=del&old_tel=090**...ail=**...@gmail.com

Reply all
Reply to author
Forward
0 new messages