2013-05-29 32 views
2

我是一名php開發人員。我有一個數據庫表(mysql),用戶名和他們的在線狀態(1或0)正在存儲。現在我必須將在線用戶列表發送給ios,以便ios可以隨時獲得更新記錄。發送更新列表在線和離線聊天用戶從PHP到ios

如果ios在每秒鐘之後向服務器發送請求,那麼很顯然,在ios端可見的數據將被更新。 但是,我不想要這個選項。 如果服務器端發生任何更改,則只有ios可以向服務器發送請求,服務器會響應ios。這是我的計劃。爲此,我認爲APNS會更好。但是當我瞭解到它對於顯示在線聊天用戶來說效率並不高時,我認爲應該有另一種方法或機制,以便不使用APNS,我可以解決我的問題。

請建議我哪個更好。提前致謝。

回答

0

您可能需要網絡套接字通信。試試PHPWebSocket

+0

感謝您的更新,但請你解釋一下如何連接到對方或者你可以請提供我從哪裏可以得到有關的一些想法的任何鏈接這個。其實我對socket程序並不靈活。 – Mausumi

0

你有像phpWebSocke這樣的選項,你的客戶端必須在其中ping或發送套接字請求到服務器。與您在問題中描述的方法相同。

儘管APNS並非100%保證您的客戶端設備能夠收到您的信息。

我強烈建議你去開源的jabber服務器和客戶端API(XMPP)。 OpenFire和'Smack'&'smackx'API將代表您處理所有事情。和它的開源。所以不需要擔心許可證,也不需要重新發明輪子。

這裏是鏈接。

http://www.igniterealtime.org/index.jsp

http://mobile.tutsplus.com/tutorials/iphone/building-a-jabber-client-for-ios-server-setup/

https://groups.google.com/forum/?fromgroups#!topic/xmppframework/ctp5uTUau3M

+0

感謝您的建議。堅果我認爲,jabber服務器限制爲MobileMe,Mac.com,AIM,Google Talk和jabber賬戶。 其實我已經有一個數據庫表,其中用戶的會話ID和設備ID正在捕獲和存儲到表中。爲此OpenTok正在使用。 因此,在這種情況下,請讓我知道jabber服務器是否會工作? – Mausumi

+0

奧基,現在我沒有明白你的觀點。請參閱:您必須安裝「openfire」服務器(XMPP服務器),對其進行配置。那麼所有你需要的是爲iOS下載API(XMPP客戶端)Jabber,smackx,smack。在這個API中你可以發送添加好友請求,你可以顯示待處理請求列表。或即將發送的聊天。顯示在線用戶。設置狀態......一切。 API也可用於IOS,Android,Blackbaryy,桌面客戶端,Windows Phone。 – av1987

+0

但我的應用程序中沒有可用的電子郵件地址,只有sessionID和deviceID以及enablestatus在那裏。那麼我也可以使用它嗎? – Mausumi

相關問題