拡張機能・管理¶
拡張機能¶
IM-Mail は設定やプラグインを利用して、機能を拡張できるようになっています。プラグインを追加する場合には、拡張ポイントに応じた内容でプラグインクラスを実装し、対象の拡張ポイントへ Plugin するための設定ファイルを記述します。拡張ポイントとプラグインの関係は、PluginManager によって管理されます。PluginManager は、同じ拡張ポイントへの拡張に競合などがあった際は、優先度の高いプラグインを自動的に選択します。Plugin Manager の詳細については、API リストの PluginManager についての項を参照してください。
プラグイン 拡張ポイント¶
IM-Mail で提供する拡張ポイントは、以下の通りです。
- <提供プラグイン一覧>
名称 拡張ポイント 説明 アカウントリスナプラグイン jp.co.intra_mart.product.im_mail.account.listener 同期アカウント情報のデータストアへの操作時に任意の処理を実行します。 同期リスナプラグイン jp.co.intra_mart.product.im_mail.sync. listener 同期アカウント情報の IM-Mail(メールサービス部分)への同期時に任意の処理を実行します。 アカウント属性値プラグイン jp.co.intra_mart.product.im_mail.account.attribute IM-Mail(メールサービス部分)へ同期されるアカウント情報に任意の値を設定します。
アカウントリスナ¶
アカウント情報を操作(登録、更新、削除)する時に、それぞれの事前・事後処理として、任意の処理を実行させるためのプラグインです。デフォルトで検証クラス(ImMailAccountValidator)、履歴登録クラス(ImMailHistoryAddListener)が設定されています。詳細は API リストを参照してください。
- <プラグイン定義の設定例>
<?xml version="1.0" encoding="UTF-8"?> <plugin> <extension point="jp.co.intra_mart.product.im_mail.account.listener"> <my_account_listener id="myListener" name=" myListener " groups="default"> <listener class=" jp.co.intra_mart.product.im_mail.plugin.exampke.MyAccountListenerPlugin "/> </my_account_listener> </extension> </plugin>
同期リスナ¶
アカウント情報を IM-Mail(メールサービス部分)へ同期(登録、更新、削除)する時に、事前・事後処理として、任意の処理を実行するためのプラグインです。デフォルトで同期検証クラス(ImMailSyncValidator)、アカウント履歴同期クラス(ImMailHistorySyncListener)が設定されています。詳細は API ドキュメントを参照してください。
- <プラグイン定義の設定例>
<?xml version="1.0" encoding="UTF-8"?> <plugin> <extension point=" jp.co.intra_mart.product.im_mail.sync.listener"> <my_sync_listener id="myListener" name="myListener" groups="default"> <listener class=" jp.co.intra_mart.product.im_mail.plugin.exampke.MySyncListenerPlugin "/> </my_sync_listener> </extension> </plugin>
アカウント属性値¶
同期されるアカウントの属性に、任意の値を設定するためのプラグインです。属性を指定して任意の値を設定するための、拡張ポイントを提供しています。デフォルトで属性値を部署名の表現を変更する ImMailDepartmentPlugin、 固定値を属性値として設定する ImMailFixationPlugin が用意されています。(※初期状態では無効になっています。)プラグインで設定可能なアカウント属性は、以下の通りです。
- <アカウント属性一覧>
ノード 文字種 桁長 IM-Mail(サービス部分)のアカウント属性 password 半角英数字記号記号は、_-.=~最初の文字は半角英数字ポリシーに従う パスワード familyName 制限なし 40 名前(姓) firstName 制限なし 40 名前(名) displayName 制限なし 255 表示名 company 制限なし 255 会社 title 制限なし 255 役職 tel 半角数字記号※記号は「-(ハイフン)」32 電話
固定属性値(ImMailFixationPlugin)¶
M-Mail(メールサービス部分)のアカウント属性値に固定値を指定することができます。詳細は API リストを参照してください。
- <プラグイン定義の設定例>
<?xml version="1.0" encoding="UTF-8"?> <plugin> <!-- アカウント同期属性値プラグイン --> <extension point="jp.co.intra_mart.product.im_mail.account.attribute"> <attribute_plugin id="fixation" name="fixation" version="8.0" enable="true"> <!-- パスワード --> <password class="jp.co.intra_mart.product.im_mail.plugin.attribute.ImMailFixationPlugin" value="password" /> <!-- 名前(姓) --> <familyName class="jp.co.intra_mart.product.im_mail.plugin.attribute.ImMailFixationPlugin" value="IM-Mailユーザ" /> <!-- 名前(名) --> <firstName class="jp.co.intra_mart.product.im_mail.plugin.attribute.ImMailFixationPlugin" value="" /> <!-- 表示名 --> <displayName class="jp.co.intra_mart.product.im_mail.plugin.attribute.ImMailFixationPlugin" value="試験用IM-Mailアカウント" /> <!-- 電話 --> <tel class="jp.co.intra_mart.product.im_mail.plugin.attribute.ImMailFixationPlugin" value="000-0000" /> <!-- 会社 --> <company class="jp.co.intra_mart.product.im_mail.plugin.attribute.ImMailFixationPlugin" value="試験用会社" /> <!-- 部門 --> <department class="jp.co.intra_mart.product.im_mail.plugin.attribute.ImMailFixationPlugin" value="試験用部門" /> <!-- 役職 --> <title class="jp.co.intra_mart.product.im_mail.plugin.attribute.ImMailFixationPlugin" value="試験用役職" /> </attribute_plugin> </extension> </plugin>
管理¶
グループ名一覧ファイル¶
IM-Mail では、グループ名一覧のファイルを PublicStorage 配下に保存しています。このファイルは、IM-Mail 管理画面において個人設定を登録した際、そのグループがファイル内に存在しない場合に追記しています。このファイルに対しては書き込みのみで、削除を行いません。このファイルはグループ名の一覧とオートコンプリート機能を実現するために利用しており、それ以外の用途はありません。肥大化、不要な名称を削除する場合は、直接ファイルより削除してください。
配置場所 %PUBLIC_STORAGE_PATH%/products/im_mail/groupname %PUBLIC_STORAGE_PATH% : PublicStorage として使用するディレクトリ