Difference between revisions of "Calling Cards External Script"

From Kolmisoft Wiki
Jump to navigationJump to search
Line 27: Line 27:


<br>
<br>
[[File:Card_group_edit_ext_script_no.png]]
[[File:Card_group_edit_ext_script_no.png|thumb]]





Revision as of 14:09, 6 August 2010

This option is available starting from MOR 9

This topic is ADVANCED and shows how to MOD MOR. Please do not use this functionality if you are not sure what you are doing!


What is it for?

This functionality is designed to allow clients to modify the way how MOR Core behaves with Calling Cards.

MOR itself has some logic which allows to change this from the GUI.

But very often it is necessary to extend or change such behavior.

This functionality is made as external script in which clients (with enough programming skills) can define the way how MOR reacts to some situations.

With External Script it is possible:

  • Adjust Time which is told to the Card User
  • Adjust Balance which is told to the Card User
  • Adjust real call duration of the Card User




How to turn it on?

By default it is OFF:


Card group edit ext script no.png


Turn it ON:


Card group edit ext script yes.png

NOTE: When External Script is ON, Ghost Minutes and Ghost Balance functionality is NOT used from the GUI. It is defined in External Script.



How to use it?

File which does all the logic is in /usr/src/mor/agi/mor_cc_external.c

It is written in C with a lot of commentaries which explains all the logic INSIDE THE FILE.

Same script can be rewritten in any other programming language by experienced programmer which knows how to interact with Asterisk over AGI.

Make changes to this file, execute ./install.sh in same folder to compile and move it to correct place.



How to know it is working?

Make a call using Calling Cards with enabled Tell Time/Balance and watch Asterisk CLI:


Cc external1.png

This shows the output BEFORE telling the balance to the Card User.

NOTE: default External Script DOES NOT change any values, it is just for demo.


Cc external2.png

This shows the output BEFORE telling the time to the Card User.

NOTE: default External Script DOES NOT change any values, it is just for demo.


IMPORTANT: To make sure script works OK, you SHOULD see line:

MOR CC External Script stopped.



See also