Added some memory saving options for contacts. Fixed issue where ^ was not being encoded for URLs. Fixed issue where verification codes may not be detected due to new wording by Google. Added detection of incorrect cookies message so I know how to deal with something and people don't get the account does not have number message. Fixed cookie issue where cookies were being deleted if it's date is after current date. Fixed issue with not all fields being submitted to Google at login causing cookie error message from Google. Fixed issue with crashes due to loginSuccessful message being sent too early. Fixed SIP Address to be the registrar instead of domain. Removed default domain as gizmo5 is dead :(. Added check to see if it's a 2 step verification and if it's is, it will not add contacts account as password would be incorrect. Fixed issue for long distance calling where phone number would contain 011 due to the app being built for Google Voice. Fixed issue where messages do not get marked as read after sending a reply back. Removed G722 codec for iOS building of pjproject as it's not needed.

This commit is contained in:
GRMrGecko 2011-09-11 14:54:29 -05:00
parent bd37a26ddb
commit 9bab577724
53 changed files with 246 additions and 191 deletions

View File

@ -17,7 +17,7 @@ RockStar ({\field{\*\fldinst{HYPERLINK "http://rocknthesweater.com"}}{\fldrslt r
PowerOfCheese ({\field{\*\fldinst{HYPERLINK "http://xtrememachinez.com"}}{\fldrslt xtrememachinez.com}})\
\
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural
\cf0 VoiceMac Uses {\field{\*\fldinst{HYPERLINK "http://mrgeckosmedia.com"}}{\fldrslt MGMSIP}} as a wrapper for {\field{\*\fldinst{HYPERLINK "http://www.pjsip.org/"}}{\fldrslt PJSIP}} which is a VOIP library, {\field{\*\fldinst{HYPERLINK "http://ffmpeg.org/"}}{\fldrslt FFmpeg}} for audio conversion, {\field{\*\fldinst{HYPERLINK "http://sparkle.andymatuschak.org"}}{\fldrslt Sparkle}} for software update, and {\field{\*\fldinst{HYPERLINK "http://growl.info/"}}{\fldrslt Growl}} for notifications.\
\cf0 VoiceMac uses {\field{\*\fldinst{HYPERLINK "http://mrgeckosmedia.com"}}{\fldrslt MGMSIP}} as a wrapper for {\field{\*\fldinst{HYPERLINK "http://www.pjsip.org/"}}{\fldrslt PJSIP}} which is a VOIP library, {\field{\*\fldinst{HYPERLINK "http://ffmpeg.org/"}}{\fldrslt FFmpeg}} for audio conversion, {\field{\*\fldinst{HYPERLINK "http://sparkle.andymatuschak.org"}}{\fldrslt Sparkle}} for software update, {\field{\*\fldinst{HYPERLINK "http://growl.info/"}}{\fldrslt Growl}} for notifications, and {\field{\*\fldinst{HYPERLINK "http://opensource.mrgeckosmedia.com/GeckoReporter"}}{\fldrslt GeckoReporter}} for crash and reporting.\
\
VoiceMac is the first Google Voice client for the Mac. Send multiple SMS Messages, send SMS Messages, receive SMS Messages, place calls, look at your call history, receive voicemail, reverse lookup a phone number, and search your contact list in one easy interface. When you receive a SMS Message or Voicemail, you get notifications view Growl and hear sounds that is customizable.\
\

View File

@ -57,6 +57,7 @@
- (NSNumber *)countContactsMatching:(NSString *)theString;
- (NSArray *)contactsMatching:(NSString *)theString page:(int)thePage;
- (NSArray *)contactsMatching:(NSString *)theString page:(int)thePage includePhoto:(BOOL)shouldIncludePhoto;
- (NSArray *)contactCompletionsMatching:(NSString *)theString;
- (NSDictionary *)contactWithID:(NSNumber *)theID;
- (NSData *)photoDataForNumber:(NSString *)theNumber;

View File

@ -285,9 +285,18 @@ const int MGMCMaxResults = 10;
return [count autorelease];
}
- (NSArray *)contactsMatching:(NSString *)theString page:(int)thePage {
return [self contactsMatching:theString page:thePage includePhoto:YES];
}
- (NSArray *)contactsMatching:(NSString *)theString page:(int)thePage includePhoto:(BOOL)shouldIncludePhoto {
if (contactsConnection==nil)
return nil;
[contactsLock lock];
NSString *select = nil;
if (shouldIncludePhoto)
select = @"SELECT docid, name, company, number, label, photo";
else
select = @"SELECT docid, name, company, number, label";
NSMutableArray *contactsArray = [NSMutableArray array];
NSAutoreleasePool *pool = [NSAutoreleasePool new];
NSString *string = [theString stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
@ -295,11 +304,11 @@ const int MGMCMaxResults = 10;
if (thePage==0) thePage = 1;
long long int page = (thePage*maxResults)-maxResults;
if (theString==nil || [string isEqual:@""]) {
result = [contactsConnection query:@"SELECT docid, * FROM contacts ORDER BY company, name LIMIT %qi, %d", page, maxResults];
result = [contactsConnection query:[select stringByAppendingString:@" FROM contacts ORDER BY company, name LIMIT %qi, %d"], page, maxResults];
} else {
if ([string isPhone]) {
NSString *search = [NSString stringWithFormat:MGMCNum, [[string removePhoneWhiteSpace] littersToNumbers]];
result = [contactsConnection query:@"SELECT docid, * FROM contacts WHERE number LIKE %@ ORDER BY company, name LIMIT %qi, %d", search, page, maxResults];
result = [contactsConnection query:[select stringByAppendingString:@" FROM contacts WHERE number LIKE %@ ORDER BY company, name LIMIT %qi, %d"], search, page, maxResults];
} else {
NSArray *words = [string componentsSeparatedByString:@" "];
NSMutableString *search = [NSMutableString string];
@ -329,7 +338,7 @@ const int MGMCMaxResults = 10;
}
}
}
result = [contactsConnection query:@"SELECT docid, *, offsets(contacts) AS offset FROM contacts WHERE contacts MATCH %@ ORDER BY offset LIMIT %qi, %d", search, page, maxResults];
result = [contactsConnection query:[select stringByAppendingString:@", offsets(contacts) AS offset FROM contacts WHERE contacts MATCH %@ ORDER BY offset LIMIT %qi, %d"], search, page, maxResults];
}
}
NSDictionary *contact = nil;
@ -354,7 +363,7 @@ const int MGMCMaxResults = 10;
if ([string isPhone]) {
for (int i=0; i<2; i++) {
NSString *search = [NSString stringWithFormat:@"%@%%", (i==0 ? [string phoneFormat] : [string phoneFormatAreaCode:[delegate areaCode]])];
MGMLiteResult *result = [contactsConnection query:@"SELECT docid, * FROM contacts WHERE number LIKE %@ ORDER BY company, name LIMIT %d", search, maxResults];
MGMLiteResult *result = [contactsConnection query:@"SELECT name, company, number FROM contacts WHERE number LIKE %@ ORDER BY company, name LIMIT %d", search, maxResults];
NSDictionary *contact = nil;
while ((contact=[result nextRow])!=nil) {
@ -389,7 +398,7 @@ const int MGMCMaxResults = 10;
[search appendFormat:MGMCWordSSA, word];
}
}
MGMLiteResult *result = [contactsConnection query:@"SELECT docid, *, offsets(contacts) AS offset FROM contacts WHERE contacts MATCH %@ ORDER BY offset LIMIT %d", search, maxResults];
MGMLiteResult *result = [contactsConnection query:@"SELECT name, company, number, offsets(contacts) AS offset FROM contacts WHERE contacts MATCH %@ ORDER BY offset LIMIT %d", search, maxResults];
NSDictionary *contact = nil;
while ((contact=[result nextRow])!=nil) {
@ -426,6 +435,7 @@ const int MGMCMaxResults = 10;
[pool drain];
return completions;
}
- (NSDictionary *)contactWithID:(NSNumber *)theID {
if (contactsConnection==nil)
return nil;

View File

@ -258,7 +258,7 @@
}
return areaCode;
}
return nil;
return @"";
}
- (NSString *)areaCodeLocation {
switch ([self intValue]) {
@ -1310,7 +1310,7 @@
- (NSString *)addPercentEscapes {
NSString *result = [self stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
CFStringRef escapedString = CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault, (CFStringRef)self, NULL, CFSTR("!*'();:@&=+$,/?%#[]|"), kCFStringEncodingUTF8);
CFStringRef escapedString = CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault, (CFStringRef)self, NULL, CFSTR("!*'();:^@&=+$,/?%#[]|"), kCFStringEncodingUTF8);
if (escapedString) {
result = [NSString stringWithString:(NSString *)escapedString];

View File

@ -28,8 +28,8 @@
NSString * const MGMVoiceBaseCopyright = @"Copyright (c) 2011 Mr. Gecko's Media (James Coleman). http://mrgeckosmedia.com/";
NSString * const MGMVoiceIndexURL = @"https://www.google.com/voice/#inbox";
NSString * const MGMLoginURL = @"https://www.google.com/accounts/ServiceLoginAuth";
NSString * const MGMVoiceIndexURL = @"https://www.google.com/voice/";
NSString * const MGMLoginURL = @"https://accounts.google.com/ServiceLoginAuth";
NSString * const MGMLoginVerifyURL = @"https://www.google.com/accounts/SmsAuth?persistent=yes";
NSString * const MGMXPCPath = @"/voice/xpc/?xpc=%7B%22cn%22%3A%22i70avDIMsA%22%2C%22tp%22%3Anull%2C%22pru%22%3A%22https%3A%2F%2Fwww.google.com%2Fvoice%2Fxpc%2Frelay%22%2C%22ppu%22%3A%22https%3A%2F%2Fwww.google.com%2Fvoice%2Fxpc%2Fblank%2F%22%2C%22lpu%22%3A%22https%3A%2F%2Fclients4.google.com%2Fvoice%2Fxpc%2Fblank%2F%22%7D";
NSString * const MGMCheckPath = @"/voice/xpc/checkMessages?r=%@";
@ -237,7 +237,7 @@ const BOOL MGMInstanceInvisible = YES;
[handler setFinish:@selector(indexDidFinish:)];
[handler setInvisible:MGMInstanceInvisible];
[connectionManager addHandler:handler];
} else if ([returnedString containsString:@"Enter verification code"]) {
} else if ([returnedString containsString:@"verification code"]) {
[verificationParameters release];
verificationParameters = [NSMutableDictionary new];
[verificationParameters setObject:@"yes" forKey:@"PersistentCookie"];
@ -376,7 +376,7 @@ const BOOL MGMInstanceInvisible = YES;
NSString *valueEnd = @"\"";
NSString *valueStartQ = @"value='";
NSString *valueEndQ = @"'";
NSArray *names = [NSArray arrayWithObjects:@"ltmpl", @"continue", @"followup", @"service", @"dsh", @"GALX", @"rmShown", nil];
NSArray *names = [NSArray arrayWithObjects:@"ltmpl", @"pstMsg", @"dnConn", @"continue", @"followup", @"service", @"dsh", @"timeStmp", @"secTok", @"GALX", @"signIn", @"asts", @"rmShown", nil];
for (int i=0; i<[names count]; i++) {
NSAutoreleasePool *pool = [NSAutoreleasePool new];
NSString *nameString = [NSString stringWithFormat:nameValue, [names objectAtIndex:i]];
@ -532,7 +532,15 @@ const BOOL MGMInstanceInvisible = YES;
}
}
}
if (![returnedString containsString:@"gc-header-did-display"] && ![userNumber isPhoneComplete]) {
if ([returnedString containsString:@"cookie functionality"]) {
NSError *error = [NSError errorWithDomain:@"com.MrGeckosMedia.MGMInstance.Login" code:3 userInfo:[NSDictionary dictionaryWithObject:@"There is a problem with VoiceMac's Cookie system, please contact the developer via the help menu." forKey:NSLocalizedDescriptionKey]];
if (delegate!=nil && [delegate respondsToSelector:@selector(loginError:)]) {
[delegate loginError:error];
} else {
NSLog(@"Login Error: %@", error);
}
return;
} else if (![returnedString containsString:@"gc-header-did-display"] && ![userNumber isPhoneComplete]) {
NSError *error = [NSError errorWithDomain:@"com.MrGeckosMedia.MGMInstance.Login" code:2 userInfo:[NSDictionary dictionaryWithObject:@"Your Google Account does not appear to have a Google Number, please visit voice.google.com and setup one before continuing." forKey:NSLocalizedDescriptionKey]];
if (delegate!=nil && [delegate respondsToSelector:@selector(loginError:)]) {
[delegate loginError:error];
@ -580,7 +588,6 @@ const BOOL MGMInstanceInvisible = YES;
NSLog(@"XPCURL = %@", XPCURL);
#endif
loggedIn = YES;
if (delegate!=nil && [delegate respondsToSelector:@selector(loginSuccessful)]) [delegate loginSuccessful];
if (!checkingAccount) {
[contacts updateContacts];
[checkTimer invalidate];
@ -592,6 +599,7 @@ const BOOL MGMInstanceInvisible = YES;
creditTimer = [[NSTimer scheduledTimerWithTimeInterval:60.0 target:self selector:@selector(creditTimer) userInfo:nil repeats:YES] retain];
[creditTimer fire];
}
if (delegate!=nil && [delegate respondsToSelector:@selector(loginSuccessful)]) [delegate loginSuccessful];
}
}
- (void)cancelVerification {

View File

@ -160,8 +160,8 @@ const int MGMSIPAccountReregisterTimeoutDefault = 300;
registrar = [theRegistrar copy];
}
- (NSString *)SIPAddress {
if (SIPAddress==nil && domain!=nil && userName!=nil)
return [NSString stringWithFormat:@"%@@%@", userName, domain];
if (SIPAddress==nil && registrar!=nil && userName!=nil)
return [NSString stringWithFormat:@"%@@%@", userName, registrar];
return SIPAddress;
}
- (void)setSIPAddress:(NSString *)theSIPAddress {
@ -387,7 +387,7 @@ const int MGMSIPAccountReregisterTimeoutDefault = 300;
- (MGMSIPCall *)makeCallToNumber:(NSString *)theNumber {
MGMSIPURL *SIPURL = [MGMSIPURL URLWithSIPAddress:theNumber];
if ([[SIPURL host] isEqual:theNumber]) {
[SIPURL setHost:domain];
[SIPURL setHost:registrar];
[SIPURL setUserName:theNumber];
}
return [self makeCallToSIPURL:SIPURL];

View File

@ -81,10 +81,10 @@
- (void)handler:(MGMURLBasicHandler *)theHandler didFailWithError:(NSError *)theError {
NSLog(@"Starting Audio Error: %@", theError);
NSAlert *theAlert = [[NSAlert new] autorelease];
[theAlert setMessageText:@"Error loading audio"];
[theAlert setInformativeText:[theError localizedDescription]];
[theAlert runModal];
NSAlert *alert = [[NSAlert new] autorelease];
[alert setMessageText:@"Error loading audio"];
[alert setInformativeText:[theError localizedDescription]];
[alert runModal];
}
- (void)handlerDidFinish:(MGMURLBasicHandler *)theHandler {
QTDataReference *audioReference = [QTDataReference dataReferenceWithReferenceToData:[theHandler data] name:@"voicemail.mp3" MIMEType:nil];

View File

@ -252,10 +252,10 @@ NSString * const MGMSID = @"id";
}
- (void)inbox:(MGMDelegateInfo *)theInfo didFailWithError:(NSError *)theError instance:(MGMInstance *)theInstance {
NSLog(@"Inbox Error: %@ for instance: %@", theError, theInstance);
NSAlert *theAlert = [[NSAlert new] autorelease];
[theAlert setMessageText:@"Error loading inbox"];
[theAlert setInformativeText:[theError localizedDescription]];
[theAlert runModal];
NSAlert *alert = [[NSAlert new] autorelease];
[alert setMessageText:@"Error loading inbox"];
[alert setInformativeText:[theError localizedDescription]];
[alert runModal];
[self stopProgress];
}
- (void)inboxGotInfo:(NSArray *)theInfo instance:(MGMInstance *)theInstance {
@ -313,10 +313,10 @@ NSString * const MGMSID = @"id";
}
- (IBAction)report:(MGMDelegateInfo *)theInfo didFailWithError:(NSError *)theError instance:(MGMInstance *)theInstance {
NSLog(@"Report Error: %@ for instance: %@", theError, theInstance);
NSAlert *theAlert = [[NSAlert new] autorelease];
[theAlert setMessageText:@"Error reporting"];
[theAlert setInformativeText:[theError localizedDescription]];
[theAlert runModal];
NSAlert *alert = [[NSAlert new] autorelease];
[alert setMessageText:@"Error reporting"];
[alert setInformativeText:[theError localizedDescription]];
[alert runModal];
[self stopProgress];
}
- (void)reportDidFinish:(MGMDelegateInfo *)theInfo instance:(MGMInstance *)theInstance {
@ -355,10 +355,10 @@ NSString * const MGMSID = @"id";
}
- (void)delete:(MGMDelegateInfo *)theInfo didFailWithError:(NSError *)theError instance:(MGMInstance *)theInstance {
NSLog(@"Delete Error: %@ for instance: %@", theError, theInstance);
NSAlert *theAlert = [[NSAlert new] autorelease];
[theAlert setMessageText:@"Error deleting"];
[theAlert setInformativeText:[theError localizedDescription]];
[theAlert runModal];
NSAlert *alert = [[NSAlert new] autorelease];
[alert setMessageText:@"Error deleting"];
[alert setInformativeText:[theError localizedDescription]];
[alert runModal];
[self stopProgress];
}
- (void)deleteDidFinish:(MGMDelegateInfo *)theInfo instance:(MGMInstance *)theInstance {

View File

@ -26,8 +26,6 @@ extern NSString * const MGMSGoogleContacts;
extern NSString * const MGMSSIP;
extern NSString * const MGMSAccountType;
extern NSString * const MGMSIPDefaultDomain;
@interface MGMAccountSetup : NSObject {
IBOutlet NSWindow *setupWindow;
IBOutlet NSTextField *titleField;
@ -69,6 +67,7 @@ extern NSString * const MGMSIPDefaultDomain;
MGMUser *S7CheckUser;
MGMInstance *S7CheckInstance;
MGMVoiceVerify *S7VerifyWindow;
BOOL S7Verified;
MGMURLConnectionManager *S7ConnectionManager;
#if MGMSIPENABLED
MGMSIPAccount *S7CheckSIPAccount;

View File

@ -40,8 +40,6 @@ NSString * const MGMSAccountType = @"MGMSAccountType";
NSString * const MGMS7Crediential = @"Checking Login Credentials.";
NSString * const MGMS7SIPWaiting = @"Waiting for Registration Status.";
NSString * const MGMSIPDefaultDomain = @"proxy01.sipphone.com";
@implementation MGMAccountSetup
- (id)init {
if ((self = [super init])) {
@ -238,10 +236,10 @@ NSString * const MGMSIPDefaultDomain = @"proxy01.sipphone.com";
#if MGMSIPENABLED
step = 6;
#else
NSAlert *theAlert = [[NSAlert new] autorelease];
[theAlert setMessageText:@"Unable to Add Account"];
[theAlert setInformativeText:@"MGMSIP is not compiled with VoiceMac, you can not add a SIP account without first compiling with MGMSIP."];
[theAlert runModal];
NSAlert *alert = [[NSAlert new] autorelease];
[alert setMessageText:@"Unable to Add Account"];
[alert setInformativeText:@"MGMSIP is not compiled with VoiceMac, you can not add a SIP account without first compiling with MGMSIP."];
[alert runModal];
#endif
break;
}
@ -261,14 +259,14 @@ NSString * const MGMSIPDefaultDomain = @"proxy01.sipphone.com";
if ([[S5EmailField stringValue] isEqual:@""] || [[S5PasswordField stringValue] isEqual:@""])
emptyFields = YES;
} else if (accountType==2) {
if ([[S6UserNameField stringValue] isEqual:@""] || [[S6PasswordField stringValue] isEqual:@""])
if ([[S6UserNameField stringValue] isEqual:@""] || [[S6PasswordField stringValue] isEqual:@""] || [[S6RegistrarField stringValue] isEqual:@""])
emptyFields = YES;
}
if (emptyFields) {
NSAlert *theAlert = [[NSAlert new] autorelease];
[theAlert setMessageText:@"Missing Information"];
[theAlert setInformativeText:@"It appears as if you did not fill the required fields, please fill out the required fields and then continue."];
[theAlert runModal];
NSAlert *alert = [[NSAlert new] autorelease];
[alert setMessageText:@"Missing Information"];
[alert setInformativeText:@"It appears as if you did not fill the required fields, please fill out the required fields and then continue."];
[alert runModal];
return;
}
step = 7;
@ -307,7 +305,7 @@ NSString * const MGMSIPDefaultDomain = @"proxy01.sipphone.com";
}
- (IBAction)S6DomainChanged:(id)sender {
if ([[S6DomainField stringValue] isEqual:@""])
[[S6RegistrarField cell] setPlaceholderString:MGMSIPDefaultDomain];
[[S6RegistrarField cell] setPlaceholderString:@""];
else
[[S6RegistrarField cell] setPlaceholderString:[S6DomainField stringValue]];
}
@ -322,6 +320,7 @@ NSString * const MGMSIPDefaultDomain = @"proxy01.sipphone.com";
//Step 7
- (void)S7CheckGoogleVoice {
S7Verified = NO;
S7CheckUser = [[MGMUser createUserWithName:[S4EmailField stringValue] password:[S4PasswordField stringValue]] retain];
[S7CheckUser setSetting:MGMSGoogleVoice forKey:MGMSAccountType];
S7CheckInstance = [[MGMInstance instanceWithUser:S7CheckUser delegate:self isCheck:YES] retain];
@ -340,6 +339,7 @@ NSString * const MGMSIPDefaultDomain = @"proxy01.sipphone.com";
[self displayStep];
}
- (void)loginVerificationRequested {
S7Verified = YES;
[S7VerifyWindow release];
S7VerifyWindow = [[MGMVoiceVerify verifyWithInstance:S7CheckInstance] retain];
}
@ -348,9 +348,11 @@ NSString * const MGMSIPDefaultDomain = @"proxy01.sipphone.com";
S7VerifyWindow = nil;
if (S7CheckUser!=nil) {
[accountsCreated addObject:S7CheckUser];
if (!S7Verified) {
MGMUser *contactsUser = [MGMUser createUserWithName:[S4EmailField stringValue] password:[S4PasswordField stringValue]];
[contactsUser setSetting:MGMSGoogleContacts forKey:MGMSAccountType];
[S7CheckUser setSetting:[contactsUser settingForKey:MGMUserID] forKey:MGMCGoogleContactsUser];
}
[S7CheckUser release];
S7CheckUser = nil;
}
@ -424,7 +426,7 @@ NSString * const MGMSIPDefaultDomain = @"proxy01.sipphone.com";
if ([[S6UserNameField stringValue] isPhone])
[S7CheckUser setSetting:[[S6UserNameField stringValue] areaCode] forKey:MGMSIPUserAreaCode];
if ([[S6DomainField stringValue] isEqual:@""])
[S7CheckUser setSetting:MGMSIPDefaultDomain forKey:MGMSIPAccountDomain];
[S7CheckUser setSetting:@"" forKey:MGMSIPAccountDomain];
else
[S7CheckUser setSetting:[S6DomainField stringValue] forKey:MGMSIPAccountDomain];
if (![[S6RegistrarField stringValue] isEqual:@""])

View File

@ -120,10 +120,10 @@ NSString * const MGMLastUserPhoneKey = @"MGMLastUserPhone";
}
- (void)loginError:(NSError *)theError {
NSAlert *theAlert = [[NSAlert new] autorelease];
[theAlert setMessageText:@"Error logging in"];
[theAlert setInformativeText:[theError localizedDescription]];
[theAlert runModal];
NSAlert *alert = [[NSAlert new] autorelease];
[alert setMessageText:@"Error logging in"];
[alert setInformativeText:[theError localizedDescription]];
[alert runModal];
[verifyWindow release];
verifyWindow = nil;

View File

@ -261,7 +261,7 @@ NSString * const MGMLogout = @"Logout";
else
[SIPFullNameField setStringValue:@""];
if ([user settingForKey:MGMSIPAccountDomain]==nil || [[user settingForKey:MGMSIPAccountDomain] isEqual:@""]) {
[[SIPRegistrarField cell] setPlaceholderString:MGMSIPDefaultDomain];
[[SIPRegistrarField cell] setPlaceholderString:@""];
[SIPDomainField setStringValue:@""];
} else {
[[SIPRegistrarField cell] setPlaceholderString:[user settingForKey:MGMSIPAccountDomain]];
@ -369,12 +369,15 @@ NSString * const MGMLogout = @"Logout";
MGMUser *user = [MGMUser userWithID:[[MGMUser users] objectAtIndex:[usersTable selectedRow]]];
[user setSetting:[SIPFullNameField stringValue] forKey:MGMSIPAccountFullName];
if ([[SIPDomainField stringValue] isEqual:@""]) {
[[SIPRegistrarField cell] setPlaceholderString:MGMSIPDefaultDomain];
[user setSetting:MGMSIPDefaultDomain forKey:MGMSIPAccountDomain];
[[SIPRegistrarField cell] setPlaceholderString:@""];
[user setSetting:@"" forKey:MGMSIPAccountDomain];
} else {
[[SIPRegistrarField cell] setPlaceholderString:[SIPDomainField stringValue]];
[user setSetting:[SIPDomainField stringValue] forKey:MGMSIPAccountDomain];
}
if ([[SIPRegistrarField stringValue] isEqual:@""] && [[SIPDomainField stringValue] isEqual:@""])
NSBeep();
else
[user setSetting:[SIPRegistrarField stringValue] forKey:MGMSIPAccountRegistrar];
if ([[SIPUserNameField stringValue] isEqual:@""] || [[SIPPasswordField stringValue] isEqual:@""]) {
NSBeep();

View File

@ -134,10 +134,10 @@ NSString * const MGMSIPUserAreaCode = @"MGMVSIPUserAreaCode";
SIPRegistrationTimeout = nil;
if (!acountRegistered) {
if (![account isRegistered]) {
NSAlert *theAlert = [[NSAlert new] autorelease];
[theAlert setMessageText:@"Error logging in"];
[theAlert setInformativeText:@"Unable to Register with Server. Please check your credentials."];
[theAlert runModal];
NSAlert *alert = [[NSAlert new] autorelease];
[alert setMessageText:@"Error logging in"];
[alert setInformativeText:@"Unable to Register with Server. Please check your credentials."];
[alert runModal];
}
acountRegistered = YES;
[self performSelectorOnMainThread:@selector(removeLoginProgress) withObject:nil waitUntilDone:YES];
@ -174,10 +174,10 @@ NSString * const MGMSIPUserAreaCode = @"MGMVSIPUserAreaCode";
}
- (void)loginErrored {
loggingIn = NO;
NSAlert *theAlert = [[NSAlert new] autorelease];
[theAlert setMessageText:@"Error logging in"];
[theAlert setInformativeText:[account lastError]];
[theAlert runModal];
NSAlert *alert = [[NSAlert new] autorelease];
[alert setMessageText:@"Error logging in"];
[alert setInformativeText:[account lastError]];
[alert runModal];
[progressView stopProgess];
[progressView removeFromSuperview];
@ -186,10 +186,10 @@ NSString * const MGMSIPUserAreaCode = @"MGMVSIPUserAreaCode";
[self performSelectorOnMainThread:@selector(removeLoginProgress) withObject:nil waitUntilDone:YES];
}
- (void)logoutErrored {
NSAlert *theAlert = [[NSAlert new] autorelease];
[theAlert setMessageText:@"Error logging out"];
[theAlert setInformativeText:[account lastError]];
[theAlert runModal];
NSAlert *alert = [[NSAlert new] autorelease];
[alert setMessageText:@"Error logging out"];
[alert setInformativeText:[account lastError]];
[alert runModal];
}
- (void)animationDidEnd:(NSAnimation *)animation {
[progressFadeAnimation release];
@ -233,7 +233,8 @@ NSString * const MGMSIPUserAreaCode = @"MGMVSIPUserAreaCode";
NSBeep();
return;
}
if ([phoneNumber hasPrefix:@"011"])
phoneNumber = [phoneNumber substringFromIndex:3];
[account makeCallToNumber:phoneNumber];
}

View File

@ -113,15 +113,15 @@
}
}
if ([SMSNumbers count]<=0) {
NSAlert *theAlert = [[NSAlert new] autorelease];
[theAlert setMessageText:@"Error sending a SMS Message"];
[theAlert setInformativeText:@"You need to at least have 1 contact to send to."];
[theAlert runModal];
NSAlert *alert = [[NSAlert new] autorelease];
[alert setMessageText:@"Error sending a SMS Message"];
[alert setInformativeText:@"You need to at least have 1 contact to send to."];
[alert runModal];
} else if ([[SMSTextView string] isEqual:@""]) {
NSAlert *theAlert = [[NSAlert new] autorelease];
[theAlert setMessageText:@"Error sending a SMS Message"];
[theAlert setInformativeText:@"Message is blank."];
[theAlert runModal];
NSAlert *alert = [[NSAlert new] autorelease];
[alert setMessageText:@"Error sending a SMS Message"];
[alert setInformativeText:@"Message is blank."];
[alert runModal];
} else {
[SMSTextView setEditable:NO];
sendingMessage = YES;
@ -138,12 +138,12 @@
[sendButton setEnabled:YES];
[cancelButton setEnabled:YES];
[SMSWindow makeFirstResponder:SMSTextView];
NSAlert *theAlert = [[NSAlert new] autorelease];
[theAlert addButtonWithTitle:@"Ok"];
[theAlert setMessageText:@"Error sending a SMS Message"];
[theAlert setInformativeText:[theError localizedDescription]];
[theAlert setAlertStyle:2];
[theAlert runModal];
NSAlert *alert = [[NSAlert new] autorelease];
[alert addButtonWithTitle:@"Ok"];
[alert setMessageText:@"Error sending a SMS Message"];
[alert setInformativeText:[theError localizedDescription]];
[alert setAlertStyle:2];
[alert runModal];
}
- (void)messageDidFinish:(MGMDelegateInfo *)theInfo instance:(MGMInstance *)theInstance {
sendingMessage = NO;
@ -155,10 +155,10 @@
- (BOOL)windowShouldClose:(id)sender {
if (sendingMessage) {
NSAlert *theAlert = [[NSAlert new] autorelease];
[theAlert setMessageText:@"Sending a SMS Message"];
[theAlert setInformativeText:@"Your SMS Message is currently being sent, please wait for it to be sent."];
[theAlert runModal];
NSAlert *alert = [[NSAlert new] autorelease];
[alert setMessageText:@"Sending a SMS Message"];
[alert setInformativeText:@"Your SMS Message is currently being sent, please wait for it to be sent."];
[alert runModal];
return NO;
}
return YES;

View File

@ -326,10 +326,10 @@ const float updateTimeInterval = 300.0;
}
if ([SMSMessages count]==1) {
if (![[SMSMessages objectAtIndex:0] shouldClose]) {
NSAlert *theAlert = [[NSAlert new] autorelease];
[theAlert setMessageText:@"Sending a SMS Message"];
[theAlert setInformativeText:@"You currently have a SMS Message being sent, please wait for it to be sent."];
[theAlert runModal];
NSAlert *alert = [[NSAlert new] autorelease];
[alert setMessageText:@"Sending a SMS Message"];
[alert setInformativeText:@"You currently have a SMS Message being sent, please wait for it to be sent."];
[alert runModal];
return NO;
} else {
[[SMSMessages objectAtIndex:0] close:self];

View File

@ -34,6 +34,7 @@
BOOL sendingMessage;
BOOL marking;
BOOL markingForMessage;
float bottomMax;
}

View File

@ -204,6 +204,11 @@
- (IBAction)sendMessage:(id)sender {
if ([[SMSTextView string] isEqual:@""])
return;
if (![[messageInfo objectForKey:MGMIRead] boolValue]) {
marking = YES;
markingForMessage = YES;
[[instance inbox] markEntries:[NSArray arrayWithObject:[messageInfo objectForKey:MGMIID]] read:YES delegate:self];
}
sendingMessage = YES;
[SMSTextView setEditable:NO];
[[instance inbox] sendMessage:[SMSTextView string] phoneNumbers:[NSArray arrayWithObject:[messageInfo objectForKey:MGMIPhoneNumber]] smsID:[messageInfo objectForKey:MGMIID] delegate:self];
@ -212,10 +217,10 @@
sendingMessage = NO;
[SMSTextView setEditable:YES];
[[manager SMSWindow] makeFirstResponder:SMSTextView];
NSAlert *theAlert = [[NSAlert new] autorelease];
[theAlert setMessageText:@"Error sending a SMS Message"];
[theAlert setInformativeText:[theError localizedDescription]];
[theAlert runModal];
NSAlert *alert = [[NSAlert new] autorelease];
[alert setMessageText:@"Error sending a SMS Message"];
[alert setInformativeText:[theError localizedDescription]];
[alert runModal];
}
- (void)messageDidFinish:(MGMDelegateInfo *)theInfo instance:(MGMInstance *)theInstance {
sendingMessage = NO;
@ -247,10 +252,10 @@
- (IBAction)close:(id)sender {
if (sendingMessage) {
NSAlert *theAlert = [[NSAlert new] autorelease];
[theAlert setMessageText:@"Sending a SMS Message"];
[theAlert setInformativeText:@"Your SMS Message is currently being sent, please wait for it to be sent."];
[theAlert runModal];
NSAlert *alert = [[NSAlert new] autorelease];
[alert setMessageText:@"Sending a SMS Message"];
[alert setInformativeText:@"Your SMS Message is currently being sent, please wait for it to be sent."];
[alert runModal];
} else if (marking) {
} else if (![[messageInfo objectForKey:MGMIRead] boolValue]) {
@ -265,14 +270,17 @@
}
- (void)mark:(MGMDelegateInfo *)theInfo didFailWithError:(NSError *)theError instance:(MGMInstance *)theInstance {
marking = NO;
NSAlert *theAlert = [[NSAlert new] autorelease];
[theAlert setMessageText:@"Error marking as read"];
[theAlert setInformativeText:[theError localizedDescription]];
[theAlert runModal];
NSAlert *alert = [[NSAlert new] autorelease];
[alert setMessageText:@"Error marking as read"];
[alert setInformativeText:[theError localizedDescription]];
[alert runModal];
}
- (void)markDidFinish:(MGMDelegateInfo *)theInfo instance:(MGMInstance *)theInstance {
marking = NO;
[messageInfo setObject:[NSNumber numberWithBool:YES] forKey:MGMIRead];
if (markingForMessage)
markingForMessage = NO;
else
[self close:self];
}

View File

View File

View File

@ -8,8 +8,13 @@
#import <Foundation/Foundation.h>
#define MGMEnableMemorySaving 1
@interface MGMHTTPCookieStorage : NSObject {
@private
#if MGMEnableMemorySaving
MGMHTTPCookieStorage *foundCookieJar;
#endif
NSString *cookiesPath;
NSHTTPCookieAcceptPolicy policy;
NSMutableArray *cookieJar;

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

@ -95,7 +95,7 @@
- (void)setRequest:(NSURLRequest *)theRequest;
- (NSMutableURLRequest *)request;
- (NSURLResponse *)response;
- (NSHTTPURLResponse *)response;
- (NSData *)data;
- (NSString *)string;
@end

View File

View File

View File

View File

0
Frameworks/MGMUsers.framework/Versions/A/Resources/MGMTaskView.nib generated Normal file → Executable file
View File

0
Frameworks/MGMUsers.framework/Versions/A/Resources/MGMTasksWindow.nib generated Normal file → Executable file
View File

View File

Before

Width:  |  Height:  |  Size: 558 B

After

Width:  |  Height:  |  Size: 558 B

View File

Before

Width:  |  Height:  |  Size: 588 B

After

Width:  |  Height:  |  Size: 588 B

View File

Before

Width:  |  Height:  |  Size: 503 B

After

Width:  |  Height:  |  Size: 503 B

View File

Before

Width:  |  Height:  |  Size: 485 B

After

Width:  |  Height:  |  Size: 485 B

View File

Before

Width:  |  Height:  |  Size: 334 B

After

Width:  |  Height:  |  Size: 334 B

View File

Before

Width:  |  Height:  |  Size: 391 B

After

Width:  |  Height:  |  Size: 391 B

0
Frameworks/MGMUsers.framework/Versions/A/Resources/aboutPane.nib generated Normal file → Executable file
View File

Binary file not shown.

View File

@ -2,10 +2,10 @@
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.10">
<data>
<int key="IBDocument.SystemTarget">1050</int>
<string key="IBDocument.SystemVersion">10F569</string>
<string key="IBDocument.InterfaceBuilderVersion">788</string>
<string key="IBDocument.AppKitVersion">1038.29</string>
<string key="IBDocument.HIToolboxVersion">461.00</string>
<string key="IBDocument.SystemVersion">10J567</string>
<string key="IBDocument.InterfaceBuilderVersion">823</string>
<string key="IBDocument.AppKitVersion">1038.35</string>
<string key="IBDocument.HIToolboxVersion">462.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSArray" key="dict.sortedKeys">
@ -15,13 +15,13 @@
</object>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>788</string>
<string>788</string>
<string>823</string>
<string>823</string>
</object>
</object>
<object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
<bool key="EncodedWithXMLCoder">YES</bool>
<integer value="72"/>
<integer value="1"/>
</object>
<object class="NSArray" key="IBDocument.PluginDependencies">
<bool key="EncodedWithXMLCoder">YES</bool>
@ -184,7 +184,7 @@
<object class="NSTabViewItem" id="954958807">
<string key="NSIdentifier">Welcome To VoiceMac</string>
<object class="NSView" key="NSView" id="602246853">
<nil key="NSNextResponder"/>
<reference key="NSNextResponder" ref="949528223"/>
<int key="NSvFlags">256</int>
<object class="NSMutableArray" key="NSSubviews">
<bool key="EncodedWithXMLCoder">YES</bool>
@ -241,6 +241,7 @@ aXRoIHNpbXBsZSBIVE1MIG9yIGJ5IGRvd25sb2FkaW5nIGEgdGhlbWUuA</string>
</object>
</object>
<string key="NSFrame">{{1, 1}, {420, 324}}</string>
<reference key="NSSuperview" ref="949528223"/>
</object>
<string key="NSLabel">Welcome To VoiceMac</string>
<reference key="NSColor" ref="373911208"/>
@ -778,7 +779,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
<object class="NSTextField" id="1066705850">
<reference key="NSNextResponder" ref="959500869"/>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{16, 160}, {76, 17}}</string>
<string key="NSFrame">{{16, 192}, {76, 17}}</string>
<reference key="NSSuperview" ref="959500869"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="302215722">
@ -794,7 +795,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
<object class="NSTextField" id="531478061">
<reference key="NSNextResponder" ref="959500869"/>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{16, 130}, {76, 17}}</string>
<string key="NSFrame">{{16, 162}, {76, 17}}</string>
<reference key="NSSuperview" ref="959500869"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="198884031">
@ -810,7 +811,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
<object class="NSTextField" id="866808286">
<reference key="NSNextResponder" ref="959500869"/>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{16, 100}, {76, 17}}</string>
<string key="NSFrame">{{16, 132}, {76, 17}}</string>
<reference key="NSSuperview" ref="959500869"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="617120209">
@ -826,7 +827,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
<object class="NSTextField" id="632174860">
<reference key="NSNextResponder" ref="959500869"/>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{16, 70}, {76, 17}}</string>
<string key="NSFrame">{{16, 102}, {76, 17}}</string>
<reference key="NSSuperview" ref="959500869"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="25865851">
@ -842,7 +843,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
<object class="NSTextField" id="407262461">
<reference key="NSNextResponder" ref="959500869"/>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{16, 40}, {76, 17}}</string>
<string key="NSFrame">{{16, 72}, {76, 17}}</string>
<reference key="NSSuperview" ref="959500869"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="259588336">
@ -858,13 +859,13 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
<object class="NSTextField" id="849118110">
<reference key="NSNextResponder" ref="959500869"/>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{16, 203}, {388, 102}}</string>
<string key="NSFrame">{{16, 220}, {388, 85}}</string>
<reference key="NSSuperview" ref="959500869"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="218212691">
<int key="NSCellFlags">67239424</int>
<int key="NSCellFlags2">272629760</int>
<string key="NSContents">To set up your SIP account, go to your SIP provider and find out the information needed to fill these forms. With Gizmo5, you can leave the domain blank and click on your icon to find out the username starting with 1747. The full name is just so you can easily identify the account with the Window menu. After you filled out the information, press continue.</string>
<string key="NSContents">To set up your SIP account, go to your SIP provider and find out the information needed to fill these forms. The full name is just so you can easily identify the account with the Window menu. After you filled out the information, press continue.</string>
<reference key="NSSupport" ref="657871326"/>
<reference key="NSControlView" ref="849118110"/>
<reference key="NSBackgroundColor" ref="373911208"/>
@ -874,7 +875,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
<object class="NSTextField" id="216302364">
<reference key="NSNextResponder" ref="959500869"/>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{97, 158}, {304, 22}}</string>
<string key="NSFrame">{{97, 190}, {304, 22}}</string>
<reference key="NSSuperview" ref="959500869"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="980823658">
@ -892,7 +893,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
<object class="NSTextField" id="792590841">
<reference key="NSNextResponder" ref="959500869"/>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{97, 128}, {304, 22}}</string>
<string key="NSFrame">{{97, 160}, {304, 22}}</string>
<reference key="NSSuperview" ref="959500869"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="206049687">
@ -900,7 +901,6 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
<int key="NSCellFlags2">272630784</int>
<string key="NSContents"/>
<reference key="NSSupport" ref="1063628265"/>
<string key="NSPlaceholderString">proxy01.sipphone.com</string>
<reference key="NSControlView" ref="792590841"/>
<bool key="NSDrawsBackground">YES</bool>
<reference key="NSBackgroundColor" ref="271688935"/>
@ -910,7 +910,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
<object class="NSTextField" id="595911017">
<reference key="NSNextResponder" ref="959500869"/>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{97, 98}, {304, 22}}</string>
<string key="NSFrame">{{97, 130}, {304, 22}}</string>
<reference key="NSSuperview" ref="959500869"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="886008026">
@ -918,7 +918,6 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
<int key="NSCellFlags2">272630784</int>
<string key="NSContents"/>
<reference key="NSSupport" ref="1063628265"/>
<string key="NSPlaceholderString">proxy01.sipphone.com</string>
<reference key="NSControlView" ref="595911017"/>
<bool key="NSDrawsBackground">YES</bool>
<reference key="NSBackgroundColor" ref="271688935"/>
@ -928,7 +927,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
<object class="NSTextField" id="347942455">
<reference key="NSNextResponder" ref="959500869"/>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{97, 68}, {304, 22}}</string>
<string key="NSFrame">{{97, 100}, {304, 22}}</string>
<reference key="NSSuperview" ref="959500869"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="319772881">
@ -945,7 +944,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
<object class="NSSecureTextField" id="527252826">
<reference key="NSNextResponder" ref="959500869"/>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{97, 38}, {304, 22}}</string>
<string key="NSFrame">{{97, 70}, {304, 22}}</string>
<reference key="NSSuperview" ref="959500869"/>
<bool key="NSEnabled">YES</bool>
<object class="NSSecureTextFieldCell" key="NSCell" id="1019318324">
@ -1074,7 +1073,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
<object class="NSTabViewItem" id="588645923">
<string key="NSIdentifier">Setup Successful</string>
<object class="NSView" key="NSView" id="449508199">
<reference key="NSNextResponder" ref="949528223"/>
<nil key="NSNextResponder"/>
<int key="NSvFlags">256</int>
<object class="NSMutableArray" key="NSSubviews">
<bool key="EncodedWithXMLCoder">YES</bool>
@ -1116,21 +1115,20 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
</object>
</object>
<string key="NSFrame">{{1, 1}, {420, 324}}</string>
<reference key="NSSuperview" ref="949528223"/>
</object>
<string key="NSLabel">Setup Successful</string>
<reference key="NSColor" ref="373911208"/>
<reference key="NSTabView" ref="949528223"/>
</object>
</object>
<reference key="NSSelectedTabViewItem" ref="588645923"/>
<reference key="NSSelectedTabViewItem" ref="954958807"/>
<reference key="NSFont" ref="1063628265"/>
<int key="NSTvFlags">5</int>
<bool key="NSAllowTruncatedLabels">YES</bool>
<bool key="NSDrawsBackground">YES</bool>
<object class="NSMutableArray" key="NSSubviews">
<bool key="EncodedWithXMLCoder">YES</bool>
<reference ref="449508199"/>
<reference ref="602246853"/>
</object>
</object>
</object>
@ -1640,17 +1638,17 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
<reference key="object" ref="959500869"/>
<object class="NSMutableArray" key="children">
<bool key="EncodedWithXMLCoder">YES</bool>
<reference ref="1066705850"/>
<reference ref="407262461"/>
<reference ref="632174860"/>
<reference ref="866808286"/>
<reference ref="531478061"/>
<reference ref="595911017"/>
<reference ref="527252826"/>
<reference ref="347942455"/>
<reference ref="792590841"/>
<reference ref="216302364"/>
<reference ref="849118110"/>
<reference ref="1066705850"/>
<reference ref="531478061"/>
<reference ref="866808286"/>
<reference ref="632174860"/>
<reference ref="407262461"/>
<reference ref="216302364"/>
<reference ref="792590841"/>
<reference ref="595911017"/>
<reference ref="347942455"/>
<reference ref="527252826"/>
</object>
<reference key="parent" ref="226229370"/>
</object>
@ -2147,8 +2145,10 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
<string>10.IBPluginDependency</string>
<string>100.IBPluginDependency</string>
<string>101.IBPluginDependency</string>
<string>101.IBViewBoundsToFrameTransform</string>
<string>102.IBPluginDependency</string>
<string>103.IBPluginDependency</string>
<string>103.IBViewBoundsToFrameTransform</string>
<string>104.IBPluginDependency</string>
<string>105.IBPluginDependency</string>
<string>106.IBPluginDependency</string>
@ -2202,23 +2202,31 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
<string>81.IBPluginDependency</string>
<string>82.IBPluginDependency</string>
<string>83.IBPluginDependency</string>
<string>83.IBViewBoundsToFrameTransform</string>
<string>84.IBPluginDependency</string>
<string>85.IBPluginDependency</string>
<string>85.IBViewBoundsToFrameTransform</string>
<string>86.IBPluginDependency</string>
<string>87.IBPluginDependency</string>
<string>87.IBViewBoundsToFrameTransform</string>
<string>88.IBPluginDependency</string>
<string>89.IBPluginDependency</string>
<string>89.IBViewBoundsToFrameTransform</string>
<string>9.IBPluginDependency</string>
<string>90.IBPluginDependency</string>
<string>91.IBPluginDependency</string>
<string>91.IBViewBoundsToFrameTransform</string>
<string>92.IBPluginDependency</string>
<string>93.IBPluginDependency</string>
<string>94.IBPluginDependency</string>
<string>95.IBPluginDependency</string>
<string>95.IBViewBoundsToFrameTransform</string>
<string>96.IBPluginDependency</string>
<string>97.IBPluginDependency</string>
<string>97.IBViewBoundsToFrameTransform</string>
<string>98.IBPluginDependency</string>
<string>99.IBPluginDependency</string>
<string>99.IBViewBoundsToFrameTransform</string>
</object>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
@ -2231,8 +2239,14 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<object class="NSAffineTransform">
<bytes key="NSTransformStruct">P4AAAL+AAABCwgAAwrAAAA</bytes>
</object>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<object class="NSAffineTransform">
<bytes key="NSTransformStruct">P4AAAL+AAABCwgAAwmgAAA</bytes>
</object>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
@ -2286,23 +2300,47 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<object class="NSAffineTransform">
<bytes key="NSTransformStruct">P4AAAL+AAABBgAAAwy8AAA</bytes>
</object>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<object class="NSAffineTransform">
<bytes key="NSTransformStruct">P4AAAL+AAABBgAAAwxEAAA</bytes>
</object>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<object class="NSAffineTransform">
<bytes key="NSTransformStruct">P4AAAL+AAABBgAAAwuYAAA</bytes>
</object>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<object class="NSAffineTransform">
<bytes key="NSTransformStruct">P4AAAL+AAABBgAAAwqoAAA</bytes>
</object>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<object class="NSAffineTransform">
<bytes key="NSTransformStruct">P4AAAL+AAABBgAAAwlwAAA</bytes>
</object>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<object class="NSAffineTransform">
<bytes key="NSTransformStruct">P4AAAL+AAABCwgAAwzIAAA</bytes>
</object>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<object class="NSAffineTransform">
<bytes key="NSTransformStruct">P4AAAL+AAABCwgAAwxQAAA</bytes>
</object>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<object class="NSAffineTransform">
<bytes key="NSTransformStruct">P4AAAL+AAABCwgAAwuwAAA</bytes>
</object>
</object>
</object>
<object class="NSMutableDictionary" key="unlocalizedProperties">
@ -3007,41 +3045,6 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
<string key="minorKey">Sparkle.framework/Headers/SUAppcast.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">NSObject</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBFrameworkSource</string>
<string key="minorKey">Sparkle.framework/Headers/SUAutomaticUpdateAlert.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">NSObject</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBFrameworkSource</string>
<string key="minorKey">Sparkle.framework/Headers/SUInstaller.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">NSObject</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBFrameworkSource</string>
<string key="minorKey">Sparkle.framework/Headers/SUUnarchiver.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">NSObject</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBFrameworkSource</string>
<string key="minorKey">Sparkle.framework/Headers/SUUpdateAlert.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">NSObject</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBFrameworkSource</string>
<string key="minorKey">Sparkle.framework/Headers/SUUpdatePermissionPrompt.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">NSObject</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">

View File

@ -39,7 +39,6 @@ if [ "$1" = "ios" ]; then
echo "#include <pj/config_site_sample.h>" >> ${PJPROJECTNAME}-ios6/pjlib/include/pj/config_site.h
echo "#define PJMEDIA_AUDIO_DEV_HAS_PORTAUDIO 0" >> ${PJPROJECTNAME}-ios6/pjlib/include/pj/config_site.h
echo "#define PJMEDIA_AUDIO_DEV_HAS_COREAUDIO 1" >> ${PJPROJECTNAME}-ios6/pjlib/include/pj/config_site.h
echo "#define PJMEDIA_HAS_G722_CODEC 2" >> ${PJPROJECTNAME}-ios6/pjlib/include/pj/config_site.h
OLDDIR="${PWD}"
cd ${PJPROJECTNAME}-ios6
@ -110,7 +109,6 @@ if [ "$1" = "simulator" ]; then
echo "#include <pj/config_site_sample.h>" >> ${PJPROJECTNAME}-simulator/pjlib/include/pj/config_site.h
echo "#define PJMEDIA_AUDIO_DEV_HAS_PORTAUDIO 0" >> ${PJPROJECTNAME}-simulator/pjlib/include/pj/config_site.h
echo "#define PJMEDIA_AUDIO_DEV_HAS_COREAUDIO 1" >> ${PJPROJECTNAME}-simulator/pjlib/include/pj/config_site.h
echo "#define PJMEDIA_HAS_G722_CODEC 2" >> ${PJPROJECTNAME}-simulator/pjlib/include/pj/config_site.h
OLDDIR="${PWD}"
cd ${PJPROJECTNAME}-simulator

Binary file not shown.

View File

@ -663,6 +663,7 @@
8D11072C0486CEB800E47090 /* Sources */,
8D11072E0486CEB800E47090 /* Frameworks */,
2A1175F91245705200D119B5 /* Frameworks */,
2A0EADDD13608B5A0074C118 /* Update Version */,
);
buildRules = (
);
@ -797,6 +798,21 @@
/* End PBXResourcesBuildPhase section */
/* Begin PBXShellScriptBuildPhase section */
2A0EADDD13608B5A0074C118 /* Update Version */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputPaths = (
);
name = "Update Version";
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "#!/bin/bash\n#\n# Git Version\n#\n# Created by Mr. Gecko <GRMrGecko@gmail.com> on 4/21/11.\n# No Copyright Claimed. Public Domain.\n#\n\nPATH=\"${PATH}:/usr/local/git/bin/\"\n\nINFO=\"${CONFIGURATION_BUILD_DIR}/${CONTENTS_FOLDER_PATH}/Info\"\nGITDIR=\"${PROJECT_DIR}/.git\"\n\nVERSION=`defaults read \"${INFO}\" CFBundleVersion`\nif [ -d \"${GITDIR}\" ]; then\n\tREVISION=`git --git-dir=\"${GITDIR}\" rev-parse --short HEAD`\n\tdefaults write \"${INFO}\" CFBundleShortVersionString -string \"${VERSION} (${REVISION})\"\nelse\n\tdefaults write \"${INFO}\" CFBundleShortVersionString -string \"${VERSION}\"\nfi";
showEnvVarsInLog = 0;
};
2A9FE23C13098D600061FB64 /* ShellScript */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;