2

We want to implement Online/Offline using Pubnub framework in iOS but app doesn't work in background more than 10 minutes. We have tried to implement this by enable location feature and its working fine. But client does not want to enable location service for this purpose. So how we will manage to make run enable in background infinite ? (QUE 1)

And if we want to put Online/Offline/Away status in our code

Where we should show, Online: When user open the app Offline: When user close the app from background OR delete the app Away: When user tap on home button and app is in background.

How we will implement this (Specially AWAY & Offline state)?(QUE 2)

Is there any other way to manage Online/Offline/Away ? (Without Pubnub ) (QUE 3) If Yes, please describe the way.

How we will manage Online/Offline/Away using web service? When we call that web services? (QUE 4)

We are using almost 3-4 year old base code. So should we add any other parameter in plist to enable app in background for more time ? (QUE 5)

Please guide us.

4

2 に答える 2

2

PubNub Presenceを使用すると、アプリでこの機能を提供する最善の方法が得られますが、iOS がバックグラウンドに入るアプリを処理する方法が原因で、このステータスを更新する機会がある場合とない場合があります (アプリが実行するように構成されている方法によって異なります)。

しかし非常に簡単に言えば、PubNub キーのプレゼンスを有効にすることで、クライアントがチャンネルをサブスクライブすると、そのチャンネルでjoinプレゼンスをリッスンしている他のすべてのサブスクライバーにイベントが送信されます。

アプリがバックグラウンドになると、機会があれば、クライアントがサブスクライブしているすべてのチャネルでサブスクライブ解除を呼び出すleaveことができます。イベントは、プレゼンス イベントをリッスンしているそのチャネルのすべてのサブスクライバーに送信されます。

また、アプリが強制終了されるか、呼び出す機会がないバックグラウンドに移行したunsubscribe場合、アプリが設定されたハートビート期間よりも長くオフライン/切断されている場合、(イベントに相当する) がすべてに送信されます。プレゼンス イベントを聞いている加入者。timeoutleave

ハートビートのデフォルトは 5 分ですが、これを 60 秒などの低い設定に構成できます(または、これを必要とするが 15 秒を下回らないユース ケースの場合はそれより短くします)。

サーバーにプレゼンス イベントをリッスンさせたい場合は、プレゼンス Webhook を使用することをお勧めします (ドキュメントは近日公開予定)。PubNub Presence Webhook を実装する方法と、それらを使用するように設定された PubNub キーを取得する方法については、この StackOverflow スレッドを参照してください。

于 2015-08-31T18:26:46.657 に答える