OMOIKANetで扱う電文の構造

OMOIKANetで扱う電文の構造について説明します。

  1. 電文は、JSON形式で発行します。
    • JSON形式の基本形...{“key1″:”value1″,”key2″:”Value2″,…”keyn”:”valuen”}
    • キーと値のペアを :(コロン)で接続し、複数のペアを ,(カンマ)で連結します。
    • キー名と値はそれぞれ “(ダブルクオーテーション)で囲みます。
    • 文頭には { 、文末には }を付加します。
    • 値が数値の場合には ” は不要です。
  2. OMOIKANet特有のこと
    • 電文の終端には必ず CRLF (0x0D 0x0A)を付加します。
    • 電文の最初のキーと値は “message”:”” とします(値は長さ0の文字列)。
    • 電文の2番目のキーは “msnumber” とし、値は電文の種類により固有の値とします。
    • 電文の3番目のキーは “action” とします。値は、次に述べる機能により異なります。
    • 電文の4番目のキーは “critical” とします。値は数値で、0の場合は通常電文、1の場合は緊急電文として扱われます。
    • 電文の5番目以降には、任意のキーと値の組み合わせを利用可能です。
    • 値を入れ子構造にすることも可能です。
      “keyx”:{“valuex1″,”valuex2”} or “keyx”:{“keyx1″:”valuex1″,”keyx2″:”valuex2” etc.)
    • 電文は全部で500バイトまでとしています。
    • 組込制御装置(CPU)から電文をWLANシールドに送信すると、WLANシールドでは “Serial”キーと、シールド固有のシリアル番号を値に取ったセットを付加して送信します。
    • CPUから送信する電文例
      {“message”:””,”msnumber”:1,”action”:0,”temp”:30,”humid”:50}
    • ・WLANシールドから送信する電文例
      {“message”:””,”msnumber”:1,”action”:0,”temp”:30,”humid”:50,”serial”:”14LA01A”}
  3. 機能別電文構造
    1. Message機能
      • “action”キーの値を 0 にセットすると、Message機能になります。
    2. Reply機能
      • “action”キーの値を 1 にセットすると、Reply機能になります。
      • Reply機能では、APPサーバからReply電文が返信されます。
      • Reply電文の中身は、組込端末から送信した(CPUから送信した電文に “Serial”キーが付加されたもの)に、”Reply”:””(長さ0の文字列)のセットが付加されたものになります。
    3. Mail機能
      • “action”キーの値を 2 にセットすると、Mail機能になります。
    4. Control機能
      • APPサーバから送信される電文には、最大4つのコマンド番号とコマンド内容のセットを含むことができます。
      • コマンドセットの基本形は “Cx”:”AANN”となります(C:固定、x:コマンド番号、AA:コマンド名、NN:数値)。
      • xには1~4を順に指定します。
      • AAにはASCIIコードa~z、A~Zの内、任意の2文字を組み合わせて利用します(必ず2文字)。
      • NNには00から99までの2桁の数値を指定します(1桁の場合には左桁を0で埋めます)。
      • コマンド例
        “C1″:”AA00″,”C2″:”BB99″,”C3″:”CC30″,”C4″:”DD30”