Skip to content

Koichi-Kobayashi/AipoReminder

Repository files navigation

#AipoReminder

Join the chat at https://gitter.im/Koichi-Kobayashi/AipoReminder

グループウェアAipoの新着通知を自動で取得するアプリケーションです。

使い方
 1.動作環境として、.NET Framework2.0以上が必要になります。
 2.Aipo4.0.4.0以上または5.0.0.0以上が同じネットワーク上にインストールされている必要があります。
  一部の機能は5.0.0.0以上で使用可能です。

以下、Aipoの管理者向けの情報です。
 次の情報を元にPostgreSQLの設定を変更することで、
 本ソフトウェアが正常に動作するようになりますが、
 セキュリティレベルが下がります。
 使用者のセキュリティポリシーにそぐわない場合は、使用を中止して下さい。

 3.ポートの設定について
  Aipoをインストールしたままの状態ではローカルホストのみのアクセスを許可しているため、
  AipoリマインダーをクライアントPCにインストールしても
  Aipoに接続出来ないというエラーが表示されますので、PostgreSQLが使用するポートを
  開ける必要があります。

   【Windows XP / Windows Server 2003等にAipoをインストールしている場合】
   ファイアウォールが有効になっている場合、「例外タブ」で「ポートの追加」より、
   5432ポートを開けるように設定して下さい。
   名前は特に何でも構いませんが、分かり易いように、Aipo_PostgreSQLとし、
   ポートは5432でTCPを選択して下さい。

   セキュリティ対策ソフトでファイアウォールを構築している場合は、
   そちらの設定が優先されますので、
   セキュリティ対策ソフトの設定を行って下さい。

   【LinuxにAipoをインストールしている場合】
   vi /etc/sysconfig/iptables

   COMMITの前に、
   -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5432 -j ACCEPT
   を追加し、iptables を再起動して下さい。
   (RH-Firewall-1-INPUTはディストリビューションによって異なる可能性があります。)

4.PostgreSQLの設定変更について(Windowsの場合)
  ここから先はPostgreSQLの知識がある方が行って下さい。

  AipoがEドライブにインストールされている場合は以下のように設定します。
  IPアドレスなどは環境に合わせて変更して下さい。

【postgresql.confの修正】  
  E:\aipo\dpl003\postgresql\data\postgresql.conf  

  49行目  
  #listen_addresses = 'localhost'  
  ↓  
  listen_addresses = '*'  

【pg_hba.confの修正】  
  E:\aipo\dpl003\postgresql\data\pg_hba.conf  
  以下の設定を追加(192.168.24.0/24のネットワークの場合)  

  host    all         aipo_reminder         192.168.24.0/24       md5  

  【ロールの追加と権限の付与】  
  AipoがインストールされているPostgreSQLに対して以下のコマンドを実行して下さい。  
  (aipo_reminderの名前やパスワード(reminder)については、変更して頂いて構いませんが、  
  その場合は、Aipoリマインダーの「DB設定」のユーザIDやパスワードも合わせて修正して下さい。)  

  以下のコマンドを一気に実行するバッチを用意しています。  
  postgres_setting.batを実行するとコマンドを入力する手間が省けます。  
【使い方】  
  バッチファイルをテキストエディタで開き、7行目のpsql実行ファイルのパスを環境に合わせて設定し、  
  Aipoがインストールされている環境にて実行して下さい。  

  一つ一つ実行する場合は以下の手順で行って下さい。  
  Windowsのコマンドプロンプトから実行する場合は、  
  E:\aipo\dpl003\postgresql\bin に移動したあと、以下のコマンドを実行して下さい。  

  psql -d org001 -U aipo_postgres  

  PostgreSQLに接続出来たら、以下のコマンドを順に実行して下さい。  

  【Aipo4~5の場合】  
    CREATE ROLE aipo_reminder WITH LOGIN PASSWORD 'reminder';  
    GRANT SELECT ON eip_t_schedule_map TO aipo_reminder;  
    GRANT SELECT ON eip_t_schedule TO aipo_reminder;  
    GRANT SELECT ON turbine_user TO aipo_reminder;  
    GRANT SELECT ON turbine_group TO aipo_reminder;  
    GRANT SELECT ON turbine_user_group_role TO aipo_reminder;  
    GRANT SELECT ON eip_t_whatsnew TO aipo_reminder;  
    GRANT SELECT ON eip_t_blog_entry TO aipo_reminder;  
    GRANT SELECT ON eip_t_blog_comment TO aipo_reminder;  
    GRANT SELECT ON eip_t_workflow_request_map TO aipo_reminder;  
    GRANT SELECT ON eip_t_workflow_request TO aipo_reminder;  
    GRANT SELECT ON eip_t_workflow_category TO aipo_reminder;  
    GRANT SELECT ON eip_t_msgboard_topic TO aipo_reminder;  
    GRANT SELECT ON eip_t_msgboard_category TO aipo_reminder;  
    GRANT SELECT ON eip_t_msgboard_category_map TO aipo_reminder;  
    GRANT SELECT ON eip_t_note TO aipo_reminder;  
    GRANT SELECT, INSERT, UPDATE ON eip_t_ext_timecard TO aipo_reminder;  
    GRANT SELECT ON eip_t_ext_timecard_system TO aipo_reminder;  
    GRANT SELECT ON eip_t_ext_timecard_system_map TO aipo_reminder;  
    GRANT UPDATE ON eip_t_ext_timecard_timecard_id_seq TO aipo_reminder;  

  【Aipo6,7の場合】  
    CREATE ROLE aipo_reminder WITH LOGIN PASSWORD 'reminder';  
    GRANT SELECT ON eip_t_schedule_map TO aipo_reminder;  
    GRANT SELECT ON eip_t_schedule TO aipo_reminder;  
    GRANT SELECT ON turbine_user TO aipo_reminder;  
    GRANT SELECT ON turbine_group TO aipo_reminder;  
    GRANT SELECT ON turbine_user_group_role TO aipo_reminder;  
    GRANT SELECT ON eip_t_whatsnew TO aipo_reminder;  
    GRANT SELECT ON eip_t_blog_entry TO aipo_reminder;  
    GRANT SELECT ON eip_t_blog_comment TO aipo_reminder;  
    GRANT SELECT ON eip_t_workflow_request_map TO aipo_reminder;  
    GRANT SELECT ON eip_t_workflow_request TO aipo_reminder;  
    GRANT SELECT ON eip_t_workflow_category TO aipo_reminder;  
    GRANT SELECT ON eip_t_msgboard_topic TO aipo_reminder;  
    GRANT SELECT ON eip_t_msgboard_category TO aipo_reminder;  
    GRANT SELECT ON eip_t_msgboard_category_map TO aipo_reminder;  
    GRANT SELECT ON eip_t_note TO aipo_reminder;  
    GRANT SELECT, INSERT, UPDATE ON eip_t_ext_timecard TO aipo_reminder;  
    GRANT SELECT ON eip_t_ext_timecard_system TO aipo_reminder;  
    GRANT SELECT ON eip_t_ext_timecard_system_map TO aipo_reminder;  
    GRANT UPDATE ON pk_eip_t_ext_timecard TO aipo_reminder;  
    GRANT SELECT ON activity TO aipo_reminder;  
    GRANT SELECT ON activity_map TO aipo_reminder;  

  \q で切断します。  

  最後にAipoの再起動を行って下さい。  

5.PostgreSQLの設定変更について(Linuxの場合)
  ここから先はPostgreSQLの知識がある方が行って下さい。

  Aipoが /usr/local/aipo にインストールされている場合は以下のように設定します。  
  IPアドレスなどは環境に合わせて変更して下さい。  

  【postgresql.confの修正】  
  vi /usr/local/aipo/postgres/data/postgresql.conf  

  49行目  
  #listen_addresses = 'localhost'  
  ↓  
  listen_addresses = '*'  

  【pg_hba.confの修正】  
  vi /usr/local/aipo/postgres/data/pg_hba.conf  
  以下の設定を追加(192.168.24.0/24のネットワークの場合)  

  host    all         aipo_reminder         192.168.24.0/24       md5  

  【ロールの追加と権限の付与】  
  AipoがインストールされているPostgreSQLに対して以下のコマンドを実行して下さい。  
  (aipo_reminderの名前やパスワード(reminder)については、変更して頂いて構いませんが、  
  その場合は、Aipoリマインダーの「DB設定」のユーザIDやパスワードも合わせて修正して下さい。)  

  Aipoが起動されていない場合は以下のコマンドで起動させて下さい。  
  /usr/local/aipo/bin/startup.sh  

  以下のコマンドでaipo_postgresユーザになります。  
  su - aipo_postgres  

  PostgreSQLに接続します。  
  psql -d org001 -U aipo_postgres  

  PostgreSQLに接続出来たら、以下のコマンドを順に実行して下さい。  

  【Aipo4~5の場合】  
    CREATE ROLE aipo_reminder WITH LOGIN PASSWORD 'reminder';  
    GRANT SELECT ON eip_t_schedule_map TO aipo_reminder;  
    GRANT SELECT ON eip_t_schedule TO aipo_reminder;  
    GRANT SELECT ON turbine_user TO aipo_reminder;  
    GRANT SELECT ON turbine_group TO aipo_reminder;  
    GRANT SELECT ON turbine_user_group_role TO aipo_reminder;  
    GRANT SELECT ON eip_t_whatsnew TO aipo_reminder;  
    GRANT SELECT ON eip_t_blog_entry TO aipo_reminder;  
    GRANT SELECT ON eip_t_blog_comment TO aipo_reminder;  
    GRANT SELECT ON eip_t_workflow_request_map TO aipo_reminder;  
    GRANT SELECT ON eip_t_workflow_request TO aipo_reminder;  
    GRANT SELECT ON eip_t_workflow_category TO aipo_reminder;  
    GRANT SELECT ON eip_t_msgboard_topic TO aipo_reminder;  
    GRANT SELECT ON eip_t_msgboard_category TO aipo_reminder;  
    GRANT SELECT ON eip_t_msgboard_category_map TO aipo_reminder;  
    GRANT SELECT ON eip_t_note TO aipo_reminder;  
    GRANT SELECT, INSERT, UPDATE ON eip_t_ext_timecard TO aipo_reminder;  
    GRANT SELECT ON eip_t_ext_timecard_system TO aipo_reminder;  
    GRANT SELECT ON eip_t_ext_timecard_system_map TO aipo_reminder;  
    GRANT UPDATE ON eip_t_ext_timecard_timecard_id_seq TO aipo_reminder;  

  【Aipo6,7の場合】  
    CREATE ROLE aipo_reminder WITH LOGIN PASSWORD 'reminder';  
    GRANT SELECT ON eip_t_schedule_map TO aipo_reminder;  
    GRANT SELECT ON eip_t_schedule TO aipo_reminder;  
    GRANT SELECT ON turbine_user TO aipo_reminder;  
    GRANT SELECT ON turbine_group TO aipo_reminder;  
    GRANT SELECT ON turbine_user_group_role TO aipo_reminder;  
    GRANT SELECT ON eip_t_whatsnew TO aipo_reminder;  
    GRANT SELECT ON eip_t_blog_entry TO aipo_reminder;  
    GRANT SELECT ON eip_t_blog_comment TO aipo_reminder;  
    GRANT SELECT ON eip_t_workflow_request_map TO aipo_reminder;  
    GRANT SELECT ON eip_t_workflow_request TO aipo_reminder;  
    GRANT SELECT ON eip_t_workflow_category TO aipo_reminder;  
    GRANT SELECT ON eip_t_msgboard_topic TO aipo_reminder;  
    GRANT SELECT ON eip_t_msgboard_category TO aipo_reminder;  
    GRANT SELECT ON eip_t_msgboard_category_map TO aipo_reminder;  
    GRANT SELECT ON eip_t_note TO aipo_reminder;  
    GRANT SELECT, INSERT, UPDATE ON eip_t_ext_timecard TO aipo_reminder;  
    GRANT SELECT ON eip_t_ext_timecard_system TO aipo_reminder;  
    GRANT SELECT ON eip_t_ext_timecard_system_map TO aipo_reminder;  
    GRANT UPDATE ON pk_eip_t_ext_timecard TO aipo_reminder;  
    GRANT SELECT ON activity TO aipo_reminder;  
    GRANT SELECT ON activity_map TO aipo_reminder;  

  \q で切断します。  

  最後にAipoの再起動を行って下さい。  

###AlertWindow.dllについて
AlertWindow.dllはYouryellaさんが作成したものを独自にカスタマイズしています。
Youryellaさんに使用の許可を頂いています。
本家サイト
http://youryella.wankuma.com/Library/ClassLibrary/AlertWindow.aspx

About

Aipoの新着通知を自動で取得するアプリケーションです。

Resources

License

Stars

Watchers

Forks

Packages

No packages published