Jssk.CastaNet
Interface ICNStation

ICNStationインターフェース CastaNetにアタッチする放送局クラスが実装するインターフェースです。 各プロパティは、設定と取得の両方が可能になっています。これは、外部設定ファイルから値を設定できるように するためです。CastaNetが実装クラスのインスタンスを生成した直後に、設定ファイルに指定があれば、これらの プロパティを通してその値を渡します。 実装クラスは、適宜対応するフィールドを用意して値の受け渡しを行ってください。 ※ セキュリティ対策のため、このインターフェースの実装クラスは、ローカルおよびインターネットへのアクセスは できません。(例外が発生します)

Property Summary
int CodePage
         番組表の読み込み時に指定する文字セットのWindowsコードページ値を設定・取得します。
string DispInfo
         CastaNetの情報アイコンを指したとき等に表示される放送局の情報を設定・取得します。
string DispName
         CastaNetの「放送局選択」コンボボックス等に表示する放送局名を設定・取得します。
String() HeaderTexts
         番組表のヘッダーテキストを設定・取得します。
string PlayListUrlPart
         番組表を取得するためのURLの一部を設定します。
string StreamUrl
         放送を聴くためのストリームのURLを設定・取得します。
int TimeDiff
         日本との時差を設定・取得します。

Method Summary
void OptionInfo(string info)
         任意情報を受け取ります。 CastaNetは、各放送局の設定ファイルの [Option]Info キーに設定されている文字列を このメソッドを呼び出して実装クラスに渡します。 このメソッドは、CastaNetが実装クラスのインスタンスを生成した直後に呼び出します。 任意情報の使用目的や書式などは、このインターフェースの実装者が自由に決めてください。
System.Collections.Generic.List`1[[System.String[] PlayList(string playListText, int callCount, string nextUrl)
         番組表を返します。 CastaNetがPlayListUrl()メソッドを呼び出して得たURLにアクセスし、読み込んだテキストを引数で渡します。 必要な情報が1回で取得できないときは、第3引数のnextUrlに次のURLを渡したうえで、Nothingを返してください。 CastaNetはそのURLにアクセスして情報を取得し、再度第1引数に渡してこのメソッドを呼び出します。 何回目の呼び出しかは第2引数で知ることができます。 最終的に必要な情報がそろったら、下記のようなリストを作成して返してください。
番組表は、以下の項目順で格納された文字列配列をList(Of String())に格納して返してください。

+----------+--------+--------+--------+--------+-----------------+
|   (0)    |  (1)   |  (2)   |  (3)   |  (4)   |       (5)       |
+----------+--------+--------+--------+--------+-----------------+
| 現地時刻 | 作曲者 |  曲名  | 演奏者 | CD番号 | CD購入サイトURL |
+----------+--------+--------+--------+--------+-----------------+

※ 「現地時刻」はDateTimeに変換できる正しい文字列をセットしてください。
※ 「現地時刻」は時刻部分だけをセットしてください。(例:"12:01 am")
※ 情報の無い項目にはNothingをセットしてください。
※ 各レコードの格納順は自由です。時間等でソートされている必要はありません。
※ HTMLデコードはCastaNet本体側で行いますので、実装クラスでは特に必要ありません。
string PlayListUrl(System.DateTime dTimeJpn)
         指定された日本時間に対応する番組表を取得するためのURLを返します。
※ CastaNetから引数で渡された日本時間を適宜加工してURLを組み立てて返すことになると思います。
※ 必要に応じてURLエンコードを行ってください。


Property Detail

CodePage

public int CodePage

番組表の読み込み時に指定する文字セットのWindowsコードページ値を設定・取得します。

Value:
Windowsコードページ値

DispInfo

public string DispInfo

CastaNetの情報アイコンを指したとき等に表示される放送局の情報を設定・取得します。

Value:
放送局の情報

DispName

public string DispName

CastaNetの「放送局選択」コンボボックス等に表示する放送局名を設定・取得します。

Value:
放送局名

HeaderTexts

public string() HeaderTexts

番組表のヘッダーテキストを設定・取得します。

Value:
ヘッダーテキスト

PlayListUrlPart

public string PlayListUrlPart

番組表を取得するためのURLの一部を設定します。

Value:
番組表取得URLの一部

StreamUrl

public string StreamUrl

放送を聴くためのストリームのURLを設定・取得します。

Value:
ストリームURL

TimeDiff

public int TimeDiff

日本との時差を設定・取得します。

Value:
日本との時差(h)
Method Detail

OptionInfo

public void OptionInfo(string info)

任意情報を受け取ります。 CastaNetは、各放送局の設定ファイルの [Option]Info キーに設定されている文字列を このメソッドを呼び出して実装クラスに渡します。 このメソッドは、CastaNetが実装クラスのインスタンスを生成した直後に呼び出します。 任意情報の使用目的や書式などは、このインターフェースの実装者が自由に決めてください。

Parameters:
info - 情報の文字列

PlayList

public System.Collections.Generic.List`1[[System.String[] PlayList(string playListText,
                                                                 int callCount,
                                                                 string nextUrl)

番組表を返します。 CastaNetがPlayListUrl()メソッドを呼び出して得たURLにアクセスし、読み込んだテキストを引数で渡します。 必要な情報が1回で取得できないときは、第3引数のnextUrlに次のURLを渡したうえで、Nothingを返してください。 CastaNetはそのURLにアクセスして情報を取得し、再度第1引数に渡してこのメソッドを呼び出します。 何回目の呼び出しかは第2引数で知ることができます。 最終的に必要な情報がそろったら、下記のようなリストを作成して返してください。

番組表は、以下の項目順で格納された文字列配列をList(Of String())に格納して返してください。

+----------+--------+--------+--------+--------+-----------------+
|   (0)    |  (1)   |  (2)   |  (3)   |  (4)   |       (5)       |
+----------+--------+--------+--------+--------+-----------------+
| 現地時刻 | 作曲者 |  曲名  | 演奏者 | CD番号 | CD購入サイトURL |
+----------+--------+--------+--------+--------+-----------------+

※ 「現地時刻」はDateTimeに変換できる正しい文字列をセットしてください。
※ 「現地時刻」は時刻部分だけをセットしてください。(例:"12:01 am")
※ 情報の無い項目にはNothingをセットしてください。
※ 各レコードの格納順は自由です。時間等でソートされている必要はありません。
※ HTMLデコードはCastaNet本体側で行いますので、実装クラスでは特に必要ありません。

Parameters:
playListText - 番組表の情報を含んだテキスト
callCount - CastaNetからこのメソッドが呼ばれた回数、最初は0
nextUrl - 次の情報の取得先URL
Returns:
番組表を格納したList、取得できなかったときは要素数を0にして返す、さらに情報が欲しいときはNothingを返す

PlayListUrl

public string PlayListUrl(System.DateTime dTimeJpn)

指定された日本時間に対応する番組表を取得するためのURLを返します。

※ CastaNetから引数で渡された日本時間を適宜加工してURLを組み立てて返すことになると思います。
※ 必要に応じてURLエンコードを行ってください。

Parameters:
dTimeJpn - 日本時間
Returns:
番組表取得URL