Difference between revisions of "Callback Addon"

From Kolmisoft Wiki
Jump to navigationJump to search
 
(39 intermediate revisions by 5 users not shown)
Line 1: Line 1:
<!---This functionality is available from MOR 11--->
= About =
'''Callback''' functionality comes as Addon and must be purchased separately.
<br><br>
= Definition =  
= Definition =  


Line 4: Line 9:
In telecommunications, a callback (also written as call-back) occurs when the originator of a call is immediately called back in a second call as a response.
In telecommunications, a callback (also written as call-back) occurs when the originator of a call is immediately called back in a second call as a response.


In order to use a callback service, a subscriber is allocated a unique number in, which must first be dialled in order to trigger a return call. This is known as a Direct Inbound Dialing (DID) number (Access Number). Where Caller ID is available, it may be possible to use the same DID number for many different subscribers, as the callback system will be able to recognize each subscriber's registered number.
In order to use a callback service, a subscriber is allocated a unique number, which must first be dialled in order to trigger a return call. This is known as a Direct Inbound Dialing (DID) number (Access Number). Where Caller ID is available, it may be possible to use the same DID number for many different subscribers, as the callback system will be able to recognize each subscriber's registered number.


On hearing a ringing tone for a few seconds, the subscriber simply hangs up and awaits the callback. On receiving this, usually within a few seconds, the customer picks up the phone and dials the required number.
On hearing a ringing tone for a few seconds, the subscriber simply hangs up and awaits the callback. On receiving this, usually within a few seconds, the customer picks up the phone and dials the required number.


The cost of making a telephone call via callback consists of two parts, as the caller is effectively paying for an outbound and inbound call at the same time. If it costs 20 US cents a minute to call Nigeria from the US, and 8 cents a minute to call Spain from the US, then the caller will pay a total of 28 US cents a minute.
The cost of making a telephone call via callback consists of two parts, as the caller is effectively paying for an outbound and an inbound call at the same time. If it costs 20 US cents a minute to call Nigeria from the US, and 8 cents a minute to call Spain from the US, then the caller will pay a total of 28 US cents a minute.
 
'''NOTE''': If you want to use Callback, make sure your DID provider sends correct CallerID information. Without CallerID, you will not be able to use Callback.
<br><br>
= Callback Settings =


'''NOTE''': If you want to use Callback – make sure your DID provider sends correct CallerID information. Without CallerID – you will not be able to use Callback.
Go to: '''ADDONS''' -> '''Callback''':
<br><br>
[[File:Callback settings.png]]
<br><br>
If ''Send Source as CID'' is selected an additional field '''WEB Callback CID'' appears. If it is left empty default CID will be used.


* '''Active for users?''' - set if Callback is active for users
* '''Max Retries''' - number of maximum retries
* '''Retry Time''' - time of waiting until the retrying of the Call
* '''Wait Time''' - time of waiting until the answer of the Call
* '''Callback Server''' - server though which will go Callback Calls
* <!---from X5---> - '''Busy IVR''' - when a User receives the leg A callback and the leg B destination is busy this IVR will be played before hanging up leg A
* <!---from X5---> - '''Failed IVR''' - when a User dials an unreachable number, this IVR will be played before hanging up the call.
* '''Send Device CID''' - send Device CallerID number
* '''Send Source as CID''' - send Source as CallerID
* '''Callback CID''' - send another CallerID
<br><br>


= Common Callback diagram =  
= Common Callback diagram =  
 
<br><br>
[[Image:common_callback_diagram.png]]
[[Image:common_callback_diagram.png]]
 
<br><br>
 
 
= Implementation in MOR =  
= Implementation in MOR =  


Callback in MOR is implemented in very simple way. It's enough to tell system Access Number (DID) and the way how Callback should act. All of this will be described in following paragraphs.
Callback in MOR is implemented in very simple way. It's enough to tell the system the Access Number (DID) and the way Callback should act. All of this will be described in following paragraphs.


Supported Callback methods in MOR divided by initialization method (what triggers Callback):
Supported Callback methods in MOR, listed by initialization method (which triggers Callback), are:


* Call
* Call
* Over GUI
* [[WEB Callback | Over GUI]]
* Over Email
* [[Callback over Email | Over Email]]
 
* [[MOR API callback init| Over API]]
 
<br><br>


= Who pays for not authenticated call? =
= Who pays for not authenticated call? =


First of all by the nature of Callback it is important to know, that before calling back to User System does not know who is the User (when not using ANI) – e.g. is it client, has he an account in the system and so on.
First of all, by the nature of Callback it is important to know that before calling back to the user, the system does not know who the user is (when not using ANI). For example, it does not know whether the user is a client, whether he has an account in the system, and so on.
 
That means – when system makes callback to the user and user pickups – the call is ANSWERED, but still – system does not know who the user is. Let's say user tries to enter PIN several time but unsuccessfully. Then he hang-ups. Call is ANSWERED. Does user pays for this call? No. Who pays? You, as owner of the system. Sad but that's true
about Callback.


This means that when the system makes the callback to the user and the user picks up, the call is ANSWERED, but the system still does not know who the user is. Let's say the user  unsuccessfully tries to enter a PIN several times. Then he hangs up. The call is ANSWERED. Does the user pay for this call? No. Who pays? You, as the owner of the system. It's sad, but true.


If system recognizes the User which initiates callback (using Calling Cards Pinless or ANI/PIN), then this User will be charged for Callback initiation call.
<br><br>
= Callback User, Callback Device and Callback Tariff =
= Callback User, Callback Device and Callback Tariff =


In order to keep track of Callback calls you need to configure MOR in proper way. For that we need:
In order to keep track of Callback calls, you need to configure MOR in the proper way. For this we need:


# Callback User
# Callback User
Line 47: Line 69:
# Callback Tariff
# Callback Tariff


'''Callback User''' is the user who will pay for answered but not authenticated calls to the user. 100% of the time, this user is the system owner. But creating a new user in MOR lets you keep track of all Callback activity in your system. The other reason to have Callback User (and not use the System Admin account) is the ability to create and assign a Callback Tariff to this user.


'''Callback User''' is the user who will pay for answered but not authenticated calls to the user. In 100% of the time this user is system owner. But creating new user in MOR let's you keep track of all Callback activity in your system. The other reason to have Callback User (and not use System Admin account) is ability to create and assign Callback Tariff to this user.
'''Callback Device''' is the necessary entity in MOR which will actually 'make' callback calls to user. The type and other details do not matter. This device is pure virtual.


'''Callback Device''' is the necessary entity in MOR which will actually 'make' callback calls to user. Type and all details do not matter. This device is pure virtual.
'''Callback Tariff''' – a separate tariff which should be assigned to the Callback User. In this tariff you enter rates only to those destinations from which you expect the user will make an Initiation Call. This is important! Make sure you do not have some Inmarsat rates defined here. Guess how much you will pay if the user initiates a callback from Inmarsat and, when he gets the call, enters the PIN several times incorrectly and hangs up? In short, this tariff decides from which destinations you allow users to initiate callback.
<br><br>
NOTE: '''LEG A''' (system calls back to initiator) is '''charged by User or Calling Card tariff''' if User or Calling card was recognized. If User or Calling Card was '''not recognized''', System owner will be charged for a '''LEG A'''.
<br><br>


'''Callback Tariff''' – separate tariff which should be assigned to Callback User. In this tariff you enter rates only to these destinations from which you expect user will make Initiation Call. This is important! Make sure you do not have some Inmarsat rates defined here. Guess how much you will pay when user initiates callback from Inmarsat and when he gets call he enters PIN several times incorrectly and hang-ups? In short – this tariff decides from which destinations you allow users to initiate callback.
= Types of Callback in MOR =


Callback in MOR can be classified three ways depending on how the user is authenticated/authorized:


= Types of Callback in MOR =
# By User Device's PIN.
# Using ANI (Automatic Number Identification).
# By the Calling Card's Number/PIN (or just the PIN).
<br><br>
= Callback with Device's PIN authentication/authorization =
<br><br>
[[Image:callback_with_pin_auth_schema.png]]
<br><br>
 
The main part here is that user gets authenticated/authorized when he enters Device PIN. System checks for such PIN in database and if user is found – user can proceed.
<br><br>
= Callback Using ANI (Automatic Number Identification) =
<br><br>
[[Image:Callback+ANI_new_Scheme20150109.png]]
<br><br>
This way of Callback is extended User auth. by PIN Callback. In order to ask user for Device's PIN system checks user's CallerID (ANI). If such CallerID is found in database – user gets authenticated/authorized and can proceed entering destination. If CallerID is not found – Callback is not initiated to User.
 
'''Attention! It is very easy to fake CallerID so be careful when you are enabling Callback with ANI. Anybody can put anybodies CallerID and use your service for free.'''
<br><br>
 
= Callback By Calling Card's Number/PIN (or only PIN) =
<br><br>
[[Image:callback_with_cc_schema.png]]
<br><br>
This type of Callback lets user enter Calling Card's Number/PIN to get authenticated/authorized. System checks for such Calling Card in database. If call is made – it is assigned to particular Calling Card.


Callback in MOR can be divided in three separate parts by the way user is authenticated/authorized:
Rule about Users and Cards:


# By User Device's PIN
<big>
# Using ANI (Automatic Number Identification)
'''Users and cards are not related at all. That means:'''
# By Calling Card's Number/PIN (or only PIN)


# '''User (as entity in MOR) can't have Cards.'''
# '''Card (as entity in MOR) can't belong to some User.'''
</big>
<br><br>
=Setting Callback in MOR=


In order to setup Callback in the MOR you need:


= Callback with Device's PIN authentication/authorization =
# Callback User
# Callback Device
# Callback Tariff
# Access Number (DID)
# Calling Card or Auth. by PIN Dial Plan
 
The work flow is as follows:
 
# Create Callback User
# Create Callback Device to the Callback User
# Create Callback Tariff and fill it with rates to destinations from which you want to allow users to initiate callback
# Assign Callback Tariff to Callback User
# Make sure you have Calling Card or Auth. by PIN Dial Plan
# Create Callback Dial Plan and assign Calling Card or Auth. by PIN Dial-Plan to Callback Dial Plan
# Assign Callback Dial Plan to some DID
<br><br>
==Callback Hangup Cause==
<!---This functionality is available from MOR 10--->
Starting from MOR 10 you can change the Hangup Cause Code which will be used then dropping the call before calling back.
<br><br>
[[image:Callback_dial_plan_hangup_cause_code.png]]
<br><br>
[[image:Callback_dial_plan_hangup_cause_code2.png]]
<br><br>
'''MOR supports these Hangup Cause Codes:'''
       
*1 unallocated number / 404 Not Found
*2 no route to network / 404 Not Found
*3 no route to destination / 404 Not Found 
*17 user busy / 486 Busy here
*18 no user responding / 408 Request Timeout
*19 no answer from the user / 480 Temporarily unavailable
*20 subscriber absent / 480 Temporarily unavailable
*21 call rejected / 403 Forbidden
*22 number changed (w/ diagnostic) / 301 Moved Permanently
*23 redirection to new destination / 410 Gone
*26 non-selected user clearing / 404 Not Found 
*27 destination out of order / 502 Bad Gateway
*28 address incomplete / 484 Address incomplete
*29 facility rejected / 501 Not implemented
*31 normal unspecified / 480 Temporarily unavailable
 
 
= VIDEO: How to create Callback User =
<html>
<iframe width="640" height="360" src="https://www.youtube.com/embed/_-YSC0hS5WQ" frameborder="0"></iframe>
</html>


[[Image:callback_with_pin_auth_schema.png]]
= VIDEO: How to create Callback Device =
<html>
<iframe width="640" height="360" src="https://www.youtube.com/embed/dbgkH2FhsgQ" frameborder="0"></iframe>
</html>




The main part here is that user gets authenticated/authorized when he enters Device PIN. System checks for such PIN in database and if user is found – user can proceed.
<br><br>
=See also=
* [[WEB Callback]]
* [[Callback over Email]]
* [[MOR API callback init | API Callback_init]]
* [[Callback setup example]]
* [[217 Callback not initiated because device not found by ANI]]
* [[Can't setup callback]]
* [[Callback and Calling Cards]]

Latest revision as of 09:09, 19 January 2022

About

Callback functionality comes as Addon and must be purchased separately.

Definition

From Wikipedia, the free encyclopedia
In telecommunications, a callback (also written as call-back) occurs when the originator of a call is immediately called back in a second call as a response.

In order to use a callback service, a subscriber is allocated a unique number, which must first be dialled in order to trigger a return call. This is known as a Direct Inbound Dialing (DID) number (Access Number). Where Caller ID is available, it may be possible to use the same DID number for many different subscribers, as the callback system will be able to recognize each subscriber's registered number.

On hearing a ringing tone for a few seconds, the subscriber simply hangs up and awaits the callback. On receiving this, usually within a few seconds, the customer picks up the phone and dials the required number.

The cost of making a telephone call via callback consists of two parts, as the caller is effectively paying for an outbound and an inbound call at the same time. If it costs 20 US cents a minute to call Nigeria from the US, and 8 cents a minute to call Spain from the US, then the caller will pay a total of 28 US cents a minute.

NOTE: If you want to use Callback, make sure your DID provider sends correct CallerID information. Without CallerID, you will not be able to use Callback.

Callback Settings

Go to: ADDONS -> Callback:

Callback settings.png

If Send Source as CID is selected an additional field 'WEB Callback CID appears. If it is left empty default CID will be used.

  • Active for users? - set if Callback is active for users
  • Max Retries - number of maximum retries
  • Retry Time - time of waiting until the retrying of the Call
  • Wait Time - time of waiting until the answer of the Call
  • Callback Server - server though which will go Callback Calls
  • - Busy IVR - when a User receives the leg A callback and the leg B destination is busy this IVR will be played before hanging up leg A
  • - Failed IVR - when a User dials an unreachable number, this IVR will be played before hanging up the call.
  • Send Device CID - send Device CallerID number
  • Send Source as CID - send Source as CallerID
  • Callback CID - send another CallerID



Common Callback diagram



Common callback diagram.png

Implementation in MOR

Callback in MOR is implemented in very simple way. It's enough to tell the system the Access Number (DID) and the way Callback should act. All of this will be described in following paragraphs.

Supported Callback methods in MOR, listed by initialization method (which triggers Callback), are:



Who pays for not authenticated call?

First of all, by the nature of Callback it is important to know that before calling back to the user, the system does not know who the user is (when not using ANI). For example, it does not know whether the user is a client, whether he has an account in the system, and so on.

This means that when the system makes the callback to the user and the user picks up, the call is ANSWERED, but the system still does not know who the user is. Let's say the user unsuccessfully tries to enter a PIN several times. Then he hangs up. The call is ANSWERED. Does the user pay for this call? No. Who pays? You, as the owner of the system. It's sad, but true.

If system recognizes the User which initiates callback (using Calling Cards Pinless or ANI/PIN), then this User will be charged for Callback initiation call.

Callback User, Callback Device and Callback Tariff

In order to keep track of Callback calls, you need to configure MOR in the proper way. For this we need:

  1. Callback User
  2. Callback Device
  3. Callback Tariff

Callback User is the user who will pay for answered but not authenticated calls to the user. 100% of the time, this user is the system owner. But creating a new user in MOR lets you keep track of all Callback activity in your system. The other reason to have Callback User (and not use the System Admin account) is the ability to create and assign a Callback Tariff to this user.

Callback Device is the necessary entity in MOR which will actually 'make' callback calls to user. The type and other details do not matter. This device is pure virtual.

Callback Tariff – a separate tariff which should be assigned to the Callback User. In this tariff you enter rates only to those destinations from which you expect the user will make an Initiation Call. This is important! Make sure you do not have some Inmarsat rates defined here. Guess how much you will pay if the user initiates a callback from Inmarsat and, when he gets the call, enters the PIN several times incorrectly and hangs up? In short, this tariff decides from which destinations you allow users to initiate callback.

NOTE: LEG A (system calls back to initiator) is charged by User or Calling Card tariff if User or Calling card was recognized. If User or Calling Card was not recognized, System owner will be charged for a LEG A.

Types of Callback in MOR

Callback in MOR can be classified three ways depending on how the user is authenticated/authorized:

  1. By User Device's PIN.
  2. Using ANI (Automatic Number Identification).
  3. By the Calling Card's Number/PIN (or just the PIN).



Callback with Device's PIN authentication/authorization



Callback with pin auth schema.png

The main part here is that user gets authenticated/authorized when he enters Device PIN. System checks for such PIN in database and if user is found – user can proceed.

Callback Using ANI (Automatic Number Identification)



Callback+ANI new Scheme20150109.png

This way of Callback is extended User auth. by PIN Callback. In order to ask user for Device's PIN system checks user's CallerID (ANI). If such CallerID is found in database – user gets authenticated/authorized and can proceed entering destination. If CallerID is not found – Callback is not initiated to User.

Attention! It is very easy to fake CallerID so be careful when you are enabling Callback with ANI. Anybody can put anybodies CallerID and use your service for free.

Callback By Calling Card's Number/PIN (or only PIN)



Callback with cc schema.png

This type of Callback lets user enter Calling Card's Number/PIN to get authenticated/authorized. System checks for such Calling Card in database. If call is made – it is assigned to particular Calling Card.

Rule about Users and Cards:

Users and cards are not related at all. That means:

  1. User (as entity in MOR) can't have Cards.
  2. Card (as entity in MOR) can't belong to some User.



Setting Callback in MOR

In order to setup Callback in the MOR you need:

  1. Callback User
  2. Callback Device
  3. Callback Tariff
  4. Access Number (DID)
  5. Calling Card or Auth. by PIN Dial Plan

The work flow is as follows:

  1. Create Callback User
  2. Create Callback Device to the Callback User
  3. Create Callback Tariff and fill it with rates to destinations from which you want to allow users to initiate callback
  4. Assign Callback Tariff to Callback User
  5. Make sure you have Calling Card or Auth. by PIN Dial Plan
  6. Create Callback Dial Plan and assign Calling Card or Auth. by PIN Dial-Plan to Callback Dial Plan
  7. Assign Callback Dial Plan to some DID



Callback Hangup Cause

Starting from MOR 10 you can change the Hangup Cause Code which will be used then dropping the call before calling back.

Callback dial plan hangup cause code.png

Callback dial plan hangup cause code2.png

MOR supports these Hangup Cause Codes:

  • 1 unallocated number / 404 Not Found
  • 2 no route to network / 404 Not Found
  • 3 no route to destination / 404 Not Found
  • 17 user busy / 486 Busy here
  • 18 no user responding / 408 Request Timeout
  • 19 no answer from the user / 480 Temporarily unavailable
  • 20 subscriber absent / 480 Temporarily unavailable
  • 21 call rejected / 403 Forbidden
  • 22 number changed (w/ diagnostic) / 301 Moved Permanently
  • 23 redirection to new destination / 410 Gone
  • 26 non-selected user clearing / 404 Not Found
  • 27 destination out of order / 502 Bad Gateway
  • 28 address incomplete / 484 Address incomplete
  • 29 facility rejected / 501 Not implemented
  • 31 normal unspecified / 480 Temporarily unavailable


VIDEO: How to create Callback User

VIDEO: How to create Callback Device




See also