Hatena::Groupiphone-dev

haoyayoi Dev Style このページをアンテナに追加 RSSフィード

2009-10-10

Catalyst用Apple Push Notification Serviceモジュール

| 02:07 | Catalyst用Apple Push Notification Serviceモジュール - haoyayoi Dev Style を含むブックマーク はてなブックマーク - Catalyst用Apple Push Notification Serviceモジュール - haoyayoi Dev Style Catalyst用Apple Push Notification Serviceモジュール - haoyayoi Dev Style のブックマークコメント

perlMVCフレームワークCatalystモジュールとして、Catalyst::View::APNSを書いてみました。githubに上げてます。作成完了したらCPANに申請の予定。

Catalyst::View::APNS

掲示板とかでメールによる通知とかもありますが、Pushで通知とかもあってもよさそうなものです。Catalystに触れる事が多くなったので、せめてCatalystだけでもそれをお手軽にしたいと思いました。CPAN申請が完了したら改めて書く事にします。

2009-08-14

perl製Apple Push Notification Service

| 07:03 | perl製Apple Push Notification Service - haoyayoi Dev Style を含むブックマーク はてなブックマーク - perl製Apple Push Notification Service - haoyayoi Dev Style perl製Apple Push Notification Service - haoyayoi Dev Style のブックマークコメント

以前Push用フレームワークについて取り上げた際に述べていた書き下ろしモジュールですが、CPANへの申請が完了しています。

Net::APNS

小さいバージョンアップが入っていますが、これはパッケージングミスの修正です。

なお、丁度時期前後して同じperl製のフレームワークが幾つか登場しています。

結果的にやってることは全く同じなんですが、利用している他のモジュールや、それまでに存在するアプローチが違っています。名前空間が同じモジュールを既に使っていればその名前空間に合わせたりと、最適なやりかたで行うことをお薦めします。

2009-07-18

Reject DataBase for iPhone DeveloperのRSS書いた[修正有り]

| 08:24 | Reject DataBase for iPhone DeveloperのRSS書いた[修正有り] - haoyayoi Dev Style を含むブックマーク はてなブックマーク - Reject DataBase for iPhone DeveloperのRSS書いた[修正有り] - haoyayoi Dev Style Reject DataBase for iPhone DeveloperのRSS書いた[修正有り] - haoyayoi Dev Style のブックマークコメント

Rejectに関して情報が蓄積されてはいるものの、参照と更新の確認のために毎回アクセスするのが面倒で、結果として存在を忘れちゃっていたReject DataBase for iPhone DeveloperRSSでもあれば楽でいいのになーとは思うんですが、備わってなかったのでスクレイピングして勝手にこしらえました。

cronで毎時更新にしています。

Reject DataBase for iPhone Developer RSS Feed

以下ソース。

#!/usr/local/bin/perl

use strict;
use warnings;
use Web::Scraper;
use XML::RSS;
use URI;

my $scraper = scraper {
    process '//td[2]/text()', 'Name[]' => 'TEXT';
    process '//td[3]/a', 'Subject[]' => 'TEXT';
    process '//td[3]/a', 'Url[]' => '@href'; 
}->scrape(URI->new("http://iphone-rejectdb.appspot.com/main.html"));

my $RSS = XML::RSS->new( version => "2.0", encode_output => 0 );
$RSS->channel(
    title       => "Reject Database for iPhone Developer",
    link        => "http://iphone-rejectdb.appspot.com/",
    description => "Let's share knowhow by everyone and avoid the reject at the application program examination.",
);
foreach my $index (0 .. @{$scraper->{Subject}} -1 ){
    my $scraper_desc = scraper {
        process '//tr[8]/td[2]/p', 'Desc' => 'TEXT';
    }->scrape(URI->new($scraper->{Url}[$index]));
    $RSS->add_item(
        title => $scraper->{Subject}[$index],
        link => $scraper->{Url}[$index],
        description => $scraper_desc->{Desc},
    );
}

$RSS->save("RejectDB.rss");

管理者に作ってくれるように依頼するのがいいんでしょうけど、最終更新日が結構前なのでアクティブじゃないかもしれないな、ということで。

スクレイピングしてiPhoneアプリ用にインターフェイス作っちゃうとさらに良いかもしれませんが、iWebKitまだ触ってないので…。

修正

コメントの突っ込みで購読確認したところ、なんかすでに購読済みでした。未読の山に埋もれてたので、購読してたけど読んでなかったとかそんな具合ぽいです。ということで、上記のfeedは削除します。

リジェクトの本文がRSSで配信されてなかったので、WedataのLDRFullFeedにSiteInfoを追加しておきました。LDR使っててLDRFullFeedをインストールしてればG押すと、リジェクトに関する詳細が挿入されます。

iwadoniwadon2009/07/18 12:46フィードには以下のものがあるように見えますがいかがでしょうか。
http://iphone-rejectdb.appspot.com/feed?format=rss2
http://iphone-rejectdb.appspot.com/feed?format=atom

hao_yayoihao_yayoi2009/07/18 20:14feed存在してました。しかもなんか購読してたっぽいです。
未読の中に埋もれてたので、弄って読みやすくすることにします…。