Skip to content

Commit e3d8aba

Browse files
committed
Presence Heartbeat fixes
1 parent 2a4b71b commit e3d8aba

10 files changed

+29
-18
lines changed

.pubnub.yml

+11-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,15 @@
11
---
22
changelog:
3+
-
4+
changes:
5+
-
6+
text: "Heartbeat query param in Presence heartbeat call"
7+
type: bug
8+
-
9+
text: "Presence Heartbeat defaults to 300"
10+
type: improvement
11+
date: Jan 16, 19
12+
version: v4.7.2
313
-
414
changes:
515
-
@@ -475,4 +485,4 @@ supported-platforms:
475485
- "Ubuntu 12.04+, with Graphics card DX9 (shader model 3.0) or DX11 with feature level 9.3 capabilities; and CPU SSE2 instruction set support."
476486
- "Mac OS X 10.8+, with Graphics card DX9 (shader model 3.0) or DX11 with feature level 9.3 capabilities; and CPU SSE2 instruction set support."
477487
version: "PubNub Unity SDK"
478-
version: v4.7.1
488+
version: v4.7.2

PubNubUnity/Assets/PubNub/Builders/Presence/SetStateRequestBuilder.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ out ChannelEntities
6161

6262
protected override void RunWebRequest(QueueManager qm){
6363
RequestState requestState = new RequestState ();
64-
requestState.OperationType = PNOperationType.PNWhereNowOperation;
64+
requestState.OperationType = PNOperationType.PNSetStateOperation;
6565

6666
string channels = "";
6767
if((ChannelsToUse != null) && (ChannelsToUse.Count>0)){

PubNubUnity/Assets/PubNub/Editor/LeaveBuildRequestsTests.cs

+3-2
Original file line numberDiff line numberDiff line change
@@ -250,11 +250,12 @@ public void TestBuildLeaveRequestCommon(string[] channels, string[] channelGroup
250250
Uri uri = BuildRequests.BuildLeaveRequest (ch, cg, pnUnity, queryParams);
251251

252252
//https://ps.pndsn.com/v2/presence/sub_key/demo-36/channel/test/leave?uuid=customuuid&auth=authKey&pnsdk=PubNub-CSharp-UnityIOS/3.6.9.0
253-
string expected = string.Format ("http{0}://{1}/v2/presence/sub_key/{2}/channel/{3}/leave?uuid={4}{7}{5}&pnsdk={6}{8}",
253+
string expected = string.Format ("http{0}://{1}/v2/presence/sub_key/{2}/channel/{3}/leave?uuid={4}{7}{5}{9}&pnsdk={6}{8}",
254254
ssl?"s":"", pnConfiguration.Origin, EditorCommon.SubscribeKey, chStr,
255255
uuid, authKeyString, Utility.EncodeUricomponent(pnUnity.Version, PNOperationType.PNLeaveOperation, false, true),
256256
cgStr,
257-
queryParamString
257+
queryParamString,
258+
(pnConfiguration.PresenceTimeout > 0)?string.Format("&heartbeat={0}", pnConfiguration.PresenceTimeout) : ""
258259
);
259260
string received = uri.OriginalString;
260261
EditorCommon.LogAndCompare (expected, received);

PubNubUnity/Assets/PubNub/Editor/PresenceHeartbeatBuildRequestsTests.cs

+3-2
Original file line numberDiff line numberDiff line change
@@ -475,7 +475,7 @@ public void TestBuildPresenceHeartbeatRequestCommon(string[] channelGroups, stri
475475

476476
//https://ps.pndsn.com/v2/presence/sub_key/demo-36/channel/user_state_channel/heartbeat?uuid=customuuid&state={"k":"v"}&auth=authKey&pnsdk=PubNub-CSharp-UnityIOS/3.6.9.0
477477

478-
string expected = string.Format ("http{0}://{1}/v2/presence/sub_key/{2}/channel/{3}/heartbeat?uuid={4}{5}{6}{9}{7}&pnsdk={8}",
478+
string expected = string.Format ("http{0}://{1}/v2/presence/sub_key/{2}/channel/{3}/heartbeat?uuid={4}{5}{6}{9}{7}{10}&pnsdk={8}",
479479
ssl?"s":"", EditorCommon.Origin,
480480
EditorCommon.SubscribeKey,
481481
chStr,
@@ -484,7 +484,8 @@ public void TestBuildPresenceHeartbeatRequestCommon(string[] channelGroups, stri
484484
Utility.EncodeUricomponent(userState, PNOperationType.PNSubscribeOperation, false, false),
485485
authKeyString,
486486
Utility.EncodeUricomponent(pnUnity.Version, PNOperationType.PNSubscribeOperation, false, true),
487-
cgStr
487+
cgStr,
488+
(pnConfiguration.PresenceTimeout > 0)?string.Format("&heartbeat={0}", pnConfiguration.PresenceTimeout) : ""
488489
);
489490
string received = uri.OriginalString;
490491
EditorCommon.LogAndCompare (expected, received);

PubNubUnity/Assets/PubNub/Editor/SubscribeBuildRequestsTests.cs

+6-5
Original file line numberDiff line numberDiff line change
@@ -1162,9 +1162,9 @@ public void TestBuildSubscribeRequestCommon(string[] channels, string[] channelG
11621162
}
11631163

11641164
string phb = "";
1165-
if (presenceHeartbeat != 0) {
1166-
phb = string.Format("&heartbeat={0}", presenceHeartbeat);
1167-
}
1165+
// if (presenceHeartbeat != 0) {
1166+
// phb = string.Format("&heartbeat={0}", presenceHeartbeat);
1167+
// }
11681168

11691169
string chStr = ",";
11701170
string ch = "";
@@ -1187,7 +1187,7 @@ public void TestBuildSubscribeRequestCommon(string[] channels, string[] channelG
11871187

11881188
//http://ps.pndsn.com/v2/subscribe/demo-36/test/0?uuid=customuuid&tt=21221&state={"k":"v"}&auth=authKey&pnsdk=PubNub-CSharp-UnityIOS/3.6.9.0
11891189
//http://ps.pndsn.com/v2/subscribe/demo-36/test/0?uuid=customuuid&tt=0&filter-expr=(region%20%3D%3D%20%22east%22)&channel-group=cg&auth=authKey&pnsdk=PubNub-CSharp-UnityOSX/3.7
1190-
string expected = string.Format ("http{0}://{1}/v2/subscribe/{2}/{3}/0?uuid={5}{4}{10}{11}{6}{7}{12}{8}{13}&pnsdk={9}{14}",
1190+
string expected = string.Format ("http{0}://{1}/v2/subscribe/{2}/{3}/0?uuid={5}{4}{10}{11}{6}{7}{12}{8}{13}{15}&pnsdk={9}{14}",
11911191
ssl?"s":"", pnConfiguration.Origin, pnConfiguration.SubscribeKey,
11921192
chStr,
11931193
ttStr,
@@ -1200,7 +1200,8 @@ public void TestBuildSubscribeRequestCommon(string[] channels, string[] channelG
12001200
reg,
12011201
cgStr,
12021202
phb,
1203-
queryParamString
1203+
queryParamString,
1204+
(pnConfiguration.PresenceTimeout > 0)?string.Format("&heartbeat={0}", pnConfiguration.PresenceTimeout) : ""
12041205
);
12051206
string received = uri.OriginalString;
12061207
EditorCommon.LogAndCompare (expected, received);

PubNubUnity/Assets/PubNub/Models/Server/BuildRequests.cs

+1-3
Original file line numberDiff line numberDiff line change
@@ -1233,16 +1233,14 @@ private static Uri BuildRestApiRequest<T> (List<string> urlComponents, PNOperati
12331233
case PNOperationType.PNLeaveOperation:
12341234
case PNOperationType.PNSubscribeOperation:
12351235
case PNOperationType.PNPresenceOperation:
1236-
1236+
case PNOperationType.PNPresenceHeartbeatOperation:
12371237
url = AppendUUIDToURL(url, uuid, true);
12381238
url.Append(parameters);
12391239
url = AppendAuthKeyToURL(url, authenticationKey, type);
12401240

12411241
url = AppendPresenceHeartbeatToURL(url, pubnubPresenceHeartbeatInSeconds);
12421242
url = AppendPNSDKVersionToURL(url, pnsdkVersion, type);
12431243
break;
1244-
1245-
case PNOperationType.PNPresenceHeartbeatOperation:
12461244
case PNOperationType.PNGetStateOperation:
12471245
case PNOperationType.PNPublishOperation:
12481246
case PNOperationType.PNSignalOperation:

PubNubUnity/Assets/PubNub/PubNubUnity/PNConfiguration.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ private int calPresenceInterval(int presenceTimeout){
121121
return (presenceTimeout/2)-1;
122122
}
123123

124-
private int presenceTimeout = 0;
124+
private int presenceTimeout = 300;
125125
private readonly int minPresenceTimeout = 20;
126126
public int PresenceTimeout {
127127
get{

PubNubUnity/Assets/PubNub/PubNubUnity/PubNubUnityBase.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ namespace PubNubAPI
77
public class PubNubUnityBase
88
{
99
protected Counter publishMessageCounter;
10-
private const string build = "4.7.1";
10+
private const string build = "4.7.2";
1111
private string pnsdkVersion = string.Format ("PubNub-CSharp-Unity/{0}", build);
1212

1313
public string Version {

README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
[![Build Status](https://api.travis-ci.org/pubnub/unity.svg?branch=master)](https://travis-ci.org/pubnub/unity) [![Build status](https://ci.appveyor.com/api/projects/status/1p3494pnt6rgqdsm/branch/master?svg=true)](https://ci.appveyor.com/project/PubNub/unity)
44

5-
## PubNub 4.7.1 Web Data Push Cloud-Hosted API for Unity 5+
5+
## PubNub 4.7.2 Web Data Push Cloud-Hosted API for Unity 5+
66
### Supports PC, Mac, Linux, iOS, Android, Windows Store Universal 10 and WebGL
77

88
## All new PubNub Unity SDK

VERSION

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
4.7.1
1+
4.7.2

0 commit comments

Comments
 (0)