Home Manual Reference Source
public class | source

CallController

Extends:

* → CallController

Controller for making and handling calls

Constructor Summary

Public Constructor
public

constructor(args: args)

Member Summary

Public Members
public
public
public
public
public
public
public
public
public
public

Method Summary

Public Methods
public

async addCall()

Waits for incoming call while in a call, then will click add

public

async addParticipantByExtension(extension: String)

Views add participant panel and dials to a participant by extension

public

async analyzeRtc(ms: String): Object

Starts analyzing RTC data during a call for client for ms provided.

public

async answerCall(wait: Boolean)

Answer an incoming call

public

async callExtensionWithVideo(extension: String, wait: Boolean)

Starts a call from the Welcome page by entering an extension

public

Will call extension and immediately cancel the call

public

Determines whether the callee is 'Busy' when the caller calls

public

Determines whether the callee is 'Unreachable' when the caller calls

public

async endCall()

End the current call

public

Get details from call details panel

public

Views incall participants list and returns the info

public

Get text of presentation button tooltip

public

Returns recording button tool tip text

public

Determines if RTC stats are good

public

async ignoreCall()

Waits for incoming call, then will click ignore

public

async isCallGood(): Boolean

Determines if the call is considered good

public

Returns the call recording state

public

async isConnected(): Boolean

Checks to see if we have a peer connection.

public

Determines if the primary video is blank.

public

Checks if receiving presentation

public

Checks if sending presentation

public

async joinCall(extension: String, wait: Boolean)

Join call by visiting the /call URL

public

async joinCallAndCancel(extension: String)

Join call by visiting the /call URL, and cancel call

public

When closing browser or navigating away, we are presented with an alert.

public

Clicks the start presentation button.

public

async startRecording(wait: Boolean)

Clicks on start recording button from call controls

public

Click the stop presentation button

public

async stopRecording(wait: Boolean)

Clicks on stop recording button from call controle

public

Waits for incoming call modal to be displayed

public

Waits up to 30 seconds to become connected to a call

Public Constructors

public constructor(args: args) source

Params:

NameTypeAttributeDescription
args args

Args from client

Public Members

public addParticipantPanel: * source

public callDetailsPanel: * source

public headerPanel: * source

public homePage: * source

public inCallModal: * source

public incomingCallPage: * source

public joinModal: * source

public participantListPanel: * source

public startCallModal: * source

public startingCallModal: * source

Public Methods

public async addCall() source

Waits for incoming call while in a call, then will click add

public async addParticipantByExtension(extension: String) source

Views add participant panel and dials to a participant by extension

Params:

NameTypeAttributeDescription
extension String

extension of the participant

public async analyzeRtc(ms: String): Object source

Starts analyzing RTC data during a call for client for ms provided.

Params:

NameTypeAttributeDescription
ms String

Amount of milliseconds to analyze call

Return:

Object

Blob of rtc data

TODO:

  • Determine what RTC data is relevant to present here.

public async answerCall(wait: Boolean) source

Answer an incoming call

Params:

NameTypeAttributeDescription
wait Boolean

Wait for call to be connected before continuing

public async callExtensionWithVideo(extension: String, wait: Boolean) source

Starts a call from the Welcome page by entering an extension

Params:

NameTypeAttributeDescription
extension String

Extension of contact to cal

wait Boolean

Wait for call to be connected before continuing

public async callExtensionWithVideoAndCancel(extension: String) source

Will call extension and immediately cancel the call

Params:

NameTypeAttributeDescription
extension String

Extension to call

public async calleeIsBusy(): Boolean source

Determines whether the callee is 'Busy' when the caller calls

Return:

Boolean

Returns true if call error message is Busy

public async calleeIsUnreachable(): Boolean source

Determines whether the callee is 'Unreachable' when the caller calls

Return:

Boolean

Returns true if call error message is Unreachable

public async endCall() source

End the current call

public async getCallDetails(): Object source

Get details from call details panel

Return:

Object

Object of call details

public async getCallParticipantsInfo(): Object source

Views incall participants list and returns the info

Return:

Object

participants info

public async getPresentationTooltipText(): String source

Get text of presentation button tooltip

Return:

String

Text of presentation tooltip

public async getRecordingTooltipText(): String source

Returns recording button tool tip text

Return:

String

Recording button tool tip text

public async hasGoodRtcStats(): Boolean source

Determines if RTC stats are good

Return:

Boolean

True if stats are considered good, false if not

TODO:

  • Determine what good stats are

public async ignoreCall() source

Waits for incoming call, then will click ignore

public async isCallGood(): Boolean source

Determines if the call is considered good

Return:

Boolean

true if call is considered good, false if not

public async isCallRecorded(): Boolean source

Returns the call recording state

Return:

Boolean

call recording state

public async isConnected(): Boolean source

Checks to see if we have a peer connection.

Return:

Boolean

True if connected, false if not.

public async isPrimaryVideoBlank(): Boolean source

Determines if the primary video is blank. This takes a screen shot of the primary video element at the time this is called.

Return:

Boolean

True if primary video is considered blank, false if not.

public async isReceivingPresentation(): Boolean source

Checks if receiving presentation

Return:

Boolean

true if receiving, false if not

public async isSendingPresentation(): Boolean source

Checks if sending presentation

Return:

Boolean

true if sending, false if not

public async joinCall(extension: String, wait: Boolean) source

Join call by visiting the /call URL

Params:

NameTypeAttributeDescription
extension String

Extension to call

wait Boolean

If true, will wait for call to be connected.

public async joinCallAndCancel(extension: String) source

Join call by visiting the /call URL, and cancel call

Params:

NameTypeAttributeDescription
extension String

Extension to call

public async setSkipAlertOnClose() source

When closing browser or navigating away, we are presented with an alert. This run js on the page that tells the app to skip this alert. Hard coded to 300,000ms (5 minutes) Copy/Pasted from login controller

TODO:

  • Abstract this out into something else

public async startPresentation() source

Clicks the start presentation button. Auto-selects "Entire Screen" based on our capabilities

public async startRecording(wait: Boolean) source

Clicks on start recording button from call controls

Params:

NameTypeAttributeDescription
wait Boolean
  • optional
  • default: true

If true waits for the recording to be started

public async stopPresentation() source

Click the stop presentation button

public async stopRecording(wait: Boolean) source

Clicks on stop recording button from call controle

Params:

NameTypeAttributeDescription
wait Boolean
  • optional
  • default: true

If true waits until recording stops

public async waitForIncomingCall() source

Waits for incoming call modal to be displayed

public async waitUntilCallConnected() source

Waits up to 30 seconds to become connected to a call