diff --git a/Signal/src/environment/Migrations/OWS103EnableVideoCalling.m b/Signal/src/environment/Migrations/OWS103EnableVideoCalling.m index 86f309a03..b3f2e71bf 100644 --- a/Signal/src/environment/Migrations/OWS103EnableVideoCalling.m +++ b/Signal/src/environment/Migrations/OWS103EnableVideoCalling.m @@ -3,8 +3,9 @@ // #import "OWS103EnableVideoCalling.h" -#import +#import #import +#import // Increment a similar constant for every future DBMigration static NSString *const OWS103EnableVideoCallingMigrationId = @"103"; @@ -21,15 +22,26 @@ static NSString *const OWS103EnableVideoCallingMigrationId = @"103"; { DDLogWarn(@"%@ running migration...", self.tag); - TSUpdateAttributesRequest *request = [[TSUpdateAttributesRequest alloc] initWithUpdatedAttributesWithVoice]; - [[TSNetworkManager sharedManager] makeRequest:request - success:^(NSURLSessionDataTask *task, id responseObject) { - DDLogInfo(@"%@ successfully ran", self.tag); - [self save]; - } - failure:^(NSURLSessionDataTask *task, NSError *error) { - DDLogError(@"%@ failed with error: %@", self.tag, error); - }]; + // TODO: It'd be nice if TSAccountManager had a + // [ifRegisteredRunAsync: ifNoRegisteredRunAsync:] method. + [[TSAccountManager sharedInstance] ifRegistered:YES + runAsync:^{ + TSUpdateAttributesRequest *request = [[TSUpdateAttributesRequest alloc] + initWithUpdatedAttributesWithVoice]; + [[TSNetworkManager sharedManager] makeRequest:request + success:^(NSURLSessionDataTask *task, id responseObject) { + DDLogInfo(@"%@ successfully ran", self.tag); + [self save]; + } + failure:^(NSURLSessionDataTask *task, NSError *error) { + DDLogError(@"%@ failed with error: %@", self.tag, error); + }]; + }]; + [[TSAccountManager sharedInstance] ifRegistered:NO + runAsync:^{ + DDLogInfo(@"%@ skipping; not registered", self.tag); + [self save]; + }]; } #pragma mark - Logging