すべての項目を自由にカスタマイズ 顧客管理 データベース Fullfree(フルフリー)

VBAで電話番号取得

CTIシステムを簡単に自作

ご要望の多かった Access との連携は特に簡単になっています。検索処理も含めると、Excel の場合はもっと簡単です。VBAを数行書くだけで着信時の電話番号が取得出来ます。CTI機器の検出・設定・接続など面倒な処理は Fullfree 側で行います。Fullfree を使うと、高価なCTIシステムを無料で簡単に自作することも可能です。

Fullfree に一切データを保存しない場合でも、設定を保存するためにデータベースの作成は必要です。Fullfree は常駐機能で常駐し、起動したら自動的にCTI接続するように接続機器の設定をしておくと便利です。クラウドを使って1台のパソコンで受けた着信通知を最大50台のパソコンに通知することも可能です。

尚、Fullfree と連携するシステムとはどちらを先に起動しても構いません。Fullfree 側の着信ポップアップ表示は必要ない場合、カスタム通知設定にて設定してください。

目次
  1. VBA の場合 (Access, Excel など)
  2. VB, C# などの場合 (.NET Framework)
  3. APIリファレンス
  4. すぐ試せるサンプルファイル

VBA の場合 (Access, Excel など)

Access や Excel など VBA での利用方法について説明します。尚、Excel で VBA を使うには、[ファイル]-[オプション] の「リボンのユーザー設定」から「開発」タブを表示するようにして下さい。

VBA のエディタから [ツール]-[参照設定] で参照設定のダイアログを開いて下さい。

VBA参照設定(1)

Fullfree Client Library を有効にして下さい。(注:この項目は Fullfree をインストールしている場合のみ表示されます)

VBA参照設定(2)

Fullfree のCTI機能が使えるようになるので、例えば下記のようなコードで電話番号が取得出来ます。

例:Access のフォームの場合
' 電話着信時のイベントを登録
Private WithEvents cti As CtiSystem

' Access のフォームが開いた時に呼ばれます
Private Sub Form_Open(Cancel As Integer)
    Set cti = New CtiSystem
    cti.Start ' 着信電話番号の取得を開始
End Sub

' 電話着信時に呼ばれます
Private Sub cti_PhoneCalled(ByVal sender As CtiSystem, ByVal info As CtiCallInfo)
    MsgBox "着信電話番号:" & info.Tel
End Sub

着信電話番号以外にも、最後の着信はいつだったかなどの情報も取得出来ます。詳細はAPIリファレンスを参照して下さい。

VB, C# などの場合 (.NET Framework)

VB や C# など .NET Framework での利用方法について説明します。.NET Framework 4.0 以上で利用できます。

Visual Studio の [プロジェクト]-[参照の追加] メニューから参照マネージャーを開いて下さい。そして、「アセンブリ」の「拡張」から Fullfree Client Library を有効にして下さい。(注:この項目は Fullfree をインストールしている場合のみ表示されます)

参照マネージャー

Fullfree のCTI機能が使えるようになるので、例えば下記のようなコードで電話番号が取得出来ます。例は WPF ですが、Windows Forms でも利用可能です。Windows Forms のサンプルはサンプルファイルをご覧下さい。

例:VB で WPF 場合
Imports Fullfree.Client

Class MainWindow
    Public Sub New()
        InitializeComponent()
        Dim cti As New CtiSystem
        cti.EventDispatcher = Dispatcher
        AddHandler cti.PhoneCalled, AddressOf CtiPhoneCalled
        cti.Start ' 着信電話番号の取得を開始
    End Sub

    ' 電話着信時に呼ばれます
    Private Sub CtiPhoneCalled(sender As ICtiSystem, info As ICtiCallInfo)
        MessageBox.Show("着信電話番号:" & info.Tel)
    End Sub
End Class
例:C# で WPF 場合
using System.Windows;
using Fullfree.Client;

namespace CtiTest
{
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();

            var cti = new CtiSystem { EventDispatcher = Dispatcher };
            cti.PhoneCalled += CtiPhoneCalled;
            cti.Start(); // 着信電話番号の取得を開始
        }

        // 電話着信時に呼ばれます
        private void CtiPhoneCalled(ICtiSystem sender, ICtiCallInfo info)
        {
            MessageBox.Show("着信電話番号:" + info.Tel);
        }
    }
}

着信電話番号以外にも、最後の着信はいつだったかなどの情報も取得出来ます。詳細はAPIリファレンスを参照して下さい。

APIリファレンス

Fullfree.Client.CtiSystem
種類 メンバ 内容
プロパティ Dispatcher EventDispatcher 着信通知を行うための Dispatcher です。UI を持つアプリの場合、デフォルトはコンストラクターを呼び出したスレッドの Dispatcher です。null を指定すると通知用の Task が生成されます。【.NET Framework 専用】
メソッド void Start() 電話着信の受信を開始します。
void Stop() 電話着信の受信を終了します。
イベント PhoneCalled(ICtiSystem sender, ICtiCallInfo info) 電話着信時に呼び出されます。着信情報は info に渡されます。
Fullfree.Client.ICtiCallInfo
種類 メンバ 内容
プロパティ string Tel 着信電話番号です。(検索向け)
string TelFormed ハイフン(-) 区切りの着信電話番号です。(表示向け)
DateTime Called 電話着信の日時です。
int HistoryCount 同じ着信電話番号での過去の着信回数です。(今回が初回の場合は 0) <注1>
DateTime LatestHistory 同じ着信電話番号で最後に着信のあった日時です。(今回が初回の場合は DateTime.MinValue) <注1>
string DbName 開いているデータベース名です。(Fullfree を複数起動する場合の区別向け)

<注1> HistoryCount, LatestHistory を利用するには着信履歴を保存するためのテーブルを作成し、着信履歴設定が必要です。データベースを作成時、「着信履歴を保存する」をオンにしているとあらかじめ設定された状態でデータベースが作成されます。

すぐ試せるサンプルファイル

すぐ試せるようにサンプルファイルを用意しました。Access や Excel の場合は、検索処理も書いていますので VBA が初めてという方でも対応しやすくなっています。Excel の場合はとても短いコードで済みます。

含まれる内容は下記の通りです。

  • 使い方の説明
  • Access のサンプルファイル
  • Excel のサンプルファイル
  • VB, C# のサンプルプロジェクト

ダウンロードしたらまず、“使い方.mht” をご覧下さい。

PAGETOP
Copyright © FreeStyle All Rights Reserved.