3.WCF API

光CTIスマートコネクトサービスは、以下のWCF APIを提供します。

 

【サンプルプログラムの利用方法】

1.開発用のパソコンに「光CTIスマートコネクトサービス」をインストールします。

2.Visual Studio Community 2019 を起動し、WinFormアプリ、または、WPFアプリのプロジェクトを作成します。

3.プロジェクト内に以下2つの「サービス参照の追加」をします。

http://localhost:55963/CTI_SmartConnectService/DuplexService/mex

http://localhost:55963/CTI_SmartConnectService/SCS_Service/mex

 

4.以下の【クライアントプログラムのサンプルソース①②】を参考にプログラムを作成します。

5.以下の【クライアントプログラム用 App.config サンプル】を参考にApp.configファイルを変更します。

6.サービスとやり取りするJSONデータの構造を知るには、以下のファイルを参考にしてください。

データグリッド関連ファイル (1178 ダウンロード )

ビューモデル関連ファイル (929 ダウンロード )

 

【使用するポート】

  • 55963ポート(サービス側のパソコンでオープンが必要です。)
  • 80ポート(クライアント側のパソコンでサービス通知[コールバック通信]を利用する場合はオープンが必要です。)

 

【クライアントプログラムのサンプルソース①】

 

【クライアントプログラムのサンプルソース②】

 

【クライアントプログラム用 App.config サンプル】

 

【光CTIスマートコネクトサービスWCF API仕様①】

アドレス http://(サービス実行中のパソコンのIPアドレス):55963/CTI_SmartConnectService/SCS_Service/
バインディング basicHttpBinding
データ名称 コントラクト(オペレーションコントラクト)
バージョン string バージョン()
サービスプログラムのバージョンを文字列で取得します。
ライセンス string ライセンス()
ライセンス状態を文字列で取得します。
認証アクセスコード string 認証アクセスコード()
認証アクセスコードを文字列で取得します。
体験モード残日数 string[] 体験モード残日数()
体験モードの残日数を文字列配列で取得します。

string[0] = インストール日、string[1] = 残日数、string[2] = 認証状態(True = 認証OK)

収容回線 string 収容回線(string json, string del_json)
収容回線の設定をJSONデータで登録&削除、または取得します。

  • json = 登録データを設定します。
  • del_json = 削除データを設定します。
  • データ取得する場合は、json = null を設定します。
SIPサーバー接続設定 string SIPサーバー接続設定(string json, string del_json)
SIPサーバー接続設定の設定をJSONデータで登録&削除、または取得します。

  • json = 登録データを設定します。
  • del_json = 削除データを設定します。
  • データ取得する場合は、json = null を設定します。
接続中クライアント string 接続中クライアント()
接続中クライアントの一覧をJSONデータで取得します。
顧客アドレス帳 string 顧客アドレス帳(string json, string del_json)
顧客アドレス帳の設定をJSONデータで登録&削除、または取得します。

  • json = 登録データを設定します。
  • del_json = 削除データを設定します。
  • データ取得する場合は、json = null を設定します。
着信記録 string 着信記録(int top = 0, bool descending = true, long k_id = 0, string [] from = null, string upd_json = null)
着信記録の設定をJSONデータで更新、または取得します。

  • top に取得したい行数を設定します。top = 0 を設定すると全行を取得します。
  • decending = true を設定すると、着信日時の降順で取得します。
  • decending = false を設定すると、着信日時の昇順で取得します。)
  • k_id = 顧客ID を設定すると、その顧客IDを持つ顧客を対象にします。
  • k_id = 0 を設定すると、全ての顧客を対象にします。
  • from [0 ~ 5] = 相手TEL を設定すると、その相手TELからの着信を対象にします。
  • from = null を設定すると、すべての相手TELからの着信を対象にします。
  • upd_json = 更新データを設定します。
  • データ取得する場合は、upd_json = null を設定します。
着信時URL呼出 string 着信時URL呼出(string json, string del_json)
着信時URL呼出の設定をJSONデータで登録&削除、または取得します。

  • json = 登録データを設定します。
  • del_json = 削除データを設定します。
  • データ取得する場合は、json = null を設定します。
着信時コマンド呼出 string 着信時コマンド呼出(string json, string del_json)
着信時コマンド呼出の設定をJSONデータで登録&削除、または取得します。

  • json = 登録データを設定します。
  • del_json = 削除データを設定します。
  • データ取得する場合は、json = null を設定します。
通知先LINEアクセストークン string 通知先LINEアクセストークン(string json, string del_json)
着信時LINEアクセストークンの設定をJSONデータで登録&削除、または取得します。

  • json = 登録データを設定します。
  • del_json = 削除データを設定します。
  • データ取得する場合は、json = null を設定します。
通知先メールアドレス string 通知先メールアドレス(string json, string del_json)
通知先メールアドレスの設定をJSONデータで登録&削除、または取得します。

  • json = 登録データを設定します。
  • del_json = 削除データを設定します。
  • データ取得する場合は、json = null を設定します。
電話番号検索サイト string 電話番号検索サイト(string json, string del_json)
電話番号検索サイトの設定をJSONデータで登録&削除、または取得します。

  • json = 登録データを設定します。
  • del_json = 削除データを設定します。
  • データ取得する場合は、json = null を設定します。
メッセージ定義_メール用 string メッセージ定義_メール用(string json)
メッセージ定義(メール用)の設定をJSONデータで登録、または取得します。

  • json = 登録データを設定します。
  • データ取得する場合は、json = null を設定します。
メッセージ定義_LINE用 string メッセージ定義_LINE用(string json)
メッセージ定義(LINE用)の設定をJSONデータで登録、または取得します。

  • json = 登録データを設定します。
  • データ取得する場合は、json = null を設定します。
メッセージ定義_トースト用 string メッセージ定義_トースト用(string json)
メッセージ定義(トースト用)の設定をJSONデータで登録、または取得します。

  • json = 登録データを設定します。
  • データ取得する場合は、json = null を設定します。
メールアカウント string メールアカウント(string json)
メールアカウントの設定をJSONデータで登録、または取得します。

  • json = 登録データを設定します。
  • データ取得する場合は、json = null を設定します。
オンラインアクティベーション string オンラインアクティベーション(string json, string del_json)
オンラインアクティベーションの設定をJSONデータで登録&削除、または取得します。

  • json = 登録データを設定します。
  • del_json = 削除データを設定します。
  • データ取得する場合は、json = null を設定します。
データバックアップ string データバックアップ(string json)
データバックアップの設定をJSONデータで登録、または取得します。

  • json = 登録データを設定します。
  • データ取得する場合は、json = null を設定します。
ユーザー管理 string ユーザー管理(string json, string del_json)
ユーザー管理の設定をJSONデータで登録&削除、または取得します。

  • json = 登録データを設定します。
  • del_json = 削除データを設定します。
  • データ取得する場合は、json = null を設定します。
CSVデータ出力 string CSVデータ出力(string json)
CSVデータ出力の設定をJSONデータで登録、または取得します。

  • json = 登録データを設定します。
  • データ取得する場合は、json = null を設定します。
EXCELデータ出力 string EXCELデータ出力(string json)
EXCELデータ出力の設定をJSONデータで登録、または取得します。

  • json = 登録データを設定します。
  • データ取得する場合は、json = null を設定します。
ストリーム受信
(ファイルをローカルへコピー)
Stream GetStream(string filePath)
サーバー(サービスをインストールしたパソコン)のファイルをストリームでローカルにコピーします。

  • filePath = コピーするファイルのサーバー上のファイルパス

 

【光CTIスマートコネクトサービスWCF API仕様②】

アドレス http://(サービス実行中のパソコンのIPアドレス):55963/CTI_SmartConnectService/DuplexService/
バインディング wsDualHttpBinding
データ名称 コントラクト(オペレーションコントラクト)
接続中クライアントリストへ登録する void Regist(string name)
  • name = クライアント名を設定します。
接続中クライアントリストから登録解除する void UnRegist(string name)
  • name = クライアント名を設定します。
キープアライブ(タイムアウトを防ぐため、クライアントから5分間隔で呼び出す) void KeepAlive(string name)
WCFのタイムアウトを防ぐため、クライアントから定期的にキープアライブをコールします。(10分以内に1回コールする必要があります。)

  • name = クライアント名を設定します。
データ名称 コントラクト(コールバックコントラクト)
サービスからの通知 void SendData(string title, string msg)
サービスから着信メッセージ、クライアント生存確認、処理完了通知がコールバックされます。

  • title = メッセージタイトルがセットされています。
  • msg = メッセージ本文がセットされています。
着信時コマンド呼出の通知 void Notify_CommandCall(string tyakusin_nichiji, string from, string to, long kokyaku_id, string kokyaku_name, string tantou_name, string syubetsu)
サービスから着信時コマンド呼出の通知がコールバックされます。

  • tyakusin_nichiji = 着信日時がセットされています。
  • from = 相手TELがセットされています。
  • to = 着信TELがセットされています。
  • kokyaku_id = 顧客IDがセットされています。
  • kokyaku_name = 顧客名(会社名)がセットされています。
  • tantou_name = 担当者名がセットされています。
  • syubetsu = 回線種別がセットされています。
着信時URL呼出の通知 void Notify_URLCall(string tyakusin_nichiji, string from, string to, long kokyaku_id, string kokyaku_name, string tantou_name, string syubetsu)
サービスから着信時URL呼出の通知がコールバックされます。

  • tyakusin_nichiji = 着信日時がセットされています。
  • from = 相手TELがセットされています。
  • to = 着信TELがセットされています。
  • kokyaku_id = 顧客IDがセットされています。
  • kokyaku_name = 顧客名(会社名)がセットされています。
  • tantou_name = 担当者名がセットされています。
  • syubetsu = 回線種別がセットされています。