Synology DSMで暗号化されたフォルダーをマウントすると同時に Synology DSMを思い出してから、PerlとMojolicious Webフレームワークを使用して、ニーズに合ったシンプルなアプリケーションを作成する方法を示すことにしました。 ブラウザのデバイスに必要な情報を表示するには、膝の上にSynDevInfoユーティリティを作成する必要がありました。 尊敬されているサポートはGNU / Linuxを知らず、ユーザーはssh経由でログインできません。
Mojolicious :: Liteのパッケージの構造、アプリケーション起動スクリプト、およびスクリプト自体について説明します。
プロジェクト構造

- サードパーティは、 MojoliciousとIO :: Socket :: IPをそこに配置しました 。 IO ::ソケット:: IPはMojoliciousが必要でした。
- confは 、DSMパッケージ用の特別なディレクトリです。 PKG_DEPSにはPerl依存関係があります。
- libには、SynInfo :: Infoモデルのコードが含まれています。
- スクリプトには、パッケージに含まれる一連のスクリプトが必要です。
- UIに統合するためのUI構成ファイルとアイコン。
- INFOメタパッケージ情報。
- Makefileパッケージのビルドスクリプト。
- SynDevInfoスクリプト自体。
アプリケーションの起動
Mojoliciousは、アプリケーションをデプロイするためのさまざまな方法をサポートしています。 原則を使用して、単純なことは単純に行われるべきであるため、 組み込みWebサーバーで説明されているアプローチを採用しました。 この方法では、スクリプトはデーモンモードで実行され、外部Webサーバーは必要ありません。
アプリ
= "https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"整合性= "sha384-1q8mTJOASx8j1Au + a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin = "匿名">
= "https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap-theme.min.css"整合性= "SHA384-fLW2N01lMqjakBkx3l / M9EahuwpSfeNvV63J5ezn3uZzapT0u7EYsXMjQV + 0En5r" crossorigin = "
1つのファイルとコントローラーコードとhtmlテンプレート。 出力入力処理サイクルを開始する前に、モデルは情報を収集し、jsonでシリアル化します。 この時点では、デーモンは外部リクエストを処理しないため、待機スクリプトは5秒の待機を指定します。 ヘルパーでは、このモデルは逆シリアル化されてコントローラーに表示されます。