日々の作業記録やトピックをお知らせします。アプリに、画面の自動更新機能を追加するための説明をします。今回の記事で一連の作業は完了します。最初に検討した機能追加項目の中の下記の最後の項目について作業を行います。受信したときのイベント処理を作成します。イベントハンドラが実行されます。パケットの処理を追加記述します。シリアル接続についてはこの記事を参照して下さい。ファイルの内容は下記になります。アプリで使用する全てのファイルを含めてここからダウンロードすることができます。*******************************************************************************一つのスクリプトの実行は長くても数秒以内で必ず終了するようにしてください。処理に時間がかかると、イベント処理の終了を待つサーバー側でタイムアウトが発生します。同時実行可能なスクリプトの数に制限があるため、他のスクリプトの実行開始が待たされる原因にもなります。使用して別スレッドで実行することを検討してください。プロトコルパケットのバイナリデータ。イベントデータをログに出力するだけの記述が行われています(ファイルの先頭で定義されている部分です)。パケットの処理を追加します。あると判断しています。ビットデータとして取り出します。文字列にフォーマットしています。TCPソケット通信で送信します。アプリの動作しているブラウザに配信することになります。チェックボックスを更新する機能が追加されています。ボタンとそのイベントハンドラを削除しています。ファイルの内容を示します。data-theme="e"><h3>エラーが発生しました</h3><p>サーバー処理中にエラーが発生しました。現在のセッションが無効になっている場合があります。ボタンが取り除かれています。ファイルの読み込みをファイルの先頭部分で指定しています。インストールしたときに下記のディレクトリに格納されています。フォルダにコピーしておきます。ファイルの内容は以下の様になります。スクリプトを実行する。スクリプト実行結果のイベントハンドラ。配信用サーバーに接続するための記述が追加されています。タグに関連付けられた文字列を取り出します。フォーマット文字列で格納されています。関数をコールしてWebアプリのチェックボックスの値を更新します。値を取得したときにも同様にコールされます。アプリが完成しました。状態がチェックボックスに表示されます。アドレスやホスト名に置き換えて指定して下さい。アプリを起動すると下記の様な画面が表示されます。アプリの画面からチェックボックスを操作すると、Webアプリを起動している全てのブラウザ画面が同時に更新されるのを確認できると思います。アプリを操作した時の動画を載せましたので参照してください。アプリ画面を同期して操作する例を紹介しました。ブラウザにプッシュ通知する仕組みとしても使用できます。Webブラウザ画面に表示して、センサー値の変化に応じて画面を自動更新させることができます。センサー値の異常や、警報状態、アラームメッセージ等をWebブラウザ画面にリアルタイムに表示することで、ユーザーが必要とするイベント情報をすぐに通知することが可能になります。スマートフォンやタブレットにも同様にリアルタイム表示できますので、それらを監視用専用モニタや表示器として使うことができると思います。インストールキットをダウンロードして、直ぐに使用することができます。(デモライセンスが添付されていますので直ちに使用可能です)それではまた。アプリに、画面の自動更新機能を追加するための説明をします。実現可能かどうかを検討します。比較的リアルタイム指向的な制御を行うように設計しています。サーバーに接続されたセンサーや計測機器、リモートデバイスからのイベントは全て別スレッドで処理を開始させて、各々の処理(イベントハンドラやスクリプト)は独立したインスタンスで実行されます。このため、どれか一つの処理に時間がかかったり、エラーが発生した場合でもセンサーネットワークシステム全体には影響を与えないようにしています。維持・管理すると、スレッドの数が接続中のブラウザ分だけ増加して、すぐにサーバー内部のリソースが不足してしまいます。併用してアプリを構築することにします。この配信用サーバーでは、複数ブラウザのコネクション管理とメッセージ配信に特化した機能を実現します。作成した)にソケット通信で送信します。カプセル化されたコネクション)を使用して配信します。例えると、これらの2つのサーバー機能は放送局(DeviceServer)と通信衛星(配信用リレーサーバー)の様な関係になります。