CAS R1 LOOPSTART USER

From TBwiki
(Difference between revisions)
Jump to: navigation, search
 
(One intermediate revision by one user not shown)
Line 1: Line 1:
 
Loopstart is a CAS R1 variant.
 
Loopstart is a CAS R1 variant.
  
Loopstart is an asymmetrical variant where a FXS (or "user") and FXO (or "network") sides must be face to face.
+
Loopstart is an asymmetrical variant where a user and network sides must be face to face.
  
Current page describes the Loopstart FXS variant, see the following page for documentation about [[CAS_R1_LOOPSTART_FXO|Loopstart FXO]] variant.
+
Current page describes the Loop start user side variant, see the following page for documentation about [[CAS_R1_LOOPSTART_NETWORk|Loop start network side]] variant.
  
 
You can find general documentation about CASR1 scripts in Toolpack in the following page:[[CASr1_scripting]].
 
You can find general documentation about CASR1 scripts in Toolpack in the following page:[[CASr1_scripting]].
Line 18: Line 18:
 
* Call establishment:
 
* Call establishment:
 
** User calling:
 
** User calling:
*** FXS side set CAS bit A to 1, indicating that the phone is "off hook"
+
*** User side set CAS bit A to 1, indicating that the phone is "off hook"
*** FXS side wait for a dial tone
+
*** User side wait for a dial tone
*** FXS side dials the DNIS (called number)
+
*** User side dials the DNIS (called number)
 
*** User should hear ring tone, then remote party
 
*** User should hear ring tone, then remote party
 
** Network calling:
 
** Network calling:
*** FXS side detects bit B changes to 0, and makes the phone ring
+
*** User side detects bit B changes to 0, and makes the phone ring
*** FXS side detects bit B toggles, and makes the phone ringer "on" and "off" accordingly
+
*** User side detects bit B toggles, and makes the phone ringer "on" and "off" accordingly
*** FXS side set CAS bit A to 1, indicating that the phone is "off hook"
+
*** User side set CAS bit A to 1, indicating that the phone is "off hook"
 
* Call termination (user side only, network has no way to terminate the call):
 
* Call termination (user side only, network has no way to terminate the call):
** FXS side set CAS bit A to 0, indicating that user's phone is "on hook"
+
** User side set CAS bit A to 0, indicating that user's phone is "on hook"
  
 
Note: There is no way, in Loopstart variant, for network side to report when the call is answered, or terminated. The caller considers the call answered when the ring tone ends and when someone starts talking. The caller considers the call terminated when the conversation is over, or when it no more hears the remote party.
 
Note: There is no way, in Loopstart variant, for network side to report when the call is answered, or terminated. The caller considers the call answered when the ring tone ends and when someone starts talking. The caller considers the call terminated when the conversation is over, or when it no more hears the remote party.
Line 43: Line 43:
  
 
==== Transmission of DNIS ====
 
==== Transmission of DNIS ====
Optionnally, a suffix and/or prefix may be added to the DNIS (called number) that Toolpack sends toward the FXO side:
+
Optionnally, a suffix and/or prefix may be added to the DNIS (called number) that Toolpack sent:
 
<pre>
 
<pre>
 
DNIS = {
 
DNIS = {
Line 53: Line 53:
 
Note that prefix and suffix are rarely used in this variant.
 
Note that prefix and suffix are rarely used in this variant.
  
Also note that detection of DNIS does not need to be configured in the FXS variant, because a call from FXO to FXS side does not provide any DNIS, and thus FXS side never has to detect a DNIS.
+
Also note that reception of DNIS does not need to be configured in this user-side variant, because a call from network to user does not provide any DNIS, and thus user side never has to detect a DNIS.
  
  
== Detailed information about the Loopstart FXS script and state machines ==
+
== Detailed information about the Loop start user side script and state machines ==
For more detailed information about how this script is implemented (various states, and options), please refer to the "loopstart_fxs.lua" script provided with Toolpack.
+
For more detailed information about how this script is implemented (various states, and options), please refer to the "loopstart_user.lua" script provided with Toolpack.

Latest revision as of 14:00, 8 August 2013

Loopstart is a CAS R1 variant.

Loopstart is an asymmetrical variant where a user and network sides must be face to face.

Current page describes the Loop start user side variant, see the following page for documentation about Loop start network side variant.

You can find general documentation about CASR1 scripts in Toolpack in the following page:CASr1_scripting.

Contents

Overview

In the Loopstart variant, FAX side is sending CAS bit A, used to indicate if user's phone is "on hook" or "off hook", while it receives CAS bit B from network side to indicate when it's required to make the user's phone ring.

Initial CAS bits values:

  • Bit A (from user) is 1 ("on hook")
  • Bit B (from network) is 1 ("ringer off")

Summary of the Loopstart call flow:

  • Call establishment:
    • User calling:
      • User side set CAS bit A to 1, indicating that the phone is "off hook"
      • User side wait for a dial tone
      • User side dials the DNIS (called number)
      • User should hear ring tone, then remote party
    • Network calling:
      • User side detects bit B changes to 0, and makes the phone ring
      • User side detects bit B toggles, and makes the phone ringer "on" and "off" accordingly
      • User side set CAS bit A to 1, indicating that the phone is "off hook"
  • Call termination (user side only, network has no way to terminate the call):
    • User side set CAS bit A to 0, indicating that user's phone is "on hook"

Note: There is no way, in Loopstart variant, for network side to report when the call is answered, or terminated. The caller considers the call answered when the ring tone ends and when someone starts talking. The caller considers the call terminated when the conversation is over, or when it no more hears the remote party.


Configuration

Choosing tone type

With CAS R1, DNIS (called number) can be sent using either DTMF or MFR1 tones.

To specify the type of tones to use, use the following constant:

TONE_USE_DTMF			= 1

Transmission of DNIS

Optionnally, a suffix and/or prefix may be added to the DNIS (called number) that Toolpack sent:

	DNIS = {
		prefix = "",
		suffix = "",
	},

Note that prefix and suffix are rarely used in this variant.

Also note that reception of DNIS does not need to be configured in this user-side variant, because a call from network to user does not provide any DNIS, and thus user side never has to detect a DNIS.


Detailed information about the Loop start user side script and state machines

For more detailed information about how this script is implemented (various states, and options), please refer to the "loopstart_user.lua" script provided with Toolpack.

Personal tools