小ネタ:vTigerCRMの導入とカスタマイズ

珍しく「撮って出し」ネタです(記事は10/10 AM10:20に書き終えました)。私事ですが最近「公私」*1ともに忙しくさせていただいており、更に言えばまだ外に出せないネタもいくつか抱えていたり、そもそもブログも2つ書くようになって記事を書く量も増えたりと*2、あぁ、こうやって時間だけが過ぎていくんだな、と最近は感じています*3

本題:vTigerCRMを使う

仕事に関しては今ちょうど大き目のプロジェクトに参画したばかりなのですが、このプロジェクトではメインのシステムにvTigerCRMをベースとしてカスタマイズを行ったCRMを使うことになりました。と言うか、そういう提案を私がしたんですが。

聞きなれない方も多いでしょう。私自身この提案をかけるまでは知りませんでした。

www.vtiger.com

クラウド版の提供もありますが、今回の要件はかなりのカスタマイズを要することと、クローズドな環境での利用を想定していることもあり、オープンソースのオンプレミス版を使うことにしました。

www.vtiger.com

インストールはLAMPスタックに

詳細については別途記事にしたいのですが*4、考え方としてはLAMPスタックを作ってWebサーバのドキュメントルートにプログラムを放り込むだけ。Ubuntuならこんな感じでできるんじゃないかな。

...
$ sudo apt install lamp-server^
$ cd /var/www/html
$ sudo tar zxvf /path/to/download/vtigercrmX.X.X.tar.gz

※tar解凍なんで実際にはhtmlディレクトリの配下にvtigercrmのディレクトリができているはず。

で、ブラウザでhttp://installed.server/vtigercrmdir/index.phpと叩けばWeb版のインストーラが起動する、という仕組み。たぶん。

[未来ずら~]Dockerでサクッと構築

最近はDocker HubにもvTigerCRMのコンテナイメージが用意されていましてね。

hub.docker.com

いずれもオフィシャルのイメージというわけではないのですが、開発用にサクッと作るには大変便利です。Docker-composeでMySQLと必要に応じてPHPMyAdminでも導入しておけばDBの中身も見ながら作業ができてこれまた便利。

さらに、ちょっと時間が足りてなくてきちんと検証できていないのですが、docker-composeで開発環境が作れるのであれば、同じ理屈でクラウド環境で開発もできそうじゃん?と、Amazon ECS(Elastic Container Service)での環境構築にも現在挑戦中です。ECSの利用については実は今年に入って検討を進めていたのですが、時間が少なかったことと導入の敷居が意外と高かったことからなんとなくやっていた感じでした。それがここ数か月(7月以降?)でCLIでもECSがらみのコマンドが簡単に発行できるようになったりしていて、突然使いやすくなり、途中までですが私も試してみたりしています。

実際に使ってみた感触は?

最初提案のためにインストールして使ってみた感触は、

Salesforceのクローン、というわけではなさそうだけど、クセはあるなぁ」

特に今回採用しているのはVersion7なんですが、古いバージョン、例えば日本語対応がきちんとできているVer.6あたりだと、かなりSalesforceのルックアンドフィールに似せているなぁ、という印象があるんですが、Ver.7はそれほどでもないかな、と感じました。

ただ、「使いやすいか」、と言うとそうでもないです。もっとも業務用ソフトって使いやすさよりは機能充実、という感じなので仕方ないのですが。また、競合であるSalesforceとの直接比較をしても、最近のSalesforceに比べてしまうとアレですが、まぁ大して変わらない使いにくさ、とでも言いましょうか。結局は「慣れ」なんですけどね。

カスタマイズの難易度は?

まだわからない、というのが正直なところですが、「仕組み」「用語」を覚えていくと、徐々にカスタマイズ性が上がっていく、といった感じです。

Salesforceも同様なのですが、vTigerCRMも機能の単位は「Extension」という単位で管理されています。Joomla!などのCMSで採用されているモジュールと同じようなイメージでしょうか。加えて、業務機能の「Extension」だけではなく、機能を追加するための「Extension」もあります。これはWordpressプラグイン的なイメージと言えばいいでしょうか。

「Extension」を導入しつつカスタマイズを行っていく、というのがvTigerCRMのスタイルかな、という印象です。

まだわからないけれどひたすらいじり倒す予定

試行錯誤しながら、というと語弊があるのですが、わからないところも多いので少しずつ解析をしながらプロダクトアウトを目指したいと思います。とりあえず3か月くらいでリリースしちゃう予定です*5

*1:フリーランスの「公私」ってなんだ、って話ですけどね。特に今は「仕事」と「プライベート」を分けて考えていないので、どっちにしても、という話ですが。

*2:特にもう一つのブログは基本的に物品のレビューなので、レビューをするための時間がさらに必要になったりするんです。

*3:それに加えて「あつ森」なんかもやり始めたもんだからとにかく1日の時間の使い方に苦慮しておりますよ。

*4:要は自分用の備忘録として残したいんですよね。

*5:今回の開発は「一人スクラム」という謎なテーマでやっております。