2013-06-18 28 views
7

có thể bạn đã nghe về nó. Nó đã được công bố tại Google IO có thể một tháng trước đây. Nhắn tin qua đám mây của Google chỉ ở hạ lưu (máy chủ -> điện thoại), nhưng bây giờ với CCS tăng cường (máy chủ kết nối đám mây), bạn có thể gửi thư ngược dòng qua kết nối TCP liên tục nhờ giao thức XMPP. Tôi đã thiết kế một ứng dụng hoạt động với GCM và HTTP. Nó sử dụng thư viện gcm và các lớp được đóng gói trong đó (như GCMRegistrar). Các lớp học này hiện không còn được dùng nữa và Google khuyên bạn nên sử dụng API GoogleCloudMessaging thay thế.Nhắn tin qua đám mây của Google qua giao thức XMPP (máy chủ hoạt động với PHP và XMPPHP). Làm thế nào nó hoạt động?

Mọi thứ hoạt động hơi khác một chút. Bạn có tài liệu của Google và chúng giải thích rất tốt, cách bạn có thể thiết kế Ứng dụng Android của mình. NHƯNG Tôi có vấn đề với máy chủ, bởi vì tôi chưa bao giờ làm việc với XMPP trước đây. Họ đưa ra một mã bằng Python ở đây: http://developer.android.com/google/gcm/gs.html nhưng tôi không biết gì về Python. Vì vậy, tôi đã điều tra và sau đó tôi tìm thấy thư viện XMPPHP. Sau đó bạn có thể làm việc với PHP và sử dụng thư viện để kết nối với XMPP và gửi/nhận tin nhắn.

Tôi không có kinh nghiệm làm việc với nó và nó không hoạt động với tôi. Làm cách nào để mở kết nối XMPP với máy chủ Google XMPP?

tôi thấy cách này để mở một kết nối (ở đây bạn làm việc với thư viện):

$conn = new XMPPHP_XMPP($host, $port, $user, $password, $resource, $server, $printlog, $loglevel); 

Có ai biết được thông số nào để tôi phải vượt qua ở đây để kết nối với Google CCS ??

Tôi cũng muốn biết:

Tôi gửi tin nhắn qua XMPP tới thiết bị như thế nào? Làm cách nào để nhận tin nhắn từ thiết bị?

+0

$ conn = new XMPPHP_XMPP ('http://gcm.googleapis.com', '5235', ' @ gcm.googleapis.com', 'apikey', '', $ server, 'true' , 'thông tin'); –

+0

Tôi nghĩ rằng nó hoạt động ngay bây giờ, tôi có nên để kết nối này mở không? Bạn có biết làm thế nào tôi có thể gửi tin nhắn đến thiết bị để kiểm tra xem mọi thứ có hoạt động chính xác không? Tôi có Ứng dụng Android đã sẵn sàng với Bộ thu phát sóng –

+0

bạn có thể cung cấp cho tôi mã cho mã máy chủ gcm mới nhất không? –

Trả lời

2

Tôi gặp vấn đề tương tự, đã thử sử dụng XMPPHP, nhưng sau đó phát hiện thư viện JAXL và chuyển sang thư viện đó. Xem unable to connect to Google Cloud Connection Server. JAXL cho phép bạn xem nội dung gửi, sử dụng chế độ gỡ lỗi đặc biệt 'log_level' => JAXL_DEBUG. Sau đó, tôi thấy rằng Google gửi cho tôi điều này:

<failure xmlns="urn:ietf:params:xml:ns:xmpp-sasl"><temporary-auth-failure/><text xmlns="urn:ietf:params:xml:ns:xmpp-stanzas">Project 1945693724760 not whitelisted.</text></failure> 

Đó là lý do tôi không thể gửi bất kỳ thông báo nào. Trước tiên bạn nên đăng ký CCS tại đây: https://services.google.com/fb/forms/gcm/.

Các vấn đề liên quan