無法建立到 gmail 的 XMPP 伺服器到伺服器連接
我的 jabber-server 無法連接到 gmail.com 並給出錯誤:傳出 s2s 流 myserver.com.ua->bot.talk.google.com 已關閉:未定義條件(myserver.com.ua 是 Google Apps 域 with Talk服務已啟用。)
我正在使用 Prosody XMPP 伺服器。它適用於我迄今為止測試過的其他 jabber 伺服器(例如 jabber.ru)。但是,當我的一些客戶嘗試將 gmail 聯繫人添加到他的聯繫人列表時,訂閱請求將永遠持續,並且 Prosody 在其日誌中提供以下消息序列:
Oct 21 22:57:16 s2sout95897f8 info Beginning new connection attempt to gmail.com ([173.194.70.125]:5269) Oct 21 22:57:16 s2sout95897f8 info sent dialback key on outgoing s2s stream Oct 21 22:57:16 s2sout95897f8 info Session closed by remote with error: undefined-condition (myserver.com.ua is a Google Apps Domain with Talk service enabled.) Oct 21 22:57:16 s2sout95897f8 info outgoing s2s stream myserver.com.ua->gmail.com closed: undefined-condition (myserver.com.ua is a Google Apps Domain with Talk service enabled.) Oct 21 22:57:16 s2sout95897f8 info sending error replies for 2 queued stanzas because of failed outgoing connection to gmail.com
這裡我使用myserver.com.ua的伺服器域名
我發現這個執行緒中描述了一個類似的問題,但那裡沒有解決方案的詳細描述。
至於Google服務,我確實有一個Google賬戶,我在其中將有問題的域名添加到了網站管理員工具頁面。但是,我很久以前就刪除了我的帳戶,所以現在還不清楚 Google 的任何服務如何與我的域名相關聯。
所以我的問題是:這個問題的真正原因是什麼(我的 jabber-server 配置或虛構的 Google 帳戶或其他),我怎樣才能讓我的 Prosody 伺服器連接到 gmail.com jabber 服務?
這是因為 google 使用其內部通過 jabber 協議進行通信的方式。
如果您在 google 應用配置中禁用 Talk/Hangout,它將開始工作(幾個小時後)。
如果您使用的是 Google Apps,則需要在 DNS 中設置一些 SRV 記錄。您可以使用這個很棒的工具來檢查您的域的 DNS 是否設置正確,如果沒有 - 如何。
我對 myserver.com.ua 進行了檢查 - 找不到該域的 Jabber 記錄。