5 // Created by Matt Meissner on 10/30/09.
6 // Copyright 2009 Matt Meissner. All rights reserved.
9 #import <AppKit/AppKit.h>
11 #import <AIUtilities/AICharacterSetAdditions.h>
12 #import <AIUtilities/AIImageAdditions.h>
14 #import "ESPurpleSIPEAccount.h"
15 #import "ESSIPEService.h"
17 @implementation ESSIPEService
19 //Account Creation -----------------------------------------------------------------------------------------------------
20 #pragma mark Account Creation
24 return [ESPurpleSIPEAccount class];
27 //Service Description --------------------------------------------------------------------------------------------------
28 #pragma mark Service Description
29 - (NSString *)serviceCodeUniqueID{
30 return @"libpurple-SIPE";
33 - (NSString *)serviceID{
37 - (NSString *)serviceClass{
41 - (NSString *)shortDescription{
42 return @"Office Communicator";
45 - (NSString *)longDescription{
46 return @"Office Communicator";
49 - (NSString *)UIDPlaceholder
51 return @"first.last.company.com@company.net";
54 - (NSCharacterSet *)allowedCharacters
56 NSMutableCharacterSet *allowedCharacters = [[NSCharacterSet alphanumericCharacterSet] mutableCopy];
57 NSCharacterSet *returnSet;
59 [allowedCharacters addCharactersInString:@"._@-()[]^%#|\\`=,"];
60 returnSet = [allowedCharacters immutableCopy];
62 return [returnSet autorelease];
65 - (NSImage *)defaultServiceIconOfType:(AIServiceIconType)iconType
69 if ((iconType == AIServiceIconSmall) || (iconType == AIServiceIconList)) {
70 image = [NSImage imageNamed:@"sipe-small"];
72 image = [NSImage imageNamed:@"sipe"];
78 - (NSString *)pathForDefaultServiceIconOfType:(AIServiceIconType)iconType
80 if ((iconType == AIServiceIconSmall) || (iconType == AIServiceIconList)) {
81 return [[NSBundle bundleForClass:[self class]] pathForImageResource:@"sipe-small"];
83 return [[NSBundle bundleForClass:[self class]] pathForImageResource:@"sipe"];
87 //Service Properties ---------------------------------------------------------------------------------------------------
88 #pragma mark Service Properties
90 - (BOOL)canCreateGroupChats