Citrix XenAppでXenReceiverが接続できない?

Citrix XenAppをとりあえず試しているところ。
一通り設定を済ませてクライアントから http://サーバ名/Citrix/StoreWeb/ にアクセスし、アプリケーションを選択してみると、アプリの起動に失敗する。

具体的には、アプリを選択すると、以下のようにXen Receiverが起動する。
logonfailed-001
しかし、しばらくステータスバーが進まないまま、時間が経過し、以下のエラーとなる。
logonfailed-002

最初は、DNSの名前解決の問題かと考えたけれども、どうやら違いそう。
Wiresharkでパケットキャプチャしてみたところ原因判明。
logonfailed-003

サーバのIPアドレスとして「192.168.x.x」が渡されている!
そっちは、管理用のネットワークIPアドレスなので、クライアントからはアクセスできないのは当然のことだった。

Citrixのサービスが見るネットワークインタフェースから192.168.x.xを除外すればいいんだろう、と設定を探してみる・・・

が・・・XenDesktop 7.1でのやり方が分からない。
XenApp 6.5でのやり方は「Application Launch Requests Might Fail on a Provisioned XenApp Version 6.0 or 6.5 Multihomed Server」とかに書いてあるんだけど、ここで紹介されている設定項目がXenDesktop 7.1では見当たらない・・・

とりあえず、仕方がないので、ネットワーク構成を変更して、192.168.x.xを使わないようにする、という後ろ向きな対応をしてみたり

Spreadtrum社から4コアCPU SC8735S/SC8835S/SC7735Sなど5製品がリリース

Spreadtrum社から、4コアのCPU SC8735Sが出荷開始されたそうで、2013/12/16のプレスリリースが出ていました。

SC8735Sのプレスリリース
SC8735S製品情報

製品化第1弾はChina Unicom/China Mobile向けのHTC Desire 7088であるようです。

ほほ~、と思って、製品ページをよく見てみると、さらに「SC7730A」「SC7735S」「SC8830A」「SC8835S」と新製品ラッシュが・・・
え?と思ってプレスリリースを読み直すと、後ろの方に「In addition to the SC8735S, ~」と記載が・・・

基本は、「CPU Cortex-A7 4コア」+「GPU Mali400」なんですが、いろいろ細かい点が違う、という感じです。

SC8735S SC8835S SC7735S SC8830A SC7730A
対応電波形式 TD-SCDMA/WCDMA
両対応
TD-SCDMA WCDMA TD-SCDMA WCDMA
CPU Cortex-A7 4コア 1.2GHz
GPU Mali400 MP4 (4コア) Mali400 MP2 (2コア)
最大メモリ 2GB
ディスプレイ QCIF, QVGA, WQVGA, CIF, VGA, HVGA, WVGA, FWVGA, qHD, WxGA
カメラ 1300万画素対応

全部有りの「SC8735S」
標準の「SC8835S」と「SC7735S」
GPUを減らして低コスト化した「SC8830A」と「SC7730A」
という感じの違いです。

全製品で、3枚SIMサポートだが同時使用は2枚まで、と謳っています。
 (Supports dual-SIM dual-active capability
 (Supports tri-SIM cards, both 1.8V and 3.0V devices

ただ、WCDMAが2回線使用できるかは不明です。

SC8875S/SC8835S/SC7735Sの製品情報に書かれているダイヤグラムにある電波送信部分「Multimode RF SR3530」。
この製品はRF Transceivers製品情報を見ると「SR3500 Series (for 4G LTE devices)」に該当しそうなんですが、複数SIM使用時については、特に明記していないので、どうなるのか不明です。

プレスリリース内で「The SC8735S and other chipsets in Spreadtrum’s quad-core smartphone portfolio are available now and already shipping in commercial devices globally.」と、各チップが出荷開始されているらしいので、製品が出てくるのを楽しみにしてましょうかねぇ


追記
2014/01/21にタブレット向け4コアのSC5735と、スマホ向け1コアのSC7715/SC6815/SC8815が登場しました。
関連記事:Spreadtrum社からタブレット向けSC5735とスマホ向けSC7715登場!

2013年に買ったものを振り返って

2013年に買ったものを自分の中で面白かった順に並べて見る。

・Covia FleaPhone CP-D02

MediaTek社MT6577搭載のAndroidスマートフォン。
なんやかんやで、いまもまだメインとして使用中。
Bluetoothのデキがいまいち。WiFiとBluetoothを両方有効にしてるとよく通信がおかしくなる。

・freetel FT132A

Spreadtrum社SC7710搭載のAndroidスマートフォン。
画面が小さいのと、FOMAプラスエリア非対応が響いてメインにはなれず。

・SmartQ Z Watch

Android腕時計。
思いの外電池が持ってびっくりしたもの。
とはいえ、WiFi通信させたりすると、減りが早いので注意。
ウチの事情で言えば、coviaのBluetoothのデキが微妙で、Bluetooth通信ができなくなりやすいのが難点。(freetelやThunderbird i5sだと大丈夫なので、完全にcoviaの問題)

・Thunderbird i5s

MediaTek MT6572搭載のAndroid。
というか、ほんと、iPhone5s。
発注時は、coviaの次、というところで使おうかと思ってたんだけど、内部もほんとiPhoneで、ネタアイテムとして見せびらかしたかったので、ほぼ標準状態のままにすることに・・・

・NEC VersaPro VY10A
ジャンク屋で3980円とかで売ってたので買ったのが始め。
最終的にいろいろ不具合点があるものを全部で5台買って
それなりに動くものが4台分完成。
液晶割れ、マザー死亡、キートップ欠け1台、という感じになった。
キーボードのゴム不良については、ジャンクのノート用キーボードを買って、それから抜いて流用。
とか、そんな感じでなんとか4台分確保した、というところ。
うち、2台はハムフェアで販売して、1台はうちの奥さん使用中。
1台は予備機という感じ。

・NEC VersaPro VJ12AC-6
上記のVY10Aのパーツ漁り中にメモリ2GB積んだこいつが8000円だったので、つい買ってしまった。
おかげで自分用に最強にしたVY10Aは冬眠中(予備機)・・・

・Grandstream Networkの「HandyTone 702 ATA」
VoIPアダプターボックス
2回線のVoIPを収納できるんだけど、それぞれの回線用に電話機は必要。
FUSION IP-Phone SMARTを1回線設定して使用中。
どこからかかってきたかというログは機器に保存されないので注意が必要。
ログを閲覧/保存したい場合は別途用意したsyslogサーバにログを転送する必要がある。

なお、1回線のみサポートのHandyTone701は日本でも取扱が始まった模様

・Kindle Fire
HDぢゃない方。
会社で、とあるソフトウェアの研修を受けに行ったらもらった。
標準OSがおもしろくなかったので、速攻Android OSに書き換えられてしまったという不遇な子。
Kindle用に細かく調整されてるらしいものから、最新を使いたくてCynanogenMod純正バージョンにしたらバッテリーの減りが激しくなってしまったなぁ・・・

・K-Touch W619

MSM7225A搭載で安かったので買ってみたもの
CPUのクロックが低いものと高いものが同じ型番であるらしく、うちに来たモノはクロックが高いものだった模様。
CWM Recoveryはクロック毎で違うらしく、どっちバージョンで配布なのか明記されてないというのが大変でした。
非対応バージョンを適用するとまともに起動しない、という感じでした。
ベトナム方面では、別ブランドで結構数が出てるようで、現在も.vn系でカスタマイズが進行中な模様。


以下は、「失敗」アイテム。

・だれとでも定額パス WX01TJ
初期不良を売りつけられて約2ヶ月まるで使い物にならなかったのに、なんも補填されなかった一品。
死ねよウィルコム。
交換後はそれなり動作中。

・サンコー AUTCT2BK

パソコンを専用させずにカセットテープをmp3にコンバートできるな、と思って買ってみた。
microSDへの録音が開始されない、という事象ばかりが発生したあげく、microSDを1枚殺してくれた品。

・サンワサプライ TAP-TST10

サーバの消費電力測定のために期待して買ったんだけど、現在値を測定するのではなく、適当に記録された10分おきの過去データを取得できるだけ、という残念仕様でした。
というか、素直に現在値を取得させてくれよ。

IIJmioクーポンスイッチAPIを使って使用量グラフ作成

IIJmioクーポンスイッチAPI」というものが公開された。

AndroidアプリからこのAPIを使う、というのが想定されている使われ方だと思うんですが、違う使い方をしてみた。
というのは、「データ利用量照会」という機能を見つけ、これを利用すれば1年分のデータ使用量グラフが作れる、と思ったからです。

幸い、常時起動のサーバがあるので、そいつに仕込めばいいか、と、やってみました。

まずは、完成品をご覧ください。
test

現在SIMを4枚もっているので、こんなグラフになっています。
メインで使ってるのがSIM2、SIM4はSMS対応のものでテストに使用。
SIM3はうちの奥さんに渡しているもの、SIM1は実家においてあるルータ、という感じです。

さて、このグラフ作るまでに行ったことですが、まず最初はアクセストークン取得です。
いろいろ悩んだんですが、適当な手法をとっています。

まず、redirect_uriとして適当なCGIを作りました。

#!/usr/bin/perl
print "Content-Type: text/plain; charset=UTF-8\n\n";
print "test\n";

えぇ、適当過ぎますね。

そして、普通のHTMLを作ります。

<html>
<head>
<title>iijmio</title>
</head>
<body>

<a href="https://api.iijmio.jp/mobile/d/v1/authorization/?response_type=token&client_id=<DeveloperID>&state=test&redirect_uri=http%3A%2F%2F~.osakana.net%2Ftest.cgi">go to IIJMIO</a>

</body>
</html>

redirect_uriには、先ほど作成した適当なCGIのアドレスを記載します。

ブラウザで作成したhtmlにアクセスし、IIJmioの認証を行い、正常に通ると、redirect_uriに指定したURLに対して、戻ってきます。
ブラウザのURL欄に表示された文字列から「access_token=~」という記述を見つけ、アクセストークンを取得します。
ちなみに、このアクセストークン、7776000秒有効です。つまり90日間です。
IIJmio側に30日分のデータが保管されているので120日以内に1回手動で更新すればいいか、と考え、テキトーな実装になっています。

次に、利用量取得のperlスクリプト作成。

#!/usr/bin/perl
use strict;
use warnings;
use LWP;
use URI::Escape;
use JSON;
use Time::Local;

my $lwpua = LWP::UserAgent->new;

my $url="https://api.iijmio.jp/mobile/d/v1/log/packet/";

my $developerid="<DeveloperID>";
my $usertoken  ="<アクセストークン>";

my $lwpreq = HTTP::Request->new(GET => "$url");
$lwpreq->header("X-IIJmio-Developer" => "$developerid");
$lwpreq->header("X-IIJmio-Authorization" => "$usertoken");
my $lwpres= $lwpua->request($lwpreq);
my $data = decode_json($lwpres->content);

for(my $i=0;$i<@{$data->{packetLogInfo}};$i++){
        #print $i . ":" . $data->{packetLogInfo}->[$i]->{hddServiceCode} ."\n";
        my $hddServiceCode=$data->{packetLogInfo}->[$i]->{hddServiceCode};

        for(my $j=0;$j<@{$data->{packetLogInfo}->[$i]->{hdoInfo}};$j++){
                #print $i . "-" . $j . ":" . $data->{packetLogInfo}->[$i]->{hdoInfo}->[$j]->{hdoServiceCode} . "\n";
                my $hdoServiceCode=$data->{packetLogInfo}->[$i]->{hdoInfo}->[$j]->{hdoServiceCode};
                if(! -f "$hdoServiceCode.rrd"){
                      print "rrdtool create $hdoServiceCode.rrd --start 1384786740 --step 86400 DS:withCoupon:GAUGE:86400:0:U DS:withoutCoupon:GAUGE:86400:0:U RRA:LAST:0.5:1:100000 \n";
                      system("rrdtool create $hdoServiceCode.rrd --start 1384786740 --step 86400 DS:withCoupon:GAUGE:86400:0:U DS:withoutCoupon:GAUGE:86400:0:U RRA:LAST:0.5:1:100000");

                }

                for(my $k=0;$k<@{$data->{packetLogInfo}->[$i]->{hdoInfo}->[$j]->{packetLog}};$k++){
                      #print "   " . $data->{packetLogInfo}->[$i]->{hdoInfo}->[$j]->{packetLog}->[$k]->{date} ;
                      #print ":" . $data->{packetLogInfo}->[$i]->{hdoInfo}->[$j]->{packetLog}->[$k]->{withCoupon} ;
                      #print ":" . $data->{packetLogInfo}->[$i]->{hdoInfo}->[$j]->{packetLog}->[$k]->{withoutCoupon} ;
                      #print "\n";
                      my $d=$data->{packetLogInfo}->[$i]->{hdoInfo}->[$j]->{packetLog}->[$k]->{date};
                      my $year = substr($d,0,4);
                      my $mon  = substr($d,4,2) - 1;
                      my $mday = substr($d,6,2);
                      my $unixtime = timelocal(0,59,23,$mday,$mon,$year);
                      my $withCoupon=$data->{packetLogInfo}->[$i]->{hdoInfo}->[$j]->{packetLog}->[$k]->{withCoupon};
                      my $withoutCoupon=$data->{packetLogInfo}->[$i]->{hdoInfo}->[$j]->{packetLog}->[$k]->{withoutCoupon};
                      print "rrdtool update $hdoServiceCode.rrd $unixtime:$withCoupon:$withoutCoupon \n";
                      system("rrdtool update $hdoServiceCode.rrd $unixtime:$withCoupon:$withoutCoupon");
                }
        }
}

これを「get.pl」というファイル名で保存します。
実行すると、「hdo810xxxxx.rrd」というような感じのファイルがSIMカード分作成されます。
なお、手抜きをしているので、2回目以降は、同じ値を入力しようとし、「ERROR: hdo8371xxxx.rrd: illegal attempt to update using time 1387378740 when last update time is 1387378740 (minimum one second step)」みたいなエラーがでてしまいますが、仕様です。
また、rrdtoolは一度登録した情報の更新ができない構造をしているので、日付が変わる直前に実行することを推奨します。

で・・・グラフ作成は以下の様な感じで、情報取得と連続で行わせています。
現在SIMが4枚あるので、4枚分を集計しています。
クーポン使用の有無は区別せず合算としています。

#!/bin/bash
cd /home/~/mio
./get.pl
rrdtool graph iijmio-use.png --imgformat=PNG --end now --start end-1months \
--vertical-label "MB" \
--title="IIJmioの使用量" \
DEF:SIM1C=hdo8038xxxx.rrd:withCoupon:LAST \
DEF:SIM1N=hdo8038xxxx.rrd:withoutCoupon:LAST \
DEF:SIM2C=hdo8100xxxx.rrd:withCoupon:LAST \
DEF:SIM2N=hdo8100xxxx.rrd:withoutCoupon:LAST \
DEF:SIM3C=hdo8100xxxx.rrd:withCoupon:LAST \
DEF:SIM3N=hdo8100xxxx.rrd:withoutCoupon:LAST \
DEF:SIM4C=hdo8371xxxx.rrd:withCoupon:LAST \
DEF:SIM4N=hdo8371xxxx.rrd:withoutCoupon:LAST \
CDEF:SIM1=SIM1C,SIM1N,+ \
CDEF:SIM2=SIM2C,SIM2N,+ \
CDEF:SIM3=SIM3C,SIM3N,+ \
CDEF:SIM4=SIM4C,SIM4N,+ \
LINE1:SIM1#0000FF:"SIM1" \
LINE2:SIM2#00FFFF:"SIM2" \
LINE3:SIM3#00FF00:"SIM3" \
LINE4:SIM4#F00F00:"SIM4"

で、これをサーバのcrontabに突っ込んで、23:58に実行する設定しました。
さて、これでちゃんと更新し続けてくれるといいのですが・・・


APIが公開されて速攻作成&記事公開したところ、IIJmioの人に発見された模様。


2013/12/24追記

しばらく運用してみた結果、見にくかったので、グラフ作成については、以下の様に変更した。

rrdtool graph iijmio-use.png --imgformat=PNG \
--height=300 \
--lower-limit=0 \
--end now --start end-1months \
--vertical-label "MB" \
--title="IIJmioの使用量" \
DEF:SIM1C=hdo8038xxxx.rrd:withCoupon:LAST \
DEF:SIM1N=hdo8038xxxx.rrd:withoutCoupon:LAST \
DEF:SIM2C=hdo8100xxxx.rrd:withCoupon:LAST \
DEF:SIM2N=hdo8100xxxx.rrd:withoutCoupon:LAST \
DEF:SIM3C=hdo8100xxxx.rrd:withCoupon:LAST \
DEF:SIM3N=hdo8100xxxx.rrd:withoutCoupon:LAST \
DEF:SIM4C=hdo8371xxxx.rrd:withCoupon:LAST \
DEF:SIM4N=hdo8371xxxx.rrd:withoutCoupon:LAST \
CDEF:SIM1=SIM1C,SIM1N,+ \
CDEF:SIM2=SIM2C,SIM2N,+ \
CDEF:SIM3=SIM3C,SIM3N,+ \
CDEF:SIM4=SIM4C,SIM4N,+ \
LINE2:SIM1#0000FF:"SIM1" \
LINE2:SIM2#00FFFF:"SIM2" \
LINE2:SIM3#00FF00:"SIM3" \
LINE2:SIM4#F00F00:"SIM4"

iijmio2

「LINE数字:~」の数字部分の意味を取り違えていたという・・・太さの意味だったか・・・


2014/12/19追記

作ってから約1年が経過しました。
最近はこんなグラフにしています。(横軸のめもりを日付にした)

rrdtool graph iijmio-use.png --imgformat=PNG \
--height=300 \
--lower-limit=0 \
--end now --start end-2months \
--vertical-label "MB" \
--x-grid DAY:1:WEEK:1:WEEK:1:0:%m/%d \
--title="IIJmioの使用量" \
DEF:SIM1C=hdo8038xxxx.rrd:withCoupon:LAST \
DEF:SIM1N=hdo8038xxxx.rrd:withoutCoupon:LAST \
DEF:SIM2C=hdo8100xxxx.rrd:withCoupon:LAST \
DEF:SIM2N=hdo8100xxxx.rrd:withoutCoupon:LAST \
DEF:SIM3C=hdo8100xxxx.rrd:withCoupon:LAST \
DEF:SIM3N=hdo8100xxxx.rrd:withoutCoupon:LAST \
DEF:SIM4C=hdo8371xxxx.rrd:withCoupon:LAST \
DEF:SIM4N=hdo8371xxxx.rrd:withoutCoupon:LAST \
CDEF:SIM1=SIM1C,SIM1N,+ \
CDEF:SIM2=SIM2C,SIM2N,+ \
CDEF:SIM3=SIM3C,SIM3N,+ \
CDEF:SIM4=SIM4C,SIM4N,+ \
LINE2:SIM1#0000FF:"SIM1" \
LINE2:SIM2#00FFFF:"SIM2" \
LINE2:SIM3#00FF00:"SIM3" \
LINE2:SIM4#F00F00:"SIM4"

mio-20141219

そして、1年分

rrdtool graph iijmio-use-year.png --imgformat=PNG \
--height=300 \
--width=600 \
--lower-limit=0 \
--end now --start end-14months \
--vertical-label "MB" \
--x-grid WEEK:1:MONTH:1:MONTH:1:0:%m/%d \
--title="IIJmioの1年分使用量" \
DEF:SIM1C=hdo8038xxxx.rrd:withCoupon:LAST \
DEF:SIM1N=hdo8038xxxx.rrd:withoutCoupon:LAST \
DEF:SIM2C=hdo8100xxxx.rrd:withCoupon:LAST \
DEF:SIM2N=hdo8100xxxx.rrd:withoutCoupon:LAST \
DEF:SIM3C=hdo8100xxxx.rrd:withCoupon:LAST \
DEF:SIM3N=hdo8100xxxx.rrd:withoutCoupon:LAST \
DEF:SIM4C=hdo8371xxxx.rrd:withCoupon:LAST \
DEF:SIM4N=hdo8371xxxx.rrd:withoutCoupon:LAST \
CDEF:SIM1=SIM1C,SIM1N,+ \
CDEF:SIM2=SIM2C,SIM2N,+ \
CDEF:SIM3=SIM3C,SIM3N,+ \
CDEF:SIM4=SIM4C,SIM4N,+ \
LINE2:SIM1#0000FF:"SIM1" \
LINE2:SIM2#00FFFF:"SIM2" \
LINE2:SIM3#00FF00:"SIM3" \
LINE2:SIM4#F00F00:"SIM4"

test-year-20141219

おまけ:上記のグラフの利用率変動の解説。

SIM1はミニマムスタートプラン、SIM2/3/4はファミリーシェアプランで、SIM3はmicroSIM、SIM4はnanoSIM/SMS付。

・2013/12頃
 メイン機CP-D02:SIM2
 偽iPhone5s(Thunderbird i5s):SIM4
 奥さんのP-01D:SIM3
 奥さん実家の緊急用ルータ:SIM1
・2014/01頃
 ほとんど使用されていないSIM1の容量がもったいないので入れ替え
 メイン機CP-D02:SIM2→SIM1
 奥さん実家の緊急用ルータ:SIM1→SIM2
 偽iPhone5s(Thunderbird i5s):SIM4
 奥さんのP-01D:SIM3
・2014/02頃の変更点
 Thunderbid i5sの液晶を割ったので余ったSMS付SIM4をメイン機へ 
 メイン機CP-D02:SIM1→SIM4
 奥さん実家の緊急用ルータ:SIM2
 奥さんのP-01D:SIM3
・2014/03頃の変更点
 Covia CP-F03aが来たのでがんばって使用開始。
 それに伴い余剰になったCovia CP-D02を奥さんのに充当
 メイン機CP-F03a:SIM4 & SIM1
 奥さん実家の緊急用ルータ:SIM2
 奥さんのCP-D02:SIM3
・2014/06頃の変更点
 JIAYU F1購入。使い勝手が良かったので、メイン機に変更。
 メイン機JIAYU F1:SIM4
 予備機CP-F03a:SIM1
 奥さん実家の緊急用ルータ:SIM2
 奥さんのCP-D02:SIM3

・2014/11頃の変更点
 GMOBBのWiMAXを使い始めたのでメイン機SIM4の使用量低下

・2014/12頃の変更点
 自宅のフレッツが微妙に不安定なことが多いので、奥さんCP-D02のWiFiをオフにしてみた。

Zwatchの天気情報の日本語化とYahoo Weather RSS Feedの日本語表記

ZWatchの天気情報は、アメリカのYahooが提供する「Yahoo Weather RSS Feed」を使用して取得しています。
日本の都市もいくつか登録されています。
パソコンから確認するにはhttp://weather.yahoo.com/にアクセスすると良いでしょう。

ただ、英語表記の天気だとどうにもわかりにくいです。
それなりに日本語にしてみました。

10年ぐらい前にやったMiranda ICQのYahoo Weather pluginの翻訳例が流用できないかなぁ、と期待したんですが、確認してみると、当時と表記が全然違う模様。
ニュアンスはコレでいいんだろうか?とか悩む点がいろいろありますが、訳してみました。

zwatch010

手法は/system/app/IndroidWeather.apkをapktoolでばらしてres/value-jaを作成して、再構成、というもの。

できあがったものはこちら→「v2.2のIndroidWeather.apkを元にした改造版
 (v2.3のIndroidWeather.apkを元にした改造版)

インストール手法
1. MoreLocale2を入手
 上記URLでapkファイルが配布されています
2. MoreLocale2をZwatchにインストール
 手法は問いません
3. Zwatch上でMoreLocale2を起動し、「ja_JP」に設定
zwatch002
zwatch004
 コレにより時計盤の曜日表示が日本語になります(英語のままの時計盤もあります)
4. IndroidWeather-mod.apkをZwatchの/sdcard/に転送
5. Zwatchにadb接続し、rootユーザになる
6. Zwatchの/systemをread/write可能に設定
7. /system/app/IndroidWeather.apkを置き換える
 「cp」は無いので「busybox cp」を使う
8. /system/app/IndroidWeather.apkのパーミッションを755にする
9. 再起動(必須
10. 「天気」の設定画面から「都市の選択」し「Japan」→各都道府県を選択
zwatch005
zwatch006
zwatch007
zwatch008
zwatch009

再起動しないと、時計内の天気表示がうまくいかないようです。
上記の手順で分からない人は対象にしていません。

ちなみに、天気の翻訳は以下の様に対応付けてます。
「Yahoo Weather RSS Feed」の日本語翻訳例が見当たらなかったので掲載しときます。

0	tornado                 暴風
1	tropical storm          熱帯系風雨
2	hurricane               台風
3	severe thunderstorms    酷い雷雨
4	thunderstorms           雷雨
5	mixed rain and snow     雨/雪
6	mixed rain and sleet    雨/みぞれ
7	mixed snow and sleet    みぞれ/雪
8	freezing drizzle        氷混じりの霧雨
9	drizzle                 霧雨
10	freezing rain           凍るぐらいに寒い
11	showers                 にわか雨
12	showers                 にわか雨
13	snow flurries           しゅう雪
14	light snow showers      にわか雪
15	blowing snow            地吹雪
16	snow                    雪
17	hail                    雹(ひょう)
18	sleet                   みぞれ
19	dust                    砂塵
20	foggy                   霧
21	haze                    薄霧
22	smoky                   黒霧
23	blustery                快晴
24	windy                   快晴
25	cold                    寒い
26	cloudy                  曇り
27	mostly cloudy (night)   おおむね曇り(夜)
28	mostly cloudy (day)     おおむね曇り(昼)
29	partly cloudy (night)   所により曇り(夜)
30	partly cloudy (day)     所により曇り(昼)
31	clear (night)           雲が無い(夜)
32	sunny                   雲が無い(昼)
33	fair (night)            晴れ(夜)
34	fair (day)              晴れ(昼)
35	mixed rain and hail     雨/雹(ひょう)
36	hot                     暑い
37	isolated thunderstorms  所により雷
38	scattered thunderstorms 散発的な雷
39	scattered thunderstorms 散発的な雷
40	scattered showers       散発的な雨
41	heavy snow              大雪
42	scattered snow showers  散発的な にわか雪
43	heavy snow              大雪
44	partly cloudy           所により曇り
45	thundershowers          雷雨
46	snow showers            にわか雪
47	isolated thundershowers 所により雷雨