初心者向け技術ガイド

無線LAN機能とWebサーバーを内蔵するFlashAirは、そのしくみを理解することで、画像だけではなく動画や文書、音声データを取得したり、FlashAir APIを利用して様々な設定のカスタマイズを行ったり、FlashAir対応のアプリを開発したり、既存アプリの機能を拡張したりすることができます。

必要とされる基礎知識

ここでは、FlashAirでできることを次の3つのパターンに分類して、それぞれに必要とされる基礎知識をご紹介していきます。

Web
WebブラウザでFlashAirコンテンツを見る場合のデザインを変えたりする。
App
FlashAir対応のアプリを開発したり、既存アプリの機能を拡張したりする。
Maker
FlashAirで製品をワイヤレスに、外部機器との連携をさせたりする。
Web App Maker
参考ページ FlashAir(Official)画面デザインの改良 FlashAir(Official)アプリショーケース TISPY(ティスピー)TISPY(ティスピー)
HTTP
HTML
CSS オプション
JavaScript / jQuery オプション
CGI(FlashAir API)
無線LAN
Android
iOS
Lua
Arduino

HTTP (HyperText Transfer Protocol)

HTTPとは、World Wide Webで用いられるプロトコル(規定)であり、WebサーバーとWebブラウザとが通信する際の様々なコマンドに対する処理を定義しています。
FlashAirはWebサーバーを内蔵していますので、無線LAN上でHTTP経由の通信を行うことができます。

HTTPによる制御については、こちらに紹介されています。

参考 IT用語辞典Wikipedia

HTML (HyperText Markup Language)

HTMLとは、World Wide Web上のドキュメントを作成するために用いられるマークアップ言語です。HTMLは、様々なタグと属性によってWebドキュメントの文書構造やレイアウトなどを定義します。
HTMLを編集することで、WebブラウザでFlashAirコンテンツを見る場合のデザインを変えたり、独自のブラウザユーティリティを作成することができます。

詳しくは、こちらに紹介されています。

参考

CSS (Cascading Style Sheets)

CSSとは、どのようなスタイルでWEBページが表示されるかをHTMLに加えて指定するための規格です。HTMLが文書構造を定義するのに対し、CSSは見栄えを定義します。
CSSを編集することで、WebブラウザでFlashAirコンテンツを見る場合のデザインを変えたり、独自のブラウザユーティリティを作成することができます。

詳しくは、こちらに紹介されています。

参考

JavaScript / jQuery

JavaScriptとは、Webサイトにインタラクティブなデザインを作成することができるスクリプト言語です。HTMLのソースコードに埋め込んで記述することができ、コンテンツに動的な効果をつけることができます。

参考 IT用語辞典Wikipedia

また、jQueryは、JavaScriptの無料のオープンソースのライブラリーです。jQueryを利用することで、JavaScriptのコード量を減らし、手軽にインタラクティブなデザインを作成することができます。

使用例については、こちらに紹介されています。

参考

CGI (Common Gateway Interface)

CGIプログラムはWebサーバーがユーザーと双方向で動的なやりとりをする方法として一般的です。CGIはWebサーバー上で処理を行います。
FlashAirでは、FlashAirの情報を読み取る、設定を変更するなどの特別な操作が行えるCGI(FlashAir API)をご提供しています。

詳しくは、こちらに紹介されています。

  • command.cgi:無線LAN経由でFlashAirの情報を取得したり、設定を変更したりできます。
  • config.cgi:FlashAirの設定を変更するために使います。
  • thumbnail.cgi:画像のサムネイルを取得するために使います。
  • upload.cgi:ネットワーク越しにSDメモリカードの中身を変更するために使います。

参考 IT用語辞典Wikipedia

無線LAN (wireless local-area network)

無線LANとは、無線方式によりデータの送受信を行うLAN(local-area network)の形式です。
FlashAirは、無線LAN機能を内蔵しており、ネットワークに接続する方法には、アクセスポイントモード、ステーションモード、インターネット同時接続モードがあります。通常、FlashAirはアクセスポイント(AP)モードになっており、いわゆる無線LAN親機として動作しています。

詳しくは、こちらに紹介されています。

参考 IT用語辞典Wikipedia

Android

Androidとは、グーグル社がライセンスフリーで提供する、携帯情報端末向けのオペレーティングシステムです。
FlashAirデベロッパーズでは、Androidアプリ開発向けのチュートリアルを紹介しています。

参考 Android公式ページAndroid Developers - Android 入門

iOS

iOSとは、アップル社が提供する、iPhoneやiPad、iPod touch、Apple TVなどの携帯情報端末向けのオペレーティングシステムです。
FlashAirデベロッパーズでは、iOSアプリ開発向けのチュートリアルを紹介しています。

参考 iOS公式ページiOS Developers(英語)

Lua

Luaは、パワフルで、高速で、軽量で、埋め込み可能な、スクリプト言語です。
Lua言語で書かれたスクリプトファイルをFlashAirに保存することで、以下のような簡易なバッチ処理が行えます。

  • FlashAirに保存されたファイルを、任意のサーバー等にアップロード。(ダイレクトアップロード)
  • FlashAirにファイルを生成する。
  • 動的にHTMLファイルを生成する。

詳しくは、こちらに紹介されています。

参考 Lua公式ページ - Getting started(英語)、 Wikipedia

Arduino

Arduinoは、製品プロトタイピングなどの用途でとても人気のあるマイコンボードです。オープンハードウェアプラットフォームを謳って、設計や回路図が公開されており、ユーザーがクローンを製造したり、改造して独自のArduino互換ボードを作ることが容易です。
FlashAirをSDメモリカードホスト機器から制御して、 無線LANのON/OFFやAPモード・STAモードの切り替え、あるいはHTTP通信をArduinoから行うことができます。

詳しくは、こちらに紹介されています。

参考 Arduino 公式ページ(英語)、 Wikipedia