0

でPUSH通知をGoogle Firebaseに送信します。ガイドとして、AndroidデバイスにPUSH通知を送信しようとしています(https://firebase.google.com/docs/cloud-messaging/server#connecting)、Glooxライブラリを使用して送信していますが、 Firebaseは「STARTTLS」をサポートしていないので、つまり、Gloox XMPPライブラリ

log: level: 0, area: 8, This is gloox 1.0.20, connecting to fcm-xmpp.googleapis.com:5236... 
log: level: 0, area: 32, Connecting to fcm-xmpp.googleapis.com (64.233.188.188:5236) 
log: level: 0, area: 32, Connected to fcm-xmpp.googleapis.com (64.233.188.188:5236) 
log: level: 0, area: 262144, <stream:stream to="gcm.googleapis.com" xmlns="jabber:client" xmlns:stream="http://etherx.jabber.org/streams" version="1.0"> 
log: level: 2, area: 8, parse error (at pos 0): 

答えて

0

私はそれを解決し得たが、GLOOXは、「STARTTLS」を(有効:Googleのサーバからのデータ(\ X15の\×3の\×1)とは、解析に失敗しましたTLSハンドシェイクの前にXMLを送信します)。

私たちは、 "STARTTLS" を無効にするには、コードの下に使用する必要があります。

JID jid("[email protected]"); 
    j = new Client(jid, "AAAAADMKj3w:APA9178fdsksW-0rDT0dTu1rMoO0N30J_KldYx9XsQ86fd3540bTIR9e54wDLpU0TWdPf8DnsBRZH-YEc5rtHuRMJRPE_92bcKkLNT42JQ-9fzLJW1yu34r89diWiBS6Rt6_56WzUUmJarc2WCDzz2Tj");  
    j->setServer("fcm-xmpp.googleapis.com"); 
    j->setConnectionImpl(new ConnectionTLS(j, new ConnectionTCPClient(j->logInstance(), "fcm-xmpp.googleapis.com", 5236), j->logInstance())); 
    j->setPort(5236); // For release will be 5235 // The TLS and SASL default is enabled 
    j->setTls(TLSOptional); 
    j->setSasl(true); 
    j->registerConnectionListener(this); 
    j->registerMessageSessionHandler(this, 0); 
    j->disco()->setVersion("PortSIP PBX", "9.0"); 
    j->disco()->setIdentity("PushSender", "Sender"); 
    j->disco()->addFeature(XMLNS_CHAT_STATES); 
関連する問題