2018年7月24日火曜日

L$ Exchange Rate Board V1.1.0

L$ Exchange Rate Boardなんですが、2週間前ぐらいから動作してないことに気が付きました。そのときは、サーバーが調子悪いんじゃないかな?って思って、きっと数日後にはケロッと直ってるはず!って期待してたんですよ。でも1週間過ぎても直らないので、もう流石に知らないふりはできないなって思い始めて、色々と調べてみると原因はllHTTPRequestに関わるバグで、もう1ヶ月か2ヶ月くらいバグ修正されてないみたいでした。#BUG-216320

簡単に書くと、現時点で下記みたいにllHTTPRequestからSLのライブデータフィードを取得しようとすると499エラーが出ます。
// 取得するライブデータフィードURL
string url="http://secondlife.com/httprequest/homepage.php";

default
{
    touch_start(integer total_number)
    {
        key id=llDetectedKey(0);  // タッチしたアバターのキー
        if (id == llGetOwner()) {  // それがオーナーなら
            llHTTPRequest(url, [], "");  // HTTPリクエスト実行
        }
    }

    http_response(key request_id, integer status, list metadata, string body)
    {  // HTTPレスポンス
        if (status == 200) {  // 正常(ステータスコードが200)なら
            llOwnerSay(body);  // データ内容を表示
        }
        else {  // エラーのときはエラー番号を表示
            llOwnerSay("エラー HTTP status "+(string)status);
        }
    }
}

SL公式のデータフィードがインワールド内からゲットできなくなるなんて想定外だったので、現バージョン(当装置にはバージョン表記ないですけど一応V1.0.0かな?)のL$ Exchange Rate Boardはエラーも出さなくて、全くうんともすんとも言わない有様です^^; ちなみにライブデータフィードは普通にウエブブラウザで開くとエラーもなく開けるんですよ。なので外部サーバーを経由させてデータを取得するように改造しました。。。わざわざ外部サーバー使うって、何かバカみたいなんですけどねw まあエラー出たときだけ外部サーバーに頼るって感じの改良です。

今までにL$ Exchange Rate Boardをお買い上げ頂いたお客様には既にV1.1.0をお送りました。もし受け取れなかったお客様は再送しますのでご連絡くださいね。

0 件のコメント:

コメントを投稿