CRM Core

CRM Core is a comprehensive contact relationship management system for Drupal providing contact management (individuals and organizations), activity tracking, duplicate detection, and user account synchronization.

crm_core
245 sites
40
drupal.org

概要

CRM Coreは、Drupalにネイティブで構築された強力で柔軟なCRM(顧客関係管理)システムです。Drupalサイト内で連絡先の管理、アクティビティの追跡、関係の維持を行うための完全なフレームワークを提供します。

このモジュールは2つの主要な連絡先タイプをサポートしています:個人(人物)と組織(企業、グループ)。各連絡先タイプはカスタムフィールドを持つ複数のサブタイプ(バンドル)を持つことができます。連絡先はリビジョン、所有者追跡、公開ステータスをサポートしています。

CRM Coreには、電話、会議、メール、メモなどの連絡先とのやり取りを記録できるアクティビティ追跡システムが含まれています。アクティビティは複数の参加者にリンクでき、プラグインシステムを通じてカスタムアクティビティタイプをサポートしています。

また、設定可能なマッチングエンジンを備えた高度な重複検出フレームワークも提供しています。デフォルトのマッチングエンジンは、フィールドごとの比較と重み付けスコアを使用して、重複の可能性がある連絡先を特定します。

ユーザー同期機能により、DrupalユーザーアカウントをCRM連絡先レコードにリンクでき、ユーザー登録時の自動連絡先作成やユーザープロファイルでの連絡先情報の表示が可能になります。

Features

  • 連絡先管理:カスタマイズ可能なタイプ、リビジョン、カスタムフィールドを持つ個人および組織の連絡先を作成・管理
  • アクティビティ追跡:1つまたは複数の連絡先にリンクされたアクティビティ(電話、会議、メール、メモ)を記録・追跡
  • 重複検出:フィールドごとの比較と重み付けスコアリングを備えた設定可能なマッチングエンジンを使用して、重複の可能性がある連絡先を特定
  • ユーザー同期:Drupalユーザーアカウントを自動連絡先作成とプロファイル表示オプション付きでCRM連絡先にリンク
  • 連絡先マージ:同じタイプの複数の連絡先をマージし、選択したフィールド値を保持して関連アクティビティを移行
  • プライマリフィールド:各連絡先タイプのプライマリメール、電話、住所フィールドを指定
  • リビジョンサポート:完全なリビジョン履歴で連絡先の変更を経時的に追跡
  • Views統合:個人、組織、アクティビティを管理するための事前設定されたViews
  • 拡張可能なプラグインアーキテクチャ:Drupalのプラグインシステムを通じてカスタムアクティビティタイプとマッチングエンジンを追加
  • 詳細な権限設定:作成、表示、編集、削除操作に対するバンドル(タイプ)ごとの権限

Use Cases

Customer Database Management

Use CRM Core to maintain a database of customers. Create an 'Individual' type called 'Customer' with custom fields for customer information. Track customer interactions using Activities. Use matching engines to prevent duplicate customer records.

Organization Contact Directory

Build a directory of partner organizations, vendors, or clients. Create Organization types for different categories. Add contact individuals associated with each organization using reference fields.

User Profile Extension

Enable CRM Core User Sync to automatically create contact records for registered users. Users can then edit their extended contact information through their profile. Useful for membership sites or customer portals.

Activity Logging for Support

Track support interactions with customers using Activities. Create activity types for 'Support Call', 'Email', 'Meeting'. Link activities to customer contacts to maintain a complete interaction history.

Lead Deduplication

Import leads from multiple sources and use CRM Core Match to identify duplicates. Configure matching rules based on email, name, and phone fields. Use the merge action to consolidate duplicate records while preserving important data.

Membership Management

Manage member contacts with custom individual types (e.g., 'Member', 'Prospect'). Use user sync to link member accounts with contact records. Track membership activities and communications.

Tips

  • Use the 'primary_fields' setting on contact types to designate which email, phone, and address fields should be treated as the primary contact method.
  • When merging contacts, carefully select which field values to keep - the merge action allows choosing values from any of the contacts being merged.
  • Configure matching engine thresholds carefully - too low may create false positives, too high may miss actual duplicates.
  • For large sites, consider disabling 'Load contact related to the current user' in User Sync settings if contacts have many fields to avoid performance issues.
  • Create different Individual types for different purposes (Customer, Employee, Vendor) to keep permissions and workflows separate.
  • Use Views Bulk Operations with the merge contacts action to efficiently clean up duplicate records.
  • Activity types can have custom plugins for specialized behavior - extend ActivityTypePluginBase to create custom implementations.

Technical Details

Admin Pages 13
CRM Core /admin/structure/crm-core

Main administrative hub for CRM Core structure configuration. Provides access to contact type management, activity type configuration, and related settings.

CRM Core Configuration /admin/config/crm-core

Configuration overview page for all CRM Core settings including global settings, matching engines, and user synchronization.

CRM Core Settings /admin/config/crm-core/settings

Configure global CRM Core settings including the optional custom theme for CRM pages.

Individual Types /admin/structure/crm-core/individual-types

Manage individual (person) contact types. Create, edit, and delete bundles for categorizing individual contacts (e.g., Customer, Employee, Vendor).

Organization Types /admin/structure/crm-core/organization-types

Manage organization contact types. Create, edit, and delete bundles for categorizing organization contacts (e.g., Company, Supplier, Partner).

Activity Types /admin/structure/crm-core/activity-types

Manage activity types for recording interactions with contacts. Each type can have custom fields and a specific activity type plugin.

Matching Engines /admin/config/crm-core/match

Configure matching engines for duplicate contact detection. Create matchers with field-by-field rules and weighted scores to identify potential duplicates.

Add Matcher /admin/config/crm-core/match/add

Create a new matcher for duplicate detection with configurable threshold, return order, and field matching rules.

User Synchronization /admin/config/crm-core/user-sync

Configure how Drupal user accounts are synchronized with CRM contact records. Set up rules for automatic contact creation and display options.

CRM Core Dashboard /crm-core

Main CRM Core interface showing overview and quick access to contacts and activities.

Individuals /crm-core/individual

List and manage all individual contacts. Uses a Views-based interface with bulk operations including merge contacts.

Organizations /crm-core/organization

List and manage all organization contacts. Uses a Views-based interface with bulk operations.

Activities /crm-core/activity

List and manage all activities. View interactions recorded across all contacts.

権限 25
Administer Individuals

Allows users to perform any action on Individuals.

Create Individuals of any type

Allows creating individual contacts of any bundle type.

Edit own Individuals of any type

Allows editing individual contacts created by the user.

Edit any Individual of any type

Allows editing any individual contact regardless of owner.

View own Individuals of any type

Allows viewing individual contacts created by the user.

View any Individual of any type

Allows viewing any individual contact.

Administer Organizations

Allows users to perform any action on Organizations.

Create Organizations of any type

Allows creating organization contacts of any bundle type.

Edit own Organizations of any type

Allows editing organization contacts created by the user.

Edit any Organization of any type

Allows editing any organization contact regardless of owner.

View own Organizations of any type

Allows viewing organization contacts created by the user.

View any Organization of any type

Allows viewing any organization contact.

Administer individual types

Allows the user to edit the types of individuals such as Customer.

Administer organization types

Allows the user to edit the types of organization such as Supplier, etc.

View all Individual revisions

Allows viewing revision history for all individuals.

Revert all Individual revisions

Allows reverting to previous revisions for all individuals.

View all Organization revisions

Allows viewing revision history for all organizations.

Revert organization revisions

Allows the user to revert organizations to previous revisions.

Administer activity types

Allows users to configure activity types and their fields.

View CRM dashboard

Allows access to the CRM dashboard.

Administer matchers

Allows creating and configuring matching engines for duplicate detection.

View matching engine rules settings

Allows viewing matcher configuration without editing.

View match information

Allows viewing duplicate match information for contacts.

Administer User Synchronization

Access to configuration pages for User Synchronization.

Edit own contact information

Allows user to edit his/her own contact record from the user profile form.

Hooks 3
hook_crm_core_individual_delete

Responds when an individual contact is deleted.

hook_theme

Defines theme hooks for CRM Core entities.

hook_entity_predelete

Responds before entity deletion to handle related data.

Security Notes 4
  • Most administrative permissions have 'restrict access' flag requiring careful assignment.
  • Per-bundle permissions allow granular access control - users can be restricted to specific contact types.
  • The 'edit own contact information' permission should be granted carefully as it allows users to modify their linked contact record.
  • Matching engine configuration should be restricted to prevent unauthorized access to duplicate detection rules.