CTIシステムを簡単に自作
Access との連携は特に簡単になっています。検索処理も含めると、Excel の場合はもっと簡単です。VBAを数行書くだけで着信時の電話番号が取得出来ます。CTI機器の検出・設定・接続など面倒な処理は Fullfree 側で行います。Fullfree を使うと、高価なCTIシステムを無料で簡単に自作することも可能です。
もし、出来が良くて自社利用だけでなく、大量に再販したいといった場合にも対応しています。Fullfree の代わりに xCTI を使って下さい。
Fullfree に一切データを保存しない場合でも、設定を保存するためにデータベースの作成は必要です。Fullfree は常駐機能で常駐し、起動したら自動的にCTI接続するように接続機器の設定をしておくと便利です。クラウドを使って1台のパソコンで受けた着信通知を最大200台のパソコンに通知することも可能です。
尚、Fullfree と連携するシステムとはどちらを先に起動しても構いません。Fullfree 側の着信ポップアップ表示は必要ない場合、カスタム通知設定にて設定してください。
VBA の場合 (Access, Excel など)
Access や Excel など VBA での利用方法について説明します。尚、Excel で VBA を使うには、[ファイル]-[オプション] の「リボンのユーザー設定」から「開発」タブを表示するようにして下さい。
VBA のエディタから [ツール]-[参照設定] で参照設定のダイアログを開いて下さい。
Fullfree Client Library を有効にして下さい。(注:この項目は Fullfree をインストールしている場合のみ表示されます)
Fullfree のCTI機能が使えるようになるので、例えば下記のようなコードで電話番号が取得出来ます。
例:Access のフォームの場合
' 電話着信時のイベントを登録 Private WithEvents cti As CtiSystem ' Access のフォームが開いた時に呼ばれます Private Sub Form_Open(Cancel As Integer) Set cti = New CtiSystem 'cti.ResellerKey = "000000000-000000000-000000000" ' xCTIの場合は指定が必要 cti.Start ' 着信電話番号の取得を開始 End Sub ' 電話着信時に呼ばれます Private Sub cti_PhoneCalled(ByVal sender As CtiSystem, ByVal info As CtiCallInfo) MsgBox "着信電話番号:" & info.Tel End Sub
着信電話番号以外にも、最後の着信はいつだったかなどの情報も取得出来ます。詳細はAPIリファレンスを参照して下さい。
Fullfree ではなく xCTI から利用する場合は、CtiSystem クラスの ResellerKey プロパティにリセラーキーを設定して下さい。Fullfree の場合は設定しないで下さい。
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.ResellerKey = "000000000-000000000-000000000" ' xCTIの場合は指定が必要 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.ResellerKey = "000000000-000000000-000000000"; // xCTIの場合は指定が必要 cti.PhoneCalled += CtiPhoneCalled; cti.Start(); // 着信電話番号の取得を開始 } // 電話着信時に呼ばれます private void CtiPhoneCalled(ICtiSystem sender, ICtiCallInfo info) { MessageBox.Show("着信電話番号:" + info.Tel); } } }
着信電話番号以外にも、最後の着信はいつだったかなどの情報も取得出来ます。詳細はAPIリファレンスを参照して下さい。
Fullfree ではなく xCTI から利用する場合は、CtiSystem クラスの ResellerKey プロパティにリセラーキーを設定して下さい。Fullfree の場合は設定しないで下さい。
ワンポイント
今後 Fullfree Client Library がバージョンアップされた場合、ビルド時に自動的にそれが使われるように FullfreeClient の参照プロパティの「特定バージョン」を False に設定するのがお勧めです。True のままだと、Fullfree Client Library がバージョンアップされるとビルドできなくなります。
APIリファレンス
Fullfree.Client.CtiSystem
種類 | メンバ | 内容 | 対応バージョン |
---|---|---|---|
プロパティ | Dispatcher EventDispatcher | 着信通知を行うための Dispatcher です。UI を持つアプリの場合、デフォルトはコンストラクターを呼び出したスレッドの Dispatcher です。null を指定すると通知用の Task が生成されます。【.NET Framework 専用】 | 初期バージョンから |
ResellerKey | 再販者用キー。(xCTI でのみ指定が必要) | ライブラリ 1.2 から (Fullfree 3.3.0) |
|
メソッド | 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 を複数起動する場合の区別向け) | ||
string GroupName | 着信グループ名です。<注2> | ライブラリ 1.1 から (Fullfree 3.1.0) |
|
string PcName | 着信PC名です。<注3> | ||
string Device | 着信機器です。 | ||
string LineInfo | 回線情報です。(ひかり電話ルーター・SIP対応機器の場合は電話番号、それ以外の機器ではCOM) |
<注1> HistoryCount, LatestHistory を利用するには着信履歴を保存するためのテーブルを作成し、着信履歴設定が必要です。データベースを作成時、「着信履歴を保存する」をオンにしているとあらかじめ設定された状態でデータベースが作成されます。
<注2> GroupName を利用するには複数の電話番号を扱うをオンにして下さい。
<注3> PcName はデータ共有機能を利用している場合のみ有効です。
すぐ試せるサンプルファイル
すぐ試せるようにサンプルファイルを用意しました。Access や Excel の場合は、検索処理も書いていますので VBA が初めてという方でも対応しやすくなっています。Excel の場合はとても短いコードで済みます。
含まれる内容は下記の通りです。
- 使い方の説明
- Access のサンプルファイル
- Excel のサンプルファイル
- VB, C# のサンプルプロジェクト
ダウンロードしたらまず、“使い方.html” をご覧下さい。