@@ -201,36 +201,45 @@ + (instancetype)withUserId:(NSString *)userId appId:(NSString *)appId deviceToke
201201@end
202202
203203@implementation OSRequestCreateDevice
204- + (instancetype _Nonnull)withAppId : (NSString * _Nonnull)appId withDeviceType : (NSNumber * _Nonnull)deviceType withEmail : (NSString * _Nullable)email withPlayerId : (NSString * _Nullable)playerId withEmailAuthHash : (NSString * _Nullable)emailAuthHash withExternalIdAuthToken : (NSString * _Nullable)externalIdAuthToken {
204+ + (instancetype _Nonnull)withAppId : (NSString * _Nonnull)appId withDeviceType : (NSNumber * _Nonnull)deviceType withEmail : (NSString * _Nullable)email withPlayerId : (NSString * _Nullable)playerId withEmailAuthHash : (NSString * _Nullable)emailAuthHash withExternalUserId : ( NSString * _Nullable) externalUserId withExternalIdAuthToken : (NSString * _Nullable)externalIdAuthToken {
205205 let request = [OSRequestCreateDevice new ];
206206
207- request.parameters = @{
208- @" app_id" : appId,
209- @" device_type" : deviceType,
210- @" identifier" : email ?: [NSNull null ],
211- @" email_auth_hash" : emailAuthHash ?: [NSNull null ],
212- @" external_user_id_auth_hash" : externalIdAuthToken ?: [NSNull null ],
213- @" device_player_id" : playerId ?: [NSNull null ]
214- };
215-
207+ let params = [[NSMutableDictionary alloc ] initWithDictionary: @{
208+ @" app_id" : appId,
209+ @" device_type" : deviceType,
210+ @" identifier" : email ?: [NSNull null ],
211+ @" email_auth_hash" : emailAuthHash ?: [NSNull null ],
212+ @" external_user_id_auth_hash" : externalIdAuthToken ?: [NSNull null ],
213+ @" device_player_id" : playerId ?: [NSNull null ]
214+ }];
215+
216+ if (externalUserId) {
217+ params[@" external_user_id" ] = externalUserId;
218+ }
219+ request.parameters = params;
216220 request.method = POST;
217221 request.path = @" players" ;
218222
219223 return request;
220224}
221225
222- + (instancetype )withAppId : (NSString *)appId withDeviceType : (NSNumber *)deviceType withSMSNumber : (NSString *)smsNumber withPlayerId : (NSString *)playerId withSMSAuthHash : (NSString *)smsAuthHash withExternalIdAuthToken : (NSString *)externalIdAuthToken {
226+ + (instancetype )withAppId : (NSString *)appId withDeviceType : (NSNumber *)deviceType withSMSNumber : (NSString *)smsNumber withPlayerId : (NSString *)playerId withSMSAuthHash : (NSString *)smsAuthHash withExternalUserId : ( NSString * _Nullable) externalUserId withExternalIdAuthToken : (NSString *)externalIdAuthToken {
223227 let request = [OSRequestCreateDevice new ];
224228
225- request.parameters = @{
226- @" app_id" : appId,
227- @" device_type" : deviceType,
228- @" identifier" : smsNumber ?: [NSNull null ],
229- SMS_NUMBER_AUTH_HASH_KEY : smsAuthHash ?: [NSNull null ],
230- @" external_user_id_auth_hash" : externalIdAuthToken ?: [NSNull null ],
231- @" device_player_id" : playerId ?: [NSNull null ]
232- };
229+ let params = [[NSMutableDictionary alloc ] initWithDictionary: @{
230+ @" app_id" : appId,
231+ @" device_type" : deviceType,
232+ @" identifier" : smsNumber ?: [NSNull null ],
233+ SMS_NUMBER_AUTH_HASH_KEY : smsAuthHash ?: [NSNull null ],
234+ @" external_user_id_auth_hash" : externalIdAuthToken ?: [NSNull null ],
235+ @" device_player_id" : playerId ?: [NSNull null ]
236+ }];
237+
238+ if (externalUserId) {
239+ params[@" external_user_id" ] = externalUserId;
240+ }
233241
242+ request.parameters = params;
234243 request.method = POST;
235244 request.path = @" players" ;
236245
0 commit comments