Inherits from SCDataTableViewController : UITableViewController
Declared in SCBoardController.h

Overview

Presents the standard C2Call SDK Message Board Controller.

The BoardController shows MOC2CallEvent Items (Chat History and Call History) in the typical style of message bubbles. The BoardController is highly customizable and the developer is free to design the look&feel of the board. It also comes with several filter options to filter the content shown in the board. Available Filter are:

SCBoardMessageFilter_IMAGE - Show only Images
SCBoardMessageFilter_VIDEO - Show only Videos
SCBoardMessageFilter_VOICEMAIL - Show only VoiceMails
SCBoardMessageFilter_LOCATION - Show only Locations
SCBoardMessageFilter_CALL - Show only Call History
SCBoardMessageFilter_MISSED - Show only missed events

Properties

activeFilterInfo

Current Active Filters in Human Readable Format.

@property (nonatomic, strong) NSString *activeFilterInfo

Declared In

SCBoardController.h

dontShowCallEvents

Suppress Call Events in Event History

@property (nonatomic) BOOL dontShowCallEvents

Discussion

SCChatController will set this to YES, to suppress Call Events in a person to person chat.

Declared In

SCBoardController.h

filterButton

The Filter Button shows the filter menu; sets the button state selected when a filter is set.

@property (nonatomic, strong) IBOutlet UIButton *filterButton

Declared In

SCBoardController.h

filterInfoView

UIView references to the filter info view.

@property (nonatomic, strong) IBOutlet UIView *filterInfoView

Declared In

SCBoardController.h

firstHeaderLabel

FirstTimeStamp Header Timestamp Label.

@property (nonatomic, strong) IBOutlet UILabel *firstHeaderLabel

Declared In

SCBoardController.h

firstHeaderView

UIView references to the first timestamp header.

@property (nonatomic, strong) IBOutlet UIView *firstHeaderView

Declared In

SCBoardController.h

headerView

UIView references to the first section header.

@property (nonatomic, strong) IBOutlet UIView *headerView

Declared In

SCBoardController.h

headerViewEmbed

UIView references to the first section header (new Version).

@property (nonatomic, strong) IBOutlet UIView *headerViewEmbed

Declared In

SCBoardController.h

labelFilterInfo

Filter Info Label.

@property (nonatomic, strong) IBOutlet UILabel *labelFilterInfo

Declared In

SCBoardController.h

previousMessagesButton

Show previous messages button.

@property (nonatomic, strong) IBOutlet UIButton *previousMessagesButton

Discussion

Default, the board shows only the last 25 events. Tapping the previous messages button 50, 75, 100 and so on events will be shown.

Declared In

SCBoardController.h

targetUserid

Targetuserid (can be userId of phone number).

@property (nonatomic, strong) NSString *targetUserid

Discussion

Shows only messages of the defined friend or phone number contact. Can be nil.

Declared In

SCBoardController.h

timestampHeader

UIView references for the timestamp header.

@property (nonatomic, strong) IBOutlet UIView *timestampHeader

Declared In

SCBoardController.h

timestampLabel

TimestampHeader Timestamp Label.

@property (nonatomic, strong) IBOutlet UILabel *timestampLabel

Declared In

SCBoardController.h

Instance Methods

answerMessage:

Answers the last message.

- (IBAction)answerMessage:(id)sender

Parameters

sender
  • The initiator of the action

Discussion

Uses the SCComposeMessageController to answer the last message as follows:

[self composeMessage:nil richMessageKey:nil answerLastContact:YES];

Declared In

SCBoardController.h

composeAction:

Opens the Compose Message Controller.

- (IBAction)composeAction:(id)sender

Parameters

sender
  • The initiator of the action

Discussion

Default Implementation: [self composeMessage:nil richMessageKey:nil];

Declared In

SCBoardController.h

copyImageForKey:

Copies Image to clipboard.

- (void)copyImageForKey:(id)key

Parameters

key
  • Rich Media Key of the image to copy

Declared In

SCBoardController.h

copyLocationForKey:

Copies Location to clipboard.

- (void)copyLocationForKey:(id)key

Parameters

key
  • Rich Media Key of the location to copy

Declared In

SCBoardController.h

copyMovieForKey:

Copies Videop to clipboard.

- (void)copyMovieForKey:(id)key

Parameters

key
  • Rich Media Key of the Video to copy

Declared In

SCBoardController.h

copyText:

Copies message text to clipboard.

- (void)copyText:(id)text

Parameters

text
  • The message text

Declared In

SCBoardController.h

filterMenu:

Shows the filter menu.

- (IBAction)filterMenu:(id)sender

Parameters

sender
  • The initiator of the action

Discussion

Default Implementation: SCPopupMenu *popup = [SCPopupMenu popupMenu:self];

[popup addChoiceWithName:NSLocalizedString(@"Remove Filter", @"Filter Action") andSubTitle:nil andIcon:nil andCompletion:^{
    [self removeAllFilter:nil];
}];

[popup addChoiceWithName:NSLocalizedString(@"Images", @"Filter Action") andSubTitle:nil andIcon:nil andCompletion:^{
    [self setMessageFilter:SCBoardMessageFilter_IMAGE];
}];

[popup addChoiceWithName:NSLocalizedString(@"Videos", @"Filter Action") andSubTitle:nil andIcon:nil andCompletion:^{
    [self setMessageFilter:SCBoardMessageFilter_VIDEO];
}];

[popup addChoiceWithName:NSLocalizedString(@"Voice Mails", @"Filter Action") andSubTitle:nil andIcon:nil andCompletion:^{
    [self setMessageFilter:SCBoardMessageFilter_VOICEMAIL];
}];

[popup addChoiceWithName:NSLocalizedString(@"Locations", @"Filter Action") andSubTitle:nil andIcon:nil andCompletion:^{
    [self setMessageFilter:SCBoardMessageFilter_LOCATION];
}];

[popup addChoiceWithName:NSLocalizedString(@"Calls", @"Filter Action") andSubTitle:nil andIcon:nil andCompletion:^{
    [self setMessageFilter:SCBoardMessageFilter_CALL];
}];

[popup addChoiceWithName:NSLocalizedString(@"Missed", @"Filter Action") andSubTitle:nil andIcon:nil andCompletion:^{
    [self setMessageFilter:SCBoardMessageFilter_MISSED];
}];

[popup addCancelWithName:NSLocalizedString(@"Cancel", @"Button") andCompletion:^{
}];

[popup showMenu];

Declared In

SCBoardController.h

forwardMessage:

Forwards the given message text.

- (void)forwardMessage:(id)message

Parameters

message
  • Text to forward

Discussion

In case the message text is a rich media key, the rich media object will be forwarded.

Declared In

SCBoardController.h

imageForElement:

Returns the Image of the current contact

- (UIImage *)imageForElement:(id)elem

Return Value

contact image or avatar image

Declared In

SCBoardController.h

ownUserImage

Returns the Image of the current user as thumbnail

- (UIImage *)ownUserImage

Return Value

userimage

Declared In

SCBoardController.h

previousMessages:

Shows previous messages action.

- (IBAction)previousMessages:(id)sender

Parameters

sender
  • The initiator of the action

Declared In

SCBoardController.h

removeAllFilter:

Removes all filters.

- (IBAction)removeAllFilter:(id)sender

Parameters

sender
  • The initiator of the action

Declared In

SCBoardController.h

removeTextFilter

Removes the current text filter.

- (void)removeTextFilter

Declared In

SCBoardController.h

scrollToBottom

Scroll to bottom of the chat

- (void)scrollToBottom

Declared In

SCBoardController.h

setMessageFilter:

Sets one of the following filters:

- (void)setMessageFilter:(id)filter

Parameters

filter
  • The filter type

Discussion

SCBoardMessageFilter_IMAGE - Show only Images
SCBoardMessageFilter_VIDEO - Show only Videos
SCBoardMessageFilter_VOICEMAIL - Show only VoiceMails
SCBoardMessageFilter_LOCATION - Show only Locations
SCBoardMessageFilter_CALL - Show only Call History
SCBoardMessageFilter_MISSED - Show only missed events

Declared In

SCBoardController.h

setRetransmitActionForCell:withKey:andUserid:

Set the retransmit action

- (void)setRetransmitActionForCell:(id)cell withKey:(id)key andUserid:(id)userid

Parameters

cell
  • The current cell to configure
key
  • The Rich Media Key
userid
  • The target userid

Discussion

This method will be called by configure cell methods Overwrite this method if you want to set a specific retransmit action

Declared In

SCBoardController.h

setSubmittedStatusIcon:forStatus:

Set the subitted status icon

- (void)setSubmittedStatusIcon:(id)cell forStatus:(id)messageStatus

Parameters

cell
  • The current cell to configure
messageStatus
  • The submission status

Discussion

This method will be called by configure cell methods Overwrite this method if you want to set a specific submitted status icon

Declared In

SCBoardController.h

setTextFilterForText:

Sets a Fulltext Filter on all Board Messages

- (void)setTextFilterForText:(id)text

Parameters

text
  • Filter text.

Declared In

SCBoardController.h

setUserImageAction:forElement:

Set a specific action for a touch on the user image

- (void)setUserImageAction:(id)imageView forElement:(id)elem

Parameters

imageView
  • The Userimage view
elem

Discussion

This method will be called by configure cell methods Overwrite this method if you want to set a specific action for a touch on the user image

Declared In

SCBoardController.h

shareEmail:

Shares Rich Media Item as email.

- (void)shareEmail:(id)key

Parameters

key
  • Rich Media Key

Declared In

SCBoardController.h

shareRichMessageForKey:

Shows the standard share message popup for a Rich Media Item.

- (void)shareRichMessageForKey:(id)key

Parameters

key
  • Rich Media Key

Discussion

Default Implementation: SCPopupMenu *cv = [SCPopupMenu popupMenu:self];

[cv addChoiceWithName:NSLocalizedString(@"Forward", @"Choice Title") andSubTitle:NSLocalizedString(@"Share via FriendCaller", @"Choice SubTitle") andIcon:[UIImage imageNamed:@"ico_forward"] andCompletion:^(){
    [self forwardMessage:key];
}];

[cv addChoiceWithName:NSLocalizedString(@"Email", @"Choice Title") andSubTitle:NSLocalizedString(@"Share via Email", @"Choice SubTitle") andIcon:[UIImage imageNamed:@"ico_email"] andCompletion:^(){
    [self shareEmail:key];
}];

[cv addCancelWithName:NSLocalizedString(@"Cancel", @"Button") andCompletion:^{
}];

[cv showMenu];

Declared In

SCBoardController.h