今回は 以前紹介しました 【FlashAir 初心者部屋】Luaスクリプト その3 で宿題となっていた
「書き込みイベントでLuaを実行した場合のイベント発生タイミングについて勉強します。
Luaの書き込みイベント発生時にFTPプロトコルによるファイル転送を行い、
FTPサーバにファイルが転送されたことによりイベント発生タイミングを確認したいと思います。
使用する機器
・ FlashAir W-03
・ Windows PC (OS Windows10)
・ デジカメ(RICOH CX2)
手順
- PCにFTPサーバソフトをインストール及び設定
- FlashAirのCONFIG設定
- ファイル転送を行う為のLuaスクリプト作成
- 転送元ファイルをFlashAirのルートフォルダに作成
- 動作確認
では手順に沿って進めていきます。
1. PCにFTPサーバソフトをインストール及び設定
今回、FTPサーバとしてBlackJumboというフリーソフトを使用します。
1-1. DownLoadします。
1-2. DownLoadが完了したら起動します。
1-3. オプションよりFTPサーバを選択しFTPサーバの設定を行います。
私は以下のように設定しました。
■ACL設定
許可するアドレスにはFlashAirのIPアドレスを指定します。
デフォルトだとFlashAirのIPアドレスは [192.168.0.1]になると思います。
FlashAirのIPアドレスが解らない場合は 5.動作確認時にFTPサーバのログでアクセスされたアドレスを確認できます。
2. FlashAirのCONFIG設定
LUA_SD_EVENT=/Writeftp.lua CIPATH=/DCIM/100__TSB/FA000001.JPG VERSION=FA9CAW3AW3.00.00 CID=02544d535730384731c523c11111x111 PRODUCT=FlashAir VENDOR=TOSHIBA MASTERCODE=0123456789AB WEBDAV=1 TIMEZONE=36 APPNAME=flashair05 BRGSSID=001D731111B1-1 BRGNETWORKKEY=************* APPSSID=flashair_B86B11111D1 APPNETWORKKEY=******** DNSMODE=1 LOCK=1 APPMODE=4 APPAUTOTIME=300000
3. ファイル転送を行う為のLuaスクリプト作成
local localDir = "/" -- 転送するファイルがあるフォルダ local server = "192.168.0.11" -- FTPサーバーのIPアドレス(FlashAirに接続後 ipconfig で確認) local serverDir = "/" -- FTPサーバーの転送先フォルダ local user = "karakuri" -- FTPユーザー名 local pass = "12345678" -- FTPパスワード local file = "SD_Event.log" -- 転送するファイル local xferString = "ftp://"..user..":"..pass.."@"..server..serverDir fa.ftp("put", xferString..file, localDir..file)
4. 転送元ファイルをFlashAirのルートフォルダに作成
エクスプローラなどを使用してFlashAirのルートフォルダに”SD_Event.log”を作成します。
5. 動作確認
FTPサーバを起動しデジカメで撮影をしてみます。
■FTPサーバのイベントログ
■転送先フォルダの確認
転送先フォルダに転送するファイルSD_Event.logが存在します。成功です。
撮影した瞬間にFTPサーバのイベントLogが流れていますので
書き込みイベントでLuaを実行した場合のイベントはこのタイミングで発生していることが確認できました。
今回はここまでにしたいと思います。