進階且完整的Asterisk配置:權威指南

  • Asterisk 是一款極其靈活且可自訂的開源 PBX 系統。
  • 關鍵在於掌握主設定檔的結構
  • 它支援從簡單的交換器到複雜的呼叫中心的一切功能,並具備資料庫整合、安全性、佇列和互動式語音應答 (IVR) 等功能。

進階 Sterisk 配置

設定 Asterisk 乍一看,全面且專業地部署 Asterisk 似乎是一項艱鉅的任務,尤其考慮到這款強大的開源 PBX 系統提供瞭如此之多的可能性。然而,透過清晰、結構化的講解和實用的範例,從初學者到經驗豐富的管理員,任何人都能充分發揮 Asterisk 的潛力。我們將一起學習基礎知識,從基本概念到進階實現,包括安全性、資料庫整合等等。準備好迎接挑戰吧! 受控制 您可以根據需要自訂您的 VoIP 交換器。

這裡提供的不僅僅是一份循序漸進的指南:我會提供必要的背景信息和每個關鍵文件的深入解釋,實用的使用技巧,當然,還會酌情提供官方資源或相關項目的鏈接,因為Asterisk社區龐大且活躍。如果您正在考慮搭建自己的家庭或企業PBX系統、嘗試使用VoIP,或者想進一步提升配置水平,現在正是開始的最佳時機。

星號是什麼?它有什麼用途?

星號 從本質上講,它就像一把通訊領域的瑞士軍刀。 開源PBX(專用交換器)系統 它允許您管理電話、視訊會議、語音信箱、IVR(互動式語音應答系統)、呼叫佇列等等。它最大的優勢在於… 靈活性它的功能非常廣泛,從簡單的網關到能夠取代大型企業PBX並具備多種高級功能的系統,無所不能。它適用於 免費下載 它擁有非常全面的社區和文件。

Asterisk 的架構是基於 純文字設定檔 通常位於 /etc/asterisk/自訂這些文件才是充分發揮系統性能的真正藝術,雖然一開始可能看起來令人生畏,但透過練習和良好的文檔,它的邏輯會變得非常強大。

配置Asterisk所需的基本文件

任何安裝的核心都是一些值得了解的基本檔案:

  • asterisk.conf設定基本目錄、路徑和啟動選項。
  • 配置文件 o pjsip.conf:定義了 SIP 協定的操作方式,包括使用者和其他伺服器的操作方式以及參數。 一般 系統組件,例如編解碼器、連接埠、傳輸層等等。
  • 擴展配置文件控制單元的馬達。本節詳細介紹… 標記計劃 (撥號方案)決定 Asterisk 如何回應每個通話、分機、互動式選單、IVR 等。
  • 語音信箱配置文件:用戶語音信箱配置。
  • queues.conf呼叫中心或客戶服務團隊的佇列和座席控制。
  • logger.conf配置呼叫和事件日誌及記錄。

這些文件都發揮著至關重要的作用,雖然還有許多其他文件用於特定情況,但這些才是最重要的。 必要 適用於大多數部署場景。

安裝和基本環境

在開始修改文件之前,你需要一個穩定的環境。通常的做法是在 Debian 或 Ubuntu Server 等 Linux 發行版上安裝 Asterisk,最好選擇不含圖形介面的版本,以優化資源使用。建議使用… 最新版本 您的作業系統支援的 Asterisk。

安裝前提條件:

  • 系統已更新,必要的軟體包已安裝: 須藤, OpenSSH的 用於遠端管理、編譯器和必要的依賴項。
  • 設置一個 靜態IP 避免網路問題,並促進傳入和傳出的 SIP 連線。
  • 透過客戶端(例如)使用 SSH 進行存取 MobaXterm 或本地終端。

環境準備好後,即可下載所需版本的 Asterisk(通常從官方軟體倉庫下載),並按照建議步驟進行編譯和安裝。務必仔細閱讀安裝程式提示,以便根據需要啟用或停用模組。ODBC 支援、佇列、編解碼器、資料庫整合等。).

作為良好的安全實踐,Asterisk 服務必須在專用使用者(例如, 星號)並持有所需的最低限度許可證。

安裝後的第一步

安裝完成後,並建立了對應的使用者和使用者群組後,就可以進行以下步驟:

  • 分配 設定檔和目錄的所有權 給用戶 星號.
  • 啟用 自動啟動 與作業系統相關的服務。
  • 檢查 版本 該服務已啟動並運行。 星號 -rvvvvv 訪問 CLI的 (命令控制台)
  • 做一個 設定檔副本 在編輯文件之前,請刪除註解和空白行,以便更好地理解每個文件的邏輯。

一個實用技巧:如果你使用 VIM,你可以使用正規表示式透過尋找和取代指令來清理檔案註解。

網路配置和基本參數

安裝後要檢查的第一個檔案是 配置文件 (好吧 pjsip.conf (在現代安裝中)。在此上下文中,您可以定義關鍵方面,例如連接埠、協定、編解碼器、NAT、預設語言以及許多其他選項。

一個基本的例子可能是:

port=5060 bindaddr=0.0.0.0 directmedia=no language=es context=public srvlookup=yes

請注意網路配置(NAT, 可重新邀請, 主機=動態等等)必須根據您的基礎設施進行調整(LAN 網路, 路由器後面等等)以及您的 SIP 用戶端(軟電話, IP電話, 網關等等)。為了方便這個過程,查閱解釋「如何設定 Asterisk」的資料可能會有所幫助。

對於外部連接,請確保您已具備以下條件: 防火牆規則 適用於允許 SIP 流量(預設 UDP 5060)和用於音訊的 RTP 範圍。

SIP 使用者和基本測試

若要註冊 SIP 裝置或用戶端,請在下方建立條目 配置文件。 例如:

type=friend secret=12345678 context=employee host=dynamic canreinvite=no nat=force_rport,comedy

接下來,必須將這些擴充功能對應到 擴展配置文件 為它們指派目標位置或功能。一個簡單的例子,說明兩位使用者如何互相撥打電話:

exten => 4000,1,Dial(SIP/javier) exten => 4001,1,Dial(SIP/belen)

SIP 終端機已配置好定義的憑證,如果一切配置和註冊都正確無誤,您現在可以進行第一次內部 VoIP 通話了!

語言和聲音定制

Asterisk 預設帶有英文語音提示。為了獲得更專業的體驗,請下載並啟用西班牙語語音提示。這些語音提示位於 [此處應填入下載路徑]。 /var/lib/asterisk/sounds/es/您可以使用諸如此類的工具自訂它們、添加其他配音或將它們轉換為所需的格式。 短襪.

修改參數 語言=是 無論是在使用者內部還是在使用者內部 配置文件 強制使用卡斯蒂利亞西班牙語。

逐步實現各項功能

語音信箱

使用 語音信箱配置文件 建立一個或多個郵箱並指派存取密碼。例如:

4000 => 1234,哈維爾,[email protected]
4001 => 1234,貝倫,[email protected]

這樣,任何未接來電都可以自動轉接到語音信箱,每個使用者都可以使用已設定的分機號碼(透過撥號)來查看來電。 *您可以配置最大持續時間、音訊檔案格式和通知目標(例如電子郵件)。

呼叫隊列和等待音樂

對於電話支援環境,Asterisk 允許您建立 等候線來電將被暫時擱置,直到有客服人員接聽為止。

定義佇列 queues.conf:

策略 = 最少最近逾時 = 30 成員 => SIP/javier 成員 => SIP/belen

設定為 擴展配置文件 這些擴充功能會將呼叫重新導向到播放自訂或預設等待音樂的佇列。您可以使用以下方式為每個上下文關聯特定的音樂資料夾: musiconhold.conf.

[相關網址=“https://www.polimetro.com/las-mejores-aplicaciones-de-odoo/”]

轉學和分組

撥號計劃 您可以啟用呼叫轉移功能,並呼叫整個群組,以便將呼叫路由到第一個空閒使用者。這些概念 呼叫組 y 接送組 他們甚至允許你決定誰可以接聽其他同事的電話。

透過 SIP 進行訊息傳遞

Asterisk 可以在 SIP 裝置之間發送文字訊息,但它並非像 WhatsApp 那樣的即時通訊,而是在分機之間發送短訊息。您可以透過以下方式配置支援: 配置文件 你需要管理發送邏輯和錯誤。 擴展配置文件,使用指令 發送訊息.

客製化編號方案

Asterisk 的最大優勢之一在於其靈活的號碼規劃能力。您可以使用 Asterisk 為部門和團隊分配分機號碼範圍,建立外部呼叫規則、自動呼叫轉移、基於時間的條件等等。 轉到If, 套裝以及自訂巨集。

例如,為了控制公司的營業時間,並管理如果有人在營業時間外打電話會發生什麼:

exten => _995554XXX,1,Set(extension=${EXTEN:5}) same => n,GotoIfTime(8:00-20:00,mon-fri,*,*?employee,${extension},1) same => n,Festival(點至晚上 8 點)

安全措施:採用 TLS 加密。

La 安全 在任何現代PBX系統中,配置使用憑證的安全TLS傳輸至關重要,它可以防止竊聽或欺騙。請使用腳本。 ast_tls_cert 用於生成伺服器和客戶端證書,並識別用戶 傳輸方式=tls 在他們的定義中。

總則 在 sip.conf 檔案中新增:

tlsenable=yes tlsbindaddr=0.0.0.0 tlscertfile=/etc/asterisk/keys/asterisk.pem tlscafile=/etc/asterisk/keys/ca.crt tlscipher=ALL tlsclientmethod=tlsv1

請記住,伺服器和 SIP 用戶端都必須配置為接受 SIP。 相互認證 並使用加密通道。

連接外部世界和路由

如果PBX無法跨越內部網路的門檻,那麼它的作用就微乎其微。為了允許來電(例如,透過像Localphone這樣的VoIP提供者), GoTrunk),在 配置文件 註冊參數和相應的邏輯已新增。 擴展配置文件.

向外部服務提供者註冊的範例:

註冊 => 使用者名稱:密碼[email protected]/USER type=friend authuser=USER username=USER secret=PASSWORD host=operator.com context=inbound canreinvite=no dtmfmode=rfc2833 disallow=all allow=alaw allow=ulaw

來電可以轉接到 語境 應根據實際情況制定適當的撥號方案:直接撥給使用者、撥入佇列、撥入語音信箱、撥入互動式語音應答系統(IVR)…

監控和日誌

在生產環境中,稽核功能至關重要。事件日誌的設定方式如下: logger.conf文件 消息 y cdr-csv/Master.csv 它們存儲事件和細節 CDR 分別。

您可以微調每個文件中要記錄的細節級別,例如,透過添加 詳細() 根據所需上下文進行配置。請記住,如果啟用非常詳細的日誌記錄,檔案大小可能會迅速增長,因此僅在偶爾進行偵錯時啟用此功能。

下一步:與資料庫和ODBC集成

任何專業交換器的下一個等級是 與資料庫集成尤其適用於大規模部署或允許更改的情況 動態的 無需重啟服務或手動編輯文件。 Asterisk 提供 ODBC 支持 連接到諸如此類的系統 MySQL的 o MariaDB的並允許查詢和更新 實時.

啟用此功能的基本步驟:

  1. 安裝和配置 ODBC驅動程式 必需(Unix ODBC、MySQL/MariaDB 連接器)
  2. 定義 手柄 在文件中 odbc.ini y odbcinst.ini
  3. 編譯 Asterisk 時啟動 ODBC 模組並將資源載入到系統中 res_odbc.conf
  4. 配置可重複使用的查詢 func_odbc.conf例如:
dsn=asterisk readsql=SELECT name from users WHERE id='${SQL_ESC(${ARG1})}'

整合這些數據 動態地 在撥號方案上下文中,以便通話、訊息或郵箱能夠適應資料庫內容並提供設定。 有錢 無需每次都修改文件。

IVR邏輯、呼叫中心和複雜宏

由於其靈活性 擴展配置文件 憑藉建立巨集、巢狀條件和變數的功能,您可以從以下位置進行程式設計: IVR 從引導客戶瀏覽選單(類似「按1聯繫銷售,按2聯絡客服…」),到根據時間、語言、權限、優先順序等進行區分的複雜呼叫中心系統…

任何選單都可以與使用者互動(例如數位簽章、身份驗證、資料庫驗證),並引導使用者到達您想要的位置。其可能性僅受限於您的設計。 你的想像力與資料庫集成 或其他外部系統。

不同PBX之間的連結:DUNDi

如果您需要多個獨立的交換機來進行通信,例如在不同的公司地點之間,您可以使用 DUNDi(分散式通用數位發現)此功能共用撥號方案,並允許跨不同 Asterisk 實例進行分機或路由的分散式搜尋。配置需要協調公鑰/私鑰、協商分機號碼範圍、呼叫權限以及在撥號方案中定義對等方。

透過 DUNDi, 三個數字 他們可以識別任何已連接 PBX 上的分機,並使用 SIP 或任何其他受支援的協定路由相應的呼叫。

專用交換器:進階呼叫中心的範例

將 Asterisk 配置提升到更高層次的實際例子之一是使用它來配置… 多部門呼叫中心 具備互動式語音應答 (IVR)、排隊、不同的代理商群組、營業時間、個人化語音信箱和資料庫連線等功能。

在這種部署方式中, 撥號計劃 它可以儲存數百行數據,資料庫包含座席設定檔、分機號碼、呼叫擷取權限、群組啟用資訊等。 取件訊息整合、語音信箱,甚至接聽或轉接電話 動態 根據代理人的條件。

所有郵箱存取控制均可管理。 驗證 從資料庫取得PIN碼, 關聯 每個團隊(接待、管理、醫生、護理等)的情況都不同, 分配 每個隊列都有獨特的等待音樂。

部署可能包括:

  • 委託 認證方式 呼叫權限僅用於表格 個人 y 用戶 在資料庫中。
  • 啟用規則 通話記錄 根據相應上下文制定的規則, 呼叫組 y 接送組.
  • 啟用歡迎和識別 IVR 節日 (TTS 文字轉語音引擎)或自訂配音。
  • 透過以下方式分發呼叫 至少最近 給團隊中最不忙碌的成員。
  • 整合軟體電話(Zoiper、Blink、Pangolin…)供代理商和遠端辦公人員使用。

該模型將 Asterisk 轉變為通訊平台。 穩健靈活能夠滿足小型企業和大型組織的需求。

管理技巧和最佳實踐

  • 務必閱讀官方文件和文件註釋。 因為它們會詳細解釋各種選項,了解每個參數的作用可以避免許多意外情況。
  • 在進行任何重大更改之前,請務必先備份資料。一個小小的語法錯誤就可能導致 PBX 無法運作或無法使用,這在重要情況下會造成影響。
  • 在投入生產環境之前,先在測試環境中進行開發和測試。 特別是 ODBC 整合、進階撥號方案規則和 TLS 安全性。
  • 它使用日誌檔案和 Asterisk 控制台。 用於主動偵錯:從身份驗證錯誤到查看撥號計劃中的呼叫流程。
  • 保持 Asterisk 和作業系統處於最新狀態。 受益於漏洞修復和安全改進。
  • 向社區尋求協助: 論壇、郵件清單和入口網站,例如: 漢諾 o Asterisk 在 GitHub 上的官方程式​​碼庫.

掌握 Asterisk 配置後,您就能創建各種系統,從簡單的系統(支援兩個用戶的辦公室)到高度客製化的企業級 PBX,後者俱備全球 VoIP 整合、多語言支援、強大的安全性以及自訂例程等功能。透過練習和堅持,您會看到自己的想法逐步成型,您的 PBX 系統也能完美滿足您的需求。

發表評論