Sunteți pe pagina 1din 291

MOR 8 MANUAL

Release: 2009.10.01
MOR 8 Manual
Kolmisoft 2006-2009
2

























It is IMPORTANT to note that this manual is compilation of
articles from our main data source: http://wiki.kolmisoft.com and
current info in this manual can be outdated.


In order to get newest info please use online wiki.



MOR 8 Manual
Kolmisoft 2006-2009
3

Introduction ..................................................................................................................................... 7
Who is this product designed for ...................................................................................................... 7
Supported Business Models ............................................................................................................. 7
How to make first call........................................................................................................................ 8
Concepts/Definitions ....................................................................................................................... 10
Billing Concepts ........................................................................................................................... 10
Billing Logic ................................................................................................................................. 11
Call explained .............................................................................................................................. 11
E.164 ......................................................................................................................................... 13
Rounding .................................................................................................................................... 13
Multi-Tax system ......................................................................................................................... 13
What is increment ........................................................................................................................ 15
What is PIN ................................................................................................................................. 15
ASR/ACD .................................................................................................................................... 16
Margin and Markup ...................................................................................................................... 16
What are callgroups and pickupgroups ............................................................................................ 17
Balance and Credit ....................................................................................................................... 17
Local Calls ................................................................................................................................... 18
Configuration ................................................................................................................................. 19
Mor.conf ..................................................................................................................................... 19
Configuration from GUI ................................................................................................................. 20
Global ........................................................................................................................................ 20
Registration ................................................................................................................................ 20
Invoices ...................................................................................................................................... 20
WEB Callback .............................................................................................................................. 21
Emails ........................................................................................................................................ 21
Various ....................................................................................................................................... 21
Tax ............................................................................................................................................ 22
Fax ............................................................................................................................................ 22
Google Maps ............................................................................................................................... 22
Backups ...................................................................................................................................... 22
API............................................................................................................................................. 22
Functionality ............................................................................................................................... 22
ReCAPTCHA................................................................................................................................. 23
Payments configuration ................................................................................................................ 28
Device configuration ..................................................................................................................... 28
Default device settings ................................................................................................................. 29
Accountant permissions ................................................................................................................ 31
Logo change ................................................................................................................................ 31
Currencies .................................................................................................................................. 31
Translations ................................................................................................................................ 33
Voicemail .................................................................................................................................... 34
Multi Server support ..................................................................................................................... 36
Emails ........................................................................................................................................ 37
Email variables ............................................................................................................................ 38
Number Manipulation ...................................................................................................................... 39
Definitions .................................................................................................................................. 39
How Number Manipulation works ................................................................................................... 39
Localization ................................................................................................................................. 43
Provider Rules ............................................................................................................................. 47
DID handling by Localization ......................................................................................................... 50
Number Manipulation Examples ..................................................................................................... 51
MOR 8 Manual
Kolmisoft 2006-2009
4
Block wrong short numbers with Localization ................................................................................... 53
LCR/Tariff change based on call prefix ............................................................................................ 54
Users ............................................................................................................................................ 56
Description .................................................................................................................................. 56
User types .................................................................................................................................. 56
User list ...................................................................................................................................... 56
User Details ................................................................................................................................ 58
User Blocking .............................................................................................................................. 60
Hide Users .................................................................................................................................. 61
User grouping .............................................................................................................................. 62
Why MOR does not allow to delete users ......................................................................................... 65
Tariffs ........................................................................................................................................... 66
Description .................................................................................................................................. 66
Directions and Destinations ........................................................................................................... 67
Destinations Groups ..................................................................................................................... 67
Block some Destination to User ..................................................................................................... 68
Day setup ................................................................................................................................... 68
Bulk change Tariffs for Users ......................................................................................................... 68
Entering Rates for Wholesale Tariff ................................................................................................. 69
Rate import from CSV................................................................................................................... 74
Advanced Rates ........................................................................................................................... 80
Entering Rates for Retail Tariff ....................................................................................................... 83
Custom Rates .............................................................................................................................. 84
Tariff Transformation .................................................................................................................... 84
Make Retail Tariff from Wholesale Tariff explained ............................................................................ 85
Why User can't check his Rates ..................................................................................................... 85
Providers/Devices ........................................................................................................................... 86
Devices....................................................................................................................................... 86
Device settings ............................................................................................................................ 88
Trunks ........................................................................................................................................ 93
CLIs ........................................................................................................................................... 94
ANI/CLI ban system ..................................................................................................................... 95
Duplicate call prevention ............................................................................................................... 95
Allow loss calls ............................................................................................................................ 96
Device groups ............................................................................................................................. 97
Call Flow ..................................................................................................................................... 98
Which codecs should I choose for devices ...................................................................................... 102
Providers ................................................................................................................................... 104
Terminators ............................................................................................................................... 106
Provider with ANI ........................................................................................................................ 107
Configure Provider which can make calls ........................................................................................ 108
Configure Provider with dynamic IP ............................................................................................... 108
Simultaneous call limitation .......................................................................................................... 109
PBX connection to MOR ................................................................................................................ 110
Payment gateways ......................................................................................................................... 112
PayPal ....................................................................................................................................... 112
Webmoney ................................................................................................................................. 115
Call Routing .................................................................................................................................. 118
LCR ........................................................................................................................................... 118
LCR Logic ................................................................................................................................... 119
Example .................................................................................................................................... 119
How to add Provider to LCR .......................................................................................................... 121
Call Routing by priority (Manual LCR) ............................................................................................ 121
MOR 8 Manual
Kolmisoft 2006-2009
5
Call routing per destination basis .................................................................................................. 122
How to route call to specific Destination through specific Provider ..................................................... 126
Block some Destination to User .................................................................................................... 126
LCR/Tariff change based on call prefix ........................................................................................... 126
Routing by Percent ...................................................................................................................... 128
Why call was not routed through other provider/trunk? ................................................................... 130
DIDs ............................................................................................................................................ 131
DID Management ........................................................................................................................ 131
Work flow for DID ....................................................................................................................... 135
DID Billing ................................................................................................................................. 136
DID Billing Time explained ........................................................................................................... 137
DIDs Usage ................................................................................................................................ 138
Example - Configuring DID to ring some Device .............................................................................. 138
Forward DID to External Number .................................................................................................. 142
How to charge DID on a monthly basis .......................................................................................... 143
DID handling by Localization ........................................................................................................ 143
DID Blocking .............................................................................................................................. 144
Dial Plans ................................................................................................................................... 145
Authorization by PIN ................................................................................................................... 145
Authorization by ANI ................................................................................................................... 148
Calling Card Dial Plan .................................................................................................................. 150
Additional functionality ................................................................................................................... 153
IVR system ................................................................................................................................ 153
IVR for Calling Cards ................................................................................................................... 157
Callback ..................................................................................................................................... 158
WEB Callback ............................................................................................................................. 163
Callback over Email ..................................................................................................................... 164
Click2Call ................................................................................................................................... 165
Callback setup example ............................................................................................................... 166
PBX Functions ............................................................................................................................ 170
Dial Local ................................................................................................................................... 171
Call Shop functionality ................................................................................................................. 172
Fax2Email .................................................................................................................................. 177
Recordings ................................................................................................................................. 181
PhoneBook ................................................................................................................................. 183
Speed Dials ................................................................................................................................ 185
Backup system ........................................................................................................................... 186
Data import ................................................................................................................................ 187
CDR Import ................................................................................................................................ 188
CDR Rerating ............................................................................................................................. 191
Online registration ...................................................................................................................... 193
Quick Forwards ........................................................................................................................... 195
Transfers with MOR ..................................................................................................................... 196
MOR API .................................................................................................................................... 197
API Configuration ........................................................................................................................ 198
Accounting .................................................................................................................................... 199
Accounting ................................................................................................................................. 199
Invoices ..................................................................................................................................... 201
Invoice configuration ................................................................................................................... 203
Pay Invoice with balance deduction ............................................................................................... 204
Invoice by CallerID...................................................................................................................... 205
Payments ................................................................................................................................... 206
Vouchers ................................................................................................................................... 209
MOR 8 Manual
Kolmisoft 2006-2009
6
Flat-Rates .................................................................................................................................. 212
Reporting...................................................................................................................................... 213
Active Calls ................................................................................................................................ 213
Users Calls ................................................................................................................................. 214
Users Finances ........................................................................................................................... 215
Loss Making Calls ........................................................................................................................ 215
Providers Statistics ...................................................................................................................... 216
Providers Calls ............................................................................................................................ 216
Quick Stats ................................................................................................................................ 217
Simultaneous Calls stats .............................................................................................................. 219
Calls by Source ........................................................................................................................... 219
Login Stats ................................................................................................................................. 221
Profit Stats ................................................................................................................................. 222
Country Stats ............................................................................................................................. 223
Realtime Stats ............................................................................................................................ 224
Google Maps integration .............................................................................................................. 226
Get Google Maps key ................................................................................................................... 227
Balance in phone ........................................................................................................................ 228
Troubleshooting ............................................................................................................................. 230
Action log .................................................................................................................................. 230
Call Tracing ................................................................................................................................ 231
Integrity Check ........................................................................................................................... 239
Hangupcause Codes .................................................................................................................... 240
Hangupcause Sounds .................................................................................................................. 241
Different code send to User compared to received from Provider ....................................................... 241
SIP debug info ............................................................................................................................ 242
Addons ......................................................................................................................................... 243
Calling Cards Addon .................................................................................................................... 243
Calling Card Groups .................................................................................................................... 246
Calling Card management ............................................................................................................ 248
Calling Card Dial Plan .................................................................................................................. 250
Online Calling Card Shop ............................................................................................................. 253
Calling Card setup example .......................................................................................................... 255
Sound files ................................................................................................................................. 263
Speed Dials for Calling Cards ........................................................................................................ 266
Callback and Calling Cards ........................................................................................................... 266
Card import from CSV file ............................................................................................................ 267
IVR for Calling Cards ................................................................................................................... 268
How to sell Calling Cards in e-commerce site .................................................................................. 269
Questions about Calling Cards ...................................................................................................... 269
Auto-Dialer Addon ....................................................................................................................... 270
Reseller Addon ........................................................................................................................... 275
Manual for Resellers .................................................................................................................... 276
SMS Addon ................................................................................................................................ 286
Recordings Addon ....................................................................................................................... 287
Mobile Number Portability Addon .................................................................................................. 290





MOR 8 Manual
Kolmisoft 2006-2009
7
Introduction

Kolmisoft VoIP Softswitch with Billing and Routing MOR is an advanced system that enables alternative
telecoms to provide flexible voice services, effectively manage service offerings and grow their voice
businesses due to the systems stability and high traffic scalability. Kolmisoft System MOR integrates the core
AAA functions Authentication, Authorization, and Accounting with vital functions that facilitate the effective
management of all billing/routing-related processes:

Customers
Services
Finance
Services distribution
Reporting
Traffic partners
User rights

On the business side, Kolmisoft System MOR makes possible the deployment of services with high-quality
and flexibility within any VoIP business model; on the technical side the system maintains seamless
performance at high and rapidly increasing traffic volume. The optimal combination of functions, the
adaptability to every VoIP business model and rate-plan settings, as well as its stability, make Kolmisoft
System MOR the absolute billing/routing and customer care solution for Voice Over Broadband/ IP
businesses worldwide.


Who is this product designed for
Kolmisoft System MOR is designed for premium performance and scalability; therefore, it is suitable for
VoIP or Broadband service providers who:

plan for a full-scope VoIP business deployment
need to maintain medium, high or very high voice traffic volumes
differentiate on a first-class customer service
demand high reliability from their billing system
enjoy rapid business development and have outgrown their legacy billing systems


Supported Business Models
Kolmisoft System MOR is adaptable to telephony service providers' business models and custom
requirements for service configuration. Voice-over-IP and Voice-over-Broadband providers can configure
different service types within all of the following basic business models:

Wholesale traffic origination/termination
Retail
Prepaid
Postpaid
Calling Cards
Corporate Clients
Residential Clients
Internet services




MOR 8 Manual
Kolmisoft 2006-2009
8
How to make first call

This small guide will show how to make first call after system installation.


Login
After you installed MOR from InstallCD open your web browser and enter in address field
http://<SERVER_IP>/billing
Where <SERVER_IP> is your servers' IP address. (How to find out servers IP address)
Press ENTER and MOR Login screen will open.
Login with:
Username: admin
Password: admin

If you see main MOR screen it means that system is ready to work.


Provider
In order to send calls you need to have Providers which would deliver your calls to telephone network
(PSTN).
To make life easier we preconfigured Kolmisoft as default Provider so you could start making calls at once.
In order to proceed you need to have some credit to make test call. To get such credit for testing, please
contact us and send us your <SERVER_IP>.
We will open you account and you will be able to start making calls at once!
NOTE: MOR is not limited to only one Provider. You can add your own Providers at will. But for the sake of
simplicity we recommend to try Kolmisoft as provider for quick test calls.


MOR 8 Manual
Kolmisoft 2006-2009
9
Softphone
To make a real call you will need a softphone for quick test.
You can use your own which supports SIP or IAX2 protocol.
For the sake of simplicity we will show how to configure Idefisk 1.37 which is very small and easy-
configurable.
First download from our server and install it. (It is for Windows OS.)
For Linux it can be downloaded here for MacOS here.
Use this manual to configure Idefisk with your <SERVER_IP> and username/password as 101/101.

Dialing
After that enter some phone number into softphone and try to dial.
NOTE: enter number in international (E164 format). E.g. do not use any international prefixes, use country
code + area code + number.
As example Lithuanian number is: 37063042439, where 370 - country code, 6 - area code (MOB network),
all the rest - number.
NOTE: USA/Canada numbers should start with 1 (it is USA/Canada country code).

If you hear nothing - that means your softphone is not registered to the server.
If you hear message from Kolmisoft - that means you do not have account on our server (contact us
to get it).
If you hear ringing - that means everything is ok.

Call Logs
After the call you can check your call in the system.
Go to: STATISTICS - Calls - Last Calls and you will see your call.
It will be already billed.


MOR 8 Manual
Kolmisoft 2006-2009
10
Concepts/Definitions

Billing Concepts
This section is dedicated entirely for billing system. Here is configured the actual call-flow from user to
provider(s).
Billing system is quite complex and there are a lot of concepts to grasp.
There are main parts from which billing in MOR consists. The most important are:
Providers
LCR
Directions
Destinations
Rates
Tariffs
Users
Devices
Providers - In old PSTN world they are called Trunks. These are your routes to outside world (out of your
VoIP network). Providers can be several types: Zap, SIP, IAX2, and H323. Type determines which
technology is used to connect to Provider.
LCR - Least Cost Route. It's an entity which describes how calls should go through several Providers and in
which order. Order can be determined by calls route's price, quality or manual priority.
Directions - In other words - Countries. Could also be satellite networks. They just describe direction to
which the call is routed.
Destinations - these are more concrete concepts of the calls course. Let's say we are dialing number
37068547771. From this number MOR knows, that Direction is Lithuania, but Destination is Mobile network
Bite. Destinations are determined by Prefix. Each destination has unique Prefix. The Prefix from the example
is 370685.
Rates - these are the prices for Destinations. They have many properties from which the way they are
calculated depends.
Tariffs - they are groups of Rates. Sometimes they are called Price Lists.
Users - User is the actual user of the system the client which dials out or receives calls. User can
represent one person or whole company. User is main unit in the system. Most of the settings are associated
with user.
Devices - Each user can have many devices. Device represents end-point where voice traffic should be
sent. As example device can represent:
VoIP phone
VoIP softphone
PSTN phone (connected through FXS port)

MOR 8 Manual
Kolmisoft 2006-2009
11
Billing Logic
In order to successfully use MOR for dialing out and billing some rules must be met.
Best way to show this is by example.
User A dials number trying to reach User B.
System takes User's A Tariff and LCR.
Then takes all Providers which belong to that LCR.
For every Provider system takes their Tariff.
From every Tariff based on Prefix - Rate is taken.
If LCR type is 'Price' then all Providers are sorted that first Provider would have lowest Rate to that
Destination.
Then system tries to dial number using first Provider.
If call successful - system does billing and finishes session.
If call unsuccessful - system tries to dial next Provider in a row.
It repeats until call is successful or no Providers left.
When call ends - system bills it.
The whole process in MOR is much more complex. This example covers bare minimum to take grasp of how
the billing system works.


Call explained
Duration - time from caller enters number till call end
Billsec - time from when callee answers the call till call end
See also:
Detailed MOR Call Flow

MOR 8 Manual
Kolmisoft 2006-2009
12

MOR 8 Manual
Kolmisoft 2006-2009
13
E.164
What is E.164 format number? In short it's the number without international prefix which starts with country
code, for more details check Wikipedia.
Every destination inside MOR should be in this format. That's one of the most important rules of the MOR. If
destination is not in E.164 format it can't be billed correctly.
All DIDs in MOR should be in this format also. Do not include international prefixes for DIDs. Enter them in
E.164 format.
Example: For instance, the local number 08 6311 3000 in Australia would be converted to E164 as
61863113000.
More info how MOR works with E.164 can be found here Number manipulation.

Rounding
Rounding in MOR GUI is done only when showing final result. All values are not rounded in database.
Why? Example: 0.027 + 0.027 = 0.054 rounded is 0.05, if you are rounding each step, then you get: 0.03 +
0.03 = 0.06 which is not so right as 0.05.

Multi-Tax system
All prices and rates in MOR are without TAXES. That's a rule. Each user has TAX percent. By this TAX
percent he gets charged when he makes payments or views his rates.
Multi-Tax system allows to have several taxes in final reports for users.
As example we can take Canada which has GST and PST taxes which should be shown on
Invoices/Reports/etc.

MOR 8 Manual
Kolmisoft 2006-2009
14

Taxes are applied to all newly created Users:


and Calling Cards:


Then in invoice it is possible to see configured taxes:

MOR 8 Manual
Kolmisoft 2006-2009
15

If you changed taxes you can assign this to all Users/Calling Cards by pressing buttons bellow:
Apply to all Users
Apply to all Calling Cards


What is increment
Increment is amount of time in which the call will be billed. It is counted in seconds.
Example:
Imagine call length is 15s
Rate for 1 min is 1 EUR/min (for simplicity reasons)
Then:
If increment is 1, then call length will be counted as 15s and call price will be 0.25 EUR (1/60*15) -
increment is 1, so call can be 1, 2, 3... in length. 15s is exact length of call.
If increment is 10, then call length will be counted as 20s and call price will be 0.333.. EUR
(1/60*20) - increment is 10, so call can be 10, 20, 30... in length. 20s is nearest to 15.
If increment is 20, then call length will be counted as 20s and call price will be 0.333.. EUR
(1/60*20) - increment is 20, so call can be 20, 40, 60... in length. 20s is nearest to 15.



What is PIN
Description
PIN is Personal Identification Number used to Authenticate Devices OR Calling Cards in MOR.
Normal scenario where PIN is used is following:
User dials some Access Number (DID)
System asks to enter PIN
Users enters PIN
System checks for PIN in database
If found - system asks for Destination
User enters Destination
System calls to Destination
Connects Call
MOR 8 Manual
Kolmisoft 2006-2009
16

How to get PIN
For Devices you can manage it in Devices' window.
Calling Cards
Example how PIN is used in Calling Cards can be found here: Calling Card logic


ASR/ACD
ASR - Answer Seizure Ratio
Its calculated by taking the number of successfully answered calls and dividing by the total number of calls
attempted (seizures). Since busy signals and other rejections by the called number count as call failures, the
calculated ASR value can vary depending on user behavior. (http://www.voip-info.org/wiki/view/ASR)
60-70% is considered very good ASR in VoIP world.
ACD Average Call Duration
It is calculated by taking sum of billsec (billable seconds) of answered calls and dividing by amount of these
answered calls.


Margin and Markup
If we have BUY and SELL prices, then:
PROFIT = SELL - BUY
Margin = PROFIT / SELL x 100
Markup = SELL / BUY x 100 - 100
In other words:
Margin = PROFIT part in SELL price
Markup = increase from BUY to SELL price


MOR 8 Manual
Kolmisoft 2006-2009
17
What are callgroups and pickupgroups
Letting someone else answer a call
In the mgcp, SIP, IAX, Asterisk Skinny Channels and the zapata channels you can define call and pickup
groups for phones. Note that call pickup typically only works WITHIN a technology, e.g. from a SIP phone to
a SIP phone and not ACROSS technologies, e.g. not from a SIP phone to a IAX phone.
The basic functionality is this:
* A call is placed in one or several call groups
* If a phone belongs in a pickup group that matches one of the call's call groups, that phone may pickup
the incoming call by calling *8# on his phone
* In v1-0, the feature code seems to be *8# on zap channels, and *8 on SIP channels: *8# does not
seem to work from a SIP phone (unless your phone is configured to interpret # as ENTER key)

Groups are in interval 0-63.
You define call and pickupgroup per device, like:
callgroup=1
pickupgroup=1-9,13

Common misconception
Callgroups are not intended to call a group of phones; all a callgroup entry does is to help define who is
permitted to perform a pick-up for which calls!
Info taken from: http://www.voip-info.org/wiki-Asterisk+callgroups+and+pickupgroups






Balance and Credit
Description
There are two fields which describes money situation for user: balance and credit.
Balance is the amount of money you owe user.
Credit how much money you allow user to be in debt before you.
These fields act and have slightly different meaning for different types of users: postpaid and prepaid:
MOR 8 Manual
Kolmisoft 2006-2009
18
Postpaid users
Balance can be any value:
< 0 means user owns you money for your services, he will get invoice at the end of the month and
when he pays for that invoice and his balance will increase
> 0 user has overpaid you (you owe to user)
== 0 nobody owes nothing to anybody (this is usual when user is new or just paid his invoice and
did not made a call or used other services)
Credit for postpaid user can be:
> 0 that means user can make calls and use other services until he reaches credit. E.g. if his credit
= 10 USD, he can make calls (and use other services) for total amount of 10 USD. At that time his
balance will start at 0 and go down to -10 USD. When balance reaches -10 USD user will not be able
to make any more calls.
== - user can make unlimited calls and use any services without any restrictions. All amounts will
be included into invoice.
Prepaid users
Balance for prepaid users ALWAYS should be more then zero. Otherwise prepaid user will be unable to dial-
out.
Credit for prepaid users is ALWAYS zero.
Note: balance and credit are set for users not devices. E.g. if user has several devices and his
balance/credit does not allow to make any more calls that means he will be unable to use any of his
devices.


Local Calls
MOR does not serve local calls when users are using extensions. So no reports are available to see such
calls.
If one user dialed another user using DID - then it is possible to see report about such calls.
Same applies to billing local calls. If one extension dial another using DID - then it is possible to bill such
call.










MOR 8 Manual
Kolmisoft 2006-2009
19
Configuration


Mor.conf
This file is in /etc/asterisk/ and describes some values for app_mor.so application which is the main MOR
core working in Asterisk environment.
hostname, dbname, user, password, port, sock all these values describes connection to
database;
min_frozen Minimum credit left to allow simultaneous calls. If users balance is lower he will not
be able to make simultaneous calls (default 10); Not used starting from MOR 0.7.
frozen_time How much balance to freeze in minutes if user is prepaid (default 30). If user makes
several simultaneous calls and he is prepaid we need to freeze some amount to be safe;
show_notice, show_warning, show_error sets debug level for app_mor.so application in
Asterisk CLI;
zap_change change ZAP into something else in Asterisk to let use some custom made channels
based on Zaptel;
server_id unique number for server identification;
active_calls tells app_mor.so to update info to DB related to calls currently on the system;
dial_out_settings global settings for Dial() command in Asterisk (rTt or similar);
serial serial key for activating app_mor.so
use_lcr_partials - Should MOR be able to use LCR by destinations? Default 1
global_call_timeout - Global timeout for calls in seconds, default 7200 seconds (2h)
check_banned_clis - Should MOR check for banned CLIs? Default 1, Enables/Disables ANI/CLI ban
system
play_hgc_audio - Should we play audio with error message when call fails? (default 0 if not set)
use_flat_rates - Should MOR use Flat Rates, default 1
use_speed_dials - Should Speed Dials be enabled

In order to activate changes made to this file you need to restart Asterisk or reload app_mor.so
How to restart Asterisk server

Reload app_mor.so
1. Login to Asterisk CLI
2. Make sure there are no active calls using command: show channels, wait till they end or kill them
using soft hangup command
3. Issue: module unload app_mor.so
4. Then: module load app_mor.so



MOR 8 Manual
Kolmisoft 2006-2009
20
Configuration from GUI

SETTINGS - Setup - Settings
Global
Company Name of the company
Company email email of the company
Version version number shown on the bottom left corner of GUI
Copyright Title shown on the bottom left corner of GUI after Version
Browser Title browser title for MOR GUI
FrontPage Text some text to place on front page
Registration
Enabled? do we want to let users to register online automatically?
Tariff for new users select tariff for just registered users
LCR select LCR for new users
Default TAX percent what TAX percent should be for just registered users
Default country
Asterisk server IP what IP user should connect his softphone/server
Default CallerID name the CID name to send for new users
Default CallerID number the CID number to send for new users
Send email to user after registration just yes or no
Send email to admin after registration just yes or no
Allow user to enter TAX some system owners want to let users do this
ReCAPTCHA configuration
Invoices
Invoice configuration is divided into Prepaid and Postpaid.
Settings
Number start how invoice number should start
Number length the length in digits AFTER Number start e.g. Number start is not counted into
this length. This value is active only for first number type
Number type select more appropriate number format
Invoice period start when invoices are issued, default is first day of the month
Show calls in detailed invoice yes or no
Show balance line - should we show balance line in invoice or not
Round finals to 2 decimals - round or not total in Invoices to 2 decimals
Invoice/Detailed/CallerID/By Destinations - default settings which decides what type of
invoices should be sent to user
Details
Address format changes field positioning in the invoice for the address
Address line 1-4 Address info
Bank details line 1-5 Bank details info
MOR 8 Manual
Kolmisoft 2006-2009
21
Invoice balance line - Line for balance (e.g. "Your current balance is")
End title some title for your invoice's end
WEB Callback
Active? enabled or disabled
MaxRetries how many time try to redial if call fails
RetryTime in what intervals (in seconds) try to redial
WaitTime timeout value for the call how long to wait till the call is answered
WEB Callback CID - what CID to show on outgoing call
Web Callback Server - which server from servers list to use for webcallback
Emails
Sending enabled if checked you will be able to use Mass Mailing and system will send emails
upon user registration
SMTP server hostname of the server
Domain you can leave it localhost.localdomain
Port - port of SMTP server
Login username to your SMTP server
Password password to your SMTP server
Batch size value for Mass Mailing how many emails to send at once
From - email address to put into From: field in email
Test email sending - save settings and press this to test email sending - do not to save settings
first!

See also:
Email variables


Various
Days for DID to close - How long keep DID Closed before making it Free
Agreement number length - number length in digits
Number digits - how many decimal digits will see system users (admin/resellers/users)
Items per page - how many items to show per page
Device PIN length - length for automatically generated PIN codes for devices
Change Zap - Sometimes it is wanted to change "Zap" to something else in GUI. E.g. to "PSTN",
mainly because not everybody knows what Zap stands for. PSTN is more common.
Change Zap to - to what value change "Zap" in GUI
Device range MIN - from which extension automatic extension assigning starts
Device range MAX - till which extension automatic extension assigning goes
o E.g.: from this interval: [Device range MIN, Device range MAX] MOR will select extensions
for newly created Devices.
CSV Column Separator - how columns are separated in imported/exported CSV files
CSV Decimal Separator - how decimal parts in numbers are separated in imported/exported CSV
files
Maximum Active Calls - how many calls (maximum) to show on Active Calls page
Active Calls refresh interval - how often to refresh Active Calls window (in seconds)
Show Full Source (CallerID Name and Number) - show CallerID Name and Number or only
Number
MOR 8 Manual
Kolmisoft 2006-2009
22
Show rates without Tax - show rates without for user. It is disabled by default to not confuse
users and shows rates only with Tax.
Banned CLIs default IVR - default IVR to route banned numbers
Show logo on first page - enabled by default. Disable if you want that your and yours resellers'
users to do not see your logo.
Hide Quick Stats - hide Quick Stats on front page. Use when server has many calls and GUI is
working slow. Default OFF.
Show rates for users - disabled by default. Enable to show Rate menu option for resellers/users.
Same applies to resellers.
Tax
Settings are explained here: Multi-Tax system
Fax
Fax device enabled - enable/disable Fax device in MOR
Email2Fax From Sender - what to put in From: field in email which sends fax
Google Maps
Fullscreen - should we show Google Maps in full-screen? E.g. remove menu from template
Reload Time - how often refresh
Width - width for GMaps window
Height - height for GMaps window
Key - GMaps key
o Instructions how to get it here
o More about Google Maps integration
Backups
Configuration is explained here: Backup system
API
Allow API - enable/disable API
Allow GET API - enable/disable GET in API - use only for testing!
API Secret Key - secret key for API
XML API Extension - .NET does not follow standards (surprise), enable this setting if you are using
it to get XML starting with HTTP tags
Functionality
Click2Call active - Activates Click2Call icon near phone numbers in User portal (this setting is not
related to Click2Call Addon)
User wholesale tariff enabled - enables/disables Wholesale tariff type for Users
Allow devices to check balance over HTTP - enables/disables Balance in phone
Play IVR for unauthenticated call - Which IVR to play when system does not know from where
call came
See also:
MOR API


MOR 8 Manual
Kolmisoft 2006-2009
23
ReCAPTCHA


Description
A CAPTCHA is a program that can tell whether its user is a human or a computer. You've probably seen
them colorful images with distorted text at the bottom of Web registration forms. CAPTCHAs are used by
many websites to prevent abuse from "bots," or automated programs usually written to generate spam. No
computer program can read distorted text as well as humans can, so bots cannot navigate sites protected by
CAPTCHAs.
More info

Implementation in MOR
reCAPTCHA is disabled by default in MOR.
To enable it go to SETTINGS - Registration:
Here mark reCAPTCHA enable and press on Get reCAPTCHA keys

MOR 8 Manual
Kolmisoft 2006-2009
24

and follow pictures how to register and get keys:

MOR 8 Manual
Kolmisoft 2006-2009
25

Here enter your domain name or IP if you do not have domain, example: http://22.33.44.55 (put your IP
here! do not leave support.kolmisoft.com or 22.33.44.55 <- these are just examples!)


Copy-paste these keys into MOR configuration:
MOR 8 Manual
Kolmisoft 2006-2009
26


Now on registration page user should enter valid words to complete registration:


And in registration page user will see captcha:
MOR 8 Manual
Kolmisoft 2006-2009
27



See also:
Registration configuration

MOR 8 Manual
Kolmisoft 2006-2009
28
Payments configuration

Vouchers
Vouchers enabled yes or no
Number length how long vouchers number should be make it at least 10 digits long
Disable time (minutes) if user several times fails to enter correct voucher number for how
long should we disable possibility for him to try again
Attempts to enter how many time user can try to enter voucher number
PayPal
PayPal Enabled yes or no
PayPal Email account in PayPal where you want to get payments
Default currency select currency which matches you account's supported currency if they do
not match you will get errors
User pays transfer fee - check if User should pay transfer fee, otherwise you as system owner will
pay it (default)
Default amount amount to show for customer when he tries to enter payment. User can change
this amount
Minimal amount minimal amount user can send you
Test if checked all amounts will be equal to 0.01 good for testing with real account

See also:
PayPal





Device configuration
PIN
PIN is unique number sequence which is used to authenticate device.
It is used in:
Authenticate device in ANI/PIN Dial Plan
Authenticate device when Tell Balance extension is dialed
System asks to enter PIN over phone, when PIN is entered, system check for PIN in DB and if founds -
device is authenticated.

MOR 8 Manual
Kolmisoft 2006-2009
29
Works not logged
Default: YES
This setting has nothing to do with DEVICE registering to SERVER.
It is for USER registering into GUI.
This setting lets device dial out when device owner (user) is not logged into GUI interface.
If this setting is unchecked, and User is not logged into GUI, Device will not be able to dial:
Asterisk CLI will show something like this:
-- Executing [37068111855@please_login:1] Wait("SIP/101-082b73c8", "1") in new stack
-- Executing [37068111855@please_login:2] Playback("SIP/101-082b73c8", "mor_login_fail|noanswer")
in new stack
-- <SIP/101-082b73c8> Playing 'mor_login_fail' (language 'en')
-- Executing [37068111855@please_login:3] PlayTones("SIP/101-082b73c8", "congestion") in new stack
-- Executing [37068111855@please_login:4] Congestion("SIP/101-082b73c8", "") in new stack
Caller will hear: LOGIN FAILED
Just check this setting (activate it) in device settings to allow it to dial all the time.
This setting is mostly used in Call Center environment when caller must be logged into GUI to dial out.


Default device settings
SETTINGS - Setup - Settings - Default device
These settings will be applied to manually created devices.
That means if you enter some special settings here and later you will go to create new device for some user
- device will have these settings preset.

MOR 8 Manual
Kolmisoft 2006-2009
30
Default values of Default Device

MOR 8 Manual
Kolmisoft 2006-2009
31
Accountant permissions
By default Accountants have only read-only rights.
It is possible to allow them to make some changes to the system by changing their permissions.
Permissions are global - e.g. for all accountants.


Logo change
You can change logo very easily over GUI. Go to SETTINGS - Setup - Logo and browse for your new logo.
Relogin to see your new logo.



Currencies
SETTINGS - Setup - Settings - Currencies
Here is whole list of supported currencies.
MOR operates in one and only one currency.

MOR 8 Manual
Kolmisoft 2006-2009
32
Default Currency
It is necessary to decide in which currency software will operate and set such currency as default before
starting to work with software.
That means that all operations inside MOR will be done in this default currency.

This video demonstrates how to change default currency:
http://wiki.kolmisoft.com/index.php/Currencies#Default_Currency

Currencies window
In Currencies window we see list of currencies.
First one is default and most important currency.
Exchange rate is equal to Default Currency DIVIDED BY Some other currency. E.g. EUR Exchange
rate when Default currency is USD is equal (in 2009-03-24) 0.7351, e.g. USD/EUR
Last Update is for informational purposes
Active? - shows if this Currency is used in GUI
Update? - if checked - this currency (its Exchange rate) will be updated from finances.yahoo.com at
midnight
Yahoo - updade this currency (its Exchange rate) from finances.yahoo.com right now
Edit - this option is accessible when Update? is OFF and then you can enter Exchange Rate
manually for this currency
Update currencies from web - updates all currencies (which are marked as to update from web)

Add/Remove Currency
There are main set of Currencies which cannot be removed from MOR.
You can add own Currency - just make sure it is not in the list already.
To add Currency fill data at the bottom of Currencies table and press Add icon.
For newly added Currency you will need to set Exchange Rate manually. Update from Yahoo is not possible.
Manually added Currency can be deleted. E.g. removed from MOR.



MOR 8 Manual
Kolmisoft 2006-2009
33
Translations
If you want to change translation of MOR GUI you can press on the selected flag in the upper right corner of
the window.
In order to manage Translations of the MOR you should go to SETTINGS Setup Settings -
Translations.
Here you will see window with all available translations.
In the first column you can Drag & Drop translation to its new place. This column is dedicated to manage the
order of translations.
Second column is for Activating/deactivating translation. Simply click on desired translation to
activate/deactivate it.
When it's disabled it is in grey color.
If you want to see changes instantly press icon at the bottom. Page will be reloaded and you will not need to
logout/login to see changed translation order at the upper right corner of your window where translations
are represented as flags.
The first translation is DEFAULT translation. If you want to change default translation Drag&Drop other
translation to the very top of translations list.
Default translation is translation which is active when user comes to page first time.
Short demo video which shows how many translations are disabled and Spanish translation is set as default
(old default was English): http://wiki.kolmisoft.com/index.php/Translations
See also:
MOR GUI Translation
Change flag for translation















MOR 8 Manual
Kolmisoft 2006-2009
34
Voicemail
Description
Voicemail (or voice mail, voice-mail, vmail or VMS, sometimes called messagebank) is a centralized system
of managing telephone messages for a large group of people. The term is also used more broadly, to denote
any system of conveying voice message, including the answering machine.
(http://en.wikipedia.org/wiki/Voicemail)

Voicemail is automatically sent to users email if email address is specified in the device details.
Audio recording in WAV format is attached to the email.
1 minute audio takes approx. 100 Kb.

Configuration
This section can be found in SETTINGS - Billing - DIDs - PBX Functions - VoiceMail
VoiceMail Extension (local) - 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
VoiceMail Server connection/device - describes connection to VM server
VoiceMail Retrieve Extension (local) - which extension to dial on distant VM server to retrieve
voicemail for some extension
Example:
Let's say we have our server on IP 23.45.67.89 connected with SIP to our Asterisk.
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 (local) = 999

First action is when VM is recorded
So now when VM server is ON and user with device 201 get's a VM, call is redirected like this:
Dial(SIP/vm_device/201)
That means server on 23.45.67.89 will receive call to extension 201. Server SHOULD BE configured that
way, that it will process VM correctly when it receives such call.
MOR 8 Manual
Kolmisoft 2006-2009
35
Second action - retrieving VM
When user want to retrieve his VM on distant machine he dials VoiceMail Extension (local).
He is redirected like this:
Dial(SIP/vm_device/999#201)
Again - distant server should know how to process such a request.
Let's say we have distant VM server based on Asterisk.
So in our example it's configuration in /etc/asterisk/extensions.conf should look like this:
[incoming]
# to retrieve VM
exten => _999#.,1,VoiceMailMain(${EXTEN:4})
exten => _999#.,2,Hangup

# to record VM
exten => _X.,1,VoiceMail(${EXTEN})
exten => _X.,2,Hangup

Retrieve VoiceMail from outside over DID
In PBX functions create new function with type: check_voicemail
Assign this PBX Function to some DID

FROM field in email
To change Voicemail email sending FROM field edit /etc/asterisk/voicemail.conf file, line:
;fromstring=The Asterisk PBX
to
fromstring=SOME OTHER LINE
And reload Asterisk.



MOR 8 Manual
Kolmisoft 2006-2009
36
Multi Server support
SETTINGS - Billing - Servers
With this system it is possible to manage several Asterisk servers from GUI.
These servers are Asterisk servers which work with calls and BILLS them.
NOTE! If you want to connect other Asterisk server which will not bill call - then configure as
Device/Trunk.
Database and GUI servers are not described here.
Gateway - determines if server acts as Gateway for SIP Proxy. This option is available only when
Carrier Class addon is enabled. It means that SIP Proxy will use this server to send calls through.
Active - determines if server is active - e.g. if MOR should 'talk' to this server in order to update
provider/device information. Disabling server does not disables it's use, only the updating of changes
from GUI.
ID - unique identifier of server which should be same as server_id in mor.conf
Test - press to test connection to the server over AMI
Hostname most times is equal to Server IP
URL - special URL for some third-party software, sometimes for server stats
Type and Comment - just for informational purposes
Max Call Limit - not used for now
AMI Username/AMI Secret - settings to connect to that server over AMI - most important
settings in this window! Should match values in servers' /etc/asterisk/manager.conf
SIP Port - on which port Asterisk listens to SIP, used in MOR Carrier Class
SSH Username/Password/Port - not used now

Providers
This window shows which Providers are accessible from this Server.
Every Provider can belong to every Server.
It is important to map correct Providers to correct servers.










MOR 8 Manual
Kolmisoft 2006-2009
37
Emails
This function is used to send bunch of emails to your clients. It can be used to send some commercials,
notes about service unavailability or anything else maybe greetings for Christmas.
This function can be found in SETTINGS Setup Emails:


Here you see emails which are templates for email for various system messages. The 'test' email is created
for demo purposes for mass-mailing.

We will press on to edit created email. Creating and editing are very similar. We will show how to edit:

MOR 8 Manual
Kolmisoft 2006-2009
38

Name and Subject fields are simple. The most important field is Message text. Here you enter message
for the user. Also you can use such variables here:
<%= server_ip %> - Server IP where your users should register their SIP/IAX2 devices
<%= device_type %> - Used on user registration - shows device's type user had selected
<%= device_username %> - Used on user registration - shows device's username
<%= device_password %> - Used on user registration - shows device's password
<%= login_url %> - GUI login url
<%= login_username %> - User's username to login to GUI
<%= login_password %> - User's password to login to GUI
<%= username %> - same as login_username
<%= first_name %> - First name of the user
<%= last_name %> - Last name of the user
<%= full_name %> - First name and last name of the user
After all press Change to save it.

In main window you can press on icon to select to which recipients to send this email:

Email variables
These variables can be used in emails:
<%= server_ip %> - Server IP where your users should register their SIP/IAX2 devices
<%= device_type %> - Used on user registration - shows device's type user had selected
<%= device_username %> - Used on user registration - shows device's username
<%= device_password %> - Used on user registration - shows device's password
<%= login_url %> - GUI login url
<%= login_username %> - User's username to login to GUI
<%= login_password %> - User's password to login to GUI
<%= username %> - same as login_username
<%= first_name %> - First name of the user
<%= last_name %> - Last name of the user
<%= full_name %> - First name and last name of the user
See also:
Email Configuration

MOR 8 Manual
Kolmisoft 2006-2009
39
Number Manipulation
Number Manipulation is used to change Number formats.

Main RULES

MOR manipulates with numbers which are in E.164 format.
Explanation in other words: numbers coming to MOR SHOULD BE in E.164 format. Number leaving MOR ARE
in E.164 format.
From this we come to necessary actions:
1. Incoming destination number should be made E.164 compatible (done by Localization)
2. Outgoing number may be made out of E.164 number (done by Provider Rules)
Definitions
E.164 format - In short it's the number without international prefix which starts with country code,
for more details - check Wikipedia.
Localization
o Main idea of Localization: No matter how user dials number (destination) when
localized it should be in E.164 format.
o Localization has nothing in common with numbers you send to providers. It operates with
numbers received from caller.
Provider Rules
o MOR operates with numbers in E.164 format, but Provider often asks different format
number - so Provider Rules formats E.164 number to Provider acceptable format.
How Number Manipulation works
The first part which makes any incoming number E.164 compatible is done by Localization. The second one
which changes E.164 number is Provider Rules. The basic schema for all this process can be simplified as:


MOR works only with E.164 numbers. That means, MOR accepts only standard numbers, if number is not in
E164 - it must be changed to E164 compatible number.
For this task MOR has a feature Localization (found in Billing -> Functions -> Localization) which could be
used for "standardizing non E.164 numbers to correct E.164 numbers".
If requested by outgoing calls provider, MOR can cut/add special prefix to number to send it to Provider in
its requested format. This can be done using Provider Rules.
Localization and Provider Rules follows same logic.
MOR 8 Manual
Kolmisoft 2006-2009
40
Example how Localization works:
Number from Caller -> Localization -> Number from Caller in E164 format -> MOR -> Provider Rules ->
Number for Calee
International prefixes, local number formats are handled by Localization.
Provider technical prefixes and special number formats for providers are handled by Provider Rules.
That means:
o if MOR receives number with international prefix you need to strip it and make number
E.164 compatible.
o if MOR received number in some local number format with some special digit(s) in front of it
you need to strip it, add country code -> make it E.164 compatible using Localization
o if your Provider requests some fancy technical prefix you need to add this prefix using
Provider Rules. Add prefix to E.164 number. It can occur that you need to cut some digits
(let's say country code) before adding technical prefix do it with Provider Rules.
Let's repeat again, because it is extremely important:
When MOR receives number make sure it is E.164 compatible or make it E.164 compatible with
Localization
When you are sending number to provider use Provider Rules to change E.164 number to provider
expected format

Work flow to setup Localization and Provider Rules
To setup correct Localization and Provider Rules you need to do following things:
1. To know what number format user will be dialing
2. Create appropriate Location and assign user to that Location
3. Create rules for specific Location to handle user entered numbers
4. To know what number provider expects
5. Create rule for provider which handles number transformation to providers expected number
For the training let's cover full example using the scheme we had before:

1. User dials some number: 863042438
2. Number is made E.164 compatible by Localization: we cut 86, add 3706 and we have: 37063042438
3. Billing: MOR uses 37063042438 to find correct destination and rates
4. E.164 number is transformed to provider format by Provider Rules: number 37063042438 is
transformed to number format which provider expects by adding 89765#, so we have:
89765#37063042438
5. Call is sent to provider: 89765#37063042438

HINT: We should remind you to use Call Tracing to debug all this.
MOR 8 Manual
Kolmisoft 2006-2009
41
HINT: World Telephone Numbering Guide can help you a lot handling different number formats.
Rule Ordering
Rules for Localization and for Provider Rules are ordered in following order:
Device/Provider Location
Global Location
That means that Global location rules are applied to every device. But they have lower priority over some
specific Location. That means - if device belongs to some Location X, then rules in Location X are reviewed
first. If none of the rules can be applied from Location X, then rules in Location Global are checked.
When one rule is applied - no more rules will be applied after that.

How exact rule for dialed number is selected from many rules
How MOR select rule which should be applied to the number?
There are 3 steps done for all rules (for Localization & Provider Rules)
1. MOR checks for number length and reject these rules if dialed Numbers length does not fall into MIN and
MAX described interval. E.g. if Numbers length is less then MIN or greater then MAX.
2. Then these rules are rejected if beginning of number does not match Cut value of these rules.
3. At the last step MOR selects the rule which has longest Cut length.
E.g. Rule selected at step 3 will be used to transform dialed number.

Example
Lets say 012337068111543 coming from caller to MOR system.
And we have such rules:
# CUT ADD MIN MAX
1 01 11 11 14
2 012 22 12 15
3 123 33 15 16
4 0123 44 11 20
1. MOR is checking number length by available min/max settings. So if incoming number's length (number
length = 15 in our example) is more or equal then MIN and less or equal then MAX - this rule will not be
rejected. E.g. rule will be rejected if number length will be less then MIN or greater then MAX.
Then we are rejecting rule #1 because 15 is > MAX(14), after first step we have:

MOR 8 Manual
Kolmisoft 2006-2009
42
# CUT ADD MIN MAX
2 012 22 12 15
3 123 33 15 16
4 0123 44 11 20
2. MOR proceeds to looks for CUT value which match beginning of dialed number. MOR rejects all rules
which do not match dialed number beginning.
In this step we are rejecting rule #2, because its CUT value (123) is NOT beginning of dialed number:
012337068111543.
After second step we have:
# CUT ADD MIN MAX
2 012 22 12 15
4 0123 44 11 20
3. MOR checks for all remaining rules which haven't been rejected by first and second rule and select rule
which has longest CUT.
This step selects rule with longest CUT, so our result is:
# CUT ADD MIN MAX
4 0123 44 11 20
This rule is applied to dialed number. E.g. if dialed number is 012337068111543, then first we cut CUT value
(0123) out from it (then we have 37068111543) and then we add ADD value (44), so final result is
4437068111543.

See also:
Localization
Provider Rules
DID handling by Localization
Number Manipulation Examples















MOR 8 Manual
Kolmisoft 2006-2009
43
Localization
Description
Localization transforms received number to E.164 format number.
Main idea of Localization: No matter how user dials number (destination) when localized it should
be in e.164 format.
Localization has nothing in common with numbers you send to providers. It operates with numbers received
from caller.
Often it is important to let users to dial different format numbers to reach same destination. It depends on
the location where user (or his device) is located.
For that purpose each device has field Location. It describes the physical location of device and rules how
this device can dial destination. In other words each device IS (belongs) in some Location where some
specific dialing rules apply.
Location describes where caller IS - not where he is calling!
By default device has location 'Global'. Global rules apply to ALL devices. If user belongs to some other
location and his dialed destination has some rule for his destination then global rules are not activated
they have lower priority upon location rules.
You can access Localization settings in SETTINGS Billing Functions Localization.
In the main window you can see available Locations:

At first there is only Global location. You can't delete this location. It's default for all devices.
You can add new Location by entering this Location's name in field at the bottom of table:
MOR 8 Manual
Kolmisoft 2006-2009
44

and pressing :

In the column Rules press icon on to access Location's rules:

Following settings should be explained for rule:
Name just for informational purposes
Cut what prefix from the number should be cat
Add what prefix to the number should be added
Min Len what's the minimum length of number we are trying to apply this rule
Max Len what's the maximum length of number we are trying to apply this rule
Tariff - which Tariff to apply when this Rule is applied. It is used in special cases, example here.
Leave this empty in most cases
LCR - which LCR to apply when this Rule is applied. It is used in special cases, example here. Leave
this empty in most cases
MOR 8 Manual
Kolmisoft 2006-2009
45
When you enter all values (Cut or Add can be left empty) press .
Example:
Normal Lithuania MOB prefix is: 3706
User's device is located in Lithuania Vilnius
By current Lithuanian regulations local customer can dial 9 digit numbers starting with 86 to reach
Mobile subscribers
To describe this situation we will create following rule:

Rules can be enabled or disabled pressing icon or accordingly in the Enabled? column.
- This icon let's you edit rule's details.
- This icon let's you delete rule
Now in the main Localization window:

Press on in Devices column to access Devices in Global Location:

Here all Devices with selected location are listed. Choose other location for selected Device and press on
icon to activate this change. Device will be assigned to the selected Location.
MOR 8 Manual
Kolmisoft 2006-2009
46

NOTE: It's possible to change Device's Location in Device's settings (SETTINGS Users Devices).
Now our device belongs to Location Lithuania Vilnius. And if we dial mobile number in Lithuanian format for
example:
863042438, MOR cuts 86 (remaining part 3042438) and adds 3706. Result is: 37063042438 which is E.164
compatible and MOR can bill it correctly.
NOTE: make sure that after localization your number always is E.164 compatible. Call Tracing can help you
do this.

See also:
Number Manipulation
o Provider Rules
o DID handling by Localization
o Number Manipulation Examples
























MOR 8 Manual
Kolmisoft 2006-2009
47
Provider Rules

Provider Rules transforms E.164 compatible number to any number format Provider requires.

Description
Different providers expect different number formats from you. You can send them whatever they want using
Provider Rules.
They can be reached pressing icon next to some provider in Providers window:

We see similar window as with Localization. The rules to manage Provider Rules are identical to Localization
management which are covered here.
Let's say our provider expects to get number with technical prefix 89765#. We can do this in following way:

MOR 8 Manual
Kolmisoft 2006-2009
48
That's it very simple. Now every number which will be sent to this provider will be transformed adding our
created tech. prefix.
Example: 37063042438 should be sent to this provider, so this rule will be activated and number
89765#37063042438 will be sent to provider.
REMINDER: You can check if Provider Rules are applied correctly in Call Tracing

CallerID overwrite for Provider
Sometimes Providers only accepts calls only with some CallerID.
It is possible to overwrite any CallerID before sending call to such Provider.
In Provider Rules (for this Provider) setup such Rule:

In this example all calls going to this Provider will have CallerID = 9999999999





MOR 8 Manual
Kolmisoft 2006-2009
49
Destination same as received
If you want to send exact number to Provider as received, set Cut = '-' (minus sign as shown in screenshot).
That way same number which comes to MOR leaves MOR:




See also:
Number Manipulation
o Localization
o DID handling by Localization
o Number Manipulation Examples






















MOR 8 Manual
Kolmisoft 2006-2009
50
DID handling by Localization
When call comes in to your system from the Provider they should be localized to E.164 format for DID
search. In other words as DIDs are in E.164 format, whatever comes from provider should be localized
to E.164 to find correct DID.
To do this each Provider has Location also. That means that Location rules can be created and applied for
Provider. You can do this in Provider settings window:

Example: you have DID 37052058393 and provider sends you 0037052058393. You need to strip this
international prefix with following rule:

And do not forget to apply correct Location to the Provider!
Special case: In some countries when E1 is connected to the server, only 4 last digits of the number reach
MOR. Localization should be used here to add remaining part of the number.


MOR 8 Manual
Kolmisoft 2006-2009
51
Number Manipulation Examples

Example with Localization and Provider Rules for CallerID(Source) and
Destination
Lets say 868555666 calling to 868777888, the first number is source (CallerID) and another one is
destination. Localization source rules is used to modify CallerID which comes to MOR and provider source
rules is used to modify CallerID which will be sent to provider. They aren't used all the time, only when
owner of system wants.
So for example provider accepting calls only in 9 number length and which begins with 8. MOR works only
with E.164 startard callerID's if you want to run billing on them.
So first of all we'll need to make such Localization source rule for our situation:
Cut: 8 , Add: 370 , Min/Max 9/9.
So now callers number is 3708555666, not 868555666. MOR identifies caller from Lithuania (by country
code 370), that means he can bill him.
Now we need to send a call to 868777888 , but our number must be in old format (868555666), so we need
to apply such provider source rule:
Cut: 370, Add: 8 , Min/Max 11/11
Thats it, final caller's number will be 868555666 again.

Example 1 - Italy
Client has such situation:
My customers are mainly in Italy. To call to Italy they are not gonna put 0039 country code,
while they do put 00 and country code when the want to call other countries.
Then, on the other side, my provider aspect numbers to Italy without 0039 country code,
while to other countries they do aspect it before the called number.
NOTES:
Numbers clients dial are 10 digits in length. More info about Italian number format:
http://en.wikipedia.org/wiki/%2B39
'+' is not used, it should be changed to '00'
To handle such situation such actions should be taken:
Location 'Italy' should be created
All devices from Italy should be assigned to this Location
Rules in Location Italy:
o Name: 'Local Italy', Cut: (empty), Add: 39, Min: 6, Max: 10
o Name: 'International', Cut: 00, Add: (empty), Min: 11, Max: 16
Provider Rules for Provider through which call will be terminated:
MOR 8 Manual
Kolmisoft 2006-2009
52
o Name: 'International', Cut: (empty), Add: 00, Min: 10, Max: 100

Example 2 - USA/ Canada
Client has such situation:
Local number is dialed in following formats: 1-XXX-XXX-XXXX or XXX-XXX-XXXX
International numbers: 011 - country code - area code - number
Localization rules:


Now call should be sent to Provider which accepts number in following format:
USA/Canada calls should start with 1
International calls should start with 011
Provider Rules for this Provider should look like:

Example 3 - Brasil
Local number dialed in format 0XXXXXXXXXX
International: 00 + country code + area code + number

MOR 8 Manual
Kolmisoft 2006-2009
53
Block wrong short numbers with Localization
To block ALL short numbers (length [1-8]) you need to:
1. Create Empty LCR
2. In Localization add such Rule:


NOTE: Such rule will route calls to empty LCR where they will be dropped.
If you want to allow some short numbers to pass, you need to create more granular rules to handle your
situation.
This example is very strict and is only for demo purposes to illustrate the principle.
Make sure you understand Number Manipulation to proceed with Rules for your case.

See also:
Number Manipulation
o Localization
o Provider Rules
o DID handling by Localization
o Number Manipulation Examples








MOR 8 Manual
Kolmisoft 2006-2009
54
LCR/Tariff change based on call prefix
Main purpose of this function is to allow route call through some Provider(s) based on call prefix.

You have to create a provider, tariff, LCR (where specified provider have to be), and user with his Device.
And most important is localization rule or rules. It should be applied per device basis (Device settings ->
Location), make sure specified device has correct rule applied. It must be noted that specified rules has
Higher priority than global rules.
1) Create new tariff, provider, LCR, user and device
2) Assign newly made provider to new LCR.
3) Create new localization rule, name for example "test1".
4) Assign device to location "test1"
5) Now edit "test1" rule, it should be done like with normal localization rules, but when you are
creating localization rule based on tariff or LCR, assign specified Tariff or LCR to correct place.
You can find more info how to make rules in Number Manipulation

Example
Lets say we have Provider which provider 3 quality routes: bad-cheap/normal/good-expensive.
Bad-cheap route is selected when dialing E164 number with prefix 00
Normal route is dialed when dialing normal E164 number
Good-expensive route is selected when dialing E164 number with prefix 000
To accomplish this we need:
Create 3 Providers with same connection settings:
o Bad_Provider
o Normal_Provider
o Good_Provider
Create 3 Tariffs for Providers:
o Provider_Tariff_Bad
o Provider_Tariff_Normal
o Provider_Tariff_Good
Enter/Import appropriate rates to these Tariffs
Assign these Tariffs to Providers
Create 3 LCR and assign appropriate Providers here:
o Bad_LCR - assign Bad_Provider here
o Normal_LCR - assign Normal_Provider here
o Good_LCR - assign Good_Provider here
Create 3 Tariffs for Users:
o User_Tariff_Bad
o User_Tariff_Normal
o User_Tariff_Good
Enter/Import appropriate rates to these Tariffs
MOR 8 Manual
Kolmisoft 2006-2009
55
Create Location BadNormalGood with following Rules:

Assign User_Normal_Tariff and Normal_LCR to User
Assign all User's Devices to Location BadNormalGood
That's it.
Now when user dials E164 numbers he will be using Normal route, when 00 - bad route, when 000 - Good
route.
































MOR 8 Manual
Kolmisoft 2006-2009
56
Users
Description
User is the actual user of the system the client which dials out or receives calls. User can represent one
person or whole company. User is main unit in the system. Most of the settings are associated with User.

User types
There are several User types in MOR:
Admin - main user and owner of the system
Reseller - limited admin of the system which has own users
Accountant - limited admin of the system which has some powers of Admin to manage the system
User - simple system user

User list
The user management window is in SETTINGS Users:

In this window you can check all users with their main details:
and shows is user logged into GUI or is it offline. Do not confuse this with device login to the server.
These are different meanings.
- shows calls for this user
- shows recordings for this user
- let's you login as this user without entering his password
- initiates Call Tracing for this user
shows device groups check Device Groups chapter
- Devices shows user's devices
- Custom Rates shows user's Custom Rates
MOR 8 Manual
Kolmisoft 2006-2009
57
- shows user's Subscriptions
- This icon let's you edit user's settings
- This icon hides user (puts it in Hidden Users list)
- This icon let's you delete user

NOTES
System Admin is main user and cannot be deleted.
User which has calls cannot be deleted that's against billing philosophy all calls made within
system should be logged.
User number is unlimited


MOR 8 Manual
Kolmisoft 2006-2009
58
User Details
Screenshot

In this window you will se a lot of user's settings.
MOR 8 Manual
Kolmisoft 2006-2009
59
There are several groups: General, Blocking, Warning Balance Email, Invoices, Payments, Details, Taxes,
Registration Address and Recordings.

General
Username username for user to login to MOR GUI
Password password for user to login to MOR GUI
User type by default it is "user"
LCR LCR which user's devices will use to dial out
Tariff prices for user
Balance users' balance
Credit users' credit - how low user's balance can go
Postpaid/Prepaid Type of user
Not Hidden/Hidden is this user hidden?
Primary device Primary device for this User
Allow loss calls - should we allow loss calls for this user?
Call Limit - how many simultaneous calls user can make?
Blocking
Various options for User Blocking.
Warning Balance Email
If you want to send email notification to user when his balance drops lower when some amount, check this
setting and enter desired amount.
Invoices
Generate Invoice - should we generate invoice for this User when we select to generate invoices for
some period?
Invoice, Detailed, By CallerID, By Destinations and PDF/CSV shows various types of invoices which
should be sent to user over email as attachment.
Show zero Calls - if call price = 0, should such call appear in invoice or not?
Payments
Cyberplat - check this option if you want to allow user to use this payment gateway
Details Self-explanatory.
Taxes Tax system is explained here.
Registration Address Self-explanatory.
Recordings
This section is available when Recordings Addon is installed in the system.
MOR 8 Manual
Kolmisoft 2006-2009
60
User Blocking

Definition
When User is blocked - he is unable to make outgoing calls.
NOTE: User is still able to receive calls. Unassigned DID for him to stop incoming calls for him.

Direct blocking
Mark User Blocked or Not Blocked to instantly block/unblock him.

Unconditional blocking

This option sets the date when user should be blocked.
If date is in the past - this option is not active.
Block check is done every night at 00:00:00.
NOTE #1: if you want to block user in the future - set this date in Block at BUT do not mark this user as
Blocked (if you do so - it will be blocked instantly). System will mark user as Blocked at your selected
date.
NOTE #2: If you want to block user today - just mark it as Blocked - DO NOT enter today's date into Block
at field - system will not block it if you do so, because it will not check until tomorrow 00:00:00.

MOR 8 Manual
Kolmisoft 2006-2009
61
Conditional blocking

Under this option select day of the month when to perform check.
Check is done at night at 00:00:00.
On this day this user is checked:
Is he POSTPAID ?
Is his BALANCE < 0 ?
Has he UNPAID INVOICES ?
If all conditions are met - this user is blocked.





Hide Users
As it is not allowed to delete users which 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 using
icon .
To hide a user, go to his details and select Hidden. To unhide - Not hidden.


MOR 8 Manual
Kolmisoft 2006-2009
62
User grouping
Definition
Groups in MOR are groups of users which have one or more supervisors or managers over group. Managers
possess administrative powers over users like mark users as logged or logged off (thus allowing or
preventing calls by the user).
Groups are not commonly used. They were created with Call Centers in mind. Mostly we do not recommend
using Groups.
Group Creation
Only administrators can create Groups. It is done under SETTINGS Users - Groups. Just enter Groups
name to create Group. You can select type for group from 'simple' or 'callshop'. It describes how you will
manage group later.
Groups' details
There are some options you can modify with Groups:
Rename a Group
Delete a Group
Modify Group Members

Adding Users to Group
Only administrators can add Users to Groups. Press on Members for a certain group and you will get
following window:
MOR 8 Manual
Kolmisoft 2006-2009
63

From drop-down list at the bottom select desired user and press Add member button. User will be added to
the group.

Managers and Users
Each Group can (and must) have one or more manager. The manager is the account that can control users.
Like login a user or logoff a user (allow or disallow users' calls).
You can change the user type pressing on Change type button for a user.

Managers' actions
If a user is manager of some group, they will see following section in their interface:

Under groups is a list of all the groups that manager can manage, or administrate.
Groups' details for managers
By pressing on Groups user (manager) will be presented with details about the group.
Pressing on Members button near some group manager will get list of users.
Pressing Login or Logout buttons manager will change login state of user accordingly. This change will be
put into database for further statistic and reference.
MOR 8 Manual
Kolmisoft 2006-2009
64

Member stats
Pressing on Member stats you will open window where you can setup some values for users which mostly
are used in Call Centers:

All these values are used in Realtime statistics window.





















MOR 8 Manual
Kolmisoft 2006-2009
65
Why MOR does not allow to delete users
MOR does not let to delete users who made at least 1 call in the past.

WHY?!?!?
The answer is simple - because it will ruin the billing.

Simple example
Let's say we have 2 (TWO) users U1 and U2 and 1 (ONE) provider P1.
During the month one user U1 dialed 20.000 calls and another user U2 dialed 10.000.
For the sake of simplicity 1 call = 1 EUR worth.
So user U1 should pay you 20.000 EUR and user U2 should pay you 10.000 EUR. Total 30.000 EUR.
You sell with 100% margin, so that way you have to pay 15.000 EUR to your provider P1 for the calls.
And 15.000 EUR is your profit.
Imagine now what happens when you delete user U1 from the system with all his calls.
We have such situation:
During the month user U2 made calls worth of 100.00 EUR and you see that you should pay provider 50% of
that = 5.000 EUR to your provider P1.
BUT!!!! Provider P1 sees that he sent 30.000 calls and not 10.000 as you say. And these calls worth 15.000
EUR.
So you will be in -10.000 EUR (MINUS 10.000 EUR) after 1 month!

What to do?
Hide users if you don't want to see them anymore in your system. Note: currently its not possible to hide
devices or providers.





MOR 8 Manual
Kolmisoft 2006-2009
66
Tariffs

Description
Tariffs are sets of rates (prices) to different destinations. There are three types of tariffs: providers
wholesale (inbound), users wholesale (outbound) and users retail (outbound).
The difference between wholesale and retail tariffs are in the way how rates are set for destinations.
In wholesale tariffs rate can be set to every destination possible. In retail tariff destinations are grouped
which lets have less rates. They are used in different situations and each of them has their strong sides and
weak.
Strong side of wholesale providers is possibility to enter different rate for different destination. It is useful to
set this tariff when you resell services to other providers.
If your clients are retail end users it is better to use retail tariff. They are easier to manage and
understand for final user.
Tariffs' window can by found in SETTINGS Billing Tariffs.

See also:
LCR/Tariff change based on call prefix
Rate import from CSV
Importing Tariffs from CSV with wrong Regional Settings
Bulk change Tariffs for Users
Day setup
Make Retail Tariff from Wholesale Tariff explained

















MOR 8 Manual
Kolmisoft 2006-2009
67
Directions and Destinations
Directions - in other words - Countries. Could also be satellite networks. They just describe direction to
which the call is routed.
They can be found in SETTINGS Billing Directions. In the main window you can see all Directions with
their details.
Destinations - these are more concrete concepts of the calls course. Let's say we are dialing number
37068547771. From this number MOR knows, that Direction is Lithuania, but Destination is Mobile network
Bite. Destinations are determined by Prefix. Each destination has unique Prefix. The Prefix from the example
is 370685.
Destinations can have several types/codes:
FIX fixed numbers
MOB mobile numbers
NGN non geographical numbers
IMPORTANT NOTE: When adding new destinations - make sure you include them into some Destination
Group - otherwise you will get corrupted invoices if user uses retail tariff.
QUESTION: How to import destinations from file?
ANSWER: You can import them using Tariff import script. Just create dummy tariff, add dummy
rates and import. Destinations will be created automatically. Later you can delete tariff. Just
remember to enter prefixes in E164 format.
NOTE: You can get CSV file with all Destinations in Tariffs window. It is suitable for rate entering and
importing back to MOR.




Destinations Groups
In order to make life easier and to manage prices for destinations, destinations are grouped. And one price
applies for a group of destinations not for one destination separately. (Group can contain one destination
also.) Destinations groups are used for users, not for providers, because providers need to have very exact
rates for each destination.
You can edit Destination Groups settings in SETTINGS Billing Directions Groups.
NOTE: Destination can belong to one group at the same time only.
HINT: If you want to split some Destination Group, remove all Destinations from it, delete old Destination
Group and create new ones. Then add removed Destinations to just created Destination groups.
See also:
Integrity Check



MOR 8 Manual
Kolmisoft 2006-2009
68
Block some Destination to User
If you need to block some special prefix (Destination), follow these steps:
1. Create empty LCR (without Providers in it) - "Empty LCR"
2. In LCR which is used by User use Call routing per destination basis to add prefix which you want to
block
3. Assign "Empty LCR" to this prefix
Now when user will dial number with this prefix (Destination) - call will be routed to empty LCR which equals
it will be dropped.




Day setup
MOR lets you set different dates for different types of days. Days can be 2 types: work days (WD) or free
days (FD).
Free days by default are counted as Saturday and Sunday.
Work days are Mondays Fridays.
National holidays and other days which do not meet default settings should be set manually.
This can be done in SETTINGS Billing Tariffs Day setup:

Here you can add, edit or delete days.


Bulk change Tariffs for Users

VIDEO: http://wiki.kolmisoft.com/index.php/Bulk_change_Tariffs_for_Users
MOR 8 Manual
Kolmisoft 2006-2009
69
Entering Rates for Wholesale Tariff
Description
This method is used to enter rates one by one by hand. It is primary used for editing rates because it's very
time consuming to enter thousands of rates by hand. For such purpose CSV import is available.
Press on Rates:

In this window you can view already entered rates:

MOR 8 Manual
Kolmisoft 2006-2009
70
press on Details to get more details:


Here you can Split to Work Days and Free Days, delete rate or edit it:

Here you can add different End Time for different rates in time period and change other values which are
more simpler then Advanced Rates.
NOTE: if there are no rates for some destinations user will not be able to dial these destinations using
provider to which tariff is assigned. This is usual gotcha when call does not go through always use Call
Tracing if you have problems dialing-out!
MOR 8 Manual
Kolmisoft 2006-2009
71
Adding new Rate
It is possible to add Rates using GUI in 3 different ways. It is also possible to import Rates using CSV.
We will show 3 ways over GUI here:

New Rate
This way lets add many rates for selected countries by first letter, as example for all Destinations starting
with A:

Enter Rates and press Update button to add such Rates.

MOR 8 Manual
Kolmisoft 2006-2009
72
Quick add new Rate
This way lets add one Rate quickly. Enter Prefix to which you want to add Rate, make sure software shows
you which Destination it is (if it tells that there is no such Destination - you need to create it) then enter
Rate and press Add Rate:


Add new Rate
This method is similar to first one except it lets to enter rates only to selected country (Direction). If some
country has all rates already set - it will not let to choose that country:




MOR 8 Manual
Kolmisoft 2006-2009
73
User wholesale tariff
This tariff is used by users and it has no difference with provider wholesale tariff. All functions are the same.
This tariff type can be enabled or disabled in Settings.
When wholesale tariff type is assigned to user he will not be able to see all rates online. He will be able to
download them in PDF or CSV format.
NOTE: you can't have Custom rates for user if he is using Wholesale tariff.


































MOR 8 Manual
Kolmisoft 2006-2009
74
Rate import from CSV
File format
File should be CSV (comma separated values).
Necessary fields in CSV line:
Prefix
Price
All other fields are not necessary.
First line can be header.
Value Separator and Decimal Separator MUST be set correctly in SETTINGS - Setup - Settings -
Various:
CSV Column Separator
CSV Decimal Separator
File and CSV separator settings should match. If they will not - you will get errors when trying to import file.
Good CSV rate file examples
Bad CSV rate file examples

Description
It is very tedious work to add several thousands rates by hand so you can import them from CSV file.
There are 7 steps for importing rates from CSV file:
1. File upload
2. Column assignment
3. Column confirmation
4. Analysis
5. Creating destinations
6. Updating rates
7. Creating new rates
We will cover each of them one by one.
IMPORTANT NOTE: When importing - prefixes should be in E.164 format!!! E.g. no international
prefixes!


MOR 8 Manual
Kolmisoft 2006-2009
75
1. File upload
Select Import from CSV for the Tariff you want to import rates.
Then press on Browse and select CSV file with rates. Press Upload file:


2. Column assignment
File is uploaded and 5 first line of this file is available to check:

This helps us in next step, to assign CSV files columns to MORs variables. We have following window:
MOR 8 Manual
Kolmisoft 2006-2009
76

Here we must to assign columns from CSV file. Prefix and Rate are mandatory fields. All other fields can be
empty. Connection Fee, Increment and Min. Time have their defaults, if you want, you can enter
manually values for them. Manually entered values have highest priority. If you omit them, then
MOR insert values from CSV file, if therere no assigned column for these fields, then default
values will be added to database (DB).
There are group of values under name USA specifics. These are only for USA/Canada. Users from these
countries need to use these fields with their CSV files.
In the following example we selected fields which match our CSV file. Also entered some manual values for
Increment and Min.Time. We will count time by 30s increments and minimum time for the call will be 60s
with these settings:

MOR 8 Manual
Kolmisoft 2006-2009
77
Such way of selecting CSV rows and assigning them to MOR values lets us import various CSV file formats.

3. Column confirmation
Next step is to review our selection and confirm if everything is correct. We can go Back or forward to the
next step:


4. Analysis
It will take some time to accomplish this step. Now
MOR is checking a lot of things from DB and CSV files:
comparing rates, searching for duplicates, fixing small
errors and so on. We get something like this after
analysis is completed:

The most interesting line is 3 bad destination(s). We
press on the List to check them. In the new window we
can see which destinations are bad and we can decide
what to do with them. Possible that there are no
directions for them, MOR cannot know to which country
to assign this destination or maybe these destinations
have duplicates in CSV file? You have to fix this if you
want to import whole file. Here you can stop and fix
your CSV file or you can ignore these errors and
continue.
MOR 8 Manual
Kolmisoft 2006-2009
78
We will continue due to demo purposes pressing on Proceed.
Following steps are separated to divide big processing power if rate file is huge. It allows browser not to
crash and successfully import 160.000+ destinations from one CSV file. (Tested).

5. Creating destinations
MOR creates new destinations here. These destinations are necessary for the rates which will be added in
step 7. This window is just informative, no decisions here:

6. Updating rates
Here MOR updates rates with the values from CSV files. These rates already exist in DB. Just press
Proceed:


7. Creating new rates
Finally MOR creates all rates and we are all done!

MOR 8 Manual
Kolmisoft 2006-2009
79
NOTES
Rate import is _VERY_ CPU intensive task.
If there are a lot of rates please be patient and let MOR finish its job. Sometimes it gets some time to count
everything and come back to life.
At the moments it could seem that browser is not responding that is not true it just works very hard
importing your very own rates from CSV file.
If you get timeout error try to import file in smaller pieces.
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.

Example Videos

http://wiki.kolmisoft.com/index.php/Rate_import_from_CSV#Example_Videos




See also:
Good CSV rate file examples
Bad CSV rate file examples














MOR 8 Manual
Kolmisoft 2006-2009
80
Advanced Rates
Description
In order to manage rates for destinations easier, destinations are grouped. And one rate applies for a group
of destinations not for one destination separately. (Group can contain one destination also if it is necessary.)
Destinations groups are used by users, not by providers because providers need to have very exact rates for
every destination.
Each group of destinations consists of several destinations described by prefixes. Lets take for example
Albania MOB: here we have 3 destinations described by prefixes: 35538, 35568 and 35569. Each of these
destinations is Albania MOB. Usually users do not care to which MOB network they are calling and usually for
not popular countries providers put one price for all destinations to that direction. Same here. We can put
one price for all these 3 destinations grouped to group Albania MOB.
Each rate for some destination group can have many rate details. Which means: destination group has one
rate, but this rate has many rate details (sub-rates). Each rate detail describes one interval of the call. If
first rate detail is RD1, second: RD2, and so on, so all call is RD1 + RD2 + .. + RDn. Number is finite. Rate
detail can be seen as time interval for all duration of the call. This interval could be zero length also. It is
explained further.
Each rate detail consists of such parts:
FROM from which second rate detail starts
DURATION what is the length of this rate detail (interval)
TYPE - minute or event
ROUND BY in what intervals round time
RATE price for minute in this rate interval
The type 'minute' describes interval which last some time. This time is billed by rate and rounded
accordingly. Interval starts at FROM and lasts for DURATION seconds. The type 'event' describes some kind
of zero-length interval which we call EVENT. As example it could be connection fee. If type is 'event' rate
detail has no DURATION (its always zero) and ROUND BY fields.

NOTE: The same rules apply to Custom Rates for users.






MOR 8 Manual
Kolmisoft 2006-2009
81
Example #1
The call should have 0.2 connection fee (currency does not matter here) and all other time must be billed by
6 second intervals with rate 0.1 per minute.
Such rate should be described like this:
FROM DURATION TYPE ROUND BY RATE
1 0 event

0.2
1 minute 6 0.1


Example #2
The first 30 seconds of the call cost 0.1, the next time till 5 minutes is billed at rate 0.05 rounded by 30
seconds and remaining time is billed by rate 0.02 and rounded by 1 second.
FROM DURATION TYPE ROUND BY RATE
1 30 minute 30 0.2
31 300 minute 30 0.05
301 minute 1 0.01

Same example can be described like this also:
FROM DURATION TYPE ROUND BY RATE
1 0 event

0.1
1 30 minute 30 0
31 300 minute 30 0.05
301 minute 1 0.01




MOR 8 Manual
Kolmisoft 2006-2009
82
Example #3
The rate for call is 0.01 per minute rounded by 1s. The max price for call can be 0.1.

FROM DURATION TYPE ROUND BY RATE
1 600 minute 1 0.01
601 minute 1 0

Example #4
The rate for call is 0.01 per minute rounded by 1s. First 15 seconds of the call are not billed.

FROM DURATION TYPE ROUND BY RATE
1 15 minute 1 0
16 minute 1 0.01






















MOR 8 Manual
Kolmisoft 2006-2009
83
Entering Rates for Retail Tariff
In order to manage rates for Retail Tariff press on Rates icon next to Tariff:


Here you can enter Rate and Round by values for every rate. If you finished entering what you want, press
Update at the bottom of the page. All rates will be updated.
View shows you the Destinations which belongs to this particular group.
Press on and you will be able to edit rates in Advanced mode.
Here you can press on Split to Work Days and Free Days to split rate to two parts - for Work Days and
Free Days.
Now we have control over different types of days: Work Days and Free Days. We can enter different rates
for these days.
We can also set different rates for different time in the day. For that we need to create hour interval. In the
column End Time select some time and press on to do this.
In order to manage Rate press on Details icon .
And here you should add/edit/delete Advanced rates as described in Advanced Rates.
MOR 8 Manual
Kolmisoft 2006-2009
84
Custom Rates
Custom Rates are such rates which are different from default user's tariff.
Example: if you have users A and B, and they both have tariff 'GOLD', but customer A has rate to Russia 0.5
and other user has tariff to Spain for 0.6 ('GOLD' rates for these destinations are 0.7 and 0.8), so you just
put new values for each customer in their Custom Rates and they will be used instead of default tariff rates.
This helps to assign different rates for different customers not creating new tariff for everyone.
Most of the time customers are interested in calling only to few destinations. Nobody needs complete A-Z
destinations. So with Custom Rates it is possible to adjust these rates to destinations.
You can reach Custom Rates by pressing yellow coins icon in Users window.
From drop-down list select the Destination Group you want to create Custom Rate and press green plus add
icon.
NOTE: Custom Rates are available for users which main Tariff type is Retail.

Tariff Transformation
Wholesale tariffs can be transformed to user retail tariffs. It can be done in main tariffs window pressing on
Make user retail tariff (this link appears when tariff has at least one rate):


Enter values you want to add to values from wholesale tariff to retail tariff. 3 cases possible:
Let's say X is wholesale rate
1. You enter value Y into Add amount field then:
Retail rate will be X + Y
MOR 8 Manual
Kolmisoft 2006-2009
85
2. You enter value Z into Add percent field then:
Retail rate will be X + (X/100 * Z)
3. You enter value Y into Add amount field AND Z into Add percent field then:
Retail rate will be (X + Y) + ((X + Y) / 100 * Z)
NOTE: Largest value from wholesale tariff is taken for Destination group in retail tariff (by prefix) when
doing this transformation. For more detailed explanation check here.
HINT: This function can be used when importing user retail tariff. At first you create fake wholesale Tariff,
import Rates into it and transform to user retail Tariff with values 0/0.
See also:
Make Retail Tariff from Wholesale Tariff explained


Make Retail Tariff from Wholesale Tariff explained
Retail Tariff from Wholesale Tariff is done by following algorithm:
1. Highest Rate in Wholesale Tariff for Destinations in Destination Group (DG) is selected
2. This rate is modified by adding some value or percent to it
Example
Imagine we have Wholesale Tariff with such rates for USA:
Prefix 1, rate 0.01
Prefix 12, rate 0.02
Prefix 123, rate 0.03
And we have Destination Group USA with such Destinations in this Destination Group (1;12;123)
Now if we want to create Retail Tariff adding 0.005 to Wholesale tariff, we will have price for USA
Destination Group = 0.035
E.g. highest rate from Destinations is selected and modified.




Why User can't check his Rates
Because it is turned off in Settings
Show rates for users - disabled by default. Enable to show Rate menu option for resellers/users.
MOR 8 Manual
Kolmisoft 2006-2009
86
Providers/Devices

Devices
Definition
Device represents end-point which can generate(originate) or receive(terminate) calls. As example device
can represent:
VoIP phone
VoIP softphone
PSTN phone (connected through FXS port)
PBX
Softswitch
Each User can have many Devices. (User can be viewed as Device group with similar properties, such as
Balance/Credit, LCR, Tariff, etc)

Device list
In main User window press on to check user's devices. Also you can select SETTINGS Users
Devices to check all devices.
NOTE It is important to remember that some settings apply to users and others to separate devices. That
means that if setting applies to user, same setting applies to all his devices. For example balance. It is field
for user. But if balance is too low user will be unable to dial out any of his devices.


In this window you see some details for Devices. Choices for you are:
MOR 8 Manual
Kolmisoft 2006-2009
87
Call Flow set call flow for this device
DIDs shows DIDs assigned to this device
CLIs CallerIDs for this device
- Recordings for this device
- All details for this device from DB
- Edit device's settings
- Delete device

Device types
Device - default device
Virtual Device - virtual device which does not represent real device (used for various dial logic)
Trunk - PBX/Trunk
Trunk with ANI - PBX/Trunk with ANI authentication
Fax device - Fax2Email virtual device



MOR 8 Manual
Kolmisoft 2006-2009
88
Device settings
Screenshot

Each device can have many settings. Screenshot shows settings for SIP device. These settings are similar to
other device types also.
MOR 8 Manual
Kolmisoft 2006-2009
89
There are several groups of settings: General, Authentication, CallerID, Network Related, Groups, Voicemail,
Codecs, Allowed Addresses, Advanced, Tell Options, Debug and Recordings.
General
Accountcode unique id of the device in the system
Description for informational purposes
PIN device PIN for authentication/authorization
Device group - to which group device belongs (not used most of the time)
Type - what type is this device
Extension short number by which this device can be reached - must be unique in the system
DTMF Mode in which protocol phone button presses are sent over network, available options:
inband, info, RFC2833, auto choose which one your provider uses (RFC2833 most used)
Works not logged does user need to log to MOR GUI to be able to dial out? (mainly used for Call
Center environments, leave it default in most cases)
Location default Global, choose appropriate one based on Localization needs
Timeout - how long to try to reach this device and when hangup if device does not answers
Trunk No/Yes/Yes with ANI Is this device Trunk with/without ANI?
Call Limit - how many simultaneous device user can make?
Authentication
For ZAP devices:
Channel which channel (or channel group) to use on PRI/BRI/PSTN card. Channels and groups
should be configured in zapata.conf.
For all other device types:
Username username you enter in your device
Password password you enter in your device
Authenticate by IP should it be authenticate by IP (not by username/password)?

CallerID
CallerID consists of two parts: name and number. The "Number" part gets transferred by default by all
technologies: GSM, PSTN, SIP etc, the "Name" part only on some. The number you see on your mobile
phone when somebody is calling you is "Number" part.
Name the "Name" part of CallerID
Number the "Number" part of CallerID
NOTE: if you leave these fields empty user can set CallerID by himself. Usually is not a good way to let it
do it for user.
Number from DID - put DID as CallerID (only availale when device has DIDs)
CID control by DIDs only available when this device has DID(s)
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
MOR 8 Manual
Kolmisoft 2006-2009
90
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).

Network Related
Host device IP or hostname, the value can be "dynamic", which means that device should register
(it should be like this most of the time).
IP Address - should be devices IP or disabled if device is "dynamic"
Port port used to connect to device (default: 5060 for SIP, 4569 for IAX2). If host = dynamic this
field is updated by Asterisk when device registers. It is port from where call is coming (from device).
Last time registered - when device was last time registered to the Asterisk server
Media control canreinvite/transfer do you want your server to stay in media path between your
clients and your provider
NAT available options: yes, no, never, route. For detailed explanation about these settings please
refer here.
Qualify how often "ask" device about availability. More details here for SIP devices and here for
IAX2 devices.

Groups
Call Group to which Call Group this device belongs
Pickup Group which Cal Groups this device can pickup

Voicemail
Email to which send received Voicemail
Password digit password user should enter when he calls Voicemail number to listen for
messages

Codecs
Choose the codecs your provider uses.
NOTES:
When no fields are checked that means that all codecs are available. E.g. settings in sip.conf or
iax.conf are effective.
If Provider and Device does not have similar codecs - call cannot be established.

MOR 8 Manual
Kolmisoft 2006-2009
91
Allowed Addresses
IP, MASK permit traffic from these IP only. You can find detailed explanation here.
If you do not clearly understand why these settings are used for - leave them with default values.

Advanced
Fromuser/Fromdomain This is used when calling TO this peer FROM asterisk. If you're using
_register=>_ with another SIP proxy, this setting can come in handy since some SIP networks only
allow users in the right domain with the correct user name.
Trustrpid This defines whether or not Remote-Party-ID is trusted. It's defined in
http://tools.ietf.org/id/draft-ietf-sip-privacy-04.txt
Sendrpid Defines whether a Remote-Party-ID SIP header should be sent. Defaults to no. This field
is often used by wholesale VoIP providers to provide calling party identity regardless of the privacy
settings (the From SIP header).
Insecure
o port: ignore the port number where request came from
o invite: don't require authentication of incoming INVITEs
o port,invite: don't require initial INVITE to authenticate and ignore the port where the request
came from
T.38 support - Asterisk does not have good T.38 support so use this option just for testing
SIP 302 Reinvite support - SIP Reinvite support for device, disabled by default
Progressinband:
o yes - When "RING" event is requested, always send 180 Ringing (if it hasn't been sent yet)
followed by 183 Session Progress and in-band audio
o no - Send 180 Ringing if 183 has not yet been sent establishing audio path. If audio path is
established already (with 183) then send in-band ringing (this is the way asterisk historically
behaved because of buggy phones like polycom)
o never - Whenever ringing occurs, send "180 ringing" as long as "200 OK" has not yet been
sent. This is the default behaviour of Asterisk.
Video support does your provider support Video over IP? More info here.
Allow duplicate calls - default no

Tell Options
Tell balance should MOR tell balance to user when he is trying to dial (every time) default no
Tell time - should MOR tell remaining time to user when he is trying to dial (every time) default
no
Tell remaining time when left when some time is left MOR will tell remaining time to talk (in
seconds)
Repeat remaining time when left repeats remaining time when left some time (in seconds)

Debug
SIP debug info - Can be enabled per SIP device basis. It is useful in debugging.
And it is saved to calls table when it is enabled.
MOR 8 Manual
Kolmisoft 2006-2009
92

Recordings
This section is available when Recordings Addon is installed in the system.



Extension lines
In device setting you can select Extension lines. It will show you Asterisk extension lines:

This info is for informational purposes for people who have deeper Asterisk internals understanding.




MOR 8 Manual
Kolmisoft 2006-2009
93
Trunks
Under Trunk we have in mind other server/PBX which can be connected to the MOR system.
When we are calling to such device, we send full number which was dialed before.
Example: when dialing simple device, we would use:
Dial(SIP/some_device)
and if this device is Trunk we use:
Dial(SIP/some_device/${EXTEN}).
This lets Trunk to decide to which device (connected to the Trunk) to route the call.
If you want to make device Trunk, just mark is at Trunk in device details: No/Yes/Yes with ANI

Trunk with ANI
It is sometimes necessary not to bill whole trunk as one client but to be able to bill separate clients
connected to the server/pbx (trunk) separately.
In order to do this, you should mark some device as Trunk with ANI.
Now when some other device connected to that Trunk dials through MOR, MOR check this device's CallerID
and if it's present for some device in the MOR then MOR recognizes the device as valid device on the MOR
and assigns call to him instead of Trunk.

See also:
PBX connection to MOR
o MOR and Trixbox














MOR 8 Manual
Kolmisoft 2006-2009
94
CLIs
CLI or CallerID is number from which user can dial to MOR. These values are used when user is dialing into
MOR through Trunk/Provider with ANI (Automatic Number Identification).
It is important to understand that CLI is not CallerID which is put on the call when call goes out of the
system.
CLI is CallerID which COMES INTO the system.
It is mainly used to AUTHENTICATE the caller.
You can reach main window of CLIs in device settings selecting CLIs:


IMPORANT! CLIs should be in E.164 format!

It is possible to ban CLIs. It is explained in this topic.



















MOR 8 Manual
Kolmisoft 2006-2009
95
ANI/CLI ban system
This function allows to ban some unwanted CallerIDs.
SETTINGS - Users - Devices - CLIS


When no IVR is selected, call ends with CONGESTION tone.
When IVR is selected - it is played for user who tries to dial.
As example IVR can tell: "Sorry, but your account is blocked because, ...."



Duplicate call prevention
Sometimes devices have poorly implemented SIP protocol and try to initiate same call twice at the same
time.
To avoid such situation this option is implemented.
It kills both calls and does not allow broken device to dial.
Allow duplicate Calls is available for Providers and Devices in Edit window under Advanced settings.
By default it is No - if you are not sure what you are doing - leave it that way.







MOR 8 Manual
Kolmisoft 2006-2009
96
Allow loss calls
It can be put per user basis:

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.
If this setting is unchecked (default) - cheaper providers will not be used in dialing.

Resellers
Reseller can check this setting for his own users.
When Reseller check this setting for his users, then user is allowed to dial out, even when his rate is lower
compared to the rate from which reseller buys from system admin.
See also:
204 No suitable providers found
218 Reseller does now allow loss calls




MOR 8 Manual
Kolmisoft 2006-2009
97
Device groups
It is possible to group devices. This represents companies branches e.g. each device belongs to only one
group companies branch.
This functionality is not widely used and we do not recommend to use it also if you do not really need it.
To access groups for each user in users window press on Dev.Groups:

In this window you see all device groups for selected user. Under each group you see devices assigned to
this group.
When new group is added you can delete it. Primary group cannot be deleted.
Edit Details lets change groups' name and address.















MOR 8 Manual
Kolmisoft 2006-2009
98
Call Flow
Definition
Call Flow is set of rules how call should behave when it is trying to reach some device.
It can be reached by pressing on Call Flow link in device details:

Call has several states which are visible from this image:
Before Call - call has not reached device
Call call to device is in progress
Answered call was answered
No Answer call was not answered and ended after timeout
Busy callee was busy
Failed call to device failed

Actions
We can take actions for several call states: Before Call, No Answer, Busy and Failed.
The possible actions are:
MOR 8 Manual
Kolmisoft 2006-2009
99
Empty
Forward
Voicemail
Fax detect (only for Before Call state)

Empty
Empty means no action should be taken. It is default in most cases.

Forward
Call can be forwarded to Local device or External number:


Device Timeout is only available in No Answer state and it decides how long device should ring before
system decides that it is unreachable (when to activate No Answer state).
System owner (admin) can select any device he likes. If user is editing his devices Call Flow he can select
only his devices.

Using forward action it is easy to implement:
Unconditional forward when forward is used in Before Call state
MOR 8 Manual
Kolmisoft 2006-2009
100
Forward on no answer/busy/failed when forward is used in No Answer, Busy or Failed states

CallerID options
Following options are available to manage CallerID for forwarded call:
From device - puts Devices' CallerID which is forwarding this call
Same as comes - unchanged - leaves CallerID which comes from original caller
From DID - select CallerID from available DIDs
Custom - enter any CallerID

Voicemail

This action sends call directly to voicemail. It's simple. Put in Before Call and call never reach device it
will go directly to voicemail.
You can put it in No Answer/Busy/Failed state to achieve different functionality.




MOR 8 Manual
Kolmisoft 2006-2009
101
Fax detect
This action can be set ONLY in Before Call state and only if Fax device is enabled in settings:


You can select only FAX device to route call if Fax is detected. MOR will use fax detection when this action is
set.
And if fax is detected it routes call to set fax device otherwise to basic device.
NOTE: Fax over VoIP is not reliable and this setting should be used only for testing.



















MOR 8 Manual
Kolmisoft 2006-2009
102
Which codecs should I choose for devices
It depends.
What codecs are supported?
Audio:
G.711 A-law
G.711 u-law
G.723.1
G.726
G.729
GSM
iLBC
LPC10
Speex
ADPCM
16 bit Signed Linear PCM
Video:
H.261
H.263
H.263+
H.264
Audio codecs
Most commonly used are:
G711
G729
G711
PSTN quality codec which is supported in 99% of all devices/providers (but often disabled to save traffic).
It has best quality but highest bandwidth (64kbps + ~20 kbps overhead ~= 84kbps to one direction).
It comes in 2 flavours - G711u (ulaw) - used in USA, and G711a (alaw) - used mostly in Europe and other
countries.
G729
Little worse quality but is often used because it saves traffic (~8kbps + ~20kbps overhead ~= 28kbps to
one direction).
It needs to be installed separately and it is not free.
MOR 8 Manual
Kolmisoft 2006-2009
103
Video
Read manual for your device to check which codec is supported on your device.
H263/H264 are most popular.
Make sure same codec is chosen between devices you are trying to communicate.
Fax
If your system/provider/devices does not support T38 you should use G711 codec for fax
transmitting/receiving.
Notes
Make sure you have always selected audio codec! Otherwise you will not be able to place calls!





























MOR 8 Manual
Kolmisoft 2006-2009
104
Providers
Description
In old PSTN world they are called Trunks. These are your routes to outside world (out of your VoIP network).
Providers can be several types: Zap, SIP, IAX2, and H323. Type determines which technology is used to
connect to Provider.
At the very start you have to create Providers through which you will dial out to PSTN or other VoIP
networks.
Every Provider will charge you some money for calling through him (rate could be 0 also) to various
destinations. And to every destination rate is different. Following this logic we need to have Tariff (or Price
List) for Provider. This Tariff will tell our billing what price we pay to some destination if we are using this
Provider's services. In other words - that would be our Selfcost.
Providers' configuration can by found in SETTINGS Billing Providers.
Here enter the name for new provider, select its type, tariff and press Create.
NOTE: You can't create new Provider if there are no Tariffs available for Providers.

Settings
General
Name name for provider, for informational purposes
Technology SIP/IAX2/ZAP/H323 choose which one is used by your provider, e.g. in which way do
you connect to it
Tariff the rate list provider charges you
DTMF Mode available options: inband, info, RFC2833, auto choose which one your provider uses
Location which Localization rules set to apply to INCOMING calls COMING FROM this provider
Automatic Number Identification - used in special case explained here: Provider with ANI
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.
Device ID informational data - (not used starting from MOR 0.8)
Call limit - explained here: Simultaneous call limitation

Authentication
For ZAP providers
Channel which channel (or channel group) to use on PRI/BRI/PSTN card. Channels and groups
should be configured in zapata.conf.
MOR 8 Manual
Kolmisoft 2006-2009
105
For SIP/IAX2 providers
Login username if your provider asks for it
Password password used for authentication by your provider
Authenticate by IP just check the checkbox (Login/Password can be left empty)
o Make sure you put correct Hostname/IP adress!
Register - should we register to provider
Register extension - if provider asks to use some extension for registration (usually they don't) - put
it here

CallerID
CallerID consists of two parts: name and number. The "Number" part gets transferred by default by all
technologies: GSM, PSTN, SIP etc, the "Name" part only on some. The number you see on your mobile
phone when somebody is calling you is "Number" part.
Name the "Name" part of CallerID
Number the "Number" part of CallerID
NOTE: if you leave these fields empty calls coming from this provider will have CallerID set by Provider. It
should be like this almost always.

Network related
Hostname hostname of the provider
Server IP provider's IP, the value can be "dynamic", which means that provider can change its. To
discover this value do ping to the provider's hostname.
Port port used to connect to provider (default: 5060 for SIP, 4569 for IAX2, 1720 for H323)
Media control canreinvite/transfer do you want your server to stay in media path between your
clients and your provider (disable if you have a lot of 1s answered calls)
NAT available options: yes, no, never, route. For detailed explanation about these settings please
refer here.
Qualify how often "ask" provider about availability. More details here for SIP providers and here for
IAX2 providers.
Fast Start - H323 specific option, on or off
h245 Tunneling - H323 specific option, on or off

Codecs
Choose the codecs your provider uses.
NOTE: When no fields are checked that means that all codecs are available. ( E.g. settings in sip.conf or
iax.conf are effective)

MOR 8 Manual
Kolmisoft 2006-2009
106
Allowed addresses
IP, MASK permit traffic from these IP only. You can find detailed explanation here.

SIP Specific
Fromuser - more details
Fromdomain - more details
Trustrpid - This defines whether or not Remote-Party-ID is trusted. It's defined in
http://tools.ietf.org/id/draft-ietf-sip-privacy-04.txt
Sendrpid - Defines whether a Remote-Party-ID SIP header should be sent. Defaults to no. This field
is often used by wholesale VoIP providers to provide calling party identity regardless of the privacy
settings (the From SIP header).
Insecure - more details
T.38 Support - should we support T.38 pass-through?
SIP 302 Reinvite Support - turns on/off this SIP feature

See also:
H323 Provider settings








Terminators
Terminator is group of Providers (in MORs terms).
In reality Terminator is some company which sells/buys traffic to/from you. Then Providers (in MORs terms)
are gateways of this Terminator.

Terminators are used in reporting - in Aggregate and Summary reports.



MOR 8 Manual
Kolmisoft 2006-2009
107
Provider with ANI
First scenario
Automatic Number Identification for provider is used ONLY (at least we don't know any other situations)
when provider gives you some access number after which (IMPORTANT!) after which dialer enters
destination number WITHOUT PAUSES. E.g. WHOLE number is sent to provider instantly.
Explanation:
Let's say provider gave you access number 1234
When somebody wants to dial some destination, lets say: 22234567890, he enters on his phone:
123422234567890
22234567890 from provider comes to your MOR box
Because Provider is with ANI, we are checking user's CLI
If CLI is found - we know which user is dialing
Before he dials out, we change CallerID of this call by CallerID found in our database - that's minor
job, but it's part of algorithm
After that call is sent to 22234567890
IMPORTANT!!! - Do not check ANI for Provider if this description does not match your working
scenario!

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.






MOR 8 Manual
Kolmisoft 2006-2009
108
Configure Provider which can make calls
In order to allow Provider to make calls we need to:
1. Create new User for it
2. Assign Provider to this User
This video shows how to do this:
http://wiki.kolmisoft.com/index.php/Configure_Provider_which_can_make_calls





Configure Provider with dynamic IP
In Providers settings enter such values in
following fields:
Login - username for your device
Password - password for your
device
Make sure IP Authentication is
unchecked
Make sure Register is unchecked
In Hostname field enter: dynamic
In IP Address field enter: dynamic
Check NAT = yes if device is under
NAT, check NO - if device is not
under NAT
Check Qualify = YES
Example:

Make sure you enter correct Login and
Password!

Save changes.
When your device registers - in field IP
Address will be current IP address of the
device. Do not change it!



MOR 8 Manual
Kolmisoft 2006-2009
109
Simultaneous call limitation
It is possible to limit simultaneous calls per provider/did/user/device basis.
These settings limits simultaneous calls, not how many total calls user/device/provider(/did) can make!
When no more calls can be made - dialer hears BUSY signal (Starting from MOR 0.8).

Provider
Call limit - describes how many simultaneous calls Provider can make. 0 (zero) means that calls are
unlimited.
Hangupcause code 223 means that Provider can't make more simultaneous calls.
This limit is for outgoing calls through this Provider.

User
Call limit - describes how many simultaneous calls User can make. 0 (zero) means that calls are unlimited.
Hangupcause code 220 means that User can't make more simultaneous calls.
Hangupcause code 222 means that Reseller (as a user) can't handle (allow to his users to make) more
simultaneous calls.
This limit is for outgoing calls made by this User.

Device
Call limit - describes how many simultaneous calls Device can make. 0 (zero) means that calls are
unlimited.
Hangupcause code 221 means that Device can't make more simultaneous calls.
This limit is for outgoing calls made by this Device.

DID
Call limit - describes how many simultaneous calls DID can receive. 0 (zero) means that calls are unlimited.
Hangupcause code 219 means that DID can't receive more simultaneous calls.
This limit is for incoming calls made to this DID.

Special case
(Starting from MOR 0.8)
When DID points to Device and limit is reached, call will be routed to this device BUSY - Call Flow.
E.g. it is used to ring other device or send call to VoiceMail when main Device has call.



MOR 8 Manual
Kolmisoft 2006-2009
110
PBX connection to MOR
Common connection diagram
Any IP/PSTN capable PBX can be connected to MOR:


To simplify diagram - we can show the common way how any PBX can be connected to MOR:



Here main principles will be explained. For detailed example please see Trixbox section.
In this diagram we see that we have 1 PBX connected to MOR Billing system. 2 phones (Phone 1 and Phone
2) are connected to PBX. Now both phones can dial out to the PSTN through PBX and MOR.

Dialing from PBX
Our task is to bill each Phone separately.
In MOR we need to create 1 User/Device for PBX
We need to create Device for this PBX to describe how it is connected to MOR
MOR 8 Manual
Kolmisoft 2006-2009
111
You should mark this device as Trunk with ANI
To bill our devices separately we need:
To create for 1 virtual device for each real device connected to PBX
In device's CLI menu we need to add CallerID's of these devices as described in PBX - using CallerID
of device MOR recognizes who is calling and assigns call to correct device

Dialing to PBX
DID should be forwarded to PBX for real device to get call.
In order to assign DID to virtual device you need to do following steps:
1. Mark virtual device as Trunk
2. Assign DID to virtual device
3. Go to device's Call Flow
4. In Before Call state Forward call to PBX device
That way when call goes to virtual device through some DID it should go through PBX Trunk.
If you do not forward call to PBX device call will fail.
And this lets user login to GUI and see all incoming calls to his device.
ATTENTION! In order for virtual device to receive call from the DID, PBX should route call to
correct device. MOR does not know about real location/connection type of virtual device, it just
sends call to PBX and PBX should send call to correct device. MOR CAN'T influence PBX's
configuration so PBX should be configured separately to handle incoming call from the DIDs.

Example
Detailed example is prepared for Trixbox.















MOR 8 Manual
Kolmisoft 2006-2009
112
Payment gateways


PayPal
User can pay for the services or increase his balance using PayPal. MOR is fully integrated to PayPal and
does not need any manual intervention from administrator.
All PayPal options can be set in Configuration menu PayPal section.
PayPal payment option can be reached pressing on the PayPal picture in the main entry window:


When user clicks on this image he will get possibility to enter desired amount he wishes to pay:


Note the minimum value which can be set in Configuration menu. If user enters lower value he will not be
able to proceed.
After pressing on Confirm we get another window which shows us how much we will pay:
MOR 8 Manual
Kolmisoft 2006-2009
113

After pressing on Pay we go to PayPal webpage where we enter our account details and confirm the transfer.
After PayPal completes the transfer user gets back to the MOR interface. Now under his payments he will see
PayPal payment with some Status about his payment. PayPal payment can have many reasons why it is not
completed. For better understanding all this info is presented in Payments page:
Possible reasons of not completed PayPal payment:
echeck: The payment is pending because it was made by an eCheck that has not yet cleared.
intl: The payment is pending because seller holds a non-U.S. account and do not have a withdrawal
mechanism. Seller must manually accept or deny this payment.
multi-currency: Seller do not have a balance in the currency sent. Seller must manually accept or
deny this payment.
unilateral: The payment is pending because it was made to an email address that is not yet
registered or confirmed.
upgrade: The payment is pending because it was made via credit card and seller must upgrade his
account toBusiness or Premier status in order to receive the funds.
verify: The payment is pending because seller is not yet verified. Seller must verify his account
before he can accept this payment.
other: The payment is pending for a reason other than those listed above. For more information,
contact PayPal Customer Service.
Denied: Seller refused to accept this payment.
When payment is completed user's balance will increase by the value (without TAX) he paid by PayPal.
This integration let's have fully autonomous system where user can register online, pay using PayPal,
configure his device and dial instantly WITHOUT any intervention from systems administrator.
ATTENTION in order PayPal to work your server should have real IP and should be reachable from the
internet.

Resellers
Each reseller can enter his own PayPal address.
If you change PayPal as System Administrator - new Reseller will have same PayPal address upon creation.
He is able to change this address later.
MOR 8 Manual
Kolmisoft 2006-2009
114

Question:
What kind of PayPal account is needed to interwork with MOR?
Paypal offers two account types:
Business Account vs. Web Account
Answer:
As far as I know - both types will work with MOR.
I can tell that business account works 100%.
You can create Web account ant try with MOR - if it will not work - then it is free to upgrade to Business
account.


Notes
When account is blocked - user can't use PayPal.



Payment Fee
It is used mainly for payment gateways such as PayPal. PayPal takes some fee for the transaction.
More info: http://www.paypal.com/cgi-bin/webscr?cmd=_display-receiving-fees-outside






















MOR 8 Manual
Kolmisoft 2006-2009
115
Webmoney

o
Description
This payment gateway is popular in Russia and neighboring countries. Now MOR users can use
http://www.webmoney.ru/ to pay for services.

MOR configuration

Enabled: check it if you want to enable Webmoney for new signups and existing accounts.
WebMoney purse: your purse ID consisting of a letter and twelve digits.
WebMoney currency: currency for WebMoney
Default Amount: default amount
Min. Amount: minimal allowed transfer amount
Test: check it if you want to test your online Webmoney transactions.
WebMoney SIM MODE: testing mode
MOR 8 Manual
Kolmisoft 2006-2009
116
WebMoney Secret Key: optional set of symbols which you entered when setting your purse. Make
sure you have same key in WebMoney account.
Skip Prerequest option skips additional prerequest from WebMoney.
WebMoney logic requires to prerequest payment before it sends final confirmation about successful payment
(or failed).
Sometimes WebMoney does not send any info in prerequest. To avoid this situation this setting can be
checked to complete payment.
It is against WebMoney rules and policy. Security level is decreased! USE IT AT YOUR OWN RISK!


Webmoney configuration
Make sure in your WebMoney account you choose MD5 hash encoding. (Do not use SIGN encoding).
Example how to configure your Merchant gateway (use link to enlarge it):
http://wiki.kolmisoft.com/images/b/bf/Webmoney_merchant_setup.png




MOR 8 Manual
Kolmisoft 2006-2009
117
Technical details
Technical details for implementation: https://merchant.webmoney.ru/conf/guide.asp


Troubleshooting
If payment is not processed, check for error in your Webmoney Keeper.

payment 1.00 WM via merchant.wmtransfer.com has failed. Error:Merchant's website is not
available. HTTP_STATUS=404
Edit Web_Url in /home/mor/config/environment.rb to correct value, e.g. to hostname/ip to which your users
reach your site.
NOTE: make backup of environment.rb before editing it, restart Apache after editing (/etc/init.d/httpd
restart)

err: 4 merchant purse (Zxxxxxxxxx) not activated
You need to activate your purse.
























MOR 8 Manual
Kolmisoft 2006-2009
118
Call Routing

LCR
LCR is set of Providers which should be used to send call. LCR stands for Least Cost Routing. E.g. cheapest
rate is selected when trying to dial any destination.
Correct name for such function is Routing Table, because it support other ways for routing, not just Least
Cost Routing.
LCR supports fail-over: e.g. if one provider fails next one is dialed. This is completely invisible for caller
and lets you increase the chances for user to reach destination. Ff one Provider is not capable of delivering a
call - system will try to use remaining Providers.
LCRs' window can by found in SETTINGS Billing LCR
Supported routing modes:
By Price - cheapest first (Least Cost Routing)
By priority
By percent or Weight-based routing
User has one base LCR, e.g. all his calls are routed by some preset rule.
It is possible to route different destinations for User using Call routing per destination basis.

See also:
LCR Logic
How to add Provider to LCR
Call Routing by priority (Manual LCR)
Call routing per destination basis
LCR/Tariff change based on call prefix
Routing by Percent or Weight-based routing
Why call was not routed through other provider/trunk?





MOR 8 Manual
Kolmisoft 2006-2009
119
LCR Logic
Here simple LCR (Least Cost Routing) e.g. by price is explained in example:
Example
We have 2 providers A and B.
Dialed destination is 921XXXXXXXXXX
Provider A has such rates for prefixes(destinations):
92 rate 0.1
No other destination starts with 92
Provider B has such rates for prefixes:
92 rate 0.05
921 rate 0.2
So LCR in MOR will group this providers in following order:
Provider A with rate 0.1 (92)
Provider B with rate 0.2 (921)
It first dials through Provider A, if call fails, Provider B will be used to send the call.
If call is ANSWERED, BUSY or there's NO ANSWER - then call ends. And Provider B is not used.
It is used ONLY when call fails - CONGESTION.
In following schema LCR logic is presented in graphical way:
MOR 8 Manual
Kolmisoft 2006-2009
120

MOR 8 Manual
Kolmisoft 2006-2009
121
How to add Provider to LCR
Video: http://wiki.kolmisoft.com/index.php/How_to_add_Provider_to_LCR


Call Routing by priority (Manual LCR)
Call Routing by priority means that call is routed by predetermined order, not by cheapest price for
destination.
This method of routing is used when it is known that some Provider provides better quality for some
destination or for other reason call should go in some special order.
To set this you need to set type for LCR to be priority:


You can go to Providers and press on Change Order to change order of Providers for this LCR:


Now you can Drag&Drop Providers to change their order:
MOR 8 Manual
Kolmisoft 2006-2009
122


This video demonstrates how to do that.

Press Back when you are finished. Assign this LCR to users and route calls manually.

Call routing per destination basis
Some destinations needs fine tuning to better tell which providers should be used to reach that destination
and in which order.
Each user has some assigned LCR. For some destinations it is possible to tell to use different LCR.

This logic will be demonstrated by example.

Example
We take Paraguay as example, because this country has small amount of destinations:

MOR 8 Manual
Kolmisoft 2006-2009
123

Let's say we have 3 providers (in LCR: Primary), and we use them all together for all our destinations, and
route is picked by least cost route, e.g. LCR order is by Price:


Then we have situation, that calls to Paraguay does not go through provider Eutelia, except to Mobiles.

To handle this situation we create new LCR: Secondary, which order is Priority and it has only 2 provider
except Eutalia:


Now we need to configure Routing per destination.
Press on By destinations icon for Primary LCR (because Primary LCR is used by user who dials):


And create such configuration:
MOR 8 Manual
Kolmisoft 2006-2009
124


Explanation
Now when user dials any Paraguay FIX number, the call will be routed using LCR: Secondary with order:
priority:


We can press on Active destinations and will see for which prefixes such LCR applies:


As we know that Eutalia can route call to Mobile networks of Paraguay so MOB destinations will be handled
by old LCR:
MOR 8 Manual
Kolmisoft 2006-2009
125


We can press on Active destinations and will see for which prefixes such LCR applies:









MOR 8 Manual
Kolmisoft 2006-2009
126
How to route call to specific Destination through specific Provider
Lets say you want to route calls to one specific destination through one (or several) specific Providers.
As example we will take destination with prefix 370630.
1. Create new LCR with only 1 specific Provider in it
2. Use Call routing per destination basis to assign this LCR to destination 370630
That's it - very easy.
Now calls to this destination will be routed ONLY through this Provider.
You can add more Providers to your LCR and use it with many Destinations.
You can create many LCR/Providers/Destinations combinations and use them in a way you need.



Block some Destination to User
If you need to block some special prefix (Destination), follow these steps:
1. Create empty LCR (without Providers in it) - "Empty LCR"
2. In LCR which is used by User use Call routing per destination basis to add prefix which you want to
block
3. Assign "Empty LCR" to this prefix
Now when user will dial number with this prefix (Destination) - call will be routed to empty LCR which equals
it will be dropped.



LCR/Tariff change based on call prefix
Main purpose of this function is to allow route call through some Provider(s) based on call prefix.

You have to create a provider, tariff, LCR (where specified provider have to be), and user with his Device.
And most important is localization rule or rules. It should be applied per device basis (Device settings ->
Location), make sure specified device has correct rule applied. It must be noted that specified rules has
Higher priority than global rules.
1) Create new tariff, provider, LCR, user and device
MOR 8 Manual
Kolmisoft 2006-2009
127
2) Assign newly made provider to new LCR.
3) Create new localization rule, name for example "test1".
4) Assign device to location "test1"
5) Now edit "test1" rule, it should be done like with normal localization rules, but when you are
creating localization rule based on tariff or LCR, assign specified Tariff or LCR to correct place.
You can find more info how to make rules in Number Manipulation

Example
Lets say we have Provider which provider 3 quality routes: bad-cheap/normal/good-expensive.
Bad-cheap route is selected when dialing E164 number with prefix 00
Normal route is dialed when dialing normal E164 number
Good-expensive route is selected when dialing E164 number with prefix 000
To accomplish this we need:
Create 3 Providers with same connection settings:
o Bad_Provider
o Normal_Provider
o Good_Provider
Create 3 Tariffs for Providers:
o Provider_Tariff_Bad
o Provider_Tariff_Normal
o Provider_Tariff_Good
Enter/Import appropriate rates to these Tariffs
Assign these Tariffs to Providers
Create 3 LCR and assign appropriate Providers here:
o Bad_LCR - assign Bad_Provider here
o Normal_LCR - assign Normal_Provider here
o Good_LCR - assign Good_Provider here
Create 3 Tariffs for Users:
o User_Tariff_Bad
o User_Tariff_Normal
o User_Tariff_Good
Enter/Import appropriate rates to these Tariffs
Create Location BadNormalGood with following Rules:
MOR 8 Manual
Kolmisoft 2006-2009
128

Assign User_Normal_Tariff and Normal_LCR to User
Assign all User's Devices to Location BadNormalGood
That's it.
Now when user dials E164 numbers he will be using Normal route, when 00 - bad route, when 000 - Good
route.



Routing by Percent

This type routing lets route by percentage value of some Provider.
It is similar to Priority based routing except that here Providers are selected randomly with greater or lesser
probability.


Example 1
For example we have 3 Providers with such preferences:
MOR 8 Manual
Kolmisoft 2006-2009
129
A - 50%
B - 30%
C - 20%
That means that:
Provider A will be chosen FIRST with 50% probability
Provider B will be chosen FIRST with 30% probability
Provider C will be chosen FIRST with 20% probability
MOR orders these Providers using following algorithm:
At the first step it randomly selects first Provider, 50% it is chance that Provider A will be selected, 30% - B,
20% - C.
Lets say randomly selected Provider is B.
At the second step MOR selects from remaining Providers:
A - 50%
C - 20%
It is much greater chance that A will be selected (randomly) then C. So lets say A is selected.
Final order of our Providers will be:
B - A - C
Every time order is RANDOMLY! done the same way using percent values for probability.
So we can get various results, such as A-B-C, A-C-B, B-A-C, C-A-B etc, BUT, following mathematical
reasoning, when we make huge amount of tries and huge amount (going till infinity) sets will follow such
rule: In first step selected first Provider 50% of the cases will be A, 30% - B, 20% - C.

Example 2
To better illustrate the method, lets take simpler situation. We have 2 Providers with such percentages:
A - 99%
B - 1%
Now Provider A will be selected first 99% of the time, e.g. when we have many ordered lists, it will look like:
A-B, A-B, A-B, A-B, A-B, ........., B-A, A-B,........A-B, ..........
E.g. Probability, that Provider order will be B-A is just 1%.

MOR 8 Manual
Kolmisoft 2006-2009
130
Fail-over
This LCR ordering still keeps Fail-Over intact.
E.g. after we have ordered Provider list, and if first Provider in list fails - second will be dialed and so on.






Why call was not routed through other provider/trunk?
If you see that call was not routed through second (third/fourth/...) Provider/Trunk then do following steps:
1. Check Call Tracing - it is possible that other Providers can't handle the call (no rates, not configured
properly, not assigned to LCR, etc)
2. Check STATISTICS - Calls - Last Calls - check Hangup Cause for you failed call. If it is NO ANSWER or
BUSY then MOR does not route call to next Provider. More details here.























MOR 8 Manual
Kolmisoft 2006-2009
131
DIDs


DID Management
Description
What is DID?
In short it is external number to make incoming calls to your VoIP network to reach some device. (It's a
very simplified explanation which suits our needs right now).
For more extensive explanation please check here.
VERY IMPORTANT RULE: DIDs in MOR MUST be in E.164 format.
You can reach DIDs window in SETTINGS Billing DIDs:


Here you can see all DIDs and their info.
User/Dial Plan and Device shows who will answer when dialing this DID.
Pressing on user or device brings you to it's settings. If you press on icon you will go to device's Call Flow
window.





MOR 8 Manual
Kolmisoft 2006-2009
132
Status

Status is very important. For every just created DID status is Free.
DID can have several Statuses:
Free This status means, that DID is free to be reserved for any
user/device. You can also Terminate it.
Reserved DID is reserved but NOT actually used for some user. It is
useful in negotiation state before signing a contract when user decides
to sign up then we will Activate this DID. We can also make this DID
Free.
Active DID is assigned to some Device and its functional. We can
Close it.
Closed DID is no more functional. E.g. all calls going to this DID will
get Hangup. One important feature of this state: when DID is Closed, he
will be closed for some time (default 90 days) in case user will change
his mind and will decide to use this DID again. (Useful when user is not
paying for services, so we can suspend DID using just Closing it). MOR
will make it Free after time of Closing will run out. You canmanually
make it Free or Terminate this DID.
Terminated DID is no more used in MOR. Its here just for historical
purposes. You can make it Free if you want.

Settings
If you want to edit DIDs'
settings press on icon:

This window is for Free DID.
You can:
1. Change Provider and
language for this DID.
Language is for voice
prompts in Asterisk
dialplan.
2. Reserve DID for user
3. Assign to Dial Plan
4. Terminate DID
When DID is assigned to some
Device (Reserve for User first)
you have little different
choices:
MOR 8 Manual
Kolmisoft 2006-2009
133

Here you can:
1. Change provider/language
2. Assign DID to different device (for same user)
3. Assign DID to Trunk
4. Stop DID subscription and reserve this DID for 90 days (by default) to this user incase he will
change his mind and will want to get back this DID
When DID is assigned to Dial Plan choices are almost identical.
MOR 8 Manual
Kolmisoft 2006-2009
134
Add new DID(s)
In the main DIDs window if you want to add new DID(s) press on New DID:

In this window you can add one DID or series of DIDs. Also you should select provider which sold you this
DID.
Delete DID
At first mark it as not used (free). Then terminate it. When you do it you will see next to DID in main
DID window. Pressing on it you can delete DID.

Edit DIDs' number
It is not possible to edit DID number. You can only delete old one and create new one.


MOR 8 Manual
Kolmisoft 2006-2009
135
DID bulk management
In main DIDs window press Bulk Management and you will be able to do various actions with series of
DIDs:




Work flow for DID
Technical explanation:
1. Let's say call comes through some Provider. The connection type is not important. So it could be
PSTN/SIP/IAX2 whatever.
2. Call -> Provider -> PSTN/SIP/IAX2 -> Your Asterisk
3. Then call hits dialplan [mor] exten => _X.,1,mor:
4. Call -> Provider -> PSTN/SIP/IAX2 -> Your Asterisk -> MOR
5. MOR checks incoming DID with it's DB, if it's found, it sees where to route the call. In MOR GUI you
can select to route DID to some special Dial Plan (CallBack, Calling Cards, Authorization by PIN/ANI)
or some local device.
6. Local device in it's Call Flow can forward the call to:
1. VoiceMail,
2. another Local Device
3. External number
7. So summed up, MOR can forward DID to:
1. Dial Plan (CallBack, Calling Cards, Authorization by PIN, IVR)
2. Local Device
3. VoiceMail
4. External Number
8. Call -> Provider -> PSTN/SIP/IAX2 -> DID -> Your Asterisk -> MOR -> (Dial Plan or Local Device,
Voicemail, External Number) -> ...



MOR 8 Manual
Kolmisoft 2006-2009
136
DID Billing
DIDs can be billed. DID billing is quite complex for DIDs. They have 3 types of rates. That means there are 3
prices counted for 1 call. DID's rates can be reached in main DIDs window pressing on Rates icon for
selected DID:


Incoming rate
For incoming calls when Incoming rate is > 0 that means this rate is paid to system owner by user which is
dialing to that DID and it is profit for system owner.
Rate should be < 0 (less then zero) - then it means that this price is paid TO dialing user for the DID usage.
Dialing user - is user in MOR and this rate applies only then when MOR recognizes dialing user (by PIN/ANI).

Owner rate
For incoming calls when Owner rate is > 0 that means this rate is paid to MOR system owner by DID owner
and it is profit for system owner.
MOR 8 Manual
Kolmisoft 2006-2009
137
Rate should be < 0 (less then zero) - then it means that this price is paid TO DID owner.
This rate applies when DID is assigned to some user.
This rate is charged even if local user dials another local user using DID with Owner Rate set.
DID usage is not allowed if this rate is > 0 and DID Owner does not have enough balance to cover call costs.
DID owner rate is not applied to DIDs' owner, e.g. Owner of the DID will be not charged when dialing his
own DID.

Provider rate
For incoming calls when Provider rate is > 0 that means this rate is paid to system owner by Provider and it
is profit for system owner.
Rate should be < 0 (less then zero) - then it means that this price is paid TO Provider for the DID usage.



DID Billing Time explained
Which time in DID is billed?
Lets imagine we have a call, which consists of such parts:

Where:
A - when call hit DID and call was answered, this happens when system asks for DID, plays some
message or similar
B - when call was sent to Provider
C - when call was answered by final user
Then:
DID billable time is A - End
Normal call billable time is C - End
B - End is Call Duration
C - End is Call Billsec

MOR 8 Manual
Kolmisoft 2006-2009
138
DIDs Usage
STATISTICS - Various - DIDs - Usage
This page shows current DIDs status and actions with DIDs in selected period:




Example - Configuring DID to ring some Device
Primary situation
We have:
DID - external number provided by some Provider: 02180995165
Number is from UK
Connection to provider is via IAX2, IP: 23.45.67.89:4569
Devices we have: SIP/201 and SIP/201
We want:
Dial DID (02180995165) using our mobile phone and ring Device SIP/201
MOR 8 Manual
Kolmisoft 2006-2009
139

Dial DID (02180995165) using local Device SIP/202 and ring Device SIP/201 (local SIP-SIP call not
going to PSTN)


Configuration
Plan
1. Configure Localization for Provider
2. Create Provider
MOR 8 Manual
Kolmisoft 2006-2009
140
3. Register Provider
4. Create Devices SIP/201 and SIP/202
5. Create/Configure DID

Configure Localization for Provider
As DID is not in E164 format, we must configure MOR to handle that.
That means that DID from provider comes in non-E164 format: 02180995165
We must create Location for this provider and add rule to it.
We create Location: UK and add rule to convert non-E164 DID to E164 DID: 02180995165 ->
4402180995165


Create Provider
Create Provider in MOR GUI
Do not forget to set Location: UK for this Provider.

Register Provider
IF your Provider asks you to register do it.

Create Devices SIP/201 and SIP/202
Create Devices as usual (no need to edit any of .conf files!!!)
DO NOT forget to set Location: UK for these Devices.

MOR 8 Manual
Kolmisoft 2006-2009
141
Create/Configure DID
Create DID in E164 format

Reserve this DID to your User

MOR 8 Manual
Kolmisoft 2006-2009
142
Assign DID to Device SIP/201


That's it.



Forward DID to External Number
Create some User/Device
In Devices' Call Flow in Before Call section select Forward
Then enter External Number where you want to forward the call (Make sure number is in E164
format)
Assign your DID to this User/Device
Now when call comes to DID it will be forwarded to External Number.
VIDEO: http://wiki.kolmisoft.com/index.php/Forward_DID_to_External_Number



MOR 8 Manual
Kolmisoft 2006-2009
143
How to charge DID on a monthly basis
Assign DID to Users' Device
Create Service with name for example: "DID price for 1 month"
Put some price for it
Create Subscription for User for this service
This subscription will be visible in Users' Invoice
VIDEO: http://wiki.kolmisoft.com/index.php/How_to_charge_DID_on_a_monthly_basis




DID handling by Localization
When call comes in to your system from the Provider they should be localized to E.164 format for DID
search. In other words as DIDs are in E.164 format, whatever comes from provider should be localized
to E.164 to find correct DID.
To do this each Provider has Location also. That means that Location rules can be created and applied for
Provider. You can do this in Provider settings window:

Example: you have DID 37052058393 and provider sends you 0037052058393. You need to strip this
international prefix with following rule:
MOR 8 Manual
Kolmisoft 2006-2009
144

And do not forget to apply correct Location to the Provider!
Special case: In some countries when E1 is connected to the server, only 4 last digits of the number reach
MOR. Localization should be used here to add remaining part of the number.


See also:
Number Manipulation
o Localization
o Provider Rules
o Number Manipulation Examples







DID Blocking
If customer is not paying or for whatever other reason you want to block calls to his DIDs - go to DID
window and Close DIDs which belong to this customer.
"Blocking" in User EDIT menu will not block his DIDs. It will only block dialing. E.g. user will not be able to
dial out.




MOR 8 Manual
Kolmisoft 2006-2009
145
Dial Plans
Dial Plan is name for specific functionality in MOR. Currently there're following types of it:
Authorization by PIN
Authorization by ANI
Calling Card Dial Plan
Callback Dial Plan
IVR Dial Plan
You can find all dial plans in SETTINGS Billing DIDs Dial Plans

Authorization by PIN
This function is for customers who can dial some access number and enter their device PIN number get a
dial tone to enter some destination number.
It is used in some countries to get cheaper calls abroad.
The algorithm for Auth. by PIN dial plan is visible in following image:



The main things to do in order to configure such functionality are:
1. Create appropriate Dial Plan
2. Assign some DID to this Dial Plan
MOR 8 Manual
Kolmisoft 2006-2009
146

At first in main Dial Plan window we press on New Dial Plan and enter values to create Auth. by PIN
dial plan:



IMPORTANT! Check the Use ANI? field otherwise it will different type of Dial Plan.
Ask Number/PIN (times) how many times user can try to enter PIN
Ask destination (times) how many times user can try to enter destination
Press on to create this dial plan. First part is done we have created our dial plan:


Now we need to assign some DID to this Dial Plan. For this in DIDs' edit window we assign selected DID to
this Dial Plan:


And in main DIDs' window we see that this DID is pointing to our Dial Plan:
MOR 8 Manual
Kolmisoft 2006-2009
147

That's it. Very simple. Now dialing 37063042439 we reach our Dial Plan. Here we will hear message which
asks to enter device PIN. If PIN is correct we can dial desired destination.
See also:
Dial Plans














MOR 8 Manual
Kolmisoft 2006-2009
148
Authorization by ANI
This method is variation of Auth. by PIN method. There's one setting which changes the behavior of the
system to act in different way. When you check Use ANI? field in Dial Plan creation window - then when user
will dial in his CallerID will be checked. Only if CallerID is not found he will be asked to enter his PIN.
CallerIDs are entered for every device in device settings using icon.
ANI - Automatic Number Identification
ANI is action which is used to authenticate who is calling by CallerID.
When call comes into MOR, CallerID is checked with all available CLI's in DB. If match is found - call is
authorized and assigned to the device which CLI is matched against CallerID of the call:



All other details are the same as for Auth. by PIN dial plan. We are creating this dial plan same way, just
check Use ANI?:



And in main Dial Plan window we have:
MOR 8 Manual
Kolmisoft 2006-2009
149


Note the difference between Auth. by PIN and Auth. by ANI dial plans.
Assigning DID is similar as to Auth. by PIN method.

ATTENTION! Be careful because it is very easy to fake CallerID.

See also:
Dial Plans












MOR 8 Manual
Kolmisoft 2006-2009
150
Calling Card Dial Plan
Overview
When we have Calling Card Group and Cards generated we can create Dial-Plan for this Group.
Dial Plan can be treated as set of rules how to handle particular Calling Card Group. You can set different
rules for same Calling Card Group.
This entity (Dial Plan) let's you to have more control over Calling card Groups.

Dial Plan creation
Let's go to SETTINGS Billing DIDs Dial Plans:


In this image we can see already created Dial Plan for Calling Card Group.
Let's review each field:
Name just for informational purposes
Number length tells IVR how much digits to wait for NUMBER which is asked to be entered
PIN length how many digits for PIN to wait
Ask only PIN as PIN is unique it is sometimes wise to ask only PIN because users can make
mistakes and get annoyed entering too much digits
Tell time should IVR tell time after Destination is entered?
Tell balance should IVR tell balance after user enters NUMBER/PIN?
Ask Number/PIN (times) how many times user can try to enter Number/PIN
Ask destination (times) how many times user can try to enter Destination
Assigned DID(s) just for informational purposes to see which DID(s) are assigned to this Dial
Plan

When creating new Dial Plan you will need to enter correct Number and PIN length values e.g. of existing
Calling Card Group's. Otherwise you will not be able to create Dial Plan.
MOR 8 Manual
Kolmisoft 2006-2009
151

Assign DID to Calling Card Group Dial Plan
When we have created Dial Plan for some Calling Card Group we can assign one or more DIDs to this Dial
Plan.
DID or in other words Access Number is vital for using Calling Cards. User will use this number to reach
IVR.
You can assign unlimited DIDs to same Dial Plan. DID can be assigned to one Dial Plan only.
It is useful when you are selling Calling Cards in different regions e.g. countries. So in country A user will
dial one number (which is cheaper for him or even free) and in country B user will dial another number.
They will reach same IVR and will use same service but they will save on telephone fees.

In SETTINGS Billing DIDs:


We will press on icon for the first DID:


We select our Dial Plan and press confirmation icon to assign our Dial Plan to this DID:
MOR 8 Manual
Kolmisoft 2006-2009
152


Now user can dial number 12026911622 (in example) and he will be able to reach IVR and use his Calling
Card.






































MOR 8 Manual
Kolmisoft 2006-2009
153
Additional functionality


IVR system
This system lets configure advanced IVR (Interactive Voice Response) systems.
Definitions
Voices - set of audio files which together forms a "voice", e.g. some female/male set of recordings
for same IVR
Time Periods - start date/time and end date/time which describes some time period
IVR - set of IVR blocks
o Blocks - part of IVR, where caller can take some action (press a button-extension, listen to
recording, etc)
o Extensions - possible button presses (0-9, *, # and some other special cases)
o Actions - what action system should do when new Block is reached

Setup logic
Create Voice
o Record/Upload necessary sound files to Voice
Create Time Period(s)
Create IVR
o Create and configure Block(s)
Create IVR Dial Plan
Assign this IVR Dial Plan to some DID
Call this DID to test

IVR Voices
SETTINGS - Setup - IVR - Voices
Here it is possible to create several Voices. Voice is set of sound files. Usually all sound files in one Voice is
recorded by one person to keep it sound correctly.
Multiple operations can be performed with Voices:
View a detailed list of the system Voices
Add a new sound Voice
View the sounds that have files in different Voices
Upload new sound files for Voices
Delete Voices and voice files from the system
MOR 8 Manual
Kolmisoft 2006-2009
154
You cannot remove sounds that are currently used.

Time Periods
SETTINGS - Setup - IVR - Time Periods
Here time periods can be set. They determine some time period.
Periods in Dial Plan are limited to 3. 4th period is all remaining time which is not covered by previous 3
periods.
IVR Structure
IVR - set of IVR blocks
o Blocks - part of IVR, where caller can take some action (press a button-extension, listen to
recording, etc)
o Extensions - possible button presses (0-9, *, # and some other special cases)
o Actions - what action system should do when some extension is activated
The main part of IVR is Block. Whole IVR is set of Blocks. Block can be considered as some part at IVR logic
where caller can take some action.
Extension is what user does - presses some button (0-9, *, #), waits (Timeout) or presses any non
described extension - which can be described as Invalid Extension - we will explain this in details later.
Actions are some actions which will be activated when caller comes to Block
Example
For example we have simple IVR:
when caller calls some DID and IVR answers with recording "Thank you for calling SOME COMPANY,
for sales press 1, for management press 2, to get to live person please hold or press 3"
Here we have only 1 block: user listens to recording and can take some Action -> press some button
(Extension) or wait (Wait is also Extension but special - it is called Timeout).
If user presses something different then 1, 2 or 3 - then message will be played again. This is called Invalid
extension (i).
To summarize we have such situation:
1 Block
Extensions: 1, 2, 3, t (timeout), i (invalid)
Actions: call to sales, call to management, call to live person, play recording again
This example is to illustrate main IVR building parts. We will show how they play together to build working
IVR.

MOR 8 Manual
Kolmisoft 2006-2009
155
Extensions
Extensions are button presses on dialpad: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, * and # and two special extensions:
t - means timeout, when no extension is pressed in some determined time period
i - means invalid, this extension becomes active, when caller presses some extensions which is not
described in IVR block configuration.
i (invalid) extension in previous example could be triggered when buttons 4, 5, 6, 7, 8, 9, 0, *, # are
pressed, because only 1, 2 and 3 are described.

Actions
Action is some (yes...) action which is executed when new Block is reached.
Possible Actions:
Playback - plays some sound file
Delay - delays execution by some seconds
Change Voice - changes IVR Voice
Hangup - finishes the call
Transfer to - transfers call to:
o Another IVR
o DID
o Device
o Block
Debug - text message to Asterisk CLI which helps debugging
Set Accountcode - sets ownership for the call to some other user

Deleting IVR
If IVR is not assigned to any Dial Plan then you can delete IVR by pressing icon near some IVR in
IVR menu.
If IVR is assigned to some Dial Plan, you need to unassign IVR from Dial Plan in order to be able to
delete it.

Setup Hints/Tips
If you want to play some sound file, make sure you have set correct Voice. By default Voice = 'en',
and if you have uploaded sound file for different Voice - select it before playing your Sound File:
MOR 8 Manual
Kolmisoft 2006-2009
156



See also
IVR for Calling Cards
Dial Local























MOR 8 Manual
Kolmisoft 2006-2009
157
IVR for Calling Cards
Description
This example shows how to add some IVR before Calling Cards.
Usually it is some greeting telling that "Welcome to X Cards, thank you for using our services...."
We need to have Calling Card Dial Plan already created to proceed (check main guide how to do that).

Steps
We need to do following steps:
1. Create Voice
2. Upload Sound file to this voice (e.g. Greeting)
3. Create Time Period (in which our IVR will be active, we will make it active all the time)
4. Create IVR which does following steps:
1. Waits 2s for call to be established
2. Changes language/Voice to 'zn' - e.g. Chinese
3. Plays greeting
4. Transfers call to Calling Card Dial Plan (through DID)

Logic
Main logic of this example is following:
User dials into IVR Dial Plan DID (we will use 111 for example)
DID 111 forwards to IVR Dial Plan
IVR Dial Plan plays greeting
Forwards to Calling Card Dial Plan DID (we will use 222 for example)
DID 222 forwards to Calling Card Dial Plan
Calling Card Dial Plan executes with normal Calling Card logic
Note: that DID 222 is middle DID used for inner routing. It can be fake. DID 111 should be real so real calls
could come to it.

Video

This video demonstrates whole setup process:
http://wiki.kolmisoft.com/index.php/IVR_for_Calling_Cards#Video

See also:
IVR system
MOR 8 Manual
Kolmisoft 2006-2009
158
Callback
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 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.
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.
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.

Common Callback diagram



MOR 8 Manual
Kolmisoft 2006-2009
159
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.
Supported Callback methods in MOR divided by initialization method (what triggers Callback):
Call
Over GUI
Over Email
Over API
Click2Call

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.
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.


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:
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. 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. Type and
all details do not matter. This device is pure virtual.
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.


MOR 8 Manual
Kolmisoft 2006-2009
160
Types of Callback in MOR
Callback in MOR can be divided in three separate parts by the way user is authenticated/authorized:
1. By User Device's PIN
2. Using ANI (Automatic Number Identification)
3. By Calling Card's Number/PIN (or only PIN)


Callback with Device's PIN authentication/authorization


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.


MOR 8 Manual
Kolmisoft 2006-2009
161
Callback Using ANI (Automatic Number Identification)


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 user is asked to enter his Device's PIN number.
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.


MOR 8 Manual
Kolmisoft 2006-2009
162
Callback By Calling Card's Number/PIN (or only PIN)


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
MOR 8 Manual
Kolmisoft 2006-2009
163
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

See also:
WEB Callback
Callback over Email
API Callback
Callback setup example
217 Callback not initiated because device not found by ANI
Can't setup callback
Callback and Calling Cards




WEB Callback
You can find Web Callback in PERSONAL MENU Various - Callback
Main window let's you enter callback details:


When you enter source (and destination if you wish) press Execute and you will get call to Source after that
you will be connected to Destination (or asked to enter destination and only then connected).

See also:
Callback
MOR 8 Manual
Kolmisoft 2006-2009
164
Callback over Email
This function receives email and initiates callback using details in this email.
Device can have one CallerID from which is able to initiate Callback.
Admin setups email box which should be monitored for callback execution.
SMS to initiate callback can look like:
For CallerID change: change*new_callerid
For callback inititation:
first_number#second_number
first_number - will ask destination
Then SMS gateway should send email to MOR to initiate callback in following format:
CallerID change:
Email subject: change
Email body: old callerid\nnew callerid, (\n) means new line
Callback inititation:
Email subject: callback
Email body:
MOR_PARAM1 auth_callerid
MOR_PARAM2 first_number
MOR_PARAM3 second_number

See also:
Callback
Callback over Email technical specification









MOR 8 Manual
Kolmisoft 2006-2009
165
Click2Call
This function lets press on phone icon in MOR GUI to initiate callback to selected number.
MOR will ring your default device and when you pickup - it will ring the destination number.
Click2Call works in following way:
1. You press on the icon next to phone number.
2. You phone rings
3. When you pickup you phone you are connected with number you pressed.
When you press on the icon next to phone number the small popup window appears which shows that
number is dialing.

ERROR! - NO DEVICE INFO
Check if you have any device.
E.g. if you login as admin to the MOR GUI, go to: http://YOUR_MOR_IP/billing/devices/show_devices/0 and
check if you have any device.
If so - make sure that this device is working and it is marked as default.

Call is not activated
Make sure you have marked some of your device as Default and that this Default Device is connected to
Asterisk server, e.g. you can call from it outside.
See also:
Callback











MOR 8 Manual
Kolmisoft 2006-2009
166
Callback setup example
This example will demonstrate all steps outlined before to create all 3 types of Callbacks.

1. Let's create Callback User:


2. Then Callback Device:


Device's settings are not important at all leave everything empty. They will not be used anyway.

3. Callback Tariff:


It is worth to note that Callback Tariff can be Retail or Wholesale. Here in example we made Retail tariff.
MOR 8 Manual
Kolmisoft 2006-2009
167


Here we added rate only to Lithuania MOB because we will test it with it. That means we are allowing user
to receive callback only to Lithuania MOB number.


4. Assign Callback Tariff to Callback User:


5. Calling Card and Auth. by PIN Dial Plans should be created in order to proceed with Callback.
Here we will create 3 different Dial Plans: each one for different Callback type.
Each Dial Plan should have DID assigned to him.


Here we have 3 different Dial Plans. Each one for different type of calling:
MOR 8 Manual
Kolmisoft 2006-2009
168
Calling Card Test DP is associated with DID 3703721028. Dialing this DID we will be able to use
our Calling Card.
Auth. by ANI DP is associated with DID 3703721027. Dialing this DID system will try to
authenticate/authorize user by his CallerID. If it does not succeeds will ask for PIN.
Auth. by PIN DP is associated with DID 3703721026. Dialing this DID system will ask for a PIN.

In DIDs section these Dial Plans look like this:


Important! These Dial Plans are active by themselves. E.g. Dialing associated DIDs you will get service
described by these Dial Plans. Callback is not configured yet.

6. Now we will create 3 Callback Dial Plans to demonstrate each of 3 Callback types:


Here we created 3 Callback Dial Plans and associated each of them with different Calling Card/Auth. by
ANI/Auth. by PIN Dial Plan.
Wait Time means how many seconds to wait after Initiation Call before calling back to user.
Do not forget to assign Callback Device to Initial Callback device as shown in example!

7. Assign DIDs to Callback Dial Plans



And in Dial Plan section same info in other perspective:
MOR 8 Manual
Kolmisoft 2006-2009
169


In Assigned DID(s) section you can see assigned DIDs for Callback Dial Plans.
What does it mean?
Lets review what we had done just now.
Callback for PIN line shows us that when user dials number 37041201026 he will initiate callback.
He gets called back and is connected to DID 37037210226 which is Auth. by PIN Dial Plan. Here he
will be asked for PIN. That's Callback with Auth. by PIN.
Callback for ANI line shows us that when user dials number 37041201027 he will initiate callback.
He gets called back and is connected to DID 37037210227 which is Auth. by ANI Dial Plan. Here
user's CallerID will be checked and if not recognized he will be asked for PIN. That's Callback with
Auth. by ANI.
Callback for CC line shows us that when user dials number 37041201028 he will initiate callback.
He gets called back and is connected to DID 37037210228 which is Calling Card Dial Plan. Here he
will be asked for Number/PIN of the Card. That's Callback with Calling Card.

This finishes example about various types of Callback and how to setup them.

See also:
Callback











MOR 8 Manual
Kolmisoft 2006-2009
170
PBX Functions
Tell balance
This function lets hear balance of the account. Account holder can be user or card.
It is possible to hear balance in different currency and language.
First MOR tries to find user by accountcode, then by CallerID using ANI, later it asks for PIN if previous
methods fail.
MOR asks for Card PIN if card balance should be told.
Milliwatt
Generate a Constant 1000Hz tone at 0dbm (mu-law) - good for testing line quality for loss-packets.
More info about Milliwatt

Use Voucher
This function lets enter voucher number over phone and top up users' balance.

Dial Local
Dial Local

DTMF Test
System will ask you to enter some destination and press #. After that it will tell you what you had entered.
If system asks again to enter destination WITHOUT first telling what you entered - that means you have
problems with DTMF.

Check VoiceMail
Allows to check VoiceMail over DID.



MOR 8 Manual
Kolmisoft 2006-2009
171
Dial Local
This function allows to dial local extension.
Most often it is used to allow to reach local users dialing DID from outside.
Somebody from outside PSTN dials access DID
Enters Local Extension
Local extension rings
Video how to create PBX Function "Dial Local" and assign it to some DID:
http://wiki.kolmisoft.com/index.php/Dial_Local
If you want to play some audio before entering local extension assign such DID to IVR (which plays
necessary audio).
Video how to do that: http://wiki.kolmisoft.com/index.php/Dial_Local
Now dialing DID 22222 audio will be played asking to enter local extension.
NOTE: DIDs 11111 and 22222 are just for demo purposes - instead of 22222 use real DID, you can use fake
DID 11111 if you will not use it directly.























MOR 8 Manual
Kolmisoft 2006-2009
172
Call Shop functionality
Definition
MOR is not used in Call Shops very often but has some _BASIC_ Call Shop functionality which will be
described here.
The main idea is to have several Phone Booths (we will call them Users) which are allowed to dial out.
After that they get billed for the calls they made.

Setup
First of all we need to create new Group for Call Shop.
Select SETTINGS Groups New group


Enter name for Call Shop (CallShop in example) and select Type as callshop. Press Create.


Now we have group which will be use for Call Shop. We need to add some members to this group.
Member is User in MOR terms. Lets add them.
Press on Members for the CallShop group:
MOR 8 Manual
Kolmisoft 2006-2009
173


Each group can have different types of members. Member can be Manager and User. Manager will
manage the group. Group can have several managers.
Lets add manager for our Call Shop. Usually that will be System Admin.
Make sure in selection list Add new member admin System Admin is selected and press Add member
button:


When new member is added, its type is user, lets change it to manager
Press on Change type for our only user:


Now we have manager for our group:

MOR 8 Manual
Kolmisoft 2006-2009
174

Also instantly we have new controls for the CallShop group under MANAGEMENT, because we are logged
in as System Admin


Now we need some users for full Call Shop functionality. These users will do actual calling.
We add them same way as our manager but we leave their type as user:


And second:


Now we have 3 members: 1 manager and 2 users:


The setup is complete. If users have correct setup (devices, tariffs, LCRs, etc) and they can dialout, then we
can start using our Call Shop.

MOR 8 Manual
Kolmisoft 2006-2009
175
Operation
Now we go to MANAGEMENT Groups CallShop and we see our main Call Shop management window:


1. Here you can select the period you want to check. Its saved in your browsers' memory and if you go
to other pages, you will have this period selected automatically.
2. Calls/Duration are for the selected period.
3. Login shows last login time of the user. If its empty that means user is not logged in and he can't
call. If you press on login time, you will get detailed list for that login time till current moment.
4. Login duration how long user is logged in.
5. Here are controls which lets you to login/logout user, at the same time to allow him to call or
disallow him to call.
6. By pressing on this link you will get detailed list of calls in selected period.
7. Here you will get list of logins in selected period grouped by days.

The main procedure is as following:
1. New person comes to your callshop and wants to call.
2. You select free user in Call Shop management window and press on button Login (5) allowing calls
from this Call Booth.
3. Person goes to this Call Booth which represents some user on management interface and starts
calling.
4. When he finishes he comes back to you (manager).
5. You press on Login time (3) for this user and you get a list with all users calls.
6. You can get PDF report for users calls, print it and give it to user.
7. User pays for the calls.
8. You press Logout (5) for his Phone Booth ending this session.

When you press on Login time (3):

MOR 8 Manual
Kolmisoft 2006-2009
176

you will get call list from this login time till current moment:


Here you can press on Export to PDF to get same result in PDF format:


When you press on Logins (7) you will get Logins window:

Here you will find graphical representation and all logins sessions with ability to get call list for all of them.
MOR 8 Manual
Kolmisoft 2006-2009
177
Fax2Email
Definition
This feature let's user receive normal fax and get it to email in PDF format. The following image shows
common implementation of Fax2Email functionality:


NOTE: Fax over VoIP does not work reliably and should only be used for testing purposes only.

Setup
In order to start using this feature it should be enabled in
Settings Various Fax2Email enabled.
When it's enabled you need to create some device and make
it FAX type. It can be done in device settings:


When device's type is FAX it is marked as FAX device
everywhere with icon
Then you need to add emails to which received fax should
be sent. You can enter unlimited emails here.

When fax device is created you have two possibilities to use
it:
1. It is possible to route call directly to fax device
2. You can use fax-detection, so when fax is detected
it will be routed to fax device and if it is not detected
to nornal device.
Second choice lets you save one DID e.g. lets receive calls
MOR 8 Manual
Kolmisoft 2006-2009
178
and faxes on same number.
First method is very easy to implement you just need to assign FAX device to some DID:


When you want to do fax-detection you need to set this in some device's Call Flow. In Before Call state:


Here when call comes system will try to decide is it fax if so call is routed to FAX device and sent to
appropriate emails. If call is simple call it will gets sent to IAX2/101 device.
MOR 8 Manual
Kolmisoft 2006-2009
179
For received faxes and various stats check Fax statistics in STATISTICS - Various - Faxes section:


Stats
This report show all info about received (or not) faxes. It can be found in STATISTICS Various Faxes:


All users are visible here. Fax can have 3 states:
Received everything ok with this fax it's received and sent to appropriate emails
Corrupted fax is received but it's corrupted e.g. no good to send to email
Mistaken that was simple call to fax number not a fax
You can press on number for each state to get list of these faxes:
MOR 8 Manual
Kolmisoft 2006-2009
180

Pressing on you can get this fax in PDF format.

See also:
Fax over VoIP



























MOR 8 Manual
Kolmisoft 2006-2009
181
Recordings
It is possible to record selected users' calls for monitoring purposes.
In order to use Recording you have to setup which users' calls you want to record.
Go to SETTINGS Users Recordings and you will see such window:

Here you can check Record? field for the users you want to record and press Change at the bottom for the
changes to take effect.
You can view/listen/download/delete these recorded calls by selecting Show in the Recordings window. You
will see something like this:


MOR 8 Manual
Kolmisoft 2006-2009
182
Sound format
Recordings are saved into mp3 format. 1mb can save around 4min of recordings.
To extend Recordings functionality Recordings Addon is available. It allows more advanced functions with
recordings.

See also:
Recordings Addon


































MOR 8 Manual
Kolmisoft 2006-2009
183
PhoneBook
Purpose
PhoneBook has several purposes:
1. It changes CallerID Name if Caller is recognized from PhoneBook
2. Speed Dials are configured in PhoneBook

Definitions
Therere two types PhoneBooks: Global and Simple
Theres only 1 Global PhoneBook
Each user has his own Simple PhoneBook except admin user - he is owner of Global PhoneBook
Users' Simple PhoneBook has higher priority than Global PhoneBook e.g. if record is found in
Global and in Simple PhoneBook the record from the Simple PhoneBook will be used

Global PhoneBook

This PhoneBook is managed by System Admin and is applicable to all system Users (e.g. Global).
Good use for it is to create some short numbers for Users to call for Support/Emergency/etc.
Speed Dial feature is explained here.

Simple PhoneBook
Each user has its own Simple PhoneBook which has higher priority than Global PhoneBook. E.g. if records
match from Simple PhoneBook with Global PhoneBook - record from Simple PhoneBook will be used. (Again
in other words - user can overwrite System Admins PhoneBook record.)
MOR 8 Manual
Kolmisoft 2006-2009
184

NOTE: Record '22'. It is Global - e.g. created by System Admin. User can use it but he can't manage it.
Speed Dial feature is explained here.

Using CallerID Name overwrite
When call with the number (CallerID Number) which is in PhoneBook calls-in, MOR checks this number and
sets CallerID Name to the value from PhoneBook.
Its visible on phones which support CallerID Name:


Using Speed Dials
Speed Dial feature is explained here.




MOR 8 Manual
Kolmisoft 2006-2009
185
Speed Dials

This functionality lets user to enter short number (Speed Dial) which transforms to some real long number
which should be dialed instead.
For example User can set if he dials '11' the system will transform this to full number, e.g. 37063042438, so
User will save time for dialing long numbers.

Speed Dials can't be equal to extensions of local devices - if they are - they are ignored and local devices are
dialed instead.
Speed Dials can point to DIDs.

Speed Dials are applicable for Users and Calling Cards.
E.g. Speed Dials are active for following types of dialing:
Simple dialing from VoIP devices (e.g. local calls)
When user is authenticated over ANI or PIN
For Calling Cards

Speed Dials for Users
Speed Dials for users are incorporated together with PhoneBook functionality and slightly differs from Calling
Card implementation.
More details: Speed Dials for Users

Speed Dials for Calling Cards
Speed Dial for Calling Cards is pretty simple: Speed Dials for Calling Cards









MOR 8 Manual
Kolmisoft 2006-2009
186
Backup system
Backup system backups MOR database and lets restore it at any time.
Backup system can be configured in Settings:


If Run Backup according below schedule is checked, then following settings become active:
Month - at which month backup should be made
Day of every month - at which month day backup should be made
Day of week - at which day of the week backup should be made
Hour - at which hour backup should be made
Keep on local server - how many backups to keep on server. System deletes oldest one if limit is
reached
Don't start backup if disk space less than - checks disk space before making auto backup

Now in Settings - Backups we can press on New Backup to create new Manual Backup:

MOR 8 Manual
Kolmisoft 2006-2009
187
Enter some comment and press on Create to create Manual Backup:


You can download backup by pressing on Download icon or Restore backup pressing on Restore icon:


When scheduler (which runs every hour) makes auto backup it is seen as type = auto in backups list:





Data import

It is possible to import Users/Devices/DIDs from CSV file.

How to do that is explained here: http://wiki.kolmisoft.com/index.php/Data_import

MOR 8 Manual
Kolmisoft 2006-2009
188
CDR Import
Import
Sometimes MOR can be used as separate billing software not doing realtime billing. For that purpose it is
possible to import CDRs from other switches (can be not Asterisk) and bill these CDR's.
CDR Import can be found in SETTINGS Billing Functions CDR Import.
First step is to select some CSV file to import:


Press on Upload file and you will get next window where you will have to assign columns to CDR values:


On step 2 you can see necessary fields to select. They are marked by *(star). You can select to enter
Date/Time in one line OR Date AND Time in separate lines. Without selecting at least one field marked by *
you will not be able to continue import process.
MOR 8 Manual
Kolmisoft 2006-2009
189
Select appropriate settings and press Assign Columns:


Here you will be presented with parsed file. If something is not right press Back button. If it's ok
Confirm columns:


Here we select the User to which we want to assign all these calls.


MOR 8 Manual
Kolmisoft 2006-2009
190

Here we select Device to which all these imported calls will be assigned and Provider.

Finally file is imported.

Export
You can export CDR in PDF or CSV formats. It can be done in Call Stats page (STATISTICS Calls) and
other places where you see:
Export to PDF
Export to CSV
Just press on one of these links and you will get CDR in selected period.














MOR 8 Manual
Kolmisoft 2006-2009
191
CDR Rerating
This function is used when you edited rate for some customer and you want to recalculate price for his calls
in the past. You need to select user, period and system recalculates all prices for all calls in selected period
for selected user. The rating mechanism is the same as in MOR application but here rating is done by GUI.
Be patient if there are many calls it can take some time to rerate all of them.
You can reach Rerating in: SETTINGS Billing CDR Rerating:


Select date interval and user which calls you want to rerate and press Proceed:


Here you see call stats for selected date interval. Also you can save old data in PDF or CSV formats. When
you are sure everything is correct press Rerate:
MOR 8 Manual
Kolmisoft 2006-2009
192

Here you will see the Difference after Rerating.

Testing mode
You can check Testing mode and select any Tariff for user.
This way Rerating will not save changes to calls/users.
Testing mode is useful for testing "What if User had this Tariff" scenarios.















MOR 8 Manual
Kolmisoft 2006-2009
193
Online registration
This function lets user to register online. It can be accessed in MOR's entry page clicking on: If you are new
user you can sign up here:


Registration should be enabled in Settings in
order to work. Various settings are also set in
Settings -> Registration part.

In following window user should enter his
details. Fields marked by * are mandatory:


After pressing on Sign up user will get
registered, his account is created and he will
get connection info on his screen:
MOR 8 Manual
Kolmisoft 2006-2009
194

If email sending is enabled (in Settings) and Email SMTP server's details are valid user will get Email with
all the settings. Same to administrator he will get informational email about this user that he registered to
the system. These two settings should also be enabled.
If you set every setting to send email to admin when new user registers but no email arrives - check if you
have email set for admin user.

See also:
Registration Configuratin
ReCAPTCHA








MOR 8 Manual
Kolmisoft 2006-2009
195
Quick Forwards
Some DIDs can be assigned to Quick Forwards functionality. 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 CallerIDs 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 number.
User can manipulate his Quick Forwards in his menu. He needs to login to GUI to change numbers.




MOR 8 Manual
Kolmisoft 2006-2009
196
Transfers with MOR
When call comes to DID and then to Local Device, transfers from Local Device does not work by default
because of the way how Asterisk handles Local Channels.
You need to create at least one action in this Device's Call Flow to enable Transfers.
E.g. Set VoiceMail when call Fails to that Device.
When Device has at least one setting in Call Flow - calls from Local Devices can be transfered using
TRANSFER button on the VoIP phone.

If you experience problems with transfers, make sure you have allowtransfer = yes in /etc/asterisk/sip.conf,
if no - make it so and reload Asterisk.

































MOR 8 Manual
Kolmisoft 2006-2009
197
MOR API
MOR API lets other software interact to MOR without knowing internal structure of DB and other logic.
MOR accepts requests by HTML POST and returns result in XML.
Functions
API Related
API Configuration - configuration options for API
Hash construction - How to construct hash to authenticate data over API
Login
login - Logs in user into MOR
logout - Logs out user from MOR
Details
user_details - get user details
Callback
callback - Initiates callback
c2c_callback - Initiates Click2Call specific callback
Accounting
invoices - Retrieves list of invoices in selected time period.
Calls
calls - Retrieves list of calls in selected time period for some user/device


HTML POST
All requests are in similar format:
HTML POST: http://<SERVER_IP>/billing/api/<function>?u=username&p=password
username/password - of the user who is asking for the data.
If user has 'admin' rights - he will get more results and he can perform more actions compared to the user
who does not have such rights.
MOR 8 Manual
Kolmisoft 2006-2009
198
API Configuration
MOR API

Allow API - should we enable API?
Allow GET API - should we allow GET method to be used for API? Good for testing - but do not use
in production! It is unsafe.
API Secret Key - key to generate Hash
XML API Extension - send XML output with <HTML> tag - this is used for broken .Net support,
keep it unchecked if everything works for you






























MOR 8 Manual
Kolmisoft 2006-2009
199
Accounting

Accounting
Accounting in MOR is implemented to keep track of all payment activity. Also it is possible to create various
services make subscriptions for them and generate invoices for the clients.
Services
Service is product which can be sold to the client. That can be various types of services. For example:
Monthly fee
Line rent
Phone rent
Internet plan
You can create unlimited number of Services. All of them can be found in SETTINGS Accounting
Services:


Service types
Periodic fee per month - user is charged every month for this service
One time fee - user is charged only once for this service
Flat-Rates - user is charged every month for this service and can dial some amount of minutes to
some destinations

Subscriptions
Users can subscribe for some services. When they do so they get Subscription for some service.
Subscriptions for the services can be found for each user in Users main window by pressing icon for some
selected user:
MOR 8 Manual
Kolmisoft 2006-2009
200


Subscription can have some Memo (if you sell DID for example you can write it's number here). Also it has
important fields Activation start and Activation end. This data interval will be billed in invoice. E.g. date
before and after of this interval will not be billed.
You can add/edit/delete subscriptions for user.
It is not recommended to delete them otherwise user will not be billed for that subscription. If user stops
using this service make Activation end value to the date when he does it.
NOTE: service is billed from Activation Start till Activation End. And from invoice period start till end. Time
period which fits in both previous periods is actual period which will be billed.

Subscription calculation
Subscriptions are calculated by following rules:
When Subscription is assigned to Prepaid user - price for first month is deducted from its balance
instantly (and appropriate Payment with type = subscription is created)
o If Prepaid user does not have enough balance to cover this subscription - subscription fails
When Subscription is assigned to Postpaid user - no changes are made to his balance instantly

Every month day 1, 00:00:00 action is executed which does such calculations:
Blocked users are skipped
For Prepaid users balance subtracts price for Subscription for this new month
o If Prepaid users balance becomes negative - this user is blocked and receive notification
email (and his owner)
For Postpaid users balance subtracts price for Subscription for previous month
o If Postpaid users balance + credit < 0 then he is blocked and receives notification email (and
his owner)

See also:
Invoices
MOR 8 Manual
Kolmisoft 2006-2009
201
Invoices
All settings for Invoices can be set in Configuration window Invoices section.
Invoices can be viewed and created in SETTINGS Accounting Invoices. In the main window you can
see all invoices:

Icons or shows is this invoice Paid or Unpaid.
Press on icon to get details for invoice:


Here you can view all invoices' details and press on or icon to generate invoice files in PDF or CSV
formats accordingly.


MOR 8 Manual
Kolmisoft 2006-2009
202
Invoice generation
In main Invoices window press on Generate Invoices to generate additional invoices:


Select for which users to generate invoices. Prepaid and Postpaid users can have separate details. Also you
can check to generate invoice for only soe particular user.
Send invoices by email
Press on to open more options to enter period in which you want to send invoices. Press on Send to send
invoices to their Users in this period:

See also:
Accounting
Invoice configuration
Pay Invoice with balance deduction
Invoice by CallerID
MOR API invoices
MOR 8 Manual
Kolmisoft 2006-2009
203
Invoice configuration
In Users' settings it is possible to configure some invoice settings for this user:

Generate Invoice
This option marks if Invoice for this user should be generated.
PDF/CSV Options
Here checks decide what kind of invoices (as attachments) should be sent to users by email.

Check also:
Configuration from GUI -> Invoices










MOR 8 Manual
Kolmisoft 2006-2009
204
Pay Invoice with balance deduction
When invoice for user is generated, and user pays for it, we need to check it as completed. When we do this
- users' balance is increased by the value of invoice.

Let's see our users' balance (SETTINGS - Users):


Then in invoices (SETTINGS - Accounting - Invoices) we see invoice for this user:


Press on Details and will see invoice details, now(!) check Create payment for completed invoice and
click on the red cross icon above to mark this invoice as completed and paid:


You will see this invoice as paid:


In user details we will see that users' balance is decreased:
MOR 8 Manual
Kolmisoft 2006-2009
205


And in Payments (SETTINGS - Accounting - Payments), that payment for invoice is created:


Note: if you want to revert all changes - it is enough to press green check mark in Invoice details. User
balance will be decreased, payment deleted, and invoice marked as not processed.




Invoice by CallerID
This type of invoice groups all calls 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
MOR 8 Manual
Kolmisoft 2006-2009
206
Payments
Definition
Payment is created when user pays for some Service to system owner:


There can be following types of payments:
Card - when card is bought
Invoice - when invoice is paid
Paypal - when payment done using Paypal
Webmoney - when payment done using WebMoney
Linkedin - when payment done using Linkedin
Cyberplat - when payment done using Cyberplat
Voucher - when Voucher used
Subscription - for Prepaid users when charged for subscription
Manual - manually added payment

Manual payments
Sometimes customers send money through bank or by other ways. Or using some online gateway not
implemented into MOR. To handle such transactions MOR has Manual Payments.
When user sends you as an owner some amount you need to enter this amount into MOR using Manual
Payment window which can be found in SETTINGS Accounting Payments Add manual
payment.
First window lets you choose user and enter amount (with TAX) in selected currency:
MOR 8 Manual
Kolmisoft 2006-2009
207


After we press on Proceed we see calculated values for this Payment:


We need to press on Confirm to enter this payment which can be seen on Payments window:
MOR 8 Manual
Kolmisoft 2006-2009
208


After payment is entered users account will increase and he will see such payment in his Payment sections.
Administrator can delete this payment for user. After deleting the user's account will decrease accordingly to
payments amount.

See also:
Accounting





















MOR 8 Manual
Kolmisoft 2006-2009
209
Vouchers
Vouchers are used to fill the balance of some user. You can sell vouchers printed on paper of over internet.
When user logins and enters voucher number his balance will increase by the value
issued[[Image:Image:Example.jpg]] for this voucher.
All voucher configuration options are in Configuration window Vouchers section.
You can view created vouchers in SETTINGS Accounting Vouchers:

This window show status of voucher: Active? shows if we can use it. All other info is self-explanatory.

In order to add new vouchers press on Add vouchers:
MOR 8 Manual
Kolmisoft 2006-2009
210


Here you can enter necessary information to generate array of vouchers.
Tag field is used just to mark series of vouchers it is just for informational purposes or easier search.

Press on to make variuos changes to many Vouchers at once:

MOR 8 Manual
Kolmisoft 2006-2009
211

When user logins he sees voucher icon on the main page:

He can click it and enter voucher number. He can try up to X times where X is set in configuration menu. If
he fails to enter correct voucher number all these times he will loose possibility to enter voucher number
again for some time. The values how many times he can try and how long to disable attempts to enter are
configurable in Configuration menu.
When user enters correct voucher number his balance will increase, he will get new payment record and
this voucher will be marked as used.

Vouchers are not accepted
Make sure Active Till is tomorrow or more distant in the future.

See also:
Accounting
PBX Functions - Use Voucher













MOR 8 Manual
Kolmisoft 2006-2009
212
Flat-Rates
Description
Flat-Rates means such service plan, then for fixed amount Client can dial some minutes to some
Destinations. If user had used all available minutes, all additional minutes are charged by normal rate.

Setup
1. Create New Service with type: Flat-Rate
2. Set Price for this Service and how many minutes User can chat for this price
3. Create the Service by pressing on Create button
4. In Services window near just created service press on icon
5. Add Destinations to which this Service should be applied
1. Use Include/Exclude to create exact list of prefixes you want to use with this Service
6. Add Subscription to some user to use this Service

Acknowledgments
Flat-Rates are rounded up to nearest minute. Example, if call is 61 second, it is considered as 2
minutes from Flat-Rates
Service is applicable for whole month, e.g. service cannot start/end in the middle in the month
IMPORTANT: If user is PREPAID - limit its calls to 1, because otherwise loss is possible

Example

This video will show how to create Flat-Rate Service Plan for Lithuanian FIX destinations starting with prefix
370 (Excluding MOB numbers starting with prefix 3706):

VIDEO: http://wiki.kolmisoft.com/index.php/Flat-Rates#Example












MOR 8 Manual
Kolmisoft 2006-2009
213
Reporting


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 is possible to press on it and new window opens - with detailed Active Calls.
You can get to this window in STATISTICS - Calls - 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.
NOTE: local calls are not visible on MOR GUI, only calls to/from outside

Hangup Active Call
To hangup active call press delete icon next to it.
System will try to hangup the call.
If call is still here, that means that Asterisk can't hangup call. It stuck. Stuck calls are cleaned every 2
hours. No need to do anything.
MOR 8 Manual
Kolmisoft 2006-2009
214
Users Calls
This report shows all calls user made is selected period. It is possible to export this list to PDF or CSV
format.
It can be found in STATISTICS Calls Calls:

In search section you can select direction of the calls:
Outgoing
Incoming
status of calls:
All
Answered
No Answer
Busy
Failed
and device for user.




MOR 8 Manual
Kolmisoft 2006-2009
215
Users Finances
Finances window lets view all user's financial situation in one window. It can be reached in STATISTICS
Finances:



Loss Making Calls
Sometimes you import/put rates for provider lower then for the user. In such cases when the call is made
you are taking loss.
To find such calls you should use this function. Just select desired period and all Loss making calls will be
visible.
You can found this report in STATISTICS Calls Loss making calls:


This window shows you loss making calls in selected period. If you click on user or provider rate you will
go directly to rate's edit window and edit it.
MOR 8 Manual
Kolmisoft 2006-2009
216
Providers Statistics
You can reach this report in STATISTICS Various Providers. This report shows all providers stats at
once:

In selected period you can check various stats about all providers in your system. If you click on number in
Answered/No Answer/Busy/Failed column you will open window where these calls will be listed.

Providers Calls
In main Providers window press on to open Providers calls page:


Here you can see call for selected provider in selected time period. You can change type of the call.

Also you can export selected calls to PDF or CSV format.


MOR 8 Manual
Kolmisoft 2006-2009
217
Quick Stats
These stats are seen on Main Page just after Login.
Admin Quick Stats

These are stats for all calls made in the system in this month.
Admin calls are counted same way as user calls, e.g. profit from then = user price - provider price.
Press on Active Calls value to go to Active Calls page for more details.

Reseller Quick Stats

MOR 8 Manual
Kolmisoft 2006-2009
218
These are calls made by reseller or by his users.
Profit from calls made by reseller himself = 0 for reseller.

User Quick Stats

These are stats for calls made by this user.

























MOR 8 Manual
Kolmisoft 2006-2009
219
Simultaneous Calls stats

STATISTICS - Calls - Load Stats

These stats helps to check and find how server is loaded during some time period.

Direction:
All - all calls
Incoming - calls coming to system over DID
Outgoing - calls made by devices connected to the system
Mixed - calls which comes to system over DID and goes out (mainly using ANI/PIN authentication or
Calling Cards)

Provider - this is provider which was used to send call, not receive
Calls by Source
This window shows from which Destination calls came.
MOR 8 Manual
Kolmisoft 2006-2009
220

Window is empty!
This happens when MOR can't determine from which destination calls came.
MOR tries to do that (to determine) by CallerID.
So if we have such calls:


MOR can't know which destination calls came from.
Here all CallerID are local extensions that mean they are not related to any Destination.
That's why window is empty.




MOR 8 Manual
Kolmisoft 2006-2009
221
Login Stats

Login statistics can be viewed by the admin under STATISTICS - Calls and pressing icon.
It shows in which periods User were logged into the MOR GUI.









MOR 8 Manual
Kolmisoft 2006-2009
222
Profit Stats
It is important to know in any moment the profit your system generates you.
It can be done in STATISTICS Finances Profit:


All fields are self-explanatory. You can check profit in some period and for selected user.
PDF report shows same info.













MOR 8 Manual
Kolmisoft 2006-2009
223
Country Stats
This report shows call by countries.
It can be found in STATISTICS Various Country Stats:


You can select time period and user.






MOR 8 Manual
Kolmisoft 2006-2009
224
Realtime Stats
Realtime is used in Call Center in big screen on the wall to show agents their current performance during
work-day.
You can find Realtime in STATISTICS Various Realtime:

Press on Most called users
Realtime window updates every 60 seconds. In it you see all users with their stats:


How to view user's stats in Realtime Stats
Add user to some Group
Go to: MANAGEMENT - <Group Name> - Member Stats
Check Show in Realtime Stats


MOR 8 Manual
Kolmisoft 2006-2009
225
Realtime Stats Usage
This window can be shown on big LCD screen for Call Center agents to check their performance as seen in
photo in one Call Center in Lithuania:






















MOR 8 Manual
Kolmisoft 2006-2009
226
Google Maps integration



Shows your providers/servers/clients on the map (geolocation by IP)
Shows Active Calls in Realtime

Demo for Google Maps:
VIDEO: http://wiki.kolmisoft.com/index.php/Google_Maps_integration

See also:
Google Maps Configuration
Get Google Maps key









MOR 8 Manual
Kolmisoft 2006-2009
227
Get Google Maps key

You need a Google maps key to use Google maps plugin.
Go to Google
Write your site in the text box below. Note that http://1.2.3.4 differs from http://yoursite.com so
enter hostname that you will use to access your site.
Press "Generate API key" and Google will give you your key.
Insert this key in SETTINGS - Setup - Settings - Google Maps - Key


See also:
Google Maps Configuration
Google Maps integration
















MOR 8 Manual
Kolmisoft 2006-2009
228
Balance in phone
Some phones and softphones support balance display on their screen.
For example we will use iaxLite. Download link

In SETTINGS check to allow such functionality:


Login as user you want to check your balance:

MOR 8 Manual
Kolmisoft 2006-2009
229

And in Details you will see link:


Copy paste this link into phone:


And you will see your balance:








MOR 8 Manual
Kolmisoft 2006-2009
230
Troubleshooting


Action log
In this window you can check what actions were done on the system at which
time and who did what.
login
User - shows which user logged
Action data - from which IP
logout
User - shows which user logged out
bad_login
User - shows which user tried to login
Action data - entered username/password
Action data 2 - from which IP
user_balance_changed
Shows that admin changed user balance from user edit window
User - for which user
Action data - previous balance
Action data 2 - balance changed to
And some other actions which are self-explanatory by their names.








MOR 8 Manual
Kolmisoft 2006-2009
231
Call Tracing
Overview
This function is for checking the setup of MOR in order to be sure user will be able to dial out. To setup MOR
is not so trivial (we are trying to change this with this manual and GUI improvements). It often happens for
users to miss some important detail trying to make everything work. Now Call Tracing will save a lot of
head-scratching and we hope will help for a lot of beginners.

Important! This function is for testing Dialing OUT. DID testing is not implemented yet.

This function can be found in SETTINGS Billing Function Call Tracing. It can be quickly accessed in
Users menu (SETTINGS Users) also. Just press icon for some user.
In the first window we have to select which user we want to check:



User testing
Next window shows us did we configure everything properly for selected user. Let's look at each section
separately.
The first one shows info special for user:
MOR 8 Manual
Kolmisoft 2006-2009
232


Here we see 4 errors which does not let user to operate. Let's say we want to make user to make calls.
So we will go through each one of errors and fix them.

1. This error tells us that user is Blocked and it will not be able to make calls. We should go to User settings
and unblock him.
2. Balance and Credit for this user are empty. And user type is Prepaid. That means he has no funds to
cover the call fees. There are several ways how to go about this:
If user is postpaid he should use some payment method to increase his balance. PayPal, Manual
Payment and other ways are good to do this.
We can change user type to postpaid and then we should adjust his credit. Maybe it is unlimited,
maybe some limit exists. But that will allow user to dial out.
3. We see that user has assigned some tariff and type of tariff. Type of tariff is just for informational
purposes. Here 'Explanation' tells us that tariff is empty. That is the reason why user will not be able to dial
out. User can dial out only to these destinations which have rates. Currently none of them has. You need to
put some rates to the existing tariff or assign non-empty tariff to this user.
4. User has no devices. Device is necessary to dial out. Just create one for this user.

After solving all these issues we should see:
MOR 8 Manual
Kolmisoft 2006-2009
233



We can proceed with next section which is about LCR:


It tells us that LCR we assigned to the user has no Providers. We should fix it. When at least one Provider is
in the LCR assigned to the User we should see:


This error happens when all providers in LCR are disabled. We need to have at least 1 active provider in
order for user to be able to dial-out:
MOR 8 Manual
Kolmisoft 2006-2009
234


Now none of our active providers has any rates. We should add rates to the provider's tariff. We can press
directly on the Tariff to go to its rates and add some of them. After that we should see:


To summarize all this section you should check for and read error descriptions. After fixing them you
should see . That means problem is solved and you can proceed. If at the bottom of the page you see:


That means you still have unresolved issues. After all issues are solved you should see:
MOR 8 Manual
Kolmisoft 2006-2009
235


When you see this green message you know that your user is configured properly. He is not blocked, he has
enough money in his balance to pay for the call, his tariff has some rates for some destinations (so only
these destinations are available to dial), he has some devices to use for dialing. Also his LCR has active
providers with not empty tariffs.
You can proceed.


Device testing
Following section lets us choose device, call date and enter destination which we want to test. For example:


This data means that we are testing virtual call from device SIP/1004 to number 863042438 on 2009 August
26th 00:00.
When we press Press this button to continue we will go to the next page and we will see something like:


Details section shows us just informational info. We knew this info before so it is not important.
MOR 8 Manual
Kolmisoft 2006-2009
236


If you see direction as Unknown that means your number is not in E.164 compatible format. Edit
Localization rules to transform your number to E.164 number format.
Localization section is much more important.
Here we see device's Location, Applied rule and result after localization.

IMPORTANT! Software can't read user's mind so it can't know where user is dialing.

This can be illustrated by this example:
User dials 863042438. After Localization we see that number is still: 863042438. Which means it's
somewhere in China. But it's wrong because user dialed Lithuanian number in local format! What does it
mean? It means that Localization is not configured properly. MOR can't show you error here because there's
no way to tell if it's ok or not.
You should decide for yourself. What MOR can do just to show you all info it can get from the call and it
does that.
So in order to proceed with example we have to set correct Localization rule for this number format. After
doing this we will see:


Now everything is ok. Localized destination is E.164 compatible. Now MOR understands that it's Lithuania as
it should be.
If we get following window:
MOR 8 Manual
Kolmisoft 2006-2009
237


That means we do not have rates or custom rates for dialed destination. After adding them we should see:


This window also shows us that we do not have custom rate for this destination. But it's enough to have
simple rate for destination to be able to dial out or vice versa.
We can proceed to the providers:


We can see that our provider does not have rate for this destination. After fixing it we should see:
MOR 8 Manual
Kolmisoft 2006-2009
238


That's it. Now real call should go out without problems.
Conclusion
To summarize Call Tracing it is very important to configure Localization properly.
You will see using Call Tracing what is happening and where the call is going.
When rates for user and provider are checked using localized destination. When all data are in place
there's no obstacle for call to be send to provider.
IMPORTANT! Green message at the end of Call Tracing does not mean call will be successful! It only means
that MOR will send call to provider. What string it will send to provider you can see in last table. Applied
Provider Rule parameters (Cut and Add) are also visible in the table. MOR can't know if provider accepts
your dial string or not.
That depends how you configured Provider Rules. Call Tracing shows you formatted number which is sent to
provider but you should decide is it correct or not.
If call fails - check Users Calls or Providers Calls and check Hangupcause Codes to find a reason why call
failed.












MOR 8 Manual
Kolmisoft 2006-2009
239
Integrity Check
This window tests various properties of billing system and tells where potential problems can be.
It can be reached in SETTINGS - Billing - Functions - Integrity Check

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

See also:
Destinations Groups





























MOR 8 Manual
Kolmisoft 2006-2009
240
Hangupcause Codes
MOR application saves hangupcause codes to DB so it is easy to check what the error was and why call
failed.
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 here.
ISDN Hangup cause codes

Standard codes
Code Cause
34 no circuit/channel available

MOR specific codes
Code Cause
200 MOR can't determine who is calling
201 User is blocked
202 Reseller is blocked
203 No rates for user
204 No suitable providers found
205 MOR PRO not authorized to work on this computer
206 server_id is not set in mor.conf file - this error code is not used anymore
207 Not clear who should receive call
208 MOR can not make more calls
209 Test time exceeded
210 Balance more then 0, but not enough to make call 1s in length
211 Low balance for user
212 Too low balance for more simultaneous calls
213 Low balance for DID owner
214 Too low balance for DID owner for more simultaneous calls
215 Low balance for reseller
216 Too low balance for reseller for more simultaneous calls
217 Callback not initiated because device not found by ANI
218 Reseller does now allow loss calls
219 DID has reached call limit. No more calls allowed to this DID
220 User call limit reached
221 Device call limit reached
222 Resellers call limit reached
223 Providers call limit reached
MOR 8 Manual
Kolmisoft 2006-2009
241
224 Provider skipped because his rate is higher then users rate
225 CallerID is banned
226 DID is free
230 Connection returned error code 0 instead of real code
231 Provider unreachable









Hangupcause Sounds
MOR returns error codes when call fails.
They are written in Asterisk CLI. Also these codes are visible in Call List near each call.
To make it even simpler, MOR can play associated audio when some error happens.
To enable it make play_hgc_audio = 1 in mor.conf and restart Asterisk.
This setting is available from the start to help new users to start with MOR and get instant feedback about
failed calls.
IMPORTANT! For production use this setting should be disabled because call is answered in order to play
these sounds and dialer has to pay for the call.

See also:
Hangupcause Codes
H323 hangupcause codes






Different code send to User compared to received from Provider
Sometimes it happens that error code received from Provider is not send to User or send different one.
This is decided by Asterisk system and MOR has absolutely no control over this behavior.
One possibility is to mark Device as Trunk. This can help to receive correct code, but it is not guaranteed.

MOR 8 Manual
Kolmisoft 2006-2009
242
SIP debug info
Process SIPCHANINFO
Can be enabled per SIP device basis. It is useful in debugging. And it is saved to calls table when it is
enabled.
Can be turned on/off in device edit window:


When it is checked and Device Type is SIP, then in Asterisk CLI you can see something like:


In GUI hold mouse over special icon for this call to see same info:





MOR 8 Manual
Kolmisoft 2006-2009
243
Addons


Calling Cards Addon



MOR 8 Manual
Kolmisoft 2006-2009
244
From Wikipedia, the free encyclopedia
A telephone card, calling card or phone card for short, is a small card, usually resembling a credit card,
used to pay for telephone services. Such cards can either employ prepaid credit system or credit card style
system of credit. The exact system for payment, and the way in which the card is used to place a telephone
call, depend on the overall telecommunication system. Currently, the most common types of telephone
cards involve pre-paid credit in which the card is purchased with a specific balance, from which the cost of
calls made is deducted. Pre-paid phone cards are disposable. When the balance is exhausted you simply buy
a new card. Cards purchased can often be refilled. The other main type of card involves a card with a special
PIN printed on it that allows one to charge calls to a land-line telephone account.

Short description
Calling Card module lets manage cards printed on plastic/paper or sold over internet for international calling.
The calling card platform is dedicated to calling cards - e.g. the plastic/paper cards with scratch surface
which can be sold in shops or in streets. Also these cards (or their number/pin) can be sold over internet.
When user buys a card, he gets number/pin of the card. Then he dials some access number and IVR asks
him to enter this number/pin.
Then user hears credit remaining and time remaining and can enter destination. If destination is ok - he gets
connected and can talk. After call is finished the call's price is deducted from card's balance.

Differences between Users and Cards in MOR (for a2billing users)
There are 2 main ways how person can use MOR system to dial out:
1. Using his User account
2. Using Calling Card
The main difference is that User account is for permanent users. Calling Cards are used by occasional dialers
who use the service from time to time and often anonymously.
Rule about Users and Cards:
Users and cards are not related at all. That means:
User (as entity in MOR) can't have Cards.
Card (as entity in MOR) can't belong to some User.
NOTE: MOR is not A2Billing. So Calling Cards Addon is ONLY for Calling Cards which are sold over internet/in
the streets/shops/etc.


MOR 8 Manual
Kolmisoft 2006-2009
245
System Setup
1. First Card Group should be created with correct details
2. Cards for Card Group should be generated
3. Calling Card Dial-Plan should be created
4. DID should be assigned to this Dial-Plan
All these steps are described in details further.

Work-Flow
1. User buys Calling Card (Over internet/Printed in the store/street/etc)
2. User finds NUMBER and PIN of the Card it can be on the plastic/paper Card or given to user in
Online Calling Card Store
3. User dials access number this number is given to user same way as NUMBER/PIN. User can dial
this number from anywhere in the world.
4. System asks him (user) to enter NUMBER and PIN (or only PIN) When user dials to access number
IVR will ask him to enter card NUMBER and/or PIN.
5. NUMBER and/or PIN are/is good in this step system checks database to see if Card with provided
NUMBER/PIN exists. If Card is not find user is asked to enter new NUMBER/PIN. It is possible to
change how many times system will let to reenter NUMBER/PIN. Default is 3 tries.
6. System tells remaining balance on the card this step is optional it can be disabled.
7. System asks to enter Destination IVR will ask user to enter destination he wish to dial.
8. System tells remaining time based on entered destination and remaining balance system will tell
user remaining time he can talk with this destination. This step is optional. It is influenced by Ghost
Minute Percent.
9. System dials Destination using LCR system chooses cheapest provider and dials entered
Destination/
10. After the call it's price is deducted from Card's balance self explanatory.
More detailed logic is explained here

Pinless dialing
It is possible to enable Pinless dialing to the Calling Card Dial Plan.
This lets user only once enter Cards' number/pin and system remembers CallerID. Next time when system
receives call from same CallerID - it will not ask user to enter Cards' number/pin.
If Card balance is empty - user will be asked to enter new Card number/pin.
Pinless functionality is only available for valid CallerID.
When CallerID is not empty and is numeric and/or has '+' sign then it is valid. If CallerID is invalid (has
some non-numeric symbol in it, except '+') - Pinless functionality will be disabled.



MOR 8 Manual
Kolmisoft 2006-2009
246
See also
MOR Addons
Calling Card Groups
Calling Card management
Calling Card logic
Calling Card Dial Plan
Online Calling Card Shop
Calling Card setup example
Sound files
Speed Dials for Calling Cards
Callback and Calling Cards
Card import from CSV file
One million Calling Cards
IVR for Calling Cards
How to sell Calling Cards in e-commerce site
Questions about Calling Cards

Calling Card Groups
Card Group is set (array) of Calling Cards.

Properties
Image just for informational purposes and eye pleasure to view on the GUI. Could be (and should
be) same as real printed card for consistency. But that's not the rule.
Description short memo for admin to view some more info for the cards. It is useful when there
are a lot of Card Groups and Card Group name is not enough.
Starting price (Price) the price which all Cards in this Group will have before first use. It does
not include VAT. It's in default currency (!).
Setup Fee the fee which will be charged when call is connected FIRST time when the card is used.
Ghost minute percent the value to trick the user to think he has more minutes when he really
has less.
Example:
User has enough balance in his card to call for 100 minutes. Ghost minute percent = 1.3. So when user
enters his Number/PIN system tells: "You have 130 minutes remaining". Note: this is not increase in
percent, this is the value, by which actual minutes should be multiplied to tell them to user.
Daily Charge the amount which will be deducted EACH day from the card starting from the date
when card is used for the first time. That means, if user makes first call on Monday and second call
on Friday, his card will be deducted for 5 days using this value (Mo, Tu, We, Th, Fr).
TAX percent actual value which will be used when presenting Card's price to the User. E.g. when
telling user his remaining balance of the Card or showing same info on the screen.
Least Cost Routing (LCR) which LCR will be used for all Cards in this Card Group.
Tariff price list which will be used for this Card Group.
Location this is useful when Cards will be sold in some region with specific dialing rules. Rules for
location can vary for different Calling Card Groups.
MOR 8 Manual
Kolmisoft 2006-2009
247
Number Length the length of Card's number. You can select any value here. It is recommended
to select different values for different Card Groups to minimizing risk of guessing other card and
using it unauthorized. Number for Card is generated in sequence order.
PIN Length number of Card's PIN. Same recommendation applies as for Card's Number. PIN is
generated randomly.
Valid from - from which date Cards are valid
Valid till - till which date Cards are valid
Valid after first use - how many days valid after first use. Default 0 means that card is valid
forever.

Management
Card Groups as many other entities in MOR can be created/edited/deleted/viewed.
If Calling Card module is enabled you can find it (as Administrator) in: ADDONS Calling Cards.


Here you can review your active Calling Card Groups:
(..) Shows Cards window where you can manage Group's Cards
- All of the details of Calling Card Group
- Exports Cards into CSV format
- Edit Group's details
- Delete Group

See also:
Calling Cards Addon




MOR 8 Manual
Kolmisoft 2006-2009
248
Calling Card management
Overview


In this window you can manage all Cards which belongs to the Calling card group. All fields are self-
explanatory.


Card Creation
Cards for Calling Card Group can be generated or imported from CSV file.


Generating Cards
Add cards brings the window where you can add additional Cards to the Card Group:
MOR 8 Manual
Kolmisoft 2006-2009
249


In this window you should enter Card's start and end numbers. They will form interval which will be created.
If any Card of same number exists the old Card will remain and new one will not be created.
Card PIN number is created automatically it's random and unique. It is wise to keep it's length not small to
avoid cheating from users which can guess short PIN number.


Export Cards to CSV file
When you want to print Cards on plastic/paper you need to provide necessary information for Card Printing
service.
This could be done using CSV file. Pressing on icon let's you download all Card info in one file.
You can process this file later in MS Excel or other compatible software make correct format for your Card
manufacturer and send it to him.
The CSV file fields are:
Number
PIN
Balance
Sold
First_use
Daily_charge_paid_till
You can delete unnecessary fields and make it look as you need.


MOR 8 Manual
Kolmisoft 2006-2009
250
Card batch management
To manage cards in groups you need to use Batch Management:





Calling Card Dial Plan
Overview
When we have Calling Card Group and Cards generated we can create Dial-Plan for this Group.
Dial Plan can be treated as set of rules how to handle particular Calling Card Group. You can set different
rules for same Calling Card Group.
This entity (Dial Plan) let's you to have more control over Calling card Groups.

Dial Plan creation
Let's go to SETTINGS Billing DIDs Dial Plans:
MOR 8 Manual
Kolmisoft 2006-2009
251


In this image we can see already created Dial Plan for Calling Card Group.
Let's review each field:
Name just for informational purposes
Number length tells IVR how much digits to wait for NUMBER which is asked to be entered
PIN length how many digits for PIN to wait
Ask only PIN as PIN is unique it is sometimes wise to ask only PIN because users can make
mistakes and get annoyed entering too much digits
Tell time should IVR tell time after Destination is entered?
Tell balance should IVR tell balance after user enters NUMBER/PIN?
Ask Number/PIN (times) how many times user can try to enter Number/PIN
Ask destination (times) how many times user can try to enter Destination
Assigned DID(s) just for informational purposes to see which DID(s) are assigned to this Dial
Plan

When creating new Dial Plan you will need to enter correct Number and PIN length values e.g. of existing
Calling Card Group's. Otherwise you will not be able to create Dial Plan.

Assign DID to Calling Card Group Dial Plan
When we have created Dial Plan for some Calling Card Group we can assign one or more DIDs to this Dial
Plan.
DID or in other words Access Number is vital for using Calling Cards. User will use this number to reach
IVR.
You can assign unlimited DIDs to same Dial Plan. DID can be assigned to one Dial Plan only.
It is useful when you are selling Calling Cards in different regions e.g. countries. So in country A user will
dial one number (which is cheaper for him or even free) and in country B user will dial another number.
They will reach same IVR and will use same service but they will save on telephone fees.

In SETTINGS Billing DIDs:
MOR 8 Manual
Kolmisoft 2006-2009
252


We will press on icon for the first DID:


We select our Dial Plan and press confirmation icon to assign our Dial Plan to this DID:


Now user can dial number 12026911622 (in example) and he will be able to reach IVR and use his Calling
Card.




MOR 8 Manual
Kolmisoft 2006-2009
253
Online Calling Card Shop
MOR has simple Calling Card shop for demo purposes where you can sell Calling Cards.
It can be reached by same IP as MOR, just using 'ccshop' instead of 'callc'.
E.g. http://<domain/ip>/callc will lead to MOR when http://<domain/ip>/ccshop will open Calling Card
Online Shop:


All Card Groups which have cards which can be sold are shown here with their images.

If we want to buy one card we enter amount and press Add to cart button for that Card:


Shopping cart show what we selected to purchase. We can continue shopping, empty cart or checkout.
MOR 8 Manual
Kolmisoft 2006-2009
254

Let's go directly to Checkout because all other functions are very simple:


Pressing on PayPal button you will be directed to PayPal site where you will be able to pay for the Card.
































MOR 8 Manual
Kolmisoft 2006-2009
255
Calling Card setup example
Card Group creation
We need to create Calling Card Group to handle all such Cards.
We go to SETTINGS Addons Calling Cards and press on New card group. In new window we
enter our Card's details:


MOR 8 Manual
Kolmisoft 2006-2009
256

After creating a Card Group we will see all its details:




MOR 8 Manual
Kolmisoft 2006-2009
257
Change image for Card Group
Press on and go back to Groups details and select image for your card:


press Upload:




MOR 8 Manual
Kolmisoft 2006-2009
258
Generate Cards
Now when we have Calling Card Group we need to generate some Cards. Let's press on Add cards:


Here we will create 10 Cards starting from 2000000001:


MOR 8 Manual
Kolmisoft 2006-2009
259
Create Dial-Plan
Now when we have Calling Card Group and Cards we need to create rules how to handle all these cards.
For that we need to create Dial Plan. Lets go to SETTINGS Billing DIDs Dial Plans and press on
New Dial Plan.
In new window we enter following details:


Name is just for informational purposes, NUMBER and PIN length should match our just created Calling Card
Groups settings.
We want IVR to ask for number AND pin, so we leave Ask only PIN unchecked. IVR will tell us remaining
time and balance.
And will ask for number/pin and destination 3 times most:




MOR 8 Manual
Kolmisoft 2006-2009
260
Assign DID to Dial-Plan
In last window we see that we do not have DID(s) assigned to our Dial Plan.
We need to go to SETTINGS Billing DIDs and select some of available DIDs and press on its icon:


Here we select our Calling Card Test DP and press on confirmation mark.


New window shows status about our action:


MOR 8 Manual
Kolmisoft 2006-2009
261
Mark Card as Sold
In order to be able to use Cards these Cards should be Sold - e.g. ready for usage.
Lets make one Card "sold" for testing.
Go back to Cards list and press on icon near some card:


Press Buy icon:


And Confirm purchase:
MOR 8 Manual
Kolmisoft 2006-2009
262


Now this Card is marked as "Sold" and can be used:

Conclusion
That's it. Calling Card engine is ready to serve calls.
In our example number 37063042438 is Access number to be dialed to reach IVR.
When you will dial to this number (in example), IVR will ask to enter card number/pin and follows all other
Calling Card logic.
MOR 8 Manual
Kolmisoft 2006-2009
263
Sound files
Sound files which MOR uses are located in /var/lib/asterisk/sounds/mor
Currently supported languages
English
Spanish
Russian
French
Chinese (partly)
Vietnamese (partly)
Add another language
Translation/recording
Translate and record sound file to your language (example: french (fr))

There are necessary files presented with transcription what they say:
enter_dest.wav - "Please enter the number you wish to call followed by hash key, if making an
international call- include international codes".
euro.wav - "euro".
euros.wav - "euros".
hang-on-a-second.wav - "hang on a second".
you_have.wav - "you have".
minus.wav - "minus".
minute.wav - "minute".
minutes.wav - "minutes".
mor_enter_dest.wav <-> enter_dest.wav (the same).
mor_enter_pin_number.wav - "please, enter the pin number".
mor_your_balance_was_increased_by.wav - "your balance was increased by".
mor_please_enter_voucher_number.wav - "please enter voucher number".
mor_pls_entr_num_uwish2_call.wav - "please enter the number you wish to call".
mor_pls_wait_connect_call.wav - "please wait while I connect call".
mor_thank_you.wav - "thank you"
mor_voucher_not_found.wav - "voucher not found".
morcc_and.wav - "and".
morcc_auth_failed.wav - "authorization failed"
morcc_busy.wav - "the number is busy".
morcc_credit_low.wav - "your credit is low"
morcc_enter_card_num.wav - "please enter your card and pin number"
morcc_enter_dest.wav - <-> enter_dest.gsm (the same).
morcc_EUR_cents.wav - "cents"
morcc_EUR_many.wav - "euros"
morcc_EUR_one.wav - "euro".
morcc_GBP_cents.wav - "pences".
morcc_GBP_many.wav - "pounds".
morcc_GBP_one.wav - "pound"
MOR 8 Manual
Kolmisoft 2006-2009
264
morcc_invalid_digits.wav - "invalid digits".
morcc_you_have.wav - "you have".
morcc_minute.wav - "minute".
morcc_minutes.wav - "minutes".
morcc_pence.wav - "pences".
morcc_pounds.wav - "pounds".
morcc_unreachable.wav - "the number is unreachable".
morcc_USD_cents.wav - "cents"
morcc_USD_many.wav - "dollars"
morcc_USD_one.wav - "dollar".
prepaid-enter-dest.wav - "zabirite kod strani i nomer abonenta , posle nabora nazmite risotku".
seconds.wav - "seconds"
unlimited_minutes.wav - "unlimited minutes"
mor_callingcard_choices.wav - Press 1 to enter new destination, press 2 to dial same destination,
press 3 to check your balance
mor_card_balance_is_empty.wav - Card balance is empty
mor_card_not_found.wav - Card not found
mor_dialing_previous_destination.wav - Dialing previous destination
mor_goodbye.wav - Goodbye
mor_the_card_expired.wav - The card expired
mor_the_card_is_not_sold_yet.wav - The card is not sold yet
mor_you_have_entered_nothing.wav - You have entered nothing
Converting
In order to Asterisk to play files, they should be converted to Bit rate: 8bit, Sample rate: 8000.
It can be done using sox command:
/usr/bin/sox file1.wav -r 8000 -c 1 -s -w file2.wav resample -ql
and put them into /var/lib/asterisk/sounds/mor/fr
Also script /usr/src/mor/script/convert2astwav.sh can be used to convert many files at once. Just execute it
in folder with wav files.
Errors
Such errors means that sound file is not Asterisk compatible:
[Dec 22 03:00:46] WARNING[20516]: format_wav.c:148 check_header: Not in mono 2
[Dec 22 03:00:46] WARNING[20516]: file.c:322 fn_wrapper: Unable to open format wav
Digits
Also you need digit sounds recorded in french (fr)
Put all digit recordings into /var/lib/asterisk/sounds/digits/fr
List of sound files for digits
MOR 8 Manual
Kolmisoft 2006-2009
265
Setting language
In DID settings set language = fr
If you want to set your default language to whole system, not only for DIDs, then in sip.conf/iax2.conf/etc
set:
language = fr
where fr is JUST AN EXAMPLE, CHANGE fr TO APPROPRIATE LANGUAGE!!!
Reload Asterisk.
Currency
For example lets take Georgian currency GEL (Georgian lari)
You will need such sound files:
* morcc_GEL_cents (meaning 1/100 of main currency, "cents" for USD/EUR, "tetri" for Georgian GEL)
* morcc_GEL_many (meaning many of main currency, "dollars" for USD, "euros" for EUR, "lari"? for
Georgian GEL)
* morcc_GEL_one (meaning 1 of main currency, "dollar" for USD, "euro" for EUR, "lari" for Georgian GEL)
They should be placed into /var/lib/asterisk/sounds/mor
Remove some default sound file from MOR logic
Just make appropriate sound file to contain silence.

Remove/Change sound files
Files are stored in /var/lib/asterisk/sounds/mor
Change necessary sound file if you want to.
Make sure it is in Asterisk compatible format.




MOR 8 Manual
Kolmisoft 2006-2009
266
Speed Dials for Calling Cards

When Calling Card owner logins into Calling Card portal (/billing/ccshop), he is able to manage his Speed
Dials:

Here Calling Card owner created new Speed Dial: '11'. When he dials '11' - system will dial to
'37063042438'.




Callback and Calling Cards
Negative balance for Calling Cards
The balance for calling cards will go negative only in 1 case:
1. When user initiates callback - system dials him back
2. User answers and enters calling card number/pin
3. System recognizes it and checks its card balance
4. Card balance is 0
5. As calling card is recognized so charge for Call Leg A is deducted from Calling Card balance. And Balance
becomes negative for Calling Card.
That means that system owner gets loss.
There is no way how to avoid that user initiates call and does not pay for it.





MOR 8 Manual
Kolmisoft 2006-2009
267
Card import from CSV file
It is possible to import calling cards from CSV file.
Format is simple:
CARDNUMBER,CARDPIN
When importing make sure your CARDNUMBER length and CARDPIN length matches lengths in Calling Card
Group.
Example:
If you are trying to import such file:
1000000001,6258
1000000002,5725
1000000003,9737
1000000004,9694
1000000005,4156
....
That means that your Calling Card number
length is 10 and PIN length is 4. So you can
only import such cards into Card Group
which has such values:

Otherwise you will get error.

Video which demonstrates Card import from
CSV file:
http://wiki.kolmisoft.com/index.php/Card_i
mport_from_CSV_file











MOR 8 Manual
Kolmisoft 2006-2009
268
IVR for Calling Cards
Description
This example shows how to add some IVR before Calling Cards.
Usually it is some greeting telling that "Welcome to X Cards, thank you for using our services...."
We need to have Calling Card Dial Plan already created to proceed (check main guide how to do that).

Steps
We need to do following steps:
1. Create Voice
2. Upload Sound file to this voice (e.g. Greeting)
3. Create Time Period (in which our IVR will be active, we will make it active all the time)
4. Create IVR which does following steps:
1. Waits 2s for call to be established
2. Changes language/Voice to 'zn' - e.g. Chinese
3. Plays greeting
4. Transfers call to Calling Card Dial Plan (through DID)

Logic
Main logic of this example is following:
User dials into IVR Dial Plan DID (we will use 111 for example)
DID 111 forwards to IVR Dial Plan
IVR Dial Plan plays greeting
Forwards to Calling Card Dial Plan DID (we will use 222 for example)
DID 222 forwards to Calling Card Dial Plan
Calling Card Dial Plan executes with normal Calling Card logic
Note: that DID 222 is middle DID used for inner routing. It can be fake. DID 111 should be real so real calls
could come to it.

Video
This video demonstrates whole setup process:
http://wiki.kolmisoft.com/index.php/IVR_for_Calling_Cards#Video

See also:
IVR system
MOR 8 Manual
Kolmisoft 2006-2009
269
How to sell Calling Cards in e-commerce site
The process is following:
1. Create Cards
2. Mark these cards as Sold
3. Export Card Number/PINs into CSV file
4. Import CSV file to your e-commerce site
5. Configure your e-commerce site to sell these Calling Cards


See also:
Calling Cards Addon




Questions about Calling Cards


Q. When MOR asks for CC Number and PIN number it ask to enter NUMER+PIN+#. Is it possible to ask
NUMBER+# and then PIN+#? (Not only PIN)
A. No, it is not possible. It is possible to ask only PIN, without NUMBER: PIN + #.
Q. Can I modify the first page of the CCSHOP to include some other information or links to the rate list for
each card, for example?
A. Ruby On Rails knowledge is necessary to do that. Also custom changes will be overwritten on next system
update.

See also
Calling Cards Addon














MOR 8 Manual
Kolmisoft 2006-2009
270
Auto-Dialer Addon
Auto-Dialer addon lets you call an array of numbers automatically and when answered plays back a
prerecorded message to the receiving end of the call.
It can be used in telemarketing.
Overview
When Auto-Dialer (AD) is installed every user can use it.
User can find AD menu under PERSONAL MENU Auto Dialer.
Main window shows user's campaigns:

User can Activate or Stop the Campaign by pressing or button near Campaigns status.
Campaign can only be Activated if it has free (not-called) numbers AND some Actions.
So please before activating Campaign import some Numbers and create Actions.

Add new Campaign
Add new campaign let's you add new
campaign:

Important fields here are:
Start/Stop Times when calls will be made
Max Retries how many times to retry
unsuccessful call
Retry Time after how many seconds should
system retry the call?
Wait Time how long to wait till the call will
be answered
Device each Campaign should be assigned
to Device in order for MOR to bill the call
MOR 8 Manual
Kolmisoft 2006-2009
271
CallerID - what CallerID to put on calls

Numbers
Press on in Numbers column to check campaigns numbers:


User can import phone numbers from TXT file. Numbers should be in correct format.
In new Campaign there are no numbers, so press on Import numbers from file and you will have to
select file to upload:


After uploading file you will see status of imported numbers:
MOR 8 Manual
Kolmisoft 2006-2009
272

You can delete all number by pressing Delete all numbers
If number is Completed, it is possible to reactivate it (tell system to call it again) by pressing icon near
number.

Actions
Press in Actions column to access Campaign's actions:

In this window user programs the Actions for Campaign:
Types of Actions:
WAIT how many second to wait
MOR 8 Manual
Kolmisoft 2006-2009
273
PLAY play some file
IVR - send call to IVR. It can be used to connect to some real person and give more choice to the
callee. For example it is possible to play advertisement and tell user to press '1' to talk with real
person about this advertisement or similar.


Admin interface
When Auto-Dialer (AD) is installed Admin can find Auto-Dialer under menu SETTINGS Addons Auto
Dialer.
Here he can get view of all users campaigns:

The important info for each Campaign:
Status is Campaign Active or Stopped
Run time tells when calls will be made
All other fields are self-explanatory
It is possible for admin to see the Actions for users Campaigns. Just press on Actions button.



Workflow
Each 5 minutes cron job is activated to check if any campaigns are activated.
If there are some active campaigns, script creates call files for the future.
It puts calls in time period in equal time periods, to load balance the work for Asterisk.
E.g. if you have 10 calls to make, script will execute them in 6s intervals to start all calls in 1 min time.
Variables in /var/lib/asterisk/agi-bin/mor.conf:
MOR 8 Manual
Kolmisoft 2006-2009
274
calls_one_time - How many calls to distribute in cron_interval - (PLEASE NOTE, this value is not for
simultaneous calls! it has very different meaning which is explained below)
cron_interval - What is the interval of time in minutes in which we should 'put' calls
Example:
calls_one_time = 10
cron_interval = 1
That means that in 1 minute script will put 10 calls. So each call will be executed in 6s interval:
1st call: 0s
2nd call: 6s
3rd call: 12s
....
9th call: 54s
10th call: 60s


NOTE: Auto-Dialer is not the tool to generate a lot of calls simultaneously. Auto-Dialer distributes calls in
even intervals in some time period to minimize load on Asterisk.

























MOR 8 Manual
Kolmisoft 2006-2009
275
Reseller Addon
Description
This addon incorporates basic reseller support into MOR PRO
Currently it lets to create user with type 'reseller'
When this user logs into the system he is able to:
1. Create tariffs
2. Create users
3. Assign tariffs to users
4. View calls and other stats for his own users
When his users are making calls - reseller's balance decreases along with user's balance. If reseller is
prepaid and he is out of balance or postpaid and credit limit is reached - his users will noo be able to make
calls even if they have money in their balance.
DIDs
Currently DIDs can be assigned only by admin. E.g. reseller can't assign DID to his user. Example:
ADMIN - RESELLER - USER
ADMIN can assign DID to USER directly bypassing RESELLER.
NOTE: This functionality will be adjusted in the future to let resellers add DID directly.

Manual
This manual is dedicated for resellers to work on MOR
Manual for Resellers

See also
MOR Addons
How to show rates for resellers users




MOR 8 Manual
Kolmisoft 2006-2009
276
Manual for Resellers
Dear MOR prospective reseller, before reading any further, please note that all rates, and taxes
below are only sample rates to show you around our reseller panel but do not reflect and are not
related to our current real rates.

Dear MOR, This is your guide on how to navigate through your reseller panel page by page with screen caps.

Login
When you first login from the URL http://<YOUR_URL>/billing with your reseller ID and password, you will
go to the following page:


On this page you can see on the Very Top Right, a group of flags, by clicking each flag you can change the
language of your display to your own native language or your preference, try to click on every flag if you
want to change the language.
Then you see info about Your Balance and Calls made by your users Today and During this month.

Now please take a look at the Navigation buttons on the left side one by one from the Top Side Downwards.
MOR 8 Manual
Kolmisoft 2006-2009
277

As You can see, there is Reseller Menu and Personal menu
Under Reseller Menu you can manage your reseller data, create and set your rates to destinations and your
Tarrifs while under Personal menu you can see your own data and see how much rates you pay for us and
your own personal calls made by you and not by users.

Tariffs
Now under Reseller Menu, Check out the first button called Tarrifs.
By clicking on this button you can start creating your own Tarrifs and Rates to destinations, and please note
the following:
Extensions or devices cannot start calling, if you did not create Tarrifs.
Before creating any users, you must complete this step first, this step will take time and it is manual, but
you only must do it one time only.
Now click on the Tarrifs:


This is empty list of your Tariffs right now.
Click on New Tariff to create new Tariff:
MOR 8 Manual
Kolmisoft 2006-2009
278


Enter any name, this is for you. And Purpose of Tariff chose "User Retail" for (demo purposes now) then click
the Create button.
You will be directed to the page, which means your Tariff was created successfully:


Rates
Name of the Tariff we created for the demo purpose of User Retail is "Test Tariff"
MOR 8 Manual
Kolmisoft 2006-2009
279
The currency we chose for the tariff is USD.
Before someone can dial-out, rates to the destination any user will use must be filled first.
To do this, click on the Rates:


On this page you need to enter rates manually one by one. ( Retail Rates can be transformed from
Wholesale Rates also).
Enter all the rates per minute you need to charge your customers for every destination.
Rounded by field, is in seconds, it usually is either, per one second, or per 60 seconds which will mean the
call will be rounded per minute. So make sure you change it to rounded by 60.
And enter your rates per minute for every destination or only the destinations you want.
Then click on the Update button at the end of the page, and you will see your rates have been filled out and
saved.
More info about Tariffs/Rates can be found here.



Users
Now you can start creating Users and Devices for them, and those Devices can start calling if they have
enough balance in their account.
MOR 8 Manual
Kolmisoft 2006-2009
280
Now go to the Reseller Menu again to your left and this time click on Users to create a new User:


Press on Add new to add new User:


MOR 8 Manual
Kolmisoft 2006-2009
281

Now you need to start filling out this data for the user you created:
Username/Password - For user to login to this interface to checkout his balance, rates and later he
will be able to pay affiliates automatically using Paypal inside this panel.
Tariff - from this drop down menu, you select which tariff to apply for this user since you can create
unlimited tariff plans.
Balance - enter initial balance (WITHOUT TAXES) for user here
Credit - if user is prepaid - leave it untouched
Prepaid - Make sure you check the user to PREPAID user and NOT postpaid if you do not trust user

After you fill in all the fields properly, click on Create button to create your first user:




Devices
Now this user cannot start calling unless you create a device or extension for him.
To do that you must click on the icon:

MOR 8 Manual
Kolmisoft 2006-2009
282

This page lists all devices or extensions for this user, while each user can have unlimited devices, only you
can add for them devices and not the users themselves, now as you can see this user still has no devices
created.
To create the first device for this user click on Add new device:



Description field you can type anything you want.
Device group, you cannot edit it, so leave it as primary group.
Type - if you do not know which type to chose, then leave it as SIP, because most of the devices
used today is using SIP protocol and SIP technology
Once you have filled in the description (Which you can also leave empty if you wish), click on the Create
button:



MOR 8 Manual
Kolmisoft 2006-2009
283


MOR 8 Manual
Kolmisoft 2006-2009
284

Please do not edit any settings in this page, it is better if you do not know what you are doing, that you
leave this page like this, like the default settings, and hit the update button below.
In this page you can see the device or extension number that users need to put in X-lite (or other softphone
or real phone) to dial out, for this device for example
Device number/extension is 1004
Password is 2g1eu1pa
If you put this info on your X-lite and our SERVER_IP_ADDRESS you will be able to start making calls from
this X-Lite until this User has balance in his account.

Now you can email this user his info and how to use the system, you need to only email him:
His username
His Password
Login to GUI URL http://<SERVER_IP>/billing
Device username
Device password



Calls
If you want to check calls made by your users go to RESELLER MENU - Calls:


Here you can press on icon near each user to check their calls.



MOR 8 Manual
Kolmisoft 2006-2009
285
Personal Details
You can change your personal details in PERSONAL MENU - Details:




Personal Rates
PERSONAL MENU - Details - Rates lists rates as given to you by us, this is the rates WE CHARGE YOU per
minute, So this can be your guide when you are creating your own rates for your users, you can open both
windows at the same time and make reference before you add your rates.


MOR 8 Manual
Kolmisoft 2006-2009
286
SMS Addon
SMS addon lets to send SMS from MOR.
Actually it implements SMS billing and routing.
It is possible to:
Create many SMS Providers
o Send email to provider to initiate SMS
o Native Clickatell integration
Make route (LCR) from these providers
Make Tariffs, enter Rates for SMS into these Tariffs
Let Users send SMS from their MOR login or from -------> their Mobile Phone!
o iPhone optimized!
See also:
MOR Addons
SMS Addon iPhone
SMS Addon - Clickatell configuration


























MOR 8 Manual
Kolmisoft 2006-2009
287
Recordings Addon
Functionality
It gives more options to manage recordings, such as:
Allows to send recording to email
Allows to limit space for users for recordings
Allows to record calls without user knowledge
Allows for users to manage their recordings (get to email/listen/download/delete)
Allows to convert recordings from WAV to MP3 format and store on external server, to take off load
from main server
NOTE: Resellers does not have same functions as administrator - they can't manage recordings of their
users.

Settings
SETTINGS - Setup - Settings - Addons - Recordings
Use external Server - should system send recordings to external server?
Recordings server - details such as IP/Port/Login where port is SSH default port 22 and Login is
default root

Administrator functionality
ADDONS - Recordings
Here System administrator can see all recordings. He can search Recordings based by:
Period
Source (CallerID)
Destination (Dialed number)
User
Device
With each recording it is possible to:
Check its details
Check Call details
Add comment to it
Listen to it
Download it
Delete it
Admin can decide:
MOR 8 Manual
Kolmisoft 2006-2009
288
Can user use Recording Addon functionality or not (set to record calls, send recordings to email, etc)
Which user calls should always be recorded (without user knowledge)

SETTINGS - Users - Edit (on selected user)
Recordings section is available with following options:
Allow to use recording functionality - can this user use Recording addon functionality?
Forced record calls for this User - record calls for this user (all devices) without user knowledge
Server space - how many HDD space to reserve for recordings of this user?
Send deleted recordings to this email - if HDD space is used, recording will be deleted and sent to
this email, if this email is empty - recording will be sent to default user email

Device - Edit window
Following options are available for device:
Record calls for this Device - record calls for this Device (without user knowledge)
Send Recording to Email - when recording completed - send to it email
Recordings Email - send to this email address
Keep Recordings on Server after sent to Email - should recording will be left on server after sending
to email?

User settings
Administrator should allow user to use Recording Addon functionality before User can use its functions. It
can be done checking Allow to use recording functionality in User Edit window.

PERSONAL MENU - Details
Server space - shows used/reserved HDD space for recordings
Email for deleted Recordings - to which email to send recordings if there is not enough space for
recordings

PERSONAL MENU - Details - Devices - Edit
Record calls for this Device - user can mark to record calls for this device or not
Send Recording to Email - should recording be sent to email?
Recordings Email - to which email address
MOR 8 Manual
Kolmisoft 2006-2009
289
Keep Recordings on Server after sent to Email - should recording will be left on server after sending
to email?

PERSONAL MENU - Calls - Recordings
In this page User can manage his recordings.

Guides
How to setup user so he could see his calls?
1. As admin go to user Edit settings and check Allow to use recording functionality. User will be able
to use Recording addon functionality.
2. Login as this User and in PERSONAL MENU - Details - Devices press on for Device and in
Recordings section check Record calls for this Device: YES
3. Now user will be able to see his calls in PERSONAL MENU - Call - Recordings

See also:
MOR Addons





















MOR 8 Manual
Kolmisoft 2006-2009
290
Mobile Number Portability Addon
Mobile number portability (MNP) enables mobile telephone users to retain their mobile telephone numbers
when changing from one mobile network operator to another.
MNP Addon for MOR allows system owner to check number if it belongs to other network and if so - route it
through different providers or bill it with different price.
Current implementation allows to save numbers in MySQL database on any server (possible not on local
server).
Before each call MOR MNP Addon checks dialed number and if number is found in database - some prefix is
added in front of it.
By prefix MOR can set different routing(LCR) or billing(Tariff) for this number.

NOTE: It is important to take care of various number formats user can use to dial a number. As a solution to
it is to insert MNP number into DB in several possible formats.
See also:
MOR Addons

































MOR 8 Manual
Kolmisoft 2006-2009
291





THANK YOU FOR USING MOR!





















2009.10.01 Vilnius Lithuania Kolmisoft

S-ar putea să vă placă și