Interface IIvrBaseLine
This interface provides methods to control the selected IVR plugin. It is primarily used by the ivrToolkit.Core.Util.LineWrapper class.
Inherited Members
Namespace: ivrToolkit.Core.Interfaces
Assembly: ivrToolkit.Core.dll
Syntax
public interface IIvrBaseLine : IDisposable
Properties
| Edit this page View SourceLastTerminator
Gets or sets the last terminator key that was pressed.
Declaration
string LastTerminator { get; set; }
Property Value
Type | Description |
---|---|
string |
LineNumber
Gets the attached line number.
Declaration
int LineNumber { get; }
Property Value
Type | Description |
---|---|
int |
Management
Provides functionality for managing the line from another thread.
Declaration
IIvrLineManagement Management { get; }
Property Value
Type | Description |
---|---|
IIvrLineManagement |
Volume
Gets or sets the volume level. Valid range: -10 to 10 (0 is default volume).
Declaration
int Volume { get; set; }
Property Value
Type | Description |
---|---|
int |
Methods
| Edit this page View SourceDial(string, int)
Dials a phone number using call progress analysis.
Declaration
CallAnalysis Dial(string phoneNumber, int answeringMachineLengthInMilliseconds)
Parameters
Type | Name | Description |
---|---|---|
string | phoneNumber | The phone number to call. |
int | answeringMachineLengthInMilliseconds | The threshold for determining an answering machine. Detects the callee's greeting duration.0 = no answering machine detection. |
Returns
Type | Description |
---|---|
CallAnalysis | A CallAnalysis object containing call results. |
DialAsync(string, int, CancellationToken)
Asynchronously dials a phone number using call progress analysis.
Declaration
Task<CallAnalysis> DialAsync(string phoneNumber, int answeringMachineLengthInMilliseconds, CancellationToken cancellationToken)
Parameters
Type | Name | Description |
---|---|---|
string | phoneNumber | The phone number to call. |
int | answeringMachineLengthInMilliseconds | The threshold for determining an answering machine. Detects the callee's greeting duration.0 = no answering machine detection. |
CancellationToken | cancellationToken | A token to monitor for cancellation requests. |
Returns
Type | Description |
---|---|
Task<CallAnalysis> | A task representing the asynchronous operation, returning a CallAnalysis object. |
FlushDigitBuffer()
Clears the digit buffer and returns all previously collected digits, including terminators.
Declaration
string FlushDigitBuffer()
Returns
Type | Description |
---|---|
string | All digits in the buffer. |
GetCallStateProgress()
A bitwise collection of call out state progress. You can use this to help decide how you want to handle NoRingBack calls. It is currently only for the Dialogic SIP plugin.
Declaration
CallStateProgressEnum GetCallStateProgress()
Returns
Type | Description |
---|---|
CallStateProgressEnum |
GetDigits(int, string, int)
Collects digits from the user until the specified number is reached or a terminator is pressed.
Declaration
string GetDigits(int numberOfDigits, string terminators, int interDigitTimeoutMilliseconds = 0)
Parameters
Type | Name | Description |
---|---|---|
int | numberOfDigits | The maximum number of digits to capture. |
string | terminators | The valid terminator keys. |
int | interDigitTimeoutMilliseconds | The timeout duration between keypresses in milliseconds (0 to use default). |
Returns
Type | Description |
---|---|
string | The collected digits, excluding the terminator if used. |
GetDigitsAsync(int, string, CancellationToken, int)
Asynchronously collects digits from the user until the specified number is reached or a terminator is pressed.
Declaration
Task<string> GetDigitsAsync(int numberOfDigits, string terminators, CancellationToken cancellationToken, int interDigitTimeoutMilliseconds = 0)
Parameters
Type | Name | Description |
---|---|---|
int | numberOfDigits | The maximum number of digits to capture. |
string | terminators | The valid terminator keys. |
CancellationToken | cancellationToken | A token to monitor for cancellation requests. |
int | interDigitTimeoutMilliseconds | The timeout duration between keypresses in milliseconds (0 to use default). |
Returns
Type | Description |
---|---|
Task<string> | The collected digits, excluding the terminator if used. |
Hangup()
Forces a hangup on the current line.
Declaration
void Hangup()
PlayFile(string)
Plays a WAV file (8000Hz, mono, signed 16-bit PCM).
Declaration
void PlayFile(string filename)
Parameters
Type | Name | Description |
---|---|---|
string | filename | The path to the WAV file. |
PlayFileAsync(string, CancellationToken)
Asynchronously plays a WAV file (8000Hz, mono, signed 16-bit PCM).
Declaration
Task PlayFileAsync(string filename, CancellationToken cancellationToken)
Parameters
Type | Name | Description |
---|---|---|
string | filename | The path to the WAV file. |
CancellationToken | cancellationToken | A token to monitor for cancellation requests. |
Returns
Type | Description |
---|---|
Task |
PlayWavStream(WavStream)
Plays a WAV audio stream.
Declaration
void PlayWavStream(WavStream audioStream)
Parameters
Type | Name | Description |
---|---|---|
WavStream | audioStream | The audio stream, including the WAV header. |
PlayWavStreamAsync(WavStream, CancellationToken)
Asynchronously plays a WAV audio stream.
Declaration
Task PlayWavStreamAsync(WavStream audioStream, CancellationToken cancellationToken)
Parameters
Type | Name | Description |
---|---|---|
WavStream | audioStream | The audio stream, including the WAV header. |
CancellationToken | cancellationToken | A token to monitor for cancellation requests. |
Returns
Type | Description |
---|---|
Task |
RecordToFile(string)
Records a WAV file (8000Hz, mono, signed 16-bit PCM) to disk.
Declaration
void RecordToFile(string filename)
Parameters
Type | Name | Description |
---|---|---|
string | filename | The output file path. |
RecordToFile(string, int)
Records a WAV file with a specified timeout (8000Hz, mono, signed 16-bit PCM) to disk.
Declaration
void RecordToFile(string filename, int timeoutMilliseconds)
Parameters
Type | Name | Description |
---|---|---|
string | filename | The output file path. |
int | timeoutMilliseconds | The maximum recording duration in milliseconds. |
RecordToFileAsync(string, int, CancellationToken)
Asynchronously records a WAV file with a specified timeout (8000Hz, mono, signed 16-bit PCM) to disk.
Declaration
Task RecordToFileAsync(string filename, int timeoutMilliseconds, CancellationToken cancellationToken)
Parameters
Type | Name | Description |
---|---|---|
string | filename | The output file path. |
int | timeoutMilliseconds | The maximum recording duration in milliseconds. |
CancellationToken | cancellationToken | A token to monitor for cancellation requests. |
Returns
Type | Description |
---|---|
Task |
RecordToFileAsync(string, CancellationToken)
Asynchronously records a WAV file (8000Hz, mono, signed 16-bit PCM) to disk.
Declaration
Task RecordToFileAsync(string filename, CancellationToken cancellationToken)
Parameters
Type | Name | Description |
---|---|---|
string | filename | The output file path. |
CancellationToken | cancellationToken | A token to monitor for cancellation requests. |
Returns
Type | Description |
---|---|
Task |
Reset()
Disposes of the line and re-initializes it.
Declaration
void Reset()
StartIncomingListener(Func<IIvrLine, CancellationToken, Task>, IIvrLine, CancellationToken)
Starts an incoming call listener with a callback function.
Declaration
void StartIncomingListener(Func<IIvrLine, CancellationToken, Task> callback, IIvrLine line, CancellationToken cancellationToken)
Parameters
Type | Name | Description |
---|---|---|
Func<IIvrLine, CancellationToken, Task> | callback | The function to execute when a call is received. |
IIvrLine | line | The line instance. |
CancellationToken | cancellationToken | A token to monitor for cancellation requests. |
TakeOffHook()
Takes the line off hook.
Declaration
void TakeOffHook()
WaitRings(int)
Waits for a specified number of rings before answering.
Declaration
void WaitRings(int rings)
Parameters
Type | Name | Description |
---|---|---|
int | rings | The number of rings to wait. |
WaitRingsAsync(int, CancellationToken)
Asynchronously waits for a specified number of rings before answering.
Declaration
Task WaitRingsAsync(int rings, CancellationToken cancellationToken)
Parameters
Type | Name | Description |
---|---|---|
int | rings | The number of rings to wait. |
CancellationToken | cancellationToken | A token to monitor for cancellation requests. |
Returns
Type | Description |
---|---|
Task |