1

Android デバイスへの通知の送受信を目的として、XMPP 経由で Google Cloud Connection Server ( http://developer.android.com/google/gcm/ccs.html ) に接続します。

.NET4.5 コンソール アプリケーションで AGSSMPP (執筆時点の最新バージョン) を使用してテストします。

ただし、開始 XML を送信した直後 - 接続は閉じられます。そして、私は何の説明も見つけることができません。

送信される内容:

<stream:stream to='gcm.googleapis.com' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams' version='1.0' xml:lang='en'>

<stream />Google のドキュメントでは、AGSXMPP がこれを送信していないため、ストリームは自己閉鎖されていることに注意してください。違いがあるかどうかはわかりません。

Wireshark を使用すると、メッセージがストリームで送信され、Google が TCP リセットで応答し、接続が閉じられることがわかります。

xmpp = new XmppClientConnection
         {
            UseSSL = true,
            UseStartTLS = true,
            Server = "gcm.googleapis.com",
            ConnectServer = "gcm.googleapis.com",
            Port = 5235,
            Username = "<SENDER ID>@gcm.googleapis.com",
            Password = <KEY>,
            AutoResolveConnectServer = false,
            SocketConnectionType = SocketConnectionType.Direct,
            KeepAlive = true,
         };

xmpp.Open();

他の設定 (ログインなど) が正しくない場合でも、少なくともこのストリーム メッセージを通過して、ある種の接続を確立できるはずです。

4

1 に答える 1