從Cisco Unity 4.0(4)和Cisco IOS®軟體版本12.3(7)T開始的Cisco Unity IP傳真配置嚮導支援從Cisco Unity使用者到公共交換電話網路(PSTN)上的傳真機的出站傳真。此服務允許使用者通過簡單的電子郵件傳送出站傳真。目標傳真電話號碼包含在電子郵件的主題行中,並傳送到Cisco Unity IP Fax服務檢查的郵箱。服務重新格式化郵件,以正確格式呈現所有附件,重新編址並傳送郵件。郵件通過簡單郵件傳輸協定(SMTP)傳送到配置了T.37 OffRamp功能的Cisco IOS網關,以便將傳真傳送到目標電話號碼。
本檔案將討論用於疑難排解的常見步驟。有關Cisco IOS網關的初始配置步驟,請參閱Cisco Unity IP傳真出站網關配置示例。請參閱Cisco Unity的IP傳真配置嚮導。
思科建議您瞭解以下主題:
Cisco Unity IP Fax出站進程的常規文檔
Microsoft Exchange 2000/2003的SMTP基礎知識
Cisco IOS Voice over IP(VoIP)組態
將2.0.0.19版或更高版本的Cisco Unity活動伺服器與Cisco Unity IP Fax Configuration Wizard結合使用以使用本文檔中定義的網關配置,以便擁有完整的可操作的系統。在IOS網關端,需要支援T.37 OffRamp功能和Cisco IOS軟體版本12.3(7)T或更高版本的Cisco IOS路由器,同時需要Cisco Unity版本4.0(4)或更高版本,以及Microsoft Exchange 2000或2003作為合作夥伴消息儲存庫。
注意:媒體網關控制協定(MGCP)網路不支援T.37 OffRamp。有關使用T.37時的平台和其他限制的詳細資訊,請參閱T.37儲存和轉發傳真配置指南。
本文中的資訊係根據以下軟體和硬體版本:
作為IOS網關的Cisco 3725
Cisco IOS軟體版本12.3(8)T4
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路正在作用,請確保您已瞭解任何指令可能造成的影響。
如需文件慣例的詳細資訊,請參閱思科技術提示慣例。
為了說明故障排除過程,瞭解此功能的基本操作非常重要。然後,將問題縮小到特定元件,並收集關於該問題的更多資訊。
系統上的終端使用者向傳真郵箱傳送電子郵件。此郵件在傳真郵箱的使用者中必須包含[FAXPHONE=9915550](例如fax-unity2@vnt.com),其中9915550是目的傳真機的號碼。根據在網關中設定的撥號計畫,此號碼以9開頭,或者只接受特定的數字字串。傳送郵件後,Microsoft Exchange會將郵件傳送到此郵箱。
注意:如果電子郵件來自另一個域,則域名系統(DNS)和遠端郵件系統配置為將郵件傳送到傳真郵箱所在的域和郵件帳戶。
Cisco Unity IP Fax服務會定期登入到傳真郵箱並檢索消息。現在附件已讀取。在Cisco Unity伺服器上呈現消息(例如,轉換為TIF檔案),前提是它可以處理該大小的附件。
一旦附件被呈現,消息就會傳送到IOS網關。必須將Microsoft Exchange配置為能夠傳送郵件,該郵件以收件人為目標,例如fax=9915550@c3725-51.gateway.com。這通常意味著該主機(c3725-51.gateway.com)的A記錄和郵件交換記錄(MX記錄)將新增到DNS,並且SMTP聯結器將新增到Exchange以路由郵件。此處使用的電子郵件地址和主機名無需使用者友好,因為終端使用者從不直接將電子郵件傳送到網關。
IOS網關配置了T.37 OffRamp功能,該功能允許其接收SMTP消息、解釋fax=9915550地址、對991550號碼發出呼叫(進行任何可能的數字操作後),然後將TIF檔案傳輸到接收方傳真機。
注意:網關無法使用MGCP來使用此功能。但是,該電路無需專用於傳真。語音和傳真在同一語音電路上一起使用。路由器上的撥號對等體配置確定呼叫的實際處理方式。
傳真傳送後,閘道會將傳送狀態通知(DSN)訊息傳送回傳真信箱(fax-unity2@vnt.com)。 這表示傳真是否已成功傳送。當IP傳真服務登入時,將檢索DSN消息。如果尚未成功傳送,則檢查原因代碼。根據此原因代碼,要麼重新傳送消息(可能是遠端傳真正忙),要麼將消息傳送回終端使用者以通知使用者出現問題。如果沒有此功能,IP傳真服務將永遠不會知道傳真是否已成功傳送。
此架構的優勢之一在於,任何問題通常都會分解成相關的元件。
開始之前檢查設定。
正確設定網關。請參閱Cisco Unity IP傳真出站配置示例和IP傳真配置嚮導。
設定Exchange,以便將郵件從終端使用者的郵件儲存傳送到傳真郵箱所在的郵件儲存中。它以相反方向傳送,因此狀態消息可以傳送回源。Mail需要能夠從傳真帳戶傳送到網關並返回。這涉及DNS和Exchange中的配置。
確保IP傳真服務已正確安裝。啟用安裝程式後,在Cisco Unity上運行配置嚮導並選擇開始>程式> Unity > Cisco Unity IP傳真配置嚮導。
IP傳真服務無法呈現您向其傳送的任何內容。當IP傳真服務收到附加到電子郵件的檔案時,它會首先進行檢查以確保可以識別副檔名。這些設定在第三方傳真管理工具中。允許的預設副檔名是BMP、HTM、TIF和TXT。如果需要一個DOC擴展,則工具必須新增它,如以下示例所示。
注意:某些版本中存在阻止第三方傳真管理工具清單中最後一個擴展正確操作的問題。有關詳細資訊,請參閱警告部分。
選定的傳真伺服器是Cisco Unity IP Fax Routing。DOC被新增到「Allowed file extensions(允許的副檔名)」區域。這表示IP傳真服務將附件傳送到呈現引擎。完成此操作後,呈現引擎將依賴與擴展型別關聯的應用程式,以便它可以開啟文檔並將其列印到帶有其列印驅動程式的檔案中。通常允許DOC擴展,因為預設情況下WordPad應用程式安裝在Cisco Unity伺服器上,並且它會開啟大多數Microsoft Word文檔。諸如Acrobat Reader之類的應用程式可以幫助您傳真PDF檔案。如需詳細資訊,請參閱本檔案的警告一節。
注意:Cisco for.doc擴展正式支援的唯一應用程式是WordPad。如果將Wordview或Microsoft Word等應用程式與文檔擴展一起使用,則呈現引擎可能會失敗。
注意:請勿在Cisco Unity伺服器上安裝Microsoft Office。這將停止Cisco Unity的正確操作。Cisco Unity伺服器上只應安裝支援的第三方應用程式。在Cisco Unity伺服器上安裝任何第三方軟體時一定要小心。
從開始>管理工具>服務中驗證CSIpFaxSvc是否處於活動狀態,並且「登入身份」欄位與AvCsMgr服務相同。如果未啟動AvCsMgr服務,則可能存在問題。這也影響CsIpFaxSvc。請參閱Cisco Unity 3.1(x)和4.x:有關詳細資訊,AvCsMgr服務無法啟動。
如果即使在安裝IP傳真服務和網關後仍無法正常工作,第一步是使用Microsoft Outlook Express(使用Internet郵件訪問協定(IMAP)或Outlook(或其他郵件程式)檢查IP傳真郵箱。由於終端使用者向此郵箱傳送郵件,而IP傳真服務會檢查並傳送來自此帳戶的郵件,因此請確保郵件到達且正確傳送。此處看到的所有內容都可以通過使用日誌檔案和Exchange郵件跟蹤中心進行診斷。但是,這也有助於說明產品的操作。
Outlook Express會自動安裝在Cisco Unity伺服器上。Outlook是適用於Cisco Unity的統一消息傳送部署的首選郵件傳送程式。
注意:請勿在Cisco Unity伺服器上安裝Microsoft Outlook。它會導致Cisco Unity停止運行。Exchange伺服器上不應安裝Outlook。必須將其安裝在客戶端電腦上,然後進行配置才能連線到Exchange伺服器。
將一個或多個郵件帳戶新增到Outlook Express時,請確保指定IMAP。如果選擇POP,則會立即從郵件儲存下載所有郵件。然後IP傳真服務不會檢測任何新消息。指定IP傳真服務帳戶。如果密碼未知,則訪問Active Directory使用者和電腦是安全的,查詢IP傳真帳戶並重置密碼。
本文檔中提供的故障排除方法不是您唯一可以使用的方法。例如,如果您有權訪問IP傳真帳戶並通過Outlook或Outlook Express登入,則可以直接從該位置向終端使用者傳送測試電子郵件。您也可以將電子郵件直接傳送到網關。這縮小了問題的範圍,因為它證明了某個元素或另一個元素工作正常。
為了幫助進行故障排除,請更改診斷級別,以便記錄更多輸出。選擇Start > Run,然後在命令框中輸入regedit,以便在CSIPFaxSvc運行的Cisco Unity伺服器上啟用此功能。顯示登錄檔編輯器工具後,選擇HKEY_LOCAL_MACHINE\SOFTWARE\Active Voice\IPFaxRouter\1.0。
選擇「編輯」>「新建」>「DWORD值」。指定的名稱為DiagLevel。建立後,按兩下此鍵。在值資料欄位中輸入3。這是最大診斷級別。稍後,您可以將其更改為0(預設值)。 此更改不要求您重新啟動服務。
注意:當您更改錯誤的登錄檔項或輸入錯誤的值時,會導致伺服器故障。在編輯登錄檔項之前,確認您知道如何在出現問題時恢復該登錄檔項。有關詳細資訊,請參閱登錄檔編輯器幫助中的還原主題。Cisco Unity伺服器的典型備份不會備份登錄檔。對於Cisco Unity故障切換系統,由於不會複製登錄檔更改,因此在一台Cisco Unity伺服器上手動進行登錄檔更改。有關如何更改登錄檔項設定的詳細資訊,請與思科技術支援聯絡。
某些情況下另一個有用的金鑰是MaximumWait金鑰。如果不存在,此鍵預設為24(小時)。 它指定在未送達消息傳送到終端使用者之前保留消息的最長時間。此金鑰不直接幫助進行故障排除,但經常需要此金鑰。
OutboundRouterDomain金鑰包含電子郵件域,該域在郵件發往要傳送到Cisco IOS網關以進行出站傳真傳送的地址時用作郵件字尾。為此,必須通過DNS解析此示例中的值vnt-3725-51.gateway.com。對此專案執行ping可能會有所幫助。如果此條目不正確,則會向發件人返回一封電子郵件,通知他們無法解析網關條目。
提示:這個事實對故障排除很有用:如果您安裝了除Cisco IOS網關以外的所有內容,則可以臨時將此登錄檔項更改為偽值,例如DNS以外的內容。然後向傳真信箱傳送傳真消息。CsIpFaxSvc服務檢索消息,呈現附件,然後找不到網關。未送達回執(NDR)通知將連同已呈現的TIF附件一起發回給傳送者,該附件是傳送到網關的傳真消息的附件。如果這樣做,則已驗證:
您的終端使用者可以將電子郵件傳送到傳真帳戶。
傳真可以成功呈現。
電子郵件可從傳真帳戶傳送回終端使用者。
除了從傳真帳戶向網關以及從網關向傳真帳戶傳送消息外,所有資訊都已消除。
Coverpage鍵包含呈現的封面的位置。傳輸的每份傳真都包含一個封面,該封面包含一些資訊,如頁數。可以編輯此頁面並插入自定義資訊或公司徽標。如果金鑰被更改為不存在的檔案,則不傳送封面。
從使用者向傳真帳戶傳送消息。在此圖中,郵件發往傳真郵箱fax-unity2。使用者想要呼叫的號碼在主題行中指定,在本例中9915550用此號碼。使用者想要傳真的文檔已附加。
傳送此郵件後,它將到達最初設定的傳真郵箱。此圖顯示了郵箱的Outlook Express檢視。
如果郵件未到達,則存在基本的電子郵件傳送問題。您應該檢視發件人是否收到某種型別的傳遞失敗消息。Microsoft Exchange 2000/2003具有Exchange郵件跟蹤功能,通過該功能,您可以檢視有關郵件傳送的其他詳細資訊。如果發件人和傳真帳戶位於兩個不同的域中(例如,a.com和b.com),則請確保將傳送郵件系統正確配置為將郵件傳送到目標郵件伺服器。這包括在DNS中設定A和MX記錄,然後新增SMTP聯結器來路由郵件。郵件也應能夠按相反方向傳送,以便未投遞郵件傳送回終端使用者。
下圖顯示了具有A和MX記錄的IOS網關的DNS條目。
Exchange中需要該郵件主機的SMTP聯結器。
DNS用於路由到地址空間。地址空間配置為c3725-51.gateway.com。這只是眾多配置之一。這只是測試的示例環境設定。典型的公司Exchange環境要複雜得多。重點是確保將來自使用者的郵件傳送到傳真郵箱。請檢視Microsoft網站瞭解有關這些主題的更多資訊。
確保郵件從終端使用者傳送到傳真帳戶,並從傳真帳戶傳送到最終最終最終最終終端使用者。
在IP傳真服務配置期間,指定輪詢間隔。這表示IP傳真服務登入到傳真郵箱並檢查新郵件的頻率。思科建議將此值設定得很低,直到驗證產品是否正確操作。
最佳診斷日誌檔案是IPFaxSvc<date/time>.log。它位於\Commserver\logs目錄中。
注意:在此跟蹤示例中,已刪除一些資訊。
您可以檢視日誌檔案在每個時間間隔內登入的郵箱。您還可以看到它處理傳出傳真。
註:所有跟蹤均反映前面提到的DiagLevel = 3登錄檔設定。
"Logging on to mailbox [VNT2-EX1\fax-unity2]" "CIpFaxCdoHelper::LogonToMailbox() name returned from Logon is [fax unity2]" "Processing outbox, message count= 1" "CIpFaxCdoHelper::ProcessFaxOutbox() processing message receipts" "CIpFaxCdoHelper::DetermineMessageDisposition() current message subject=[[faxphone=9915550]]" "CIpFaxCdoHelper::DetermineMessageDisposition() setting disposition to OUTBOUND" "CIpFaxCdoHelper::ProcessFaxOutbox() message looks like outbound fax - not processing as receipt message"
出站流程必須成功登入到正確的郵箱,意識到有郵件,檢索主題,並將其視為出站傳真。
"_RecordsetPtr::Open(Select * from tblIpFaxData where MessageEntryID = '00000000377C58FB04A29C468DAB3CBC07D7F94B0700E7E65E238D0DEF46B5F8EAF983C6C512000000 05E5B20000E7E65E238D0DEF46B5F8EAF983C6C51200000005F55A0000') returned [0] rows - Code: 0x80004005. Method: CIpFaxAdoHelper::GetRecordSet. [IpFaxAdoHelper.cpp::403]" "CIpFaxAdoHelper::Execute() Cmd=[INSERT INTO tblIpFaxData (MessageEntryID, Status, ScratchDirectory, TifFileName, NdrErrorCode, BusyCounter, RnaCounter, TimeFirstHandled) VALUES ('00000000377C58FB04A29C468DAB3CBC07D7F94B0700E7E65E238D0 DEF46B5F8EAF983C6C51200000005E5B20000E7E65E238D0DEF46B5F8EAF983C6C51200000005F55A 0000', '0', 'C:\CommServer\unityMta\IpFaxScratchpad', '0188c93ff8194177b9f313edab c2ea73.tif', '0', '0', '0', '2004-10-14 08:27:17')]"
現在消息被讀取。第一條 語句指示服務針對Cisco Unity伺服器的Reports資料庫中的tbllpFaxDatatable運行SQL查詢,以檢視是否存在具有該MessageEntryID(消息的MAPI ID)的消息。它找不到任何此類條目(返回0行),因此它會新增包含此資訊的新行。此MessageEntryID用作傳送到網關的電子郵件中的Subject欄位。當您直接檢視SQL時,您會看到:
SQL用於跟蹤每條消息。當傳真郵箱不為空時,SQL會每隔一個時間間隔檢查它,並根據此郵件ID檢查它是否對每個郵件進行了記帳。在此案例中,附件會複製到臨時目錄C:\CommServer\unityMta\IpFaxScratchpad。如果此消息有DSN,則只需更新BusyCounter或類似資訊。但這是服務跟蹤每條消息的方法。現在,檔案已複製到暫存目錄中,此時將進行渲染。
"CIpFaxCdoHelper::RenderCurrentMessage() scratch file=[C:\CommServer\ unityMta\IpFaxScratchpad\render.tif]" "CIpFaxCdoHelper::RenderCurrentMessage() outputting message body to file name=[C:\CommServer\unityMta\IpFaxScratchpad\MsgBody.txt]" "Rendering file [C:\CommServer\unityMta\IpFaxScratchpad\MsgBody.txt] to [C:\CommServer\unityMta\IpFaxScratchpad\render.tif]" "CIpFaxCdoHelper::RenderCurrentMessage() added [1] pages to TIFF"
開始呈現過程。每份傳真都包含一個封面、一個包含郵件正文的頁面以及任何或全部附件。封面顯示通過傳真傳送的頁數。正文將首先呈現,因為它總是先傳送。由於每次只呈現一條消息,因此它始終呼叫消息正文MsgBody.txt和臨時輸出檔案render.tif。渲染由ImageMaker軟體執行。完成每個呈現過程後,它將返回所呈現的頁數。在這種情況下,該頁面只有一頁。
ImageMaker渲染引擎是一個列印驅動程式。它獲取一個輸入檔案,開啟關聯的預設應用程式(寫字板、記事本等),並使用ImageMaker驅動程式將其列印到該檔案。這將建立TIF檔案。
完整的診斷檔案位於附錄部分。當您向思科技術支援提交與渲染引擎相關的問題時,這些檔案是必需的:
C:\ImgMaker\Conversion_Toolkit\log\ODCDAEMON.log — 通過批處理檔案執行轉換的守護程式
C:\log\ImageMakerDocCnvrt Driver.txt — 驅動程式級別資訊
最有用的資訊在ODCDAEMON.log檔案中。對於要呈現的每個檔案,您將看到:
10/14/04 08:27:17 Start time: Thursday, October 14, 2004 08:27:17 AM Daemon logged in as user: vnt2-u1-ms Using registry root: HKEY_LOCAL_MACHINE 08:27:17: Pipe name: PrintDocDaemonPipe 08:27:17: Default printer name: ImageMaker DocCnvrt Driver 08:27:17: Registry server: <local> 08:27:17: Service started 08:27:19: 08:27:19: 10/14/04 08:27:19 ServiceRequest thread started 08:27:19: Processing 'Convert v1.0' request 08:27:19: Processing file: C:\CommServer\unityMta\IpFaxScratchpad\MsgBody.txt 08:27:19: Output file: C:\CommServer\unityMta\IpFaxScratchpad\render.tif 08:27:19: Printer name: ImageMaker DocCnvrt Driver 08:27:19: AppendTo filename set to C:\CommServer\unityMta\IpFaxScratchpad\render.tif 08:27:19: Input filename: C:\CommServer\unityMta\IpFaxScratchpad\MsgBody.txt 08:27:19: Output filename: C:\CommServer\unityMta\IpFaxScratchpad\render.tif 08:27:19: 0xE90: <10/14/04 08:27:19> StatusThread timeout value for jobstart: 60000 08:27:21: AutoShutdown feature activated 08:27:21: Sending response 1 to client 08:27:21: 10/14/04 08:27:21 ServiceRequest thread ended
要檢視的第一個元素以使用者身份登入。此帳戶與CsIpFaxSvc服務用於登入的帳戶相同。
請務必注意這一點,因為此使用者將啟動並呈現所有應用程式。下一個元素是輸入和輸出檔名。第三個元素response表示呈現的頁數。在這個例子中,這是一個。如果響應為負值,則指示錯誤。如果出現錯誤,您必須檢視緊接其前面的行。在許多情況下,只有某些檔案型別會發生錯誤。ODCDAEMON日誌檔案顯示錯誤是否出現在所有渲染中,還是僅出現在某些擴展型別中。
手動執行渲染引擎以進一步測試此內容是有益的。以運行CsIpFaxSvc服務的同一使用者身份登入。這是為了驗證當從服務啟動呈現引擎時是否發生相同的錯誤。
如果您有一個具有每種允許副檔名的檔案,請按兩下該檔案以開啟每個檔案。將開啟關聯的應用程式並檢查更新(或類似進程)。 例如,在Acrobat的情況下,可以禁用此功能。
停止CsIpFaxSvc。如果仍有任何ODCDAEMON進程仍在運行,請使用工作管理員將其停止。
附註: 如果必須儲存ODCDAEMON日誌檔案以供進一步參考,則必須在對CsIpFaxSvc執行ping操作之前執行此操作。重新啟動服務時,它將清除ODCDAEMON日誌檔案,並且輸出將丟失。
從資料夾C:\ImgMaker\Conversion_Toolkit啟動ODCDAEMON.EXE進程。如下圖所示,將顯示一個視窗:
從同一資料夾啟動CPCOM.EXE檔案。
大多數預設設定都正常。在「要轉換的檔案」欄位中,選擇所需的輸入檔案。思科建議您分別測試每種擴展型別。如果未更改輸出檔案,則輸入檔案將附加到輸出檔案。
按一下「Convert」。應用程式開始列印,出現以下對話方塊:
按一下「OK」(確定)。選擇View Output When Done選項。啟動TIF檢視器並顯示輸出檔案。如果有錯誤,在某些情況下,這些錯誤與日誌檔案中顯示的錯誤相同,如以下示例所示。
03:07:39: Input filename: d:\CommServer\UnityMTA\IpFaxScratchpad\render.tif 03:07:39: Output filename: d:\CommServer\UnityMTA\IpFaxScratchpad\9484f347996b4ea18b0caeb52ffda465.tif 03:07:39: 0x15F0: <11/19/04 03:07:39> StatusThread timeout value for jobstart: 60000 PrintTo command does not exist for file type: MSPaper.Document 03:07:39: AutoShutdown feature activated Conversion unsuccessful. Deleting file d:\CommServer\UnityMTA\IpFaxScratchpad\9484f347996b4ea18b0caeb52ffda465.tif 03:07:39: Sending response -20 [PrintTo command does not exist] to client
輸入檔案是TIF附件。但檔案型別為DOC(MSPaper.Document)。 本例中的問題是伺服器上安裝了Word和Excel等Microsoft應用程式,它們更改了登錄檔中的檔案關聯。編輯HKEY_CLASSES_ROOT\.tif和TIF,並將Default鍵更改為TIFImage.Document而不是MSPaper.Document,以便修復此錯誤。
驗證每個檔案型別後,關閉CPCOM和ODCDAEMON視窗並重新啟動CsIpFaxSvc服務。
如果所有附件都失敗或出現初始化錯誤,請重新安裝呈現引擎。使用IPFaxConfigWizard所在的ImageMaker資料夾中的instfax.exe -z命令將其解除安裝。然後重新安裝它,需要重新啟動,並從開始>程式> Unity重新運行Cisco Unity IP傳真配置嚮導。
測試錯誤的最後一個選項是繞過守護進程並從命令列呈現檔案。在大多數情況下,如果它以前失敗過,這裡也會失敗。但在某些情況下,它會提供其他資訊。這在PDFILCNV執行檔的幫助下完成。此程式位於IPFaxConfigWizard安裝路徑的ImageMaker子目錄中。例如:
PDFILCNV products.doc -Fproducts.tif
確保可以開啟顯示的檔案。
此範例來自IpFaxSvc日誌檔案:
"CIpFaxCdoHelper::RenderCurrentMessage() processing attachment=[products.doc]" "CIpFaxCdoHelper::RenderCurrentMessage() attachment written to file= [C:\CommServer\unityMta\IpFaxScratchpad\products.doc]" "Rendering file [C:\CommServer\unityMta\IpFaxScratchpad\products.doc] to [C:\CommServer\unityMta\IpFaxScratchpad\render.tif]" "CIpFaxCdoHelper::R\
)ll \- \] '==e-nderCurrentMessage() added [2] pages to TIFF"
產品DOC附件呈現。它被附加到之前建立的render.tif檔案中。它有兩頁,因此總頁數為三。
"CIpFaxCoverPage::GenerateFile() file=[C:\CommServer\unityMta\IpFaxScratchpad \cover.htm] name=[Unity2 Subscriber] num=[9915550] pages=[3]" "Rendering file [C:\CommServer\unityMta\IpFaxScratchpad\cover.htm] to [C:\CommServer\unityMta\IpFaxScratchpad\0188c93ff8194177b9f313edabc2ea73.tif]" "Rendering file [C:\CommServer\unityMta\IpFaxScratchpad\render.tif] to [C:\CommServer\unityMta\IpFaxScratchpad\0188c93ff8194177b9f313edabc2ea73.tif]"
封面是檔案cover.htm。它是一個包含一些變數的簡單HTML模板。它填寫傳送消息的訂戶名稱、呼叫的號碼和傳送的頁數。
建立自定義cover.htm檔案後,該檔案將呈現到messageid.tif檔案中。先前建立的render.tif檔案被呈現,例如,附加到messageid.tif檔案。此時,messageid.tif檔案是通過電子郵件或傳真傳送的真實消息。
已成功呈現。SQL中的某些欄位將更新,並傳送消息。
"2004-10-14","08:27:29","CIpFaxAdoHelper::Execute() Cmd=[UPDATE tblIpFaxData SET Status = '1' WHERE MessageEntryID = '00000000377C58FB04A29C468DAB3CBC07D7F94B0700E7E65E238D0DEF46B5F8EAF983C6C 51200000005E5B20000E7E65E238D0DEF46B5F8EAF983C6C51200000005F55A0000']" "2004-10-14","08:27:29","CIpFaxAdoHelper::Execute() Cmd=[update tblipfaxdata set TimeLastAttempted = '2004-10-14 08:27:29' where MessageEntryID = '00000000377C58FB04A29C468DAB3CBC07D7F94B0700E7E65E238D0DEF46B5F8EAF983C6C5120 0000005E5B20000E7E65E238D0DEF46B5F8EAF983C6C51200000005F55A0000']";
消息的狀態設定為1,並且填寫上次更新時間。被傳送到網關。
從IP傳真帳戶傳送到網關的消息必須採用fax=###@router.gateway.com的形式。通常,DNS中需要DNS A和MX記錄,並且需要將SMTP聯結器新增到Exchange以將郵件路由到該主機。完成後,您可以繼續進行網關故障排除。
如果只設定了路由器,仍然可以驗證它是否工作,如果使用Telnet訪問SMTP埠並手動傳送消息,如以下示例所示:
telnet vnt-3725-51.gateway.com 25 Trying 14.80.51.14... Connected to 14.80.51.14. Escape character is '^]'. 220 vnt-3725-51.gateway.com Cisco NetWorks ESMTP server ehlo 250-vnt-3725-51.gateway.com, hello <empty HELO/EHLO> [172.18.106.123] (really ) 250-ENHANCEDSTATUSCODES 250-8BITMIME 250-PIPELINING 250-HELP 250-DSN 250 XACCOUNTING mail from:test@test.com 250 2.5.0 Sender <test@test.com> ok rcpt to:fax=9915550@vnt-3725-51.gateway.com 250 2.1.5 Recipient <fax=9915550@vnt-3725-51.gateway.com> ok, maps to `9915550' (cp=no) data 354 Enter mail, end with a single "." This is a test message from the router. . 554 5.3.0 An unknown error occurred quit 221 2.3.0 Goodbye from vnt-3725-51.gateway.com; closing connection Connection closed by foreign host.
在這種情況下,出現未知錯誤。發生這種情況是因為用於傳送傳出傳真的主要速率介面(PRI)已關閉。以下是另一個範例:
telnet vnt-3725-51.gateway.com 25 Trying 14.80.51.14, 25 ... Open 220 vnt-3725-51.gateway.com Cisco NetWorks ESMTP server ehlo 250-vnt-3725-51.gateway.com, hello <empty HELO/EHLO> [172.18.106.66] (really ) 250-ENHANCEDSTATUSCODES 250-8BITMIME 250-PIPELINING 250-HELP 250-DSN 250 XACCOUNTING mail from:test@test.com 250 2.5.0 Sender <test@test.com> ok rcpt to:fax=9915550@error.com 553 5.4.4 <fax=9915550@error.com> Unable to relay to remote host quit 221 2.3.0 Goodbye from vnt-3725-51.gateway.com; closing connection
在這種情況下,Unable to relay to remote host錯誤消息表示Cisco IOS配置中的mta receive alias清單未配置error.com。
Telnet至路由器或透過主控台存取路由器,以直接對閘道進行疑難排解。當您通過Telnet連線時,發出terminal monitor命令。顯示debug輸出。啟用debug fax mta all。如果出站語音電路是PRI,debug isdn q931也是相關命令。
警告: 在路由器上啟用跟蹤時,有時會影響效能。完成後使用no debug all指令關閉追蹤。
注意:為了節省空間,這些日誌已被截斷。
以下debug輸出來自作用中範例:
Oct 15 08:27:26.003: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: context(0x66CA9AC4), state=1 Oct 15 08:27:35.051: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: Calling smtp verb: ehlo Oct 15 08:27:35.051: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: context(0x66CA9AC4), state=1 Oct 15 08:27:35.599: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: Calling smtp verb: mail Oct 15 08:27:35.599: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: context(0x66CA9AC4), state=1 Oct 15 08:27:36.143: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: Calling smtp verb: rcpt Oct 15 08:27:36.143: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_command_rcpt: context(0x66CA9AC4) Oct 15 08:27:36.143: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_command_rcpt: context(0x66CA9AC4) Oct 15 08:27:36.143: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: context(0x66CA9AC4), state=1 Oct 15 08:27:36.691: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: Calling smtp verb: data Oct 15 08:27:36.691: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: context(0x66CA9AC4), state=2 Oct 15 08:27:37.239: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: (S)R: `Received: from vnt2-ex1.vnt.com ([14.84.31.12]) by VNT1-EX2.vnt.com with Microsoft SMTPSVC(5.0.2195.6713);' Oct 15 08:27:37.239: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: (S)R: ` Thu, 14 Oct 2004 08:27:29 -0400' Oct 15 08:27:37.239: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: (S)R: `Return-Receipt-To: "fax unity2"' Oct 15 08:27:37.239: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: (S)R: `Subject: 00000000377C58FB04A29C468DAB3CBC07D7F94B0700E7E65E238D0DEF46B 5F8EAF983C6C51200000005E5B30000E7E65E238D0DEF46B5F8EAF983C6C51200000005FB680000' Oct 15 08:27:37.239: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: (S)R: `Date: Thu, 14 Oct 2004 08:27:29 -0400' Oct 15 08:27:37.239: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: (S)R: `Message-ID: ' Oct 15 08:27:37.239: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: (S)R: `X-MS-Has-Attach: yes' Oct 15 08:27:37.239: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: (S)R: `MIME-Version: 1.0' Oct 15 08:27:37.239: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: (S)R: `Content-Type: image/tiff;' Oct 15 08:27:37.239: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: (S)R: ` name="BODY.TIF"' Oct 15 08:27:37.239: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: (S)R: `X-MS-TNEF-Correlator: ' Oct 15 08:27:37.239: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: (S)R: `Content-Transfer-Encoding: base64' Oct 15 08:27:37.239: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: (S)R: `Content-Description: BODY.TIF' Oct 15 08:27:37.239: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: (S)R: `Content-Disposition: attachment;' Oct 15 08:27:37.239: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: (S)R: ` filename="BODY.TIF"' Oct 15 08:27:37.239: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: (S)R: `Thread-Topic: 00000000377C58FB04A29C468DAB3CBC07D7F94B0700E7E65E238D0 DEF46B5F8EAF983C6C51200000005E5B30000E7E65E238D0DEF46B5F8EAF983C6C51200000005 FB680000' Oct 15 08:27:37.243: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: context(0x66CA9AC4), state=2 Oct 15 08:27:37.243: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: (S)R: `Thread-Index: AcSx6SvU9sc3nVffS3a4/Dwqi2Bpww==' Oct 15 08:27:37.243: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: (S)R: `From: "fax unity2" ' Oct 15 08:27:37.243: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: (S)R: `content-class: urn:content-classes:message' Oct 15 08:27:37.243: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: (S)R: `X-MimeOLE: Produced By Microsoft Exchange V6.0.5762.3' Oct 15 08:27:37.243: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: (S)R: `To: ' Oct 15 08:27:37.243: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: (S)R: `Return-Path: fax-unity2@vnt.com' Oct 15 08:27:37.243: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: (S)R: `X-OriginalArrivalTime: 14 Oct 2004 12:27:29.0487 (UTC) FILETIME=[2BE0DDF0:01C4B1E9]' Oct 15 08:27:37.243: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_work_routine: (S)R: `' Oct 15 08:27:37.243: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_new_part: Field name: `subject:' Field value: `00000000377C58FB04A29C468DAB3CBC07D7F94B0700E7E65E238D0DEF46B5F 8EAF983C6C51200000005E5B30000E7E65E238D0DEF46B5F8EAF983C6C51200000005FB680000' Oct 15 08:27:37.243: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_new_part: Field name: `date:' Field value: `Thu, 14 Oct 2004 08:27:29 -0400' Oct 15 08:27:37.243: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_new_part: Field name: `message-id:' Field value: `' Oct 15 08:27:37.243: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_new_part: Field name: `Content-Type:' Field value: `image/tiff; name="BODY.TIF"' Oct 15 08:27:37.243: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_new_part: Field name: `Content-Transfer-Encoding:' Field value: `base64' Oct 15 08:27:37.243: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_new_part: Field name: `from:' Field value: `"fax unity2" ' Oct 15 08:27:37.243: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_new_part: Field name: `to:' Field value: `' Oct 15 08:27:37.247: //-1/E7B232638008/SMTPS/esmtp_server_engine_new_part:exit@1977 Oct 15 08:27:37.251: ISDN Se2/0:23 Q931: pak_private_number: Invalid type/plan 0x0 0x1 may be overriden; sw-type 13 Oct 15 08:27:37.251: ISDN Se2/0:23 Q931: Applying typeplan for sw-type 0xD is 0x0 0x0, Called num 99915550 Oct 15 08:27:37.255: ISDN Se2/0:23 Q931: TX -> SETUP pd = 8 callref = 0x0003 Bearer Capability i = 0x8090A2 Standard = CCITT Transer Capability = Speech Transfer Mode = Circuit Transfer Rate = 64 kbit/s Channel ID i = 0xA98397 Exclusive, Channel 23 Called Party Number i = 0x80, '99915550' Plan:Unknown, Type:Unknown ... Oct 15 08:27:46.003: ISDN Se2/0:23 Q931: RX <- CONNECT pd = 8 callref = 0x8003 Oct 15 08:27:46.003: ISDN Se2/0:23 Q931: TX -> CONNECT_ACK pd = 8 callref = 0x0003 Oct 15 08:27:52.003: %ISDN-6-CONNECT: Interface Serial2/0:22 is now connected to 99915550 ... Oct 15 08:30:11.735: //-1/E7B232638008/SMTPS/esmtp_server_engine_buf_mgmt: buffer offset=1368, state=3 Oct 15 08:30:11.735: //-1/E7B232638008/SMTPS/esmtp_server_engine_dot_check: Not found the terminating Dot! Oct 15 08:30:11.739: //-1/E7B232638008/SMTPS/esmtp_server_engine_buf_mgmt: state=3 Oct 15 08:30:11.739: //-1/E7B232638008/SMTPS/esmtp_server_engine_buf_mgmt: buffer offset=1412, state=3 Oct 15 08:30:11.739: //-1/E7B232638008/SMTPS/esmtp_server_engine_dot_check: Found the terminating Dot! Oct 15 08:30:11.739: //-1/E7B232638008/SMTPS/esmtp_server_engine_work_routine: context(0x66CA9AC4), state=10Oct 15 08:30:12.483: //-1/xxxxxxxxxxxx/SMTPS/ esmtp_server_engine_update_recipient_status: faxmail status=6Oct 15 08:30:27.883: //-1/xxxxxxxxxxxx/SMTPS/esmtp_server_engine_update_recipient_status: faxmail status=7
路由器上的郵件伺服器收到該消息。SMTP會話中的所有欄位在各級路由器代碼上都會被解析,直到對該號碼進行了呼叫。幾個配置步驟中列出了需要注意的重要元素。
在show running-config輸出中,您可以看到:
fax interface-type fax-mail
OffRamp軟體必須載入到快閃記憶體或FTP/TFTP伺服器上。然後設定應用程式。例如,call application voice offramp flash:app_faxmail_offramp.2.0.1.1.tcl。
注意:用於OnRampOffRamp功能的工具命令語言(TCL¦)軟體從Cisco Downloads下載(僅限註冊客戶)。
mta receive maximum <recipients> — 大於0的數字
mta receive aliases <string> — 必須與DNS字尾匹配。例如,如果來自Cisco Unity的電子郵件傳送到fax=912345@myrouter.com,則別名必須為myrouter.com。可以有多個mta接收別名。
mta send server <IP address of Exchange server> — 為了傳送DSN,網關必須連線到郵件伺服器以傳遞郵件。儘管可以配置多個Exchange伺服器,但只需要配置一個Exchange伺服器。檢查是否刪除了所有無效mta發送伺服器地址。否則,將始終使用清單中的第一個。
mta receive generate permanent-error — 這是路由器正確將DSN傳送回Cisco Unity所必需的。
撥號對等體配置。例如:
dial-peer voice 5590 pots destination-pattern 991…. port 2/0:23 forward-digits all prefix 9 ! dial-peer voice 2 mmoip application offramp information-type fax incoming called-number 991 dsn delayed dsn success dsn failure !
如果消息沒有到達網關,則必須對Exchange進行故障排除。Exchange 2000中的診斷程式對此非常有用。例如:
類別SMTP協定和連線管理器的MSExchangeTransport診斷已啟用。它位於Exchange系統管理器中的各個伺服器屬性下。當您傳送消息時,應用程式事件檢視器日誌中會顯示該錯誤。最常見的錯誤配置之一是,路由器中的mta receive aliases引數與電子郵件字尾不匹配。例如,如果傳真服務嘗試將消息傳送到fax=91234@router.abc.com,則網關必須配置mta receive aliases router.abc.com。
這是生成的通知。為了節省空間,將省略部分跟蹤。
Oct 15 08:30:41.739: //-1/E7B232638008/SMTPS/ esmtp_server_engine_generate_notification: context(0x66CA9AC4) Oct 15 08:30:41.739: //-1/E7B232638008/SMTPS/sendDSN: context(0x66CA9AC4) Oct 15 08:30:41.739: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_open: from=, to=fax-unity2@vnt.com Oct 15 08:30:41.739: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_open:exit@1866 Oct 15 08:30:41.739: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_add_headers: from_comment=Fax Daemon Oct 15 08:30:41.739: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_dispose_context: exit@2109 Oct 15 08:30:41.739: //-1/E7B232638008/SMTPS/sendDSN: DSN sent, context(0x66CA9AC4) Oct 15 08:30:41.739: //-1/E7B232638008/SMTPS/ esmtp_server_engine_generate_notification:exit@35 Oct 15 08:30:41.739: //-1/E7B232638008/SMTPS/esmtp_server_engine_work_routine: context(0x66CA9AC4), state=1 Oct 15 08:30:41.983: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_work_routine: socket 0 readable for first time Oct 15 08:30:41.983: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_work_routine: socket 0 readable for first time Oct 15 08:30:41.983: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_getln: (C)R: 220 vnt2-ex1.vnt.com Microsoft ESMTP MAIL Service, Version: 5.0.2195.6713 ready at Thu, 14 Oct 2004 08:31:09 -0400 Oct 15 08:30:41.987: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_writeln: (C)S: EHLO vnt-3725-51.gateway.com Oct 15 08:30:41.987: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_write: return code=0 Oct 15 08:30:42.463: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_getln: (C)R: 250-vnt2-ex1.vnt.com Hello [14.80.51.14] Oct 15 08:30:42.463: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_getln: (C)R: 250-TURN Oct 15 08:30:42.463: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_getln: (C)R: 250-ATRN Oct 15 08:30:42.463: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_getln: (C)R: 250-SIZE Oct 15 08:30:42.463: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_getln: (C)R: 250-ETRN Oct 15 08:30:42.463: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_getln: (C)R: 250-PIPELINING Oct 15 08:30:42.463: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_getln: (C)R: 250-DSN Oct 15 08:30:42.463: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_getln: (C)R: 250-ENHANCEDSTATUSCODES Oct 15 08:30:42.463: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_getln: (C)R: 250-8bitmime Oct 15 08:30:42.463: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_getln: (C)R: 250-BINARYMIME Oct 15 08:30:42.463: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_getln: (C)R: 250-CHUNKING Oct 15 08:30:42.463: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_getln: (C)R: 250-VRFY Oct 15 08:30:42.463: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_getln: (C)R: 250-X-EXPS GSSAPI NTLM LOGIN Oct 15 08:30:42.463: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_getln: (C)R: 250-X-EXPS=LOGIN Oct 15 08:30:42.463: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_getln: (C)R: 250-AUTH GSSAPI NTLM LOGIN Oct 15 08:30:42.463: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_getln: (C)R: 250-AUTH=LOGIN Oct 15 08:30:42.463: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_getln: (C)R: 250-X-LINK2STATE Oct 15 08:30:42.467: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_getln: (C)R: 250-XEXCH50 Oct 15 08:30:42.467: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_getln: (C)R: 250 OK Oct 15 08:30:42.467: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_writeln: (C)S: MAIL FROM:<> Oct 15 08:30:42.467: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_write: return code=0 Oct 15 08:30:43.011: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_getln: (C)R: 250 2.1.0 <>....Sender OK Oct 15 08:30:43.011: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_writeln: (C)S: RCPT TO: Oct 15 08:30:43.011: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_write: return code=0 Oct 15 08:30:43.555: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_getln: (C)R: 250 2.1.5 fax-unity2@vnt.com Oct 15 08:30:43.555: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_write: return code=0 Oct 15 08:30:44.103: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_getln: (C)R: 354 Start mail input; end with . Oct 15 08:30:44.103: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_writeln: (C)S: Received: by vnt-3725-51.gateway.com for (with Cisco NetWorks); Fri, 15 Oct 2004 08:30:44 +0000 Oct 15 08:30:44.107: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_write: return code=0 Oct 15 08:30:44.107: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_writeln: (C)S: To: Oct 15 08:30:44.107: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_write: return code=0 Oct 15 08:30:44.107: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_writeln: (C)S: Message-ID: <00042004083044107@vnt-3725-51.gateway.com> Oct 15 08:30:44.107: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_write: return code=0 Oct 15 08:30:44.107: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_writeln: (C)S: Date: Fri, 15 Oct 2004 08:30:44 +0000 Oct 15 08:30:44.107: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_write: return code=0 Oct 15 08:30:44.107: //-1/xxxxxxxxxxxx/SMTPC/esmtp_client_engine_writeln: (C)S: Subject: Delivery Status Notification ...
如果不起作用,配置中的mta send server命令必須設定為正確的Exchange伺服器和埠(預設情況下為25)。傳送傳真消息時,需要在mmoip dial-peer上配置傳真消息匹配的DSN,並且存在mta receive generate permanent-error命令。有時,命令不存在,或指向錯誤的郵件伺服器。
注意:Cisco IOS配置允許您配置多個mta發送伺服器命令。但是,除非裝置完全無法訪問,否則只使用第一個。因此,當您更改mta send server時,您必須刪除上一個伺服器。
如果您有Outlook或Outlook Express並監視傳真郵箱,則會看到DSN在傳送之前由IP傳真服務在下一個間隔內處理。
郵件正文包含郵件ID。以前,它是主題。消息正文底部附近出現了錯誤。它們是ISDN Q.931錯誤代碼的抽象。如需詳細資訊,請參閱附錄。
Exchange郵件跟蹤中心也是一個同樣有用的工具。它內建於Exchange 2000/2003 System Manager中。以下是電子郵件:
當DSN消息位於IP傳真服務的郵箱中時,請檢查以確保它處理該消息。IpFaxSvc日誌檔案對此很有幫助。
"2004-10-14","08:31:30","Logging on to mailbox [VNT2-EX1\fax-unity2]" "2004-10-14","08:31:30","CIpFaxCdoHelper::LogonToMailbox() name returned from Logon is [fax unity2]""2004-10-14","08:31:30","Processing outbox, message count= 2" "2004-10-14","08:31:30","CIpFaxCdoHelper::ProcessFaxOutbox() processing message receipts" "2004-10-14","08:31:30","CIpFaxCdoHelper::DetermineMessageDisposition() current message subject=[Delivery Status Notification]" "2004-10-14","08:31:30","CIpFaxCdoHelper::MessageIsReceipt() processing message, type=[IPM.Note]""2004-10-14","08:31:30","CIpFaxCdoHelper::MessageIsReceipt() processing message as DELIVERY STATUS NOTIFICATION"
消息將被處理。
"2004-10-14","08:31:30","CIpFaxMessageBodyParser::GetOriginalSubject returning subject=[00000000377C58FB04A29C468DAB3CBC07D7F94B0700E7E65E238D0DEF4 6B5F8EAF983C6C51200000005E5B30000E7E65E238D0DEF46B5F8EAF983C6C51200000005FB680000]" "2004-10-14","08:31:30","CIpFaxMessageBodyParser::GetCauseCode returning cause code =[16]"
從消息正文中解析原始主題。這樣您便可以在資料庫中查詢該消息。原因代碼也解析為16。這是正常的呼叫清除。這些原因代碼對應於Q.931原因代碼。有關原因代碼的詳細資訊,請參閱Q.931斷開連線原因代碼。
該項從資料庫中安全刪除,並以0狀態重新新增。
"2004-10-14","08:31:30","CIpFaxAdoHelper::Execute() Cmd=[DELETE FROM tblIpFaxData WHERE MessageEntryID = '00000000377C58FB04A29C468DAB3CBC07D 7F94B0700E7E65E238D0DEF46B5F8EAF983C6C51200000005E5B20000E7E65E238D0DEF46B5F8 EAF983C6C51200000005F55A0000']" "2004-10-14","08:31:30","_RecordsetPtr::Open(Select * from tblIpFaxData where MessageEntryID = '00000000377C58FB04A29C468DAB3CBC07D7F94B0700E7E65E238D0DEF46 B5F8EAF983C6C51200000005E5B20000E7E65E238D0DEF46B5F8EAF983C6C51200000005F55A0000') returned [0] rows - Code: 0x80004005. Method: CIpFaxAdoHelper::GetRecordSet. [IpFaxAdoHelper.cpp::403]" "2004-10-14","08:31:30","CIpFaxAdoHelper::Execute() Cmd=[INSERT INTO tblIpFaxData (MessageEntryID, Status, ScratchDirectory, TifFileName, NdrErrorCode, BusyCounter, RnaCounter, TimeFirstHandled) VALUES ('00000000377C58FB04A29C4 68DAB3CBC07D7F94B0700E7E65E238D0DEF46B5F8EAF983C6C51200000005E5B20000E7E65E 238D0DEF46B5F8EAF983C6C51200000005F55A0000', '0', 'C:\CommServer\unityMta\ IpFaxScratchpad', '2fd36f2af94d4137835928894fb397eb.tif', '0', '0', '0', '2004-10-14 08:31:30')]"
這兩封郵件都被刪除。當您檢查出站傳真郵件時,沒有任何郵件。
2004-10-14","08:32:30","Processing outbox, message count= 0"
這些是當前測試版本中存在的一些當前警告。請參閱IP傳真配置嚮導或幫助檔案,瞭解解決這些問題的更多最新版本。
思科錯誤ID CSCef61241(僅限註冊客戶) — 出站IP傳真無法呈現PDF。
思科錯誤ID CSCef61256(僅限註冊客戶) — 出站IP傳真無法使用Exchange 5.5處理網關DSN。
思科錯誤ID CSCef96036(僅供註冊客戶使用)- IP傳真服務應在主題格式不正確時傳送NDR。
思科錯誤ID CSCef96051(僅限註冊客戶) — 出站IP傳真服務封面應該允許回撥號碼。
思科錯誤ID CSCeg04158(僅供註冊客戶使用)- IP傳真服務應該對含有未知附件的郵件進行NDR。
思科錯誤ID CSCeg04180(僅供註冊客戶使用)- IP傳真服務無法識別第三方傳真工具中的最後一個分機。
思科錯誤ID CSCeg39033(僅供註冊客戶使用)- IP傳真服務應該不允許呈現電子郵件正文。
思科錯誤ID CSCeg39046(僅限註冊客戶)- IP傳真呈現引擎和日誌目錄始終位於C:驅動器。
思科錯誤ID CSCeg39100(僅供註冊客戶使用)- IP傳真服務應在多次呈現失敗後對郵件進行NDR。
思科錯誤ID CSCeg45439(僅供註冊客戶使用)- IP傳真服務應允許確認向發件人傳送的傳真。
思科錯誤ID CSCeg45666(僅供註冊客戶使用)- IP傳真服務應在啟動時檢查應用程式依賴項。
思科錯誤ID CSCeg46458(僅供註冊客戶使用) — 停止IP傳真服務應會終止ODCDAEMON進程。
思科錯誤ID CSCeg52736(僅供註冊客戶使用) — 在傳出IP傳真服務中,MaximumWait金鑰無效。
以下是本文所述範例的追蹤軌跡。有兩個檔案。一個檔案用於後台程式,另一個檔案用於列印驅動程式。通常不需要這些裝置。但是,為了進行比較,每個示例都包括在內。提交呈現引擎出現問題時,這些檔案與常規IP傳真日誌一起是必需的。
C:\ImgMaker\Conversion_Toolkit\log\ODCDAEMON.log
此檔案經常使用,且相當易讀。輸入和輸出檔案在一個單獨的部分中列出,並且列出一個響應代碼。如果響應代碼為正數,則它指示呈現到輸出TIF檔案中的頁數。負響應代碼指示錯誤。檢查進程運行的使用者。這一點非常重要,因為只有這樣使用者才能開啟各個應用程式並將其轉換為TIF。
10/14/04 08:27:17 Start time: Thursday, October 14, 2004 08:27:17 AM Daemon logged in as user: vnt2-u1-ms Using registry root: HKEY_LOCAL_MACHINE 08:27:17: Pipe name: PrintDocDaemonPipe 08:27:17: Default printer name: ImageMaker DocCnvrt Driver 08:27:17: Registry server: <local> 08:27:17: Service started 08:27:19: 08:27:19: 10/14/04 08:27:19 ServiceRequest thread started 08:27:19: Processing 'Convert v1.0' request 08:27:19: Processing file: C:\CommServer\unityMta\IpFaxScratchpad\MsgBody.txt 08:27:19: Output file: C:\CommServer\unityMta\IpFaxScratchpad\render.tif 08:27:19: Printer name: ImageMaker DocCnvrt Driver 08:27:19: AppendTo filename set to C:\CommServer\unityMta\IpFaxScratchpad\render.tif 08:27:19: Input filename: C:\CommServer\unityMta\IpFaxScratchpad\MsgBody.txt 08:27:19: Output filename: C:\CommServer\unityMta\IpFaxScratchpad\render.tif 08:27:19: 0xE90: <10/14/04 08:27:19> StatusThread timeout value for jobstart: 60000 08:27:21: AutoShutdown feature activated 08:27:21: Sending response 1 to client 08:27:21: 10/14/04 08:27:21 ServiceRequest thread ended 08:27:21: 08:27:21: 10/14/04 08:27:21 ServiceRequest thread started 08:27:21: Processing 'Convert v1.0' request 08:27:21: Processing file: C:\CommServer\unityMta\IpFaxScratchpad\products.doc 08:27:21: Output file: C:\CommServer\unityMta\IpFaxScratchpad\render.tif 08:27:21: Printer name: ImageMaker DocCnvrt Driver 08:27:21: AppendTo filename set to C:\CommServer\unityMta\IpFaxScratchpad\render.tif 08:27:21: Input filename: C:\CommServer\unityMta\IpFaxScratchpad\products.doc 08:27:21: Output filename: C:\CommServer\unityMta\IpFaxScratchpad\render.tif 08:27:21: 0xEB8: <10/14/04 08:27:21> StatusThread timeout value for jobstart: 60000 08:27:23: AutoShutdown feature activated 08:27:23: Sending response 2 to client 08:27:23: 10/14/04 08:27:23 ServiceRequest thread ended 08:27:23: 08:27:23: 10/14/04 08:27:23 ServiceRequest thread started 08:27:23: Processing 'Convert v1.0' request 08:27:23: Processing file: C:\CommServer\unityMta\IpFaxScratchpad\cover.htm 08:27:23: Output file: C:\CommServer\unityMta\IpFaxScratchpad\ 0188c93ff8194177b9f313edabc2ea73.tif 08:27:23: Printer name: ImageMaker DocCnvrt Driver 08:27:23: AppendTo filename set to C:\CommServer\unityMta\ IpFaxScratchpad\0188c93ff8194177b9f313edabc2ea73.tif 08:27:23: Input filename: C:\CommServer\unityMta\IpFaxScratchpad\cover.htm 08:27:23: Output filename: C:\CommServer\unityMta\IpFaxScratchpad\ 0188c93ff8194177b9f313edabc2ea73.tif 08:27:23: 0xED8: <10/14/04 08:27:23> StatusThread timeout value for jobstart: 60000 08:27:24: AutoClose skipping window: <Print> with class: <#32770> because parent is IE6 08:27:24: AutoClose skipping window: <Print> with class: <#32770> because parent is IE6 08:27:26: AutoShutdown feature activated 08:27:26: Sending response 1 to client 08:27:26: 10/14/04 08:27:26 ServiceRequest thread ended 08:27:26: 08:27:26: 10/14/04 08:27:26 ServiceRequest thread started 08:27:26: Processing 'Convert v1.0' request 08:27:26: Processing file: C:\CommServer\unityMta\IpFaxScratchpad\render.tif 08:27:26: Output file: C:\CommServer\unityMta\IpFaxScratchpad\ 0188c93ff8194177b9f313edabc2ea73.tif 08:27:26: Printer name: ImageMaker DocCnvrt Driver 08:27:26: AppendTo filename set to C:\CommServer\unityMta\IpFaxScratchpad\ 0188c93ff8194177b9f313edabc2ea73.tif 08:27:26: Input filename: C:\CommServer\unityMta\IpFaxScratchpad\render.tif 08:27:26: Output filename: C:\CommServer\unityMta\IpFaxScratchpad\ 0188c93ff8194177b9f313edabc2ea73.tif 08:27:26: 0xEDC: <10/14/04 08:27:26> StatusThread timeout value for jobstart: 60000 08:27:29: AutoShutdown feature activated 08:27:29: Sending response 3 to client 08:27:29: 10/14/04 08:27:29 ServiceRequest thread ended
C:\log\ImageMaker DocCnvrt Driver.log
將渲染引擎的問題提交給Cisco技術支援時,必須執行此跟蹤。
---------------------------------------> Log session started: 04-10-14, 08:27:19 AM Platform: WinNT 4.0 Release Compilation pszPrinterName ImageMaker DocCnvrt Driver pszAnsiFileName C:\CommServer\unityMta\IpFaxScratchpad\MsgBody.txt pszOutFileName C:\CommServer\unityMta\IpFaxScratchpad\render.tif FileType:0 multiPages:1 command:2 timeout:1800 Entering pdcf_WriteInfoForControlDialog() oppening file: "C:\ImgMaker\Conversion_Toolkit\ImageMaker DocCnvrt Driver.FWD" to transfer data (printdoc.dll -> printdoc.exe dialog) data flushed! MS: 18808737 deleted file: "C:\ImgMaker\Conversion_Toolkit\ImageMaker DocCnvrt Driver.BWD" used to transfer data from dialog back to here! MS: 18808737 Leaving pdcf_WriteInfoForControlDialog() verb:[printto] params:["ImageMaker DocCnvrt Driver" "winspool" "Ne00:"] lpFile:[C:\CommServer\unityMta\IpFaxScratchpad\MsgBody.txt] Calling ShellExecuteEx() MS: 18808737 ShellExecute() succeded Calling pdcf_WaitForDoneFromControlDialog() MS: 18808769 Entering pdcf_WaitForDoneFromControlDialog() Monitoring cancel event: ImageMaker DocCnvrt Driver.printdoc.cancel Event already exists [this is good] fopen() failed fread() failed !DONE: timeout = 1799 reading file: "C:\ImgMaker\Conversion_Toolkit\ImageMaker DocCnvrt Driver.BWD" to get 'done' signal from dialog MS: 18809776 ppd_trans_feedback.done = TRUE Calling pdcf_WriteAckToControlDialog() MS: 18809776 Entering pdcf_WriteAckToControlDialog flushing 'done ack' signal to dialog MS: 18809776 Have to wait Leaving pdcf_WriteAckToControlDialog Leaving pdcf_WaitForDoneFromControlDialog() pdcf_WaitForDoneFromControlDialog() returned MS: 18810425 Entering pdcf_CleanUpControlDialog() MS: 18810425 Log session stopped: 04-10-14, 08:27:21 AM ---------------------------------------> ---------------------------------------> Log session started: 04-10-14, 08:27:21 AM Platform: WinNT 4.0 Release Compilation pszPrinterName ImageMaker DocCnvrt Driver pszAnsiFileName C:\CommServer\unityMta\IpFaxScratchpad\products.doc pszOutFileName C:\CommServer\unityMta\IpFaxScratchpad\render.tif FileType:0 multiPages:1 command:2 timeout:1800 Entering pdcf_WriteInfoForControlDialog() oppening file: "C:\ImgMaker\Conversion_Toolkit\ImageMaker DocCnvrt Driver.FWD" to transfer data (printdoc.dll -> printdoc.exe dialog) data flushed! MS: 18810518 deleted file: "C:\ImgMaker\Conversion_Toolkit\ImageMaker DocCnvrt Driver.BWD" used to transfer data from dialog back to here! MS: 18810518 Leaving pdcf_WriteInfoForControlDialog() verb:[printto] params:["ImageMaker DocCnvrt Driver" "winspool" "Ne00:"] lpFile:[C:\CommServer\unityMta\IpFaxScratchpad\products.doc] Calling ShellExecuteEx() MS: 18810518 ShellExecute() succeded Calling pdcf_WaitForDoneFromControlDialog() MS: 18810561 Entering pdcf_WaitForDoneFromControlDialog() Monitoring cancel event: ImageMaker DocCnvrt Driver.printdoc.cancel Event already exists [this is good] fopen() failed fread() failed !DONE: timeout = 1799 reading file: "C:\ImgMaker\Conversion_Toolkit\ImageMaker DocCnvrt Driver.BWD" to get 'done' signal from dialog MS: 18811581 !DONE: timeout = 1798 reading file: "C:\ImgMaker\Conversion_Toolkit\ImageMaker DocCnvrt Driver.BWD" to get 'done' signal from dialog MS: 18812585 ppd_trans_feedback.done = TRUE Calling pdcf_WriteAckToControlDialog() MS: 18812585 Entering pdcf_WriteAckToControlDialog flushing 'done ack' signal to dialog MS: 18812585 Have to wait Leaving pdcf_WriteAckToControlDialog Leaving pdcf_WaitForDoneFromControlDialog() pdcf_WaitForDoneFromControlDialog() returned MS: 18812858 Entering pdcf_CleanUpControlDialog() MS: 18812858 Log session stopped: 04-10-14, 08:27:23 AM ---------------------------------------> ---------------------------------------> Log session started: 04-10-14, 08:27:23 AM Platform: WinNT 4.0 Release Compilation pszPrinterName ImageMaker DocCnvrt Driver pszAnsiFileName C:\CommServer\unityMta\IpFaxScratchpad\cover.htm pszOutFileName C:\CommServer\unityMta\IpFaxScratchpad\ 0188c93ff8194177b9f313edabc2ea73.tif FileType:0 multiPages:1 command:2 timeout:1800 Entering pdcf_WriteInfoForControlDialog() oppening file: "C:\ImgMaker\Conversion_Toolkit\ImageMaker DocCnvrt Driver.FWD" to transfer data (printdoc.dll -> printdoc.exe dialog) data flushed! MS: 18812890 deleted file: "C:\ImgMaker\Conversion_Toolkit\ImageMaker DocCnvrt Driver.BWD" used to transfer data from dialog back to here! MS: 18812890 Leaving pdcf_WriteInfoForControlDialog() verb:[printto] params:["ImageMaker DocCnvrt Driver" "winspool" "Ne00:"] lpFile:[C:\CommServer\unityMta\IpFaxScratchpad\cover.htm] Calling ShellExecuteEx() MS: 18812894 ShellExecute() succeeded Calling pdcf_WaitForDoneFromControlDialog() MS: 18812897 Entering pdcf_WaitForDoneFromControlDialog() Monitoring cancel event: ImageMaker DocCnvrt Driver.printdoc.cancel Event already exists [this is good] fopen() failed fread() failed !DONE: timeout = 1799 fopen() failed fread() failed !DONE: timeout = 1798 reading file: "C:\ImgMaker\Conversion_Toolkit\ImageMaker DocCnvrt Driver.BWD" to get 'done' signal from dialog MS: 18814909 ppd_trans_feedback.done = TRUE Calling pdcf_WriteAckToControlDialog() MS: 18814909 Entering pdcf_WriteAckToControlDialog flushing 'done ack' signal to dialog MS: 18814909 Have to wait Leaving pdcf_WriteAckToControlDialog Leaving pdcf_WaitForDoneFromControlDialog() pdcf_WaitForDoneFromControlDialog() returned MS: 18815620 Entering pdcf_CleanUpControlDialog() MS: 18815620 Log session stopped: 04-10-14, 08:27:26 AM ---------------------------------------> ---------------------------------------> Log session started: 04-10-14, 08:27:26 AM Platform: WinNT 4.0 Release Compilation pszPrinterName ImageMaker DocCnvrt Driver pszAnsiFileName C:\CommServer\unityMta\IpFaxScratchpad\render.tif pszOutFileName C:\CommServer\unityMta\IpFaxScratchpad\ 0188c93ff8194177b9f313edabc2ea73.tif FileType:0 multiPages:1 command:2 timeout:1800 Entering pdcf_WriteInfoForControlDialog() oppening file: "C:\ImgMaker\Conversion_Toolkit\ImageMaker DocCnvrt Driver.FWD" to transfer data (printdoc.dll -> printdoc.exe dialog) data flushed! MS: 18815632 deleted file: "C:\ImgMaker\Conversion_Toolkit\ImageMaker DocCnvrt Driver.BWD" used to transfer data from dialog back to here! MS: 18815632 Leaving pdcf_WriteInfoForControlDialog() verb:[printto] params:["ImageMaker DocCnvrt Driver" "winspool" "Ne00:"] lpFile:[C:\CommServer\unityMta\IpFaxScratchpad\render.tif] Calling ShellExecuteEx() MS: 18815632 ShellExecute() succeded Calling pdcf_WaitForDoneFromControlDialog() MS: 18815659 Entering pdcf_WaitForDoneFromControlDialog() Monitoring cancel event: ImageMaker DocCnvrt Driver.printdoc.cancel Event already exists [this is good] fopen() failed fread() failed !DONE: timeout = 1799 reading file: "C:\ImgMaker\Conversion_Toolkit\ImageMaker DocCnvrt Driver.BWD" to get 'done' signal from dialog MS: 18816667 !DONE: timeout = 1798 reading file: "C:\ImgMaker\Conversion_Toolkit\ImageMaker DocCnvrt Driver.BWD" to get 'done' signal from dialog MS: 18817671 ppd_trans_feedback.done = TRUE Calling pdcf_WriteAckToControlDialog() MS: 18817671 Entering pdcf_WriteAckToControlDialog flushing 'done ack' signal to dialog MS: 18817671 Have to wait Leaving pdcf_WriteAckToControlDialog Leaving pdcf_WaitForDoneFromControlDialog() pdcf_WaitForDoneFromControlDialog() returned MS: 18818319 Entering pdcf_CleanUpControlDialog() MS: 18818319 Log session stopped: 04-10-14, 08:27:29 AM --------------------------------------->
Code Cause 0 Valid cause code not yet received 1 Unallocated (unassigned) number 2 No route to specified transit network (WAN) 3 No route to destination 4 send special information tone 5 misdialled trunk prefix. 6 Channel unacceptable 7 Call awarded and being delivered in an established channel 8 Prefix 0 dialed but not allowed 9 Prefix 1 dialed but not allowed 10 Prefix 1 dialed but not required 11 More digits received than allowed, call is proceeding 16 Normal call clearing 17 User busy 18 No user responding 19 no answer from user 21 Call rejected 22 Number changed 23 Reverse charging rejected 24 Call suspended 25 Call resumed 26 Non-selected user clearing 27 Destination out of order 28 Invalid number format (incomplete number) 29 Facility rejected 30 Response to STATUS ENQUIRY 31 Normal, unspecified 33 Circuit out of order 34 No circuit/channel available 35 Destination unattainable 37 Degraded service 38 Network (WAN) out of order 39 Transit delay range cannot be achieved 40 Throughput range cannot be achieved 41 Temporary failure 42 Switching equipment congestion 43 Access information discarded 44 Requested circuit channel not available 45 Pre-empted 46 Precedence call blocked 47 Resource unavailable - unspecified 49 Quality of service unavailable 50 Requested facility not subscribed 51 Reverse charging not allowed 52 Outgoing calls barred 53 Outgoing calls barred within CUG 54 Incoming calls barred 55 Incoming calls barred within CUG 56 Call waiting not subscribed 57 Bearer capability not authorized 58 Bearer capability not presently available 63 Service or option not available, unspecified 65 Bearer service not implemented 66 Channel type not implemented 67 Transit network selection not implemented 68 Message not implemented 69 Requested facility not implemented 70 Only restricted digital information bearer capability is available 79 Service or option not implemented, unspecified 81 Invalid call reference value 82 Identified channel does not exist 83 A suspended call exists, but this call identity does not 84 Call identity in use 85 No call suspended 86 Call having the requested call identity has been cleared 87 Called user not member of CUG 88 Incompatible destination 89 Non-existent abbreviated address entry 90 Destination address missing, and direct call not subscribed 91 Invalid transit network selection (national use) 92 Invalid facility parameter 93 Mandatory information element is missing 95 Invalid message, unspecified 96 Mandatory information element is missing 97 Message type non-existent or not implemented 98 Message not compatible with call state or message type non-existent or not implemented 99 information element nonexistant or not implemented 100 Invalid information element contents 101 Message not compatible with call state 102 Recovery on timer expiry 103 parameter non-existent or not implemented - passed on 111 Protocol error unspecified 127 Internetworking, unspecified
修訂 | 發佈日期 | 意見 |
---|---|---|
1.0 |
02-Jul-2007 |
初始版本 |