Skip to content

Commit 5ea5c99

Browse files
authored
Convert AuthenticateUserTicket to strong typing (#111)
1 parent 47c6ce3 commit 5ea5c99

File tree

6 files changed

+40
-3
lines changed

6 files changed

+40
-3
lines changed
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
namespace Steam.Models.SteamUserAuth
2+
{
3+
public class SteamAuthError
4+
{
5+
public string ErrorCode { get; set; }
6+
public string ErrorDesc { get; set; }
7+
}
8+
}
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
namespace Steam.Models.SteamUserAuth
2+
{
3+
public class SteamAuthResponseParams
4+
{
5+
public string Result { get; set; }
6+
public string SteamId { get; set; }
7+
public string OwnerSteamId { get; set; }
8+
public bool VacBanned { get; set; }
9+
public bool PublisherBanned { get; set; }
10+
}
11+
}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
namespace Steam.Models.SteamUserAuth
2+
{
3+
public class SteamUserAuthResponse
4+
{
5+
public SteamAuthResponseParams Params { get; set; }
6+
public SteamAuthError Error { get; set; }
7+
public bool Success => Error == null && Params != null;
8+
}
9+
}
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
namespace Steam.Models.SteamUserAuth
2+
{
3+
public class SteamUserAuthResponseModel
4+
{
5+
public SteamUserAuthResponse Response { get; set; }
6+
}
7+
}

src/SteamWebAPI2/Interfaces/ISteamUserAuth.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
using SteamWebAPI2.Utilities;
22
using System.Threading.Tasks;
3+
using Steam.Models.SteamUserAuth;
34

45
namespace SteamWebAPI2.Interfaces
56
{
@@ -11,6 +12,6 @@ public interface ISteamUserAuth
1112
/// <param name="appId">App ID of the game to authenticate against</param>
1213
/// <param name="ticket">Ticket from GetAuthSessionTicket</param>
1314
/// <returns>Results of authentication request</returns>
14-
Task<ISteamWebResponse<dynamic>> AuthenticateUserTicket(uint appId, string ticket);
15+
Task<ISteamWebResponse<SteamUserAuthResponseModel>> AuthenticateUserTicket(uint appId, string ticket);
1516
}
1617
}

src/SteamWebAPI2/Interfaces/SteamUserAuth.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
using System;
44
using System.Collections.Generic;
55
using System.Threading.Tasks;
6+
using Steam.Models.SteamUserAuth;
67

78
namespace SteamWebAPI2.Interfaces
89
{
@@ -30,12 +31,12 @@ public SteamUserAuth(IMapper mapper, ISteamWebRequest steamWebRequest, ISteamWeb
3031
/// <param name="appId">App ID of the game to authenticate against</param>
3132
/// <param name="ticket">Ticket from GetAuthSessionTicket</param>
3233
/// <returns>Results of authentication request</returns>
33-
public async Task<ISteamWebResponse<dynamic>> AuthenticateUserTicket(uint appId, string ticket)
34+
public async Task<ISteamWebResponse<SteamUserAuthResponseModel>> AuthenticateUserTicket(uint appId, string ticket)
3435
{
3536
List<SteamWebRequestParameter> parameters = new List<SteamWebRequestParameter>();
3637
parameters.AddIfHasValue(appId, "appid");
3738
parameters.AddIfHasValue(ticket, "ticket");
38-
var playingSharedGameResult = await steamWebInterface.GetAsync<dynamic>("AuthenticateUserTicket", 1, parameters);
39+
var playingSharedGameResult = await steamWebInterface.GetAsync<SteamUserAuthResponseModel>("AuthenticateUserTicket", 1, parameters);
3940
return playingSharedGameResult;
4041
}
4142
}

0 commit comments

Comments
 (0)