ども。
週末は某所にて今シーズン初めてのマラソン大会に挑む担当ちゅんです。
Microsoft 365への移行作業も順調に進み、次のフェーズは電子メールの移行となりました。これまで八雲町では自庁のメールサーバにオープンソースWebメールソフトウェアである「roundcube」をインストールしたうえで利用してきました。
Roundcube – Free and Open Source Webmail Software
https://roundcube.net/
しかし、ついにそこにもクラウド化の波。長年慣れ親しんだインターフェイスであるroundcube、かなり名残惜しさを感じるものの、いよいよ卒業する時が近づいてきています。
現在、M365のOutlookにメールを移行すべく、先行テストや移行手順書の作成など準備を進めています。その中での一つの課題として「アドレス帳の引っ越し」があります。現行のroundcubeにはアドレス帳のエクスポート機能があり、これを利用すれば問題なく移行できそうに思えたのですが、出力されるファイル形式がVCFファイル(vCard形式)となり、Outlookに求められるCSVファイルは出力できませんでした。どうにかしてVCFからCSVに変換しなければインポートができないので、色々と調べていたのですが埒が明かず、最終手段「ChatGPT」の出番となりました。
最初はバッチファイルやPowerShellで処理できないかと相談していましたが、職員の利便性を考慮し、試しに「vcfファイルをcsvファイルに変換するhtmlを書いてください」と頼んでみると、答えはやっぱり「もちろんです!」と。その後、ずら~っとコードが表示されるので、それをメモ帳にコピーして拡張子htmlで保存。実行してみると、すでにほぼこちらの意図するような動作となっていて感動です。
ですが、作ってもらったコードではEdgeをIEモードで動作させたときにうまく動かないことが分かったのでそれを伝えてみると「以下の理由により動作しない可能性があります」と問題点を列挙したうえで、きちんと動くコードが再生成。どれだけ賢いのだろうと感動を通り越して若干恐ろしくさえ思えるほどです。
結果、生成されたhtmlがきちんと動作するか何度もテストを実施し、問題ないことが確認できたのでイントラサーバに保存。ブラウザからこれを開いてもらうことで、ユーザーが自ら保存したVCFファイルをCSVファイルに変換してもらう手順が整いました。生成AIを使う際、特にちょっとしたコードを書いてもらう際には「自分自身で確認してミスやおかしな記述が無いかをチェックできなければ使うべきではない」と言われています。これは本当に大事なポイントで、よくわからないけど結果が合っていればそれで良しという考えで安易に使った場合、いざというときにおかしな動きをしたり、最悪、データを消失(実際にやりました・・・)といった結果を招く恐れがあるので、そこだけは注意ですね。
・・・ただ、今回のコード、自分なりに確認しましたが、半分くらいは理解できませんでした。言っていることが完全に矛盾していますが、つまりは「自己責任である」ということです。
データ変換サイトもいくつかあるのですが、自前で作ったほうが絶対に安全です。
(投稿者:ちゅん)