_

Google Workspace 移行記:チャットワークの全履歴を Google Chat へ移行した話

Google Workspace 移行記:チャットワークの全履歴を Google Chat へ移行した話

こんにちは!システムデザインワークスの山岸です。 Google Workspace への統合プロジェクト、最後にして最大の難所が「チャットツールの移行」でした。

今回の移行プロジェクトの全容は、計3回に分けてお届けしております。 最終回となる今回は、チャットワークの履歴を丸ごと移行した舞台裏をお伝えします。


Google Workspace 移行記(全3回)

導入決定編:バラバラだった社内ツールを統合してみた話

メール移行編:さくらのメールと Gmail を分割配信で共存させた話(前回)

チャット移行編:チャットワークの全履歴を Google Chat へ移行した話(本記事)


実はこれまでも何度かチャットツールの移行を検討したことがあったのですが、そのたびに「過去のやり取りが消えてしまうことのロス」が大きすぎて、結局諦めてきたという経緯があります。

「新しいツールに移りたいけれど、これまでの膨大なログや資産を捨てたくない...」 そんな悩みを抱えている方は、きっと多いのではないでしょうか。

しかし、私たちは今回、諦めませんでした! 長年使い込んできた チャットワーク には、大切な仕事のログやファイルが山ほど詰まっています。それらをすべて Google Chat へ持っていくために、私たちはなんと、移行ツールを自作することにしました!

背景・課題:履歴が消えるのはやっぱり不安!「公式ツールなし」の壁

チャットを移行するとき、一番不安なのは「これまでのデータがなくなること」ですよね。

情報の断絶: 移行した後に「あのとき何て言ったっけ?」と検索できなくなる。

ファイルが迷子に: チャットにアップした大事な資料がどこにあるか分からなくなる。

公式ツールがない!: 実は、チャットワーク から Google Chat へ、投稿者や時間をそのまま引き継げる公式な手段ってないんです。

「過去の資産を捨てて心機一転!」なんて簡単には言えません。そこで私たちは、投稿者・送信日時・添付ファイル をすべてそのまま持っていける Node.js CLI ツールの開発に踏み切りました。

取り組みの概要:Google Chat Import Mode API を活用する

この移行を支えてくれたのが、Google Chat の 「Import Mode API」 です。

これは、既存のメッセージ履歴を Google Chat のスペースにインポートするための特別な仕組み。普通の投稿とは違って、過去の createTime(送信日時)を指定して投稿できるのが最大の魅力です。 さらに、Google Drive API とも連携させて、添付ファイルもクラウド上でスッキリ一元管理できるように設計しました。

実装・検証:こだわった 4 つのポイント

自作の移行ツール の開発では、こんな工夫を凝らしました。

1. 「誰が言ったか」を忠実に再現(ドメイン全体の委任)

Workspace ユーザーと チャットワーク ID を紐付けるマップを用意。Google の「ドメイン全体の委任」という機能を使って、「そのユーザー本人が投稿した」 状態を再現しました。これで移行後も違和感なく会話を振り返れます。

2. 時間のズレも許さない!タイムスタンプの保持

チャットワーク の送信日時をそのまま Google Chat へ。もしメッセージの形式エラー(マークダウンの書き方など)で失敗しても、自動でシンプルなテキストに直して再送するように実装しました。

3. ファイルは自動で Google Drive へ保存

チャットワーク のファイルは、自動でダウンロードして Google Drive のルーム別フォルダへアップロード。メッセージの末尾には、そのファイルの共有リンクを自動で追記するようにしました。

1// ファイルをアップしてリンクを貼る処理のイメージ(抜粋)
2const driveFile = await googleDrive.files.create({
3 resource: { name: fileName, parents: [folderId] },
4 media: { body: fileStream },
5 supportsAllDrives: true,
6});
7messageBody += `\n添付: ${fileName} - ${driveFile.data.webViewLink}`;


4. API の限界を HTML パースで突破!

実は チャットワーク API は直近 100 件しか取れないという制限があります。そこで、ブラウザから保存した HTML ファイルを読み込んで全メッセージを抽出する機能を実装!これで数年分の大事な履歴も漏らさず救出できました。


結果:全ルームの移行完了!検索性も大幅アップ

自作ツールのおかげで、すべての履歴を Google Chat へ統合できました。

会話の流れがそのまま!: 投稿者も時間もそのままなので、移行したことを忘れるくらい自然です。

ファイル探しがラクになった: すべて Google Drive に入っているので、強力な全文検索で見つけやすくなりました。

ついに「全部入り」の環境へ: メール、ドキュメント、そしてチャット履歴。Google のエコシステムを活用して、すべての業務ログを集約することで、Gemini へ自然言語で、人に聞くような感覚で質問ができるようになりました。過去の経緯も Gemini がさらに賢くサポートしてくれる環境が整いました!

まとめ:移行ツールを作ってみて分かったこと

Import Mode API の活用やドメイン委任の設定など、技術的な挑戦は多かったですが、その分「情報の価値を捨てない」移行ができました。

全 3 回にわたる Google Workspace 移行記、いかがでしたでしょうか。今回の記事が、同様の課題を抱える皆様の参考になれば幸いです。 ツール統合は単なるお掃除ではなく、「組織の知恵を最大化する」 ためのワクワクする投資なんだと確信しています。


Google Workspace 移行記(全3回)

導入決定編:バラバラだった社内ツールを統合してみた話

メール移行編:さくらのメールと Gmail を分割配信で共存させた話(前回)

チャット移行編:チャットワークの全履歴を Google Chat へ移行した話(本記事)


■ ご相談お待ちしております。

「チャットの移行を考えているけど、履歴が消えるのが心配...」「自社にぴったりの移行ツールが欲しい!」そんなお悩みはありませんか?

システムデザインワークスでは、公式ツールがないような難しいケースでも、API を活用したカスタム開発で皆さんの DX を全力で応援します。 「過去の資産を活かした移行を実現したい」というご要望があれば、ぜひ お問い合わせフォーム からお気軽にご相談ください!