9. CSVインポート機能
Rocket.Chatでは、CSVファイルをインポートすることでデータを追加することができます。
Note
2022年8月現在(Rochet.chat 5.0.3)、CSVインポートは不具合のため利用できません。
CSVファイルから追加できるデータは以下の通りです。
特定の形式で作成したCSVファイルはインポートを行う前にZIPファイルにする必要があります。
本章では、各データのCSVファイルの形式とインポートの方法について解説します。
9.1. CSVインポートの流れ
CSVファイルを用いて、データをインポートするには以下の手順で行います。
- CSVファイルの作成
- CSVファイルをZIP圧縮
- WEB画面からインポート
CSVファイルの作成は、追加したいデータによって形式が異なります。
各ファイルの形式について、以下で解説します。
9.2. ユーザーデータのCSVファイル
CSVインポートを利用しユーザーを追加するためには、以下の形式のCSVファイルを作成します。
ファイル名は、 users.csv
で作成します。
testuser2,testuser2@example.com,testuser2
testuser3,testuser3@example.com,TEST3
testuser4,testuser4@example.com,TEST4
testuser5,testuser5@example.com,テスト5
カラムの説明は以下の通りです。
- ユーザー名を指定。
@
およびその他の特殊文字は利用できません。
- メールアドレスを指定。
- 表示名を指定。日本語の指定も可能です。
作成したCSVファイルはZIPファイル形式に圧縮します。
$ zip fileToImport.zip users.csv
圧縮したZIPファイルをRocket.Chatの管理画面からインポートします。
インポート方法については、 CSVファイルのインポート を参照してください。
CSVインポートの後、ユーザー一覧画面に遷移すると、ユーザーが追加されていることが確認できます。
Note
CSVインポートでユーザーを追加する際に、パスワードを設定することはできません。追加されたユーザーにはWelcomeメールが送信され、ユーザー初回ログイン時にパスワードを設定する画面が表示されます。
9.3. チャンネルデータのCSVファイル
CSVファイルからチャンネルデータをインポートする場合、 channels.csv
ファイルを作成します。
Note
メンバー間でのプライベートな1対1の会話を行う、ダイレクトメッセージは channels.csv
とは異なる形式のファイルでインポートを行います。詳しくは、 ダイレクトメッセージデータのCSVファイル を参照してください。
9.3.1. チャンネルCSV形式
CSVインポートを利用してチャンネルを追加するためには、以下の形式のCSVファイルを作成します。
チャンネル作成者を管理者ユーザー以外にする場合、インポートを行う際に users.csv
もインポートする必要があります。 users.csv
の形式については ユーザーデータのCSVファイル を参照してください。
チャンネル用CSVファイル名は、 channels.csv
で作成します。
"testchannel1","testuser2","public","testuser2;testuser3;admin"
"testchannel2","admin","public",""
"private_test1","testuser4","private","testuser4;testuser5"
カラムの説明は以下の通りです。
- チャンネル名を指定。
- チャンネル作成者(ユーザー名)を指定。
- パブリック(
public
)かプライベート( private
)を指定。指定のない場合はパブリックチャンネルとなります。
- チャンネルのメンバーを指定。複数指定する場合はセミコロン(
;
)で区切ります。メンバーには必ず作成者を含めてください。空の場合は作成者のみがチャンネルに参加します。
作成したCSVファイルは users.csv
と合わせてZIPファイル形式に圧縮します。
$ zip fileToImport.zip channels.csv users.csv
Note
users.csv
と合わせてインポートしなかった場合、すでに存在するユーザーをチャンネル作成者として指定しても、全て管理者ユーザーとなるので注意してください。
圧縮したZIPファイルをRocket.Chatの管理画面からインポートします。
インポート方法については、 CSVファイルのインポート を参照してください。
9.4. メッセージデータのCSVファイル
CSVファイルからメッセージデータをインポートする場合、メッセージデータを追加するチャンネルのディレクトリ名を作成し、 messages.csv
ファイルを配置します。
ディレクトリとメッセージデータ用CSVファイルは以下のように作成する必要があります。
- パブリックチャンネル
- general/messages.csv
- チャンネル名1/messages.csv
- チャンネル名2/messages.csv
- プライベートチャンネル
- グループ名1/messages.csv
- グループ名2/messages.csv
- ダイレクトメッセージ
- directmessages/messages1.csv
- directmessages/messages2.csv
Note
パブリックチャンネルとプライベートチャンネルは、チャンネル名でディレクトリを作成しファイルを配置します。ダイレクトメッセージは directmessages
という共通のディレクトリに複数のファイルを配置します。
ダイレクトメッセージの場合のみ、CSVファイルの形式が異なります。
9.4.1. パブリックチャンネル/プライベートチャンネル
パブリックチャンネルとプライベートチャンネルのCSVファイルの形式は共通です。
CSVインポートを利用してチャンネルにデータを追加するには、まずチャンネル名のディレクトリを作成します。
ここでは、パブリックチャンネルの general
と testchannel1
、プライベートチャンネルの private_test1
にデータを追加する例で解説します。
まず、CSVファイルを配置するためのディレクトリを作成します。
$ mkdir general
$ mkdir testchannel1
$ mkdir private_test1
作成したディレクトリ配下にメッセージ用CSVファイルを作成します。
ファイル名は、 messages.csv
で作成します。
"admin","1589365629000","This is a test message."
"testuser1","1589365629020","This is a test message."
- testchannel1/messages.csv
"admin","1589865629000","パブリックチャンネルです"
"testuser1","1589965629020","メッセージを送るテストをしています"
- private_test1/messages.csv
"testuser4","1599965629020","testuser4が送信しています"
カラムの説明は以下の通りです。
- メッセージを送信するユーザー名を指定。
- ミリ秒単位のタイムスタンプを指定
- メッセージ内容を指定。日本語を入力することも可能です。
作成したCSVファイルはディレクトリごとZIPファイル形式に圧縮します。
$ zip -r fileToImport.zip general testchannel1 private_test1
圧縮したZIPファイルをRocket.Chatの管理画面からインポートします。
インポート方法については、 CSVファイルのインポート を参照してください。
9.4.2. ダイレクトメッセージデータのCSVファイル
CSVインポートを利用してダイレクトメッセージにデータを追加するには、 directmessages
ディレクトリ配下に、以下の形式のCSVファイルを作成します。
ファイル名は、 messages[NUM].csv
で作成します。
Note
[NUM] の部分は数字が入ります。ダイレクトメッセージは1対1のメッセージのため、ダイレクトメッセージの部屋ごとにCSVファイルを分ける必要があります。
CSVファイルを配置するためのディレクトリを作成します。
作成したディレクトリ配下にメッセージ用CSVファイルを作成します。
- adminとtestuser1のダイレクトメッセージ
"admin","testuser1","1589365629000","This is a test message."
"testuser1","admin","1589365629020","Hello message."
"testuser1","admin","1589365629030","こんにちは message."
- testuser1とtestuser2のダイレクトメッセージ
"testuser2","testuser1","1589365629000","This is a test message."
"testuser1","testuser2","1589365629020","This is a test message."
カラムの説明は以下の通りです。
- メッセージを送信するユーザー名を指定。
- メッセージを受信するユーザー名を指定。
- ミリ秒単位のタイムスタンプを指定
- メッセージ内容を指定。日本語を入力することも可能です。
作成したCSVファイルはディレクトリごとZIPファイル形式に圧縮します。
$ zip -r fileToImport.zip directmessages
圧縮したZIPファイルをRocket.Chatの管理画面からインポートします。
インポート方法については、 CSVファイルのインポート を参照してください。
9.5. CSVファイルのインポート
作成したCSVファイルは、管理メニューの インポート
から取り込みます。
管理者メニューから 管理
を選択します。
インポート画面に遷移し、 新しいファイルをインポート
をクリックします。
インポートを行うための情報を入力し、右上にある インポート
ボタンをクリックします。
入力する情報の項目は以下の通りです。
設定値
項目名 |
設定 |
説明 |
インポートのタイプ |
CSV |
CSVファイルをインポートするため CSV を選択します。 |
ファイルタイプ |
アップロードする |
作成たファイルをアップロードする場合は、 アップロードする を選択します。この他、 公開URL サーバーファイルパス が選択できます。 |
ソースファイルの選択 |
fileToImport.zip |
作成したCSVファイルを選択します。 |
ファイルが読み込まれ、インポートするデータの選択画面に遷移します。
インポートしたいデータにチェックを入れ、右上にある インポートを開始
をクリックします。
インポートが完了すると、Rocket.ChatにCSVファイルのデータがインポートされます。