近年、IoTという言葉を頻繁に耳にするようになりました。IoTとは「Internet of Things」の略で、「モノのインターネット」を意味します。個人の生活では冷蔵庫や洗濯機等の家電製品が、ビジネスの場では工場のラインや物流のトラック等がインターネットにつながる時代になりつつあります。
NTTコミュニケーションズ IoTプラットフォームはNTTコミュニケーションズ様が企業ユーザー向けに提案する、IoTソリューションのお客様向け総合窓口サイトです。
ANNAIは当サイトのコンサルティング、HA構成アーキテクチャ設計、マーケティングオートメーションツールとDrupalの連携、他システムとのユーザー連携、デザイン開発、モジュール開発を行いました。
Drupalを導入した経緯
ビジネスの変化に対応するプラットフォームとしてのDrupal
IoTは今急速な発展を遂げている成長分野です。NTTコミュニケーションズ様は「IoT推進室」を新設するなど、全社を挙げてIoT事業に取り組んでいます。そのため、急速な変化や成長、グローバルに展開できる機能を持つ、IoT戦略の中核を支えるサイトが必要とされていました。
NTTコミュニケーションズ様は以前に「NTTコミュニケーションズ APIデベロッパーポータル」にDrupalを採用していました。そのため、Drupalが優れた拡張性や多言語機能を備えていると同時に、社内の厳格なセキュリティーチェックやアクセシビリティチェックを満たす事のできるプラットフォームである事を認識されていた事もあり、Drupalの採用に至りました。
国内初のエンタープライズサイトにおけるDrupal 8の採用
Drupal 8はDrupal 7に比べて、多言語機能やエンタープライズ用途に耐えうる開発環境、継続的開発への適正、スケーラブルな拡張性などの面で多くの機能が改善されています。その反面、現時点ではDrupal 8による開発スキルを持つ開発者が乏しく、国内においては、まだ導入が進んでいない現状があります。ANNAIはDrupalコア・コントリビューターを要する専門開発会社としての強みを生かし、いち早くDrupal 8による開発体制を整えてきました。
今回のケースでは、NTTコミュニケーションズ様のIoT事業の戦略に応じた、柔軟かつ継続的な機能追加が必要とされます。そのため、今後もサポートが続き、より長期的な機能拡張が可能なDrupal 8を採用させていただくことになりました。
機能紹介
MAツールMauticとDrupalの高度な連携を実現
マーケティングオートメーションツールMauticとDrupalの連携を高度なレベルで実現しました。通常、MAツールを利用する際、MAがiframeやjavascriptにより提供するフォームをCMSサイト内に実装する方法が一般的です。これにより、フォームからの送信情報をMAが取得し、MAの持つストレージの中に情報を保存します。また、同様にユーザーのファイルダウロード履歴をトラッキングする際にも、ダウンロードファイルをMA上に設置する必要があります。
この方法には、明確な弱点があります。それは、CMSにより作成されたフォームや、CMS内に保存されているダウンロードファイル、ユーザー情報などの貴重なサイト内資産を、トラッキングの対象としてそのまま利用できない事です。
ANNAIではこの問題を解決するために、Drupal内の情報をAPIを用いてMauticと同期する拡張モジュールを開発しました。これにより、Drupal内でユーザーが作成された際に、Mautic内にも自動でユーザーが作成されます。また、Drupalで作成されたダウンロードファイルやコンタクトフォームのトラッキングにも対応しました。
多言語対応
ブラウザのユーザーエージェント及び、言語切り替えボタンによる言語の切り替えに対応しています。Drupal 8で強化された多言語機能を利用し、サイト内の全ての要素、コンテンツの多言語化に対応しています。
エンタープライズレベルの冗長化構成
複数台のウェブサーバーによる負荷分散、データベースのクラスター化。ストレージの分散化を実現しています。
Drupalを知り尽くしたANNAIだからできる、将来のビジネス展開を見据えた開発体制
将来的にNTTコミュニケーションズ IoTプラットフォームは、各種IoTパッケージやサービスをサイト内で組み合わせ、購入が可能な、ダッシュボード機能を有したサイトに成長する予定です。今回はクライアントの将来的なビジネス展開を視野に入れ、ベストな選択としてDrupal 8の導入を提案させていただきました。現在も、NTTコミュニケーションズ様と二人三脚の開発体制で、機能拡張に向けたリリース体制の整備を進めています。
ANNAIでは、Drupalや拡張モジュールのリリースサイクルを考慮しながら、どのバージョンのDrupalや拡張モジュールを利用すべきかを慎重に判断させていただいております。