「利用者:Kei ef 2000」の版間の差分

提供: VoIP-Info.jp
移動先: 案内検索
(Asterisk側の準備)
(Asterisk SugarLookup)
1行目: 1行目:
 
=Asterisk SugarLookup=
 
=Asterisk SugarLookup=
 +
<p>
  
 +
== Asterisk SugarLookupとは ==
 +
<br>
 +
 +
「Asterisk SugarLookup」は、Asterisk(及びその派生)のAGIとして動作する、Perlで書かれたプログラムです。
 +
 +
 +
機能は、Asteriskに着信が有った際に、そのCallerID(発信者の電話番号)をキーに、SugarCRMに登録されている「取引先」「取引先担当者」
 +
の名前を引き出し、Asterisk側にCALLERID(name)として渡す事で、各電話機やPCの画面上に、掛かってきた電話の主の情報を表示させる事が出来ます。
 +
 +
 +
また、Asteriskに着信が有ると、既にSugarCRMに登録された電話番号で有れば、その「取引先」もしくは「取引先担当者」からの「インバウ
 +
ンド」コールとして、自動的にSugarCRMに記録させる事が出来ます。
 +
 +
新規顧客からの着信の場合、未登録者からの着信として、電話番号と共に「インバウンド」コールとして、自動記録させる事も出来ます。
 +
 +
これによって、コールセンター含め、顧客からの問い合わせへの対応が漏れなく、かつ正確に対応する事が可能になります。またこれらの情報を使って、より効果的な営業やサポート活動に繋がります。
 +
 +
 +
※Asterisk、及びその派生(例:TrixboxCE,FreePBX)プロダクトで動作します
 +
 +
※SugarCRM、及びその派生(例:Info@Hand)プロダクトで動作します
 +
 +
※SugarCRMに着信記録を残す際も、CALLERID(name)としてAsteriskに返す時も、もちろん日本語に対応しています(文字コードはデータベースとsugarlookup.agiとを合わせる必要があります Asterisk SugarLookup日本語版はUTF-8で書かれています)。
 +
 +
  
 
== 導入の為に必要なもの ==
 
== 導入の為に必要なもの ==

2008年12月10日 (水) 01:01時点における版

Asterisk SugarLookup

Asterisk SugarLookupとは


「Asterisk SugarLookup」は、Asterisk(及びその派生)のAGIとして動作する、Perlで書かれたプログラムです。


機能は、Asteriskに着信が有った際に、そのCallerID(発信者の電話番号)をキーに、SugarCRMに登録されている「取引先」「取引先担当者」 の名前を引き出し、Asterisk側にCALLERID(name)として渡す事で、各電話機やPCの画面上に、掛かってきた電話の主の情報を表示させる事が出来ます。


また、Asteriskに着信が有ると、既にSugarCRMに登録された電話番号で有れば、その「取引先」もしくは「取引先担当者」からの「インバウ ンド」コールとして、自動的にSugarCRMに記録させる事が出来ます。

新規顧客からの着信の場合、未登録者からの着信として、電話番号と共に「インバウンド」コールとして、自動記録させる事も出来ます。

これによって、コールセンター含め、顧客からの問い合わせへの対応が漏れなく、かつ正確に対応する事が可能になります。またこれらの情報を使って、より効果的な営業やサポート活動に繋がります。


※Asterisk、及びその派生(例:TrixboxCE,FreePBX)プロダクトで動作します

※SugarCRM、及びその派生(例:Info@Hand)プロダクトで動作します

※SugarCRMに着信記録を残す際も、CALLERID(name)としてAsteriskに返す時も、もちろん日本語に対応しています(文字コードはデータベースとsugarlookup.agiとを合わせる必要があります Asterisk SugarLookup日本語版はUTF-8で書かれています)。


導入の為に必要なもの

■動作環境

<p>▽IP-PBX側
正常に稼働しているAsterisk(Ver1.4.xxで動作確認済)
もしくはAGIが使えるAsteriskの派生プロダクト(例:TrixboxCE等)

▽SugarCRM側
英語、もしくは日本語版(日本語パッチでも可)のSugarCRM5.0もしくは5.1
※Asteriskと同じサーバー上に無くても使えるが、接続の為に必要なポートが空いている必要がある

※基本的に、上記が動くサーバーで有れば、OSやアーキテクチャには依存しない(筈。。。)


■上記以外で必要な物

▽Perl関連
Asterisk::AGI;
LWP::UserAgent;
DBI;
Time::Piece
Time::Piece::MySQL

もし無ければ、上記の各CPANモジュールをコマンドプロンプトからAsteriskの稼働しているサーバーにインストールして下さい

※インストール方法
例: install <モジュール名>


▽「Asterisk SugarLookup」本体
本家Sugar ForgeのProjectページから、英語もしくは日本語版のファイルをダウンロードして下さい。

Sugar Forge/Asterisk SugarLookupプロジェクトページへGO!
-> http://www.sugarforge.org/projects/sugarlookup/
※2008年12月10日現在、英語、日本語版共にVer1.0.2が最新

Asterisk側の準備

■「Asterisk SugarLookup」のインストール


1,ダウンロードした「AsteriskSugarLookup(sugarlookup_xxx.agi)」を、AsteriskのAGIディレクトリにコピー、もしくは移動する

例:
cp sugarlookup_xxx.agi /var/lib/asterisk/agi-bin/


<p>2,sugarlookup_xxx.agiをsugarlookup.agiにリネームし、オーナーとグループをasteriskを実行しているユーザ名及びグループ名に変更する

例:
mv sugarlookup_xxx.agi sugarlookup.agi
chown asterisk sugarlookup.agi
chgrp asterisk sugarlookup.agi


3,sugarlookup.agiに実行権限を付与する

例:
chmod +x sugarlookup.agi


4,Asteriskの任意のダイヤルプランに、着信時にsugarlookup.agiを呼び出す様設定を追加する

例:Asteriskの場合
exten => s,1,NoOp(Sugarlookup started)
exten => s,n,AGI(sugarlookup.agi)
exten => s,n,NoOp(Sugarlookup end)

例:FreePBX/TrixboxCEの場合
/etc/asterisk/extensions_custom.confに、以下を加える

[custom-sugarlookup]
exten => s,1,NoOp(Sugarlookup started)
exten => s,2,AGI(sugarlookup.agi)
exten => s,3,goto(ここに着信させるダイヤルプランのコンテクストを指定する,1,1)


次に「Asterisk SugaLookup」を動作させたいインバウンドルートのDestinationに、先ほど作成した専用のコンテクスト[custom-sugarlookup]を指定します
※私は、カスタムDistinationで、以下を指定して作成しました

custom-sugarlookup,s,1


以上で、Asterisk側の準備は完了です。


Sugar CRM側の準備

■SugarCRM上での準備

・電話番号未登録者からの着信時にもコールを自動記録したい場合、「取引先」に専用の取引先を作成します

例:
「未登録者」や「新規顧客」等、任意の名称

※未登録者からの着信も記録するか否かは、sugarlookup.agiの設定にて、切り替える事ができます


■データベース(MySQL)の管理者権限、及び環境を確認する

※sugarlookup.agiの設定で使います


・SugarCRM(MySQL)の設置されたサーバーのIPアドレス

※標準のポート以外を利用している場合には、ポート番号も必要)

・SugarCRMのデータベース名

・SugarCRMデータベースのユーザー名

・SugarCRMデータベースのパスワード

・SugarCRMの管理者ID(sugar_admin_id)

※通常は、"1"

・上記で作成した未登録者からの着信時に割り当てる取引先のID(account_id)

※sugar_admin_idやaccount_idは、phpmyadmin等で調べると、便利です


「Asterisk SugarLookup」の設定

※Asterisk SugarLookupの設定は、直接sugarlookup.agiファイルをviなどエディターで編集してください

次期バージョンでは、設定ファイルと実行ファイルが分割される予定です


■設定項目

※Ver1.0.2_jpでは、48~61行目  

・$sugarlookup_active = "1";# SugarLookupの有効="1",無効="0"

・$lookup_account_only = "0";# "1"にすると電話番号を「取引先」からのみ検索します。
"0"の場合は、始めに「取引先担当者」を検索し、なければ「取引先」も検索します

・$database_hostname = "127.0.0.1";# MySQLサーバーのIPアドレス。
標準のポート以外を使用している場合には、"127.0.0.1;port=8080"の様にする

・$database_name = "sugarcrm";# MySQLサーバーに設定したSugarCRMのデータベース名

・$database_user = "sugar_admin_username";# SugarCRMデータベースのユーザー名 

・$database_password ="sugar_admin_password";# SugarCRMデータベースのパスワード

・$autocall_txt = "自動着信記録 電話:";# SugarCRMに記録される件名

・$sugar_admin_id = "1";# SugarCRMの管理者のid。通常は"1"

・$log_unknown_callers = "1";# 未登録者からの着信もSugarCRMに記録するかどうか(1=はい,0=いいえ)

・$sugar_account_id_missing_callerid = "be881b77-0946-11f6-66ca-492ae96d135c";# SugarCRM上で
未登録者用の専用「取引先」を作成し、そのaccount_idをphpmyadmin等で調べて、その値に変更して下さい

・$unknown_caller_autocall_txt = "未登録者からの自動着信記録 電話:";# 未登録者からの電話着信
の場合に記録される件名で、行末にそのCallerIDが自動付加されます

・$description = "Asteriskによる自動着信記録";# 「コール」に記録される注釈


Asterisk SugarLookupと今後について


■ホームページ(SugarForge)

http://www.sugarforge.org/projects/sugarlookup/


■開発陣営

Terje Christensen

ふかうみ けんいち<kenichiアットマークkula.co.jp>


■今後について

▽次期バージョンで搭載する予定の機能


Ver1.1

・Asterisk側へのCALLERID(name)を返すか否かの切り替え機能

・設定ファイルと実行ファイルの分割

・インストール及び初期設定スクリプトの搭載

・SugarCRMに登録された電話番号に"-","(",")"及びスペースが含まれていた場合でも、正しくCallerIDを引っ張ってくる機能


Ver2.x

・通話終了後、通話時間、対応した担当者、ステータスをSugarCRM側に記録

・通話を転送した場合にも、上記情報と転送先等が記録される

・ドキュメントファイルをリリースファイルに添付


その他

・ヴォイスメールが録音された場合、SugarCRM上からそのファイルを再生できる

・着信時にSugarCRM上に、該当する取引先をポップアップさせる

・ポップアップしたメニューから、アポイントやメモ、ミーティングを作成できる

・クリックtoコール

・AsteriskとSugarCRMのワンパッケージソリューション


▽今後の予定

・Ver1.1のリリース(年内)

・Ver2のリリース(時期は気まぐれ?)