ユーストリームのAPIで配信中をチェックする

ユーストリームが面白い。

android端末やios端末でアプリをインストールして、
アプリ起動後にアプリ内で会員登録したら、すぐに映像配信を行うことができる。

すごい簡単!パソコンが苦手な人でもすぐできそう!これはクルゥー!
登録すると自分のマイページができて、自分の番組(チャンネル)を複数作ることができる。

作ってみた。

http://www.ustream.tv/channel/araishi
チャンネルのページを開いていると、
放送者が配信を開始したとき、そのチャンネルのページを開いてると、
勝手に映像がスタートする!すごいっ!

でも見たいチャンネがたくさんあった時に、
配信が開始されれば教えてくれるツール的なものが無い。

PCにインストールするタイプのソフトならあるみたいだけど、
それをWEBサイト側で自動化するのはどうやるんだろう。

APIがあるらしいので、デベロパー登録してみる。

デベロパー登録ページ

http://developer.ustream.tv/

APIの日本語ドキュメント

ここが参考になりそうな感じ。
http://tiara.dtiblog.com/blog-entry-181.html

原文—————————————————————————————————————- —-
following GET is a generalized version of our API format:
GET via URL method:

http://api.ustream.tv/[html|json|xml|php]/[subject]/[subjectUID|scope]/[command]/[otherparams]/?page=[n]&limit=[l]&key=[devkey]
——————————————————————————————————————– —

自分の情報を取得してみる

http://api.ustream.tv/xml/user/araishi/getInfo?key=[devkey]

<?xml version="1.0" encoding="UTF-8"?>
<xml>
  <results>
    <id>11712869</id>
    <userName>
      <![CDATA[araishi]]>
    </userName>
    <registeredAt>
      <![CDATA[2011-06-30]]>
    </registeredAt>
    <url>
      <![CDATA[http://www.ustream.tv/user/araishi]]>
    </url>
    <gender>
      <![CDATA[male]]>
    </gender>
    <website>
      <![CDATA[]]>
    </website>
    <about>
      <![CDATA[]]>
    </about>
    <imageUrl>
      <![CDATA[]]>
    </imageUrl>
    <rating>0.000</rating>
    <numberOf>
      <comments>0</comments>
      <friends>0</friends>
    </numberOf>
  </results>
  <msg>
    <![CDATA[]]>
  </msg>
  <error>
    <![CDATA[]]>
  </error>
  <processTime>TRUE</processTime>
  <version>
    <![CDATA[mashery-r10]]>
  </version>
</xml>

なるほどーですね。

チャンネルのオンライン状態を調べる方法を探していると、
すでにそういうサービスがありました。

twiST

http://twist.fm/
オンラインをチェックする方法もご親切に公開されていました。
http://www.oaksway.com/column/archives/2010/11/09/entry267.html
statusの項目を調べるとわかるらしい。

やってみる。

http://api.ustream.tv/xml/channel/araishi/getInfo?key=[devkey]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
<xml>
  <results>
    <id>8715034</id>
    <user>
      <id>11712869</id>
      <userName>
        <![CDATA[araishi]]>
      </userName>
      <url>
        <![CDATA[http://www.ustream.tv/user/araishi]]>
      </url>
    </user>
    <title>
    <![CDATA[araishi]]>
    </title>
    <description>
      <![CDATA[]]>
    </description>
    <urlTitleName>
      <![CDATA[araishi]]>
    </urlTitleName>
    <url>
      <![CDATA[http://www.ustream.tv/channel/araishi]]>
    </url>
    <status>
      <![CDATA[offline]]>
    </status>
    <createdAt>
      <![CDATA[2011-07-04 08:28:48]]>
    </createdAt>
    <lastStreamedAt>
      <![CDATA[2011-07-06 02:39:51]]>
    </lastStreamedAt>
    <imageUrl>
      <![CDATA[]]>
    </imageUrl>
    <rating>0.000</rating>
    <embedTag>
      <![CDATA[<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="320" height="260" id="utv314135"><param name="flashvars" value="autoplay=false&brand=embed&cid=8715034"/><param name="allowfullscreen" value="true"/><param name="allowscriptaccess" value="always"/><param name="movie" value="http://www.ustream.tv/flash/viewer.swf"/><embed flashvars="autoplay=false&brand=embed&cid=8715034" width="320" height="260" allowfullscreen="true" allowscriptaccess="always" id="utv314135" name="utv_n_897449" src="http://www.ustream.tv/flash/viewer.swf" type="application/x-shockwave-flash" /></object>]]>
    </embedTag>
    <embedTagSourceUrl>
      <![CDATA[http://www.ustream.tv/flash/live/1/8715034]]>
    </embedTagSourceUrl>
    <hasTags>FALSE</hasTags>
    <numberOf>
      <comments>0</comments>
      <ratings>0</ratings>
      <favorites>0</favorites>
      <views>16</views>
      <tags>0</tags>
    </numberOf>
    <tags>
      <![CDATA[]]>
    </tags>
    <socialStream>
      <hashtag>
        <![CDATA[#araishi]]>
      </hashtag>
    </socialStream>
    <chat>
      <embedTag>
        <![CDATA[<embed width="563" height="266" type="application/x-shockwave-flash" flashvars="brandId=1&channelId=8715034&channel=%23araishi&server=chat1.ustream.tv&locale=en_US" pluginspage="http://www.adobe.com/go/getflashplayer" src="http://www.ustream.tv/flash/irc.swf" allowfullscreen="true" />]]>
      </embedTag>
    </chat>
  </results>
  <msg>
    <![CDATA[]]>
  </msg>
  <error>
    <![CDATA[]]>
  </error>
  <processTime>TRUE</processTime>
  <version>
    <![CDATA[mashery-r10]]>
  </version>
</xml>
25
26
27
    <status>
      <![CDATA[offline]]>
    </status>

ステータスのofflineが取得できました。
とりあえず目的のことをやる方法がわかったので満足です。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です