Friday, November 6, 2009

tutorial: use astercrm & asterisk for broadcasting

in this tutorial, it will guide u how to broadcast your message in asterisk and astercrm.

1. add outbound context in asterisk

add the following content in your dialplan (like extensions.conf)

[for-outbound]
exten => _X.,1,Dial(SIP/yourtrunk/${EXTEN},45)
exten => _X.,n,Hangup

exten => h,1,NoOp(${DIALSTATUS})
exten => h,n,Hangup

here  “yourtrunk” should be defined in your sip conf file, or you can use other trunk you have, like IAX2, ZAP, DAHD I…

2. add inbound context in asterisk

add the following content in your dialplan (like extensions.conf)

[for-collection]
exten => _X.,1,NoOp(${EXTEN})
exten => _X.,Background(YOURMESSAGE)
exten => _X.,n,Hangup

exten => 1,1,Queue(1000); means when customer press 1 when it’s playing, he will reach your queue 1000

exten => h,1,Hangup()

then it will look like

context

3. add group in astercrm

login astercrm as admin, then go to extension->group admin, add a group for this broadcasting project

group

4. add campaign in astercrm

then go to diallist->campaign, add a campaign, in outcontext and incontext, we will put the context we added before, for-outbound and for-collection

campaign

5. upload the diallist

you can upload a excel/cvs file to diallist, or you can insert record to diallist table using your script

numbers.csv

numbers

import:

import

6. start the dialer

then u can go to dialer page to enable the campaign,  also you can set a limitation of  the max outbound calls there

dialer

7. set a time limitation

if you only want it dial at spcific time, you can add a time package for the campaign. first add some time

diallist -> worktime

worktime

then create a work time package and add the worktime in

worktime_package

then set the campaign to use this work time package

campaign_with_worktime

8. check dial result

go to diallist -> dialedlist, you can find the result

dialedlist

hope this post can help you create ur first broadcasting campaign, and u can also improve on this, like u can use a script to insert to diallist automaticly or set some survey so customer can press in their option when listening to your message.

Posted by solo at 07:58:20 | Permalink | No Comments »

Thursday, September 17, 2009

how to upgrade astercc

1.upgrade database

unzip the package u could see folder “sql”

files in asterCC 0.12 should be:

astercc0.1b-0.1.sql
astercc0.1-0.11.sql
astercc0.11-0.12b.sql
astercc0.12b.-0.12sql
astercc.sql

say you are using 0.1b now, so you have to execute  astercc0.1b-0.1.sql, astercc0.1-0.11.sql, astercc0.11-0.12b.sql, astercc0.12b.-0.12sql one by one, then u get database of v0.12

2. stop astercc daemons

/opt/asterisk/scripts/astercc/asterccd stop

3. cp the new html & daemon files

4.  set conf files

files include astercc.conf, asterbilling.conf.php, astercrm.conf.php

5. start astercc daemons

/opt/asterisk/scripts/astercc/asterccd start

6. login and check

Posted by solo at 06:18:33 | Permalink | No Comments »

Friday, March 20, 2009

building a virtual office using astercrm ,freepbx and asterisk

In a virtual office, you will have few receiption but they can answer calls for hundred company, in such case, they should know which number customer dialed so that they dont mess up the calls, now we introduce u how to build a virtual call center using astercrm & asterisk.

1. add extension for receiption

open your browser and go to freepbx, click extension on left menu and add extensions for your receiption, here we have three extensions: 8000, 8001 and 8888

freepbx_extensions

2.  add a queue for your receiptions which would be used to answer incoming calls, we only add 8000 and 8001 in this queue

freepbx_queue

and u can set some options for this reciption queue

freepbx_queue_detail

3. add a trunk which could be used for incoming calls

freepbx_trunk

and the most important, set registry for this trunk so that u can get calls in

freepbx_trunk_1

4. add a inbound route so that the receiption queue could answer your incoming calls

freepbx_inbount_route

now make a call to your DID number, if everything is allright, phones of receiption should ring

5. go to astercrm and add account for your receiptions

astercrm_account

6. add trunkinfo so your receiption could get some information about the number customer dialed

astercrm_trunk_info

here Trunk Channel should be the username of your trunk, not trunk name in freepbx

7. login as a receiption accound and try make a call

astercrm_agent_1

when ringing

astercrm_agent_2

when talking

this tutorial could be used on trixbox, elastix or any other system using freepbx, also u can config receiption account and dialplan by your self.

Posted by solo at 02:07:41 | Permalink | Comments (1) »

Monday, December 15, 2008

dialer, queue and popup for asterisk callcenter(freepbx,trixbox,elastix,pbxinflash)

The latest asterCRM has a great improvement in dialer, and with asterCRM, it’s quite easy to build a call center. Here’s a how-to for a outbound call center with Freepbx and astercrm. Following by this how-to, you can creat such a solution:

asterCRM dialer will call the numbers in your diallist, and when the call is connected, it would be redirect to a queue, where your agent will answer the call and talk the customers,  they can do survey , sales or whatever you want.

* freepbx is a web gui for asterisk which is widely used in asterisk applications, like trixbox, elastix, pbx in flash …

  • install freepbx

For freepbx installation, you can read the installation document from freepbx website http://www.freepbx.org. If you are using trixbox, elastix or pbx in flash, then u can skip this, it have freepbx build in already.

  • install asterCRM, make sure asterCRM daemons (astercc and astercctools) are running

for asterCRM installation, go and check asterCRM wiki:

http://wiki.astercrm.org/index.php/AsterCRM_Installation#Using_the_install_script

  • add extensions for your agents and set a queue to receive calls from asterCRM dialer

login into freepbx, start add extensions for your agent

freepbx-add-extension

then add a queue

freepbx-queue

  • set group/user in asterCRM

next login asterCRM as admin, create group “outbound sales” and add extensions for agents you created above, go wiki for more detail

http://wiki.astercrm.org/index.php/Create_Group

http://wiki.astercrm.org/index.php/Create_Extension

make sure “Extension” matched “Outbound CID”  or “Extension”(if outbound cid is blank) in freepbx

so now all your agents should get a username/password for asterCRM.

  • set a campaign

astercrm-add-campaign

put the queue number “02″ in and check the “bind” checkbox, then as soon as customer answer the call, it would be putted into the queue, and your agent could start talk!

http://wiki.astercrm.org/index.php/Create_Campaign

  • import diallist

say you have already get 1000 numbers you want agents make call to, then use import function to import these number to diallist for this campaign

http://astercc.org/tips/2008/11/import-data-in-astercc.html

  • agents login

your agent should get ready to start! Log into astercrm and log into the queue if they are dynamic agent.

astercrm-agent

  • start dialer

both groupadmin and admin could start the dialer, go management interface and then click “Dialer” icon

astercrm-dialer

check the checkbox “start”, it will start dial, u can set limit by channel or limit by agent in the queue, in the latest version, it would not stop dial even u close the page, but will stop if u uncheck the checkbox “start”.

http://wiki.astercrm.org/index.php/Predictive_dialer

  • agents login

when a customer is connected and redirect to the agent in queue, it would popup customer information if you have in database

astercrm_agent_popup_en

Posted by solo at 09:25:32 | Permalink | No Comments »

Sunday, December 14, 2008

Survey features in asterCRM for outbound asterisk call center

In asterCRM, it provides a survey features, so you can set survey for your customers, here will give you a simple introducation for this:

first you need to add a survey, login as admin/group admin go manager interface and click survey icon, click “Add” button for a new survey, you can add several options for one survey, and each survey it provides three kinds: radio, checkbox and text

survey-1

survey-2

Click the “item” link next to the option to enter items for this option

survey-3

keep putting options and items until u finish this survey.

Then you can  put a survey from the agent page

survey-4

survey-5

*when there’s a customer or contact in your record form, if u click the “Add” link of a survey, the result will be linked with the customer

Click the “Detail” link of a survey, u can get a statistic of this survey

survey-6

Posted by solo at 09:11:02 | Permalink | No Comments »

Thursday, November 13, 2008

add language package for asterCRM

For now asterCRM provides user two languages, English and Simplified Chinese, if you want to add a new language, follow this article you can make it yourself. say you want to add German to astercrm, first go to astercrm/login.php and find the following lines:

English 简体中文

we use de_GER for German so we add line then it looks like

English 简体中文 Germany

save the file, then when you enter astercrm login page, you can see

select Germany and login, and we go to next to change words.

asterCRM language files locate in astercrm/include/language, where you can see files like account_cn_ZH.php account_en_US.php portal_cn_ZH.php portal_en_US.php … so cn_ZH means Simplified Chinese, for Germany one, you can copy account_cn_ZH.php as account_de_GER.php, copy portal_cn_ZH.php as portal_de_GER.php

dont copy from en_US file coz for some words we have English as default in pages, so it could be not integral in the language file, en_US files could be used as reference. Then open the copied file account_de_GER.php with some text editor, and start translate, so it looks like

<?
$add_account = “Ein neues Benutzerkonto wurde hinzugefügt”;
$update_rec = “Eintrag wurde aktualisiert”;

?>

save the file with format UTF-8 when you finish.

translate one by one …, not much but need some patient untill all finish.

The last thing, change all images, go to astercrm/skin/default, you can see folders like “images_cn”, “images_en”.. copy images_en as images_de then modify all images in the folder.

refresh your browser then you can see asterCRM with your translation!

Posted by solo at 01:56:48 | Permalink | No Comments »

add google map for your customer in asterCRM

asterCRM support goolge map, so you can add a map for your customer using this feature. 1. you need to apply a google api key go to http://code.google.com/apis/maps/index.html click “Sign up for a Google Maps API key.” on right

click the check box and enter your web site URL then button “Generate API Key”

done! now you get the key for Google Maps API Read the rest of this entry »

Posted by solo at 01:54:36 | Permalink | No Comments »

Dynamic Agent mode with asterisk, FreePBX and asterCRM

Dynamic Agent mode is very useful in a outbound call center, agents login to a queue and hear some music we definied in the queue, then predictive dailer start works, it dials customer numbers and once it get connected the dialer will redirect the call to the queue, and agent in the queue could hear a beep immediately then could start talking to the customer, it’s so quick that customer just think it’s a call from the agent. With asterCRM, agent could get customer information once the call get connected, here we’ll introduce how to set dynamic agent in freepbx and asterisk: First, we need to add some extensions and queues in FreePBX: add extensions: go to FreePBX extensions page, then we add a queue and choose a dynamic agent for it like following figure yes, if you want to add a dynamic agent for a queue, you should add a agent number with A in queue agent list, and we can notice that message from FreePBX. so we need to counfigure agent.conf in asterisk conf directory, here we add a dynamic agent which number is 1000, its passoword is 0000, name is Brad then we add a dialplan for agent login in extensions_custom.conf like following line: update the context of extension 8000 to “agent-test”. here, we had a queue which include a dynamic agnet, well then we need add a user in astercrm, go to the extension management page of astercrmand add a new extension and assign agent 1000 to him: Agnet start work: first the extension have to login as a agent to PBX, when 8000 dial “*789″, it would hear the prompt that require to enter the agent number and password to login as the agent, enter agent number 1000 and password 0000, it can login as agent 1000. login to asaterCRM by brad/1234, the asterCRM could pop-up if anyone call to Agent/1000 or extension 8000.
Posted by solo at 01:52:02 | Permalink | Comments (2)

Thursday, January 31, 2008

how to use asterisk as a predictive dialer

Predictive dialers, systems that automatically place outbound calls and deliver answered calls to agents; they are the key to using your sales force time as efficiently as possible in your outbound call center.

Here we use asterisk and astercrm to build a predictive dialer.

1. we need to install asterisk, for beginner you could use trixbox.
2. install astercrm, it could be on same server with asterisk or on a different one. the newest version is 0.046,  installation guide could be found here.
3. there’s a bug in 0.046, if you have not used a previous version, you need fix the bug, execute these two line in your mysql:

        alter table diallist add creby VARCHAR(20);
        alter table diallist add cretime datetime NOT NULL default ‘0000-00-00 00:00:00′;

4. login as admin/admin, go to “Manager” -> “preference”, we need to set which context to use when make outbound call

the outcontext could be

[from-sipuser]
exten => _X.,1,Dial(SIP/TRUNK1/${EXTEN})

when a outbound campaign start, predictive dialer would first drop the phone number to this context, so this context should be your outbound context.

5. then we go  “Manager” -> “Extension” -> “Group Manage”, click “Add” button to add a new group.

here we need to notice thw parameters: pdcontext and pdextensions, this mean how to handle the call when it’s answered. Here, the context in extensions.conf could be something like

[from-trunk-customer]
exten => queue1, 1, Answer()
exten => queue1, n, Queue(tech-queue) 

when the call is connected, it could be redirect to queue “tech-queue” and answered by agent in this queue.

6. add a account as groupadmin, go “Extension” and click “Add”, add a account, group is AstercrmGroup3, usertype is groupadmin

7. next, we should prepare a diallist, we could use “Import” function to import diallist from a excel or cvs file. The operation could be done using the groupadmin account we just added. Logout and then login as the groupadmin, go to “Import”, select the local file, and then click “Upload”


“import” function could help us import phone numbers to diallist, we check the two check box on the buttom, the 0 in the select box, means the 0 column. click “Import” to continue, when finished, it will tell you “diallist : XXX records insert success”, then we could to “Diallist” and check if it imported:


8. now every thing is ready, we could go “Dialer” to start, coz only a admin could start a predictive dialer, so we logout and login as admin again


we could click “Dial” button to start, the number in input box is the maximum channels number, dialer would stop once the concurrent channels reach this number, it could be modified as you like.

Posted by solo at 13:15:37 | Permalink | Comments (3)

Sunday, January 13, 2008

Why doesnt my astercrm popup

here’re two reasons most possibly:

1. astercrm cant get asterisk evens, it’s always empty in table events.

please check if eventsdaemon.pl starts, ensure database & asterisk parameters be correct in the script.

for astercrm 0.0456 or above, could try start eventsdaemon in debug mode, execute:

 eventsdaemon.pl

and check the output message.

2. Popup is disabled in astercrm configuration

in astercrm configuration file: astercrm.conf.php, the fellowing parameters are related to popup:

[system]

it wouldnot  popup unless the length of the callerid is greater than this number

phone_number_length = 6

it wouldnot popup unless the value is 1 when dial out

pop_up_when_dial_out = 1

it wouldnot popup unless the value is 1 when dial in

pop_up_when_dial_in = 1

Posted by solo at 04:59:23 | Permalink | No Comments »