配布インストール
ホームサーバーはFreeBSDを実行しています 。 すべての手順とパスは、このオペレーティングシステムに適用されます。 実際、わずかな労力で、すべてがアスタリスクを実行できるプラットフォームに完全に適応します。
むかしむかし、ソースからアスタリスクをインストールしました。 私は問題が何であったか覚えていません、それはポイントではありません。 アセンブリには複雑なものはありません。 今回は、ポートシステムを使用せずに使用しました。
cd /usr/ports/net/asterisk 
      
        
        
        
      
     make install clean
      
      コンフィギュレーターにデフォルトですべてを残しました。 すべてが問題なく集まった。 予想どおり、構成は/ usr / local / etc / asterisk /にあります。 そして、いつものようにそれらの少数はありませんでした。 実際、必要なのはそのうち3つだけです。
自動実行デーモンについて忘れないでください。
echo 'asterisk_enable=”YES”' >> /etc/rc.conf
      
      構成
プロバイダーはsip-telephonyサービスを提供します。 直接の都市番号を提供します。 参照条件に従って、サーバーはプロバイダーのサーバーに自動的に登録し、プロバイダーからの着信の場合は、内部電話にルーティングする必要があります。 内部電話は、SIPを介して鉄のゲートウェイを介してサーバーに接続されている通常の電話です。 誰も電話に出ない場合、音声メッセージを失い、発信者に音声メッセージを残すように申し出ます。
「ローカル」電話から呼び出す場合は、プレフィックスを使用してプロバイダーにアクセスします(最も馴染みのあるオプションとして9で停止しました)。 番号をダイヤルするとき(私の場合は777、ボイスメールメニューに入ります)。 接頭辞なしで「都市へ」出口を作ることは可能でしたが、私の計画ではsipnet.ruに接続し、それを通して都市間および国際的な目的地を使用します。 確かに、あなたが真実に直面した場合、私の地元のプロバイダーのサービスは有用です、それは直接の都市番号と市内の格安通話です。
構成に戻ります。
すべての接続は、SIPプロトコルを使用して行われます。 sipを使用したAsteriskの操作に関するすべては、ファイル/usr/local/etc/asterisk/sip.confに記述されています。
[general] 
      
        
        
        
      
     videosupport=no 
      
        
        
        
      
     useragent=boorhomepbx 
      
        
        
        
      
     register=<_username>:<_password>@<_server_address>/200 
      
        
        
        
      
     
      
        
        
        
      
     [100] 
      
        
        
        
      
     type=friend 
      
        
        
        
      
     host=dynamic 
      
        
        
        
      
     username=100 
      
        
        
        
      
     secret=    
      
        
        
        
      
     language=ru 
      
        
        
        
      
     nat=no 
      
        
        
        
      
     canreinvite=no 
      
        
        
        
      
     context=home 
      
        
        
        
      
     mailbox=200@default 
      
        
        
        
      
     disallow=all 
      
        
        
        
      
     allow=ulaw 
      
        
        
        
      
     allow=alaw 
      
        
        
        
      
     deny=0.0.0.0/0 
      
        
        
        
      
     permit=192.168.0.0/24 
      
        
        
        
      
     
      
        
        
        
      
     [ext-out] 
      
        
        
        
      
     type=peer 
      
        
        
        
      
     context= extrnl 
      
        
        
        
      
     username=username 
      
        
        
        
      
     secret=<_password> 
      
        
        
        
      
     host=server_address 
      
        
        
        
      
     dtmf=inband 
      
        
        
        
      
     nat=yes 
      
        
        
        
      
     canreinvite=no 
      
        
        
        
      
     insecure=invite,port 
      
        
        
        
      
     fromuser=<_username> 
      
        
        
        
      
     fromdomain=<_server_address> 
      
        
        
        
      
     authname=<_username> 
      
        
        
        
      
     authuser=<_username>
      
      100は市内電話です
ext-outはプロバイダーです
_username-プロバイダーに登録するためのユーザー名
_password-プロバイダーに登録するためのパスワード
_server address-プロバイダーサーバーアドレス
次の行に注意することが重要です。
register=<_username>:<_password>@<_server_address>/200
      
      ここでは、プロバイダーに登録するようサーバーに指示し、着信コールの場合、200の内線番号にそれを送信(コール)します。
まさに(完全に適切なリトニマックスとして推奨されるように)、拒否/許可ディレクティブを使用する習慣を身に付ける価値があります。 彼らが言うように、神は救います。
次に、サーバーが着信呼び出しで何をする必要があるかを知るように、ダイヤルプランを構成する必要があります。 Dialplanは、/ usr / local / etc / asterisk / extensions.confファイルで構成されます。
[home] 
      
        
        
        
      
     exten => 777,1,VoiceMailMain(300) 
      
        
        
        
      
     exten => _9.,1,Dial(SIP/ext-out/${EXTEN:1},30,r) 
      
        
        
        
      
     
      
        
        
        
      
     [extrnl] 
      
        
        
        
      
     exten => 200,1,Dial(SIP/100,20,Ttr) 
      
        
        
        
      
     exten => 200,2,Playback(vm-nobodyavail) 
      
        
        
        
      
     exten => 200,3,Voicemail(200@default) 
      
        
        
        
      
     exten => 200,n,Hangup
      
      ここには、homeとextrnlの2つのコンテキストがあります。 1つ目は「ローカル」コールに使用され、2つ目は「外部」コールを取得します(sip.confのコンテキストオプション)。
家には2行しかありません。 1つ目は、777をダイヤルしてボイスメールメニューを表示することを許可します(これについてはさらに扱います)。
2行目はやや複雑です。 ここで、プレフィックス9の番号をダイヤルしようとすると、最初の文字(プレフィックス)は自動的に破棄され、残りの番号はプロバイダーを変更せずにマージされます。
extrnlプレフィックスでは、拡張子200を記述します。sip.confのregisterオプションを覚えておいてください。 実際、ここでは、まず、SIP / 100サブスクライバーに電話をかけています-これはローカル電話( exten => 200.1、ダイヤル(SIP / 100.20、Ttr) )で、20秒以内に誰も電話を受け取らない場合、音声メッセージを再生します( exten => 200.2、再生(vm-nobodyavail) )、発信者をボイスメールに転送します( exten => 200.3、ボイスメール(200 @デフォルト) )。 最後のアクションは「電話を切ります」。
ディストリビューションの標準サウンドファイルを使用します。 これらは、独自のものに置き換えることができます。
次に、ボイスメールを処理する必要があります。 ファイル/usr/local/etc/asterisk/voicemail.confがこれを担当します。
[general] 
      
        
        
        
      
     format=wav49|gsm|wav 
      
        
        
        
      
     serveremail=asterisk 
      
        
        
        
      
     attach=yes 
      
        
        
        
      
     skipms=3000 
      
        
        
        
      
     maxsilence=10 
      
        
        
        
      
     silencethreshold=128 
      
        
        
        
      
     maxlogins=3 
      
        
        
        
      
     emaildateformat=%A, %d %B %Y at %H:%M:%S 
      
        
        
        
      
     mailcmd=/usr/sbin/sendmail –t 
      
        
        
        
      
     sendvoicemail=yes 
      
        
        
        
      
     
      
        
        
        
      
     [zonemessages] 
      
        
        
        
      
     eastern=America/New_York|'vm-received' Q 'digits/at' Imp 
      
        
        
        
      
     central=America/Chicago|'vm-received' Q 'digits/at' Imp 
      
        
        
        
      
     central24=America/Chicago|'vm-received' q 'digits/at' HN 'hours' 
      
        
        
        
      
     military=Zulu|'vm-received' q 'digits/at' HN 'hours' 'phonetic/z_p' 
      
        
        
        
      
     european=Europe/Copenhagen|'vm-received' adb 'digits/at' HM 
      
        
        
        
      
     
      
        
        
        
      
     [default] 
      
        
        
        
      
     ;   +    e-mail 
      
        
        
        
      
     ; = , _,  ,  _ 
      
        
        
        
      
     200 = 123, Incoming , email@me.com, attach=yes
      
      [一般]セクションでオプションを示します。名前はそれを表しています。 [デフォルト]では、サブスクライバーのメールボックスについて説明します。 200のボックスを持つ1人のサブスクライバがあります。extension.confからの行exten => 200.3、ボイスメール(200 @デフォルト)を覚えていますか?
これらは、稼働システムを取得するための最小設定です。 監視、デバッグ、およびサーバー管理は、アスタリスク-rコマンドによって呼び出される対話型コンソールを通じて実行できます。
一般に、アスタリスクの可能性は本当に無限です。 先ほど言ったように、いくつかのVoIPプロバイダーに登録して、最も経済的に有利な方向に通話をルーティングできます。 特定のエリアの可用性を自動的に追跡できます。 呼び出し時に標準のビープ音の代わりにリュシェチェクから純粋に、いくつかの美しいメロディーを台無しにすることができます。 これは、自宅でフリーランサーとして働いているときに手に負えます。
さらに進むと、携帯電話をねじ込むことができます。 これを行うには、gsmプロバイダーからのSIMカード(番号への無制限の呼び出しが望ましい)とsip-gsmゲートウェイが必要です。 鉄またはソフトウェア。 ソフトウェアからはwww.sipgsm.ruしか知りません 。 私の意見には1つの大きな欠点があります-それは窓の下でのみ機能します。 そのため、テスト期間中は非常に安定して機能しました。 これは、アスタリスクでgsmを取得する方法の問題です。 それでは、キューを設定してください-あなたは常に連絡しています。 着信コールでは、最初の加入者(自宅の固定電話)に電話をかけます。誰も電話をかけない場合は、gsmゲートウェイを介して携帯電話に電話をかけます。 想像力を働かせれば、携帯電話から市中に一口プロバイダーの料金で行く機会を得ることができます。 一般的に、ここでこれをキャッチできます。これは非常に怖いです。 すべてはあなたの想像力によってのみ制限されます。
参照:
プロジェクト公式ページ
ロシア語のアスタリスク
ロシア語の資料
アスタリスク知識ベース
質問-アスタリスク:質問と回答
ATSデザインブログ
アスタリスク-voip-info.org