Difference between revisions of "MOR PRO v0.6 documentation"

From Kolmisoft Wiki
Jump to navigationJump to search
 
(45 intermediate revisions by 2 users not shown)
Line 1: Line 1:
This section describes features already implemented into development version of MOR PRO v0.6. When MOR PRO v0.6 will be released all this info will go to the manual.
[[Image:mor06box.png|right]]
This section describes features already implemented into version of MOR PRO v0.6.  


<br>
<hr>
<center><big><big><big>'''MOR PRO v0.6 is scheduled to be released on 2008.03.31'''</big></big></big></center>
<hr>
<br>


==Allow loss calls==
==Allow loss calls==
Allow loss calls - this setting let's you decide - do you want to allow user to use some provider if provider's rate to some destination is lower then user's rate. Allowing such call you will pay more to provider then user pays you for such call - that means you will take loss on such call.
[[Allow loss calls]]
If this setting is no (default) - cheaper providers will not be used in dialing.
 


==CID control by DIDs==
==CID control by DIDs==
Line 22: Line 16:
The final section shows Total/Min/Max rates for each tariff. Using these values let's you see which tariff is the most expensive/cheap.  
The final section shows Total/Min/Max rates for each tariff. Using these values let's you see which tariff is the most expensive/cheap.  
NOTE: Min + Max can be not equal to Total because same provider can have MIN and MAX rates for some prefix if there're no more providers for this prefix (destination).
NOTE: Min + Max can be not equal to Total because same provider can have MIN and MAX rates for some prefix if there're no more providers for this prefix (destination).
''NOTE: this function is removed in MOR 0.7 due to huge system resources and limited usability''


==Destinations CSV==
==Destinations CSV==
Line 49: Line 45:
==Invoice by CallerID==
==Invoice by CallerID==


This type of invoice groups all calls by CallerID.
[[Invoice by CallerID]]
 
It looks like this:
 
Client number: 37052058393
 
Number Date Duration Rate Price Destination
37063042439 2007-12-01 16:21:03 00:00:20 0.7597 0.2532 Lithuania
...
37068723423 2007-12-14 12:50:17 00:00:22 0.7597 0.2785 Lithuania
                    Lithuania 150.4886 LTL (Without VAT)
                    Total: 150.4886 LTL (Without VAT)
 
Client number: 37063042438
Number Date Duration Rate Price Destination
37068723423 2007-12-01 14:45:14 00:03:20 0.7597 2.5322 Lithuania
...
37065017476 2007-12-13 21:31:14 00:04:11 0.7597 3.1779 Lithuania
                    Lithuania 26.9805 LTL (Without VAT)
                    Total: 26.9805 LTL (Without VAT)
 
                    Monthly fee - test memo2 10.0000 LTL (Without VAT)
                    TOTAL TO PAY: 187.4692 LTL


==Hide users==
==Hide users==
Line 92: Line 65:
=Hangupcause codes=
=Hangupcause codes=


MOR application saves hangupcause codes to DB so it is easy to check what was the error and why call failed.
[[Hangupcause Codes]]
 
These codes can be seen in calls window (Hangup Cause column) when selected to show 'All', 'Busy', 'No Answer', 'Failed' or 'Missed' calls.
 
Standard hangup codes can be found [http://www.voip-info.org/wiki/index.php?page=Asterisk+variable+hangupcause here].
 
MOR specific codes:
 
<table>
<tr>
  <td> <b>Code</b> </td>
  <td> <b>Cause</b> </td>
</tr>
<tr>
  <td> 200 </td>
  <td> MOR can't determine who is calling </td>
</tr>
<tr>
  <td> 201 </td>
  <td> User is blocked </td>
</tr>
<tr>
  <td> 202 </td>
  <td> Reseller is blocked </td>
</tr>
<tr>
  <td> 203 </td>
  <td> No rates for user </td>
</tr>
<tr>
  <td> 204 </td>
  <td> No suitable providers found </td>
</tr>
<tr>
  <td> 205 </td>
  <td> MOR PRO not authorized to work on this computer </td>
</tr>
<tr>
  <td> 206 </td>
  <td> server_id is not set in mor.conf file </td>
</tr>
<tr>
  <td> 210 </td>
  <td> Balance > 0, but not enough to make call 1s in length </td>
</tr>
<tr>
  <td> 211 </td>
  <td> Low balance for user </td>
</tr>
<tr>
  <td> 212 </td>
  <td> Too low balance for more simultaneous calls </td>
</tr>
<tr>
  <td> 213 </td>
  <td> Low balance for DID owner </td>
</tr>
<tr>
  <td> 214 </td>
  <td> Too low balance for DID owner for more simultaneous calls </td>
</tr>
<tr>
  <td> 215 </td>
  <td> Low balance for reseller </td>
</tr>
<tr>
  <td> 216 </td>
  <td> Too low balance for reseller for more simultaneous calls </td>
</tr>
 
</table>




Line 168: Line 71:
----
----
<br>
<br>


=Active Calls=
=Active Calls=


[[Image:active_calls.png]]
[[Active Calls]]
 
On main window in Quick Stats it is possible to see Active Calls - these are the calls, which are in the system at this moment.
 
It it possible to press on it and new window opens - with detailed Active Calls.
 
You can get to this window in STATISTICS - Various - Realtime - Active Calls.
 
In this window all active calls are presented with more details, such as: Start Date, Duration, Src, Dst.
 
In order to see correct duration on multi-server systems, all time on servers should be synchronized.
 
In order to see Active Calls in GUI, in file '''/etc/asterisk/mor.conf''' you should have:
 
active_calls=1
 
'''NOTE''': local calls are not visible on MOR GUI, only calls to/from outside
 
<br>
----
<br>
 
=*97 voicemail without entering username=
 
Now user can dial *97 and he will get to his VoiceMail box only entering password (no username is required).
 
<br>
----
<br>
 
=mor.conf configuration=
 
New variables in '''/etc/asterisk/mor.conf''':
 
* Unique number for server identification
 
server_id=1
 
*Should we add/update/delete active calls to/from DB?<br>This option is necessary for call-limit support
 
active_calls=1
 
* Dial command settings for dialing out (using providers). [http://www.voip-info.org/wiki-Asterisk+cmd+Dial  More info].
dial_out_settings = r
 


<br>
<br>
Line 225: Line 82:
=Quick Forwards=
=Quick Forwards=


Some DIDs can be assigned to Quick Forwards functionality.
[[Quick Forwards]]
When it is done each user can enter different number to be forwarded when he calls some DID.
 
Main advantage of this function is to use limited number of DIDs to let different users to call these DIDs and be forwarded to different numbers (which are assigned by users).
 
'''Example'''
 
We have several DIDs assigned to Quick Forwards functionality:
 
* 1111111111
* 2222222222
 
Now we have 2 users with such CallerIDs:
 
* User A with CallerID 8888888888
* User B with CallerID 9999999999
 
User A set such forwards:
 
* From DID 1111111111 forward to 3333333333
* From DID 2222222222 forward to 4444444444
 
User B set such forwards:
 
* From DID 1111111111 forward to 5555555555
* From DID 2222222222 forward to 6666666666
 
* When User A dials DID 1111111111 his CallerID (8888888888) is checked, user is recognized and call is automatically forwarded to number 3333333333
* When User A dials DID 2222222222 his CallerID (8888888888) is checked, user is recognized and call is automatically forwarded to number 4444444444
 
* When User B dials DID 1111111111 his CallerID (9999999999) is checked, user is recognized and call is automatically forwarded to number 5555555555
* When User B dials DID 2222222222 his CallerID (9999999999) is checked, user is recognized and call is automatically forwarded to number 6666666666
 
'''IMPORTANT''': Correct CallerID's should be set for users in order to recognize them. Only system admin can do that.
 
* If system can't recognize the caller it asks to enter PIN number of the device.
* If user is dialing DID which has not assigned Forward Number, user is asked to enter such nuber.
 
User can manipulate his Quick Forwards in his menu. He needs to login to GUI to change numbers.
 


<br>
<br>
Line 274: Line 92:
When importing rates from CSV file now you can check which Destinations will be created automatically.  
When importing rates from CSV file now you can check which Destinations will be created automatically.  


You can view them in separate window when you press '''List''' in step 4 in foeld '''Destinations to create'''.
You can view them in separate window when you press '''List''' in step 4 in field '''Destinations to create'''.


Such destinations does not exist in MOR database and MOR will create them when importing rate file.
Such destinations do not exist in MOR database and MOR will create them when importing rate file.


'''IMPORTANT! DO NOT FORGET TO ADD THEM TO APPROPRIATE DESTINATION GROUP LATER!!!'''
'''IMPORTANT! DO NOT FORGET TO ADD THEM TO APPROPRIATE DESTINATION GROUP LATER!!!'''
Line 285: Line 103:
<br>
<br>


=Integrity Check=


This window test various properties of billing system and tells where potential problems can be.


It can be reached in '''SETTINGS - Billing - Functions - Integrity Check'''
=Device details=


===Destinations not assigned to Destination Groups===
This window shows all fields from database table devices to some particular device. It is only read-only.


This window shows Destinations which are not assigned to any Destination Group. This can lead to many problems such as incorrect billing and others.
It can help to troubleshoot login problems for device.
 
Such Destinations appear after tariff rate import. It is necessary to assign these Destinations to correct Destination Groups just after new rates are imported.




Line 302: Line 116:
<br>
<br>


=Device details=
=VoiceMail configuration=
 
This window show all fields from database table devices to some particular device. It is only read-only.


It can help to troubleshoot login problems for device.
[[Voicemail]]




Line 313: Line 125:
<br>
<br>


=VoiceMail configuration=
=Provider with ANI=
 
This section can be found in SETUP - Settings - VoiceMail
 
* '''VoiceMail Extension''' - describes by which local extensions local user can dial to retrieve his voicemail (system will ask him to enter his voicemail password which can be set in device's details)
 
If you want to setup VoiceMail (VM) on different server, then following settings are important:


* '''VoiceMail Server active''' - turns VM server on/off, when on - all VM request will go to distabd VM server, when off - VM will be handled locally on Asterisk
[[Provider with ANI]]
* '''VoiceMail Server connection/device''' - describes connection to VM server
* '''VoiceMail Retrieve Extension''' - which extension to dial on distant VM server to retrieve voicemail for some extension


Example:
==Similar scenario which can't be used with ANI for Provider==


* Let's say we have our server on IP 23.45.67.89 connected with SIP to our Asterisk.
If you have access number as DID, you can enter p(pause) after your DID calling to the provider and then enter destination. But that's totally different scenario. It should be configured with DID + Auth. by ANI DialPlan, because destination is send to MOR by DTMF, not by provider as in previous example.
* We create separe user/device ('''vm_device''') to describe this connection. Device's type is SIP, IP = 23.45.67.89, set other settings also (codecs/etc)
* '''VoiceMail Retrieve Extension''' = 999


Example:


* If your DID is: 234567890 and you want to dial dst: 987654321 in your mobile phone (example) you enter:  234567890p987654321
* That way call will reach MOR, when p (pause) is reached - MOR will play "please enter destination" and 987654321 will be sent by DTMF to MOR.


====First action is when VM is recorded====
=Provider timeout=


So now when VM server is ON and user with device 201 get's a VM, call is redirected like this:
This setting lets set how long this provider should be dialed before giving up. '''Default''' value is 60 seconds. '''Minimum''' value is 30 seconds.


Dial(SIP/vm_device/201)
It can be found in '''Provider Edit''' page.


That means server on 23.45.67.89 will receive call to extension 201. Server SHOULD BE configured that way, tat it will process VM correctly when it receives such call.
=Device timeout=


This setting can be set under each device Edit window. It describes how long device should be trying to be reached before timeouting the call.


'''Default''' value is 60 seconds. '''Minimum''' value is 10 seconds.


====Second action - retrieving VM====
=WebMoney integration=


When user want to retrieve his VM on distant machine he dials '''VoiceMail Extension'''.


He is redirected like this:


Dial(SIP/vm_device/999#201
[[Webmoney]]


Again - distant server should know how to process such a request.
=Process SIPCHANINFO=


Let's say we have distant VM server based on Asterisk.
[[SIP debug info]]


So in our example it's configuration in '''/etc/asterisk/extensions.conf''' should look like this:
=Logo upload=


[incoming]
[[Logo change]]
# to retrieve VM
exten => _999#.,1,VoiceMailMain(${EXTEN:4})
exten => _999#.,2,Hangup<br>
# to record VM
exten => _X.,1,VoiceMail(${EXTEN})
exten => _X.,2,Hangup

Latest revision as of 19:11, 26 March 2009

Mor06box.png

This section describes features already implemented into version of MOR PRO v0.6.


Allow loss calls

Allow loss calls

CID control by DIDs

This setting let's you control what CID user can enter in his devices. These CID numbers should be from the set of device's DIDs. It is mainly used when user's PBX is connected over trunk and many DIDs are routed to this Trunk. Calls coming out from this PBX must have CallerID Number from the set of DIDs assigned to this Trunk (PBX). If CID from DIDs is checked - system checks if device's cid number is from dids assigned to this device. If no dids are assigned - this value is ignored. In order for this setting to be active - CID Name/Number fields must be empty to allow user enter any CID number he wants. If CID from DIDs is checked and user enters any CID (not from his DIDs) - system will change his CID by his first available DID (selected from database by lowest id).


Tariff analysis

Using this tool you can select the tariffs (wholesale) which you want to compare. Click on desired tariffs and select currency in which you want to compare tariffs. When you selected tariffs press on Generate CSV icon to get CSV file. In this file you can see all selected tariffs with their rates for ALL destinations. In 4 last columns you will find MIN and MAX rates for each destination with their providers. This let's you compare tariffs on the fly. The final section shows Total/Min/Max rates for each tariff. Using these values let's you see which tariff is the most expensive/cheap. NOTE: Min + Max can be not equal to Total because same provider can have MIN and MAX rates for some prefix if there're no more providers for this prefix (destination).

NOTE: this function is removed in MOR 0.7 due to huge system resources and limited usability

Destinations CSV

This link in Tariffs window gets you CSV file with all Destinations/Directions. It is suitable for rate entering and importing back to MOR.


API

API waits for HTML POST to get request data. Then it returns result in XML.

MOR API <- more details




Addons

New addons introduced in MOR PRO v0.6

MOR Addons <- more details



Invoice by CallerID

Invoice by CallerID

Hide users

As it is not allowed to delete users who have at least 1 call - after some time such 'non-active' users accumulate and we need to do something to them to have clear control panel.

For that reason we just Hide them. They remain active - nothing changes for them - except we do not see them in the GUI.

Later you can find them in SETTINGS - Users - Hidden. You can unhide them if you wish anytime.

To hide a user go to his details and select Hidden. To unhide - Not hidden.






Hangupcause codes

Hangupcause Codes





Active Calls

Active Calls




Quick Forwards

Quick Forwards




Destination to create from CSV

When importing rates from CSV file now you can check which Destinations will be created automatically.

You can view them in separate window when you press List in step 4 in field Destinations to create.

Such destinations do not exist in MOR database and MOR will create them when importing rate file.

IMPORTANT! DO NOT FORGET TO ADD THEM TO APPROPRIATE DESTINATION GROUP LATER!!!






Device details

This window shows all fields from database table devices to some particular device. It is only read-only.

It can help to troubleshoot login problems for device.





VoiceMail configuration

Voicemail





Provider with ANI

Provider with ANI

Similar scenario which can't be used with ANI for Provider

If you have access number as DID, you can enter p(pause) after your DID calling to the provider and then enter destination. But that's totally different scenario. It should be configured with DID + Auth. by ANI DialPlan, because destination is send to MOR by DTMF, not by provider as in previous example.

Example:

  • If your DID is: 234567890 and you want to dial dst: 987654321 in your mobile phone (example) you enter: 234567890p987654321
  • That way call will reach MOR, when p (pause) is reached - MOR will play "please enter destination" and 987654321 will be sent by DTMF to MOR.

Provider timeout

This setting lets set how long this provider should be dialed before giving up. Default value is 60 seconds. Minimum value is 30 seconds.

It can be found in Provider Edit page.

Device timeout

This setting can be set under each device Edit window. It describes how long device should be trying to be reached before timeouting the call.

Default value is 60 seconds. Minimum value is 10 seconds.

WebMoney integration

Webmoney

Process SIPCHANINFO

SIP debug info

Logo upload

Logo change