Jump to content

Virtual Receptionist


Quentin Lafferty
 Share

Recommended Posts

---Current Configuration-------------------------------------------------------------------------------------------------------------------------

  • Dialogic DMG1004LSW 4 port FXO gateway (inbound/outbound trunk to pbxnsip)
  • pbxnsip version 3.3.0.3165 (Win32)
  • Office Communications Server 2007 R2 (configured according to pbxnsip wiki)
  • Exchange 2007 UM (configured according to pbxsnip wiki)

I have tried MANY configurations, but at the moment the inbound trunk is simply sending calls to extension 400.

Extension 400 has a registration from an Office Communicator R2 client and is able to make/receive calls to the PSTN and to pbxnsip extensions.

Agent Group 600 is defined with a single agent - extension 400.

Unanswered calls are forwarded to the appropriate mailbox in Exchange UM.

 

---Challenge----------------------------------------------------------------------------------------------------------------------------------------

I am trying to implement an Agent Group creating a personal call queue that an active extension can use to selectively put inbound callers into using the 'Redirect' capability of OCS Communicator. When the user is done with their current call the next holding inbound call that they redirected to the Agent Group should ring back to them.

 

---Premise------------------------------------------------------------------------------------------------------------------------------------------

This configuration is to be used by a home office user that receives a high volume of inbound calls and does not have a receptionist to field them. Depending on the identity of the inbound caller this individual wants to avoid sending the caller to voicemail and give the caller an opportunity to wait on hold. They do not want to put their active call on hold and interrupt their current call in order to do this.

 

Using OCS, when an extension is in the middle of a call and another call comes in the 'toast' indicator from the OC client gives the option to 'Redirect' the call with a mouse click. This gives the user the ability to continue talking to their current call uninterrupted while deciding what to do with the second inbound call. It is possible to send the call to Voicemail, an external phone number, or an extension in pbxnsip -- in this case an Agent Group.

 

ocstoast.png

 

The initial message on entering the Agent Group makes the purpose of this clear: "Hi, this is -----. I am in the middle of a call with another client right now. I saw your caller ID and I placed you on hold. If you don't mind waiting for a few moments I will try to get to your call as soon as I can. You can press 1 and get transferred to my voicemail at any time if you don't want to wait. If you urgently need to get through to me please press 9. Thank you."

 

In this scenario the Agent Group Key 1 points to the Exchange UM mailbox and Key 9 points to a placeholder extension (401) that is hotdesking at extension 400.

 

---Problem------------------------------------------------------------------------------------------------------------------------------------------

The 'Redirect' capability in the OC client forwards the call instead of transferring the call.

 

===> SIP/2.0 181 Call Is Being Forwarded

===> FROM: <sip:+18005551212@localhost:5060;user=phone>;tag=63777

===> TO: Extension 400<sip:400@localhost>;tag=f4d85481f8;epid=2C289ACDD3

===> CSEQ: 22659 INVITE

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

===> INVITE sip:600@192.168.81.9;user=phone SIP/2.0

===> FROM: <sip:+12403939550@bnt.local;user=phone>;epid=2C289ACDD3;tag=ffa2c2da2

===> TO: <sip:600@192.168.81.9;user=phone>

===> CSEQ: 163 INVITE

 

Because of this pbxnsip thinks that extension 400 is still in a call even after the previous call has ended and the Agent recovery time (10 seconds) has passed. If I give up on using the Agent recovery time I guess I could use the OC client to pickup the call by dialing *87600, but I am having trouble getting the OC client to pass an asterisk back to pbxnsip (does anyone have an idea how to do this?).

 

===> [8] 2009/03/27 00:17:56:ACD: Extension 400 has another call

===> [7] 2009/03/27 00:17:56:ACD: Next stage in 600 has no agents available

 

I have tried several configurations to get around this hoping that one of the routing capabilities of pbxnsip would take the call away from extension 400 and leave it open so that the call could get routed back and take advantage of the Agent recovery time after the existing call ended.

 

I tried redirecting the call to an Auto Attendant that timed out immediately with a Redirect Number of 600. Didn't work.

 

I tried redirecting to a Hunt Group that was using a Service Flag and a Night Service Number of 600. No dice.

 

I tried having my trunk send all calls to my Auto Attendant which immediately forwarded calls to extension 400. Extension 400 still became the owner of the waiting call after redirecting it to the Agent Group.

 

Does anyone have another idea that might make this work? I'm thinking about setting up a physical SIP phone or a soft phone that additionally registers to extension 400. Maybe I can program a button that works instead of the OC client toast redirect. Or maybe some trick with PAC or SOAP.

 

I just started using pbxnsip a few days ago so I am not that familiar with its capabilities. Please excuse me if I am missing something obvious.

 

Quin

Link to comment
Share on other sites

I am trying to implement an Agent Group creating a personal call queue that an active extension can use to selectively put inbound callers into using the 'Redirect' capability of OCS Communicator. When the user is done with their current call the next holding inbound call that they redirected to the Agent Group should ring back to them.

 

Why don't you send the call to the agent group in the first place? This agent group would have only one agent (small group), which may use a static registration that points to the OCS.

 

I believe the redirect will get very tricky. Maybe we need to set something up in our environment as well, to see how we can deal with this.

Link to comment
Share on other sites

This home office user wants to appear as responsive and available as possible for his clients without having a receptionist.

 

When he is not on a call he wants his extension to ring for incoming calls. No Auto Attendant.

 

When he is in an active call and a second call comes in he will see the caller ID and he wants to be able to choose on the fly whether he answers the call immediately, allows the call to go to voicemail, or sends the call to the Agent Group and gives the client the opportunity to wait for him to finish his current call. The client that gets sent to the Agent Group would realize that he knows that they are on the phone waiting on hold. Almost like a receptionist took the call and placed them on hold for him.

 

Make sense?

 

If I sent all calls to the Agent Group then it would be a different experience for the caller and he wouldn't have the ability to choose whether or not the call should just go to voicemail -or- get picked up immediately. Particularly if it is a call that he knows is unimportant or if it is a call he knows is urgent.

Link to comment
Share on other sites

This home office user wants to appear as responsive and available as possible for his clients without having a receptionist.

 

When he is not on a call he wants his extension to ring for incoming calls. No Auto Attendant.

 

When he is in an active call and a second call comes in he will see the caller ID and he wants to be able to choose on the fly whether he answers the call immediately, allows the call to go to voicemail, or sends the call to the Agent Group and gives the client the opportunity to wait for him to finish his current call. The client that gets sent to the Agent Group would realize that he knows that they are on the phone waiting on hold. Almost like a receptionist took the call and placed them on hold for him.

 

Make sense?

 

If I sent all calls to the Agent Group then it would be a different experience for the caller and he wouldn't have the ability to choose whether or not the call should just go to voicemail -or- get picked up immediately. Particularly if it is a call that he knows is unimportant or if it is a call he knows is urgent.

 

Okay, so he wants a kind of glorified park orbit. Yes that makes sense.

 

The first step would be trying that without OCS - just a deflection into the agent group. If that works (can't try it right now) then we have an OCS issue.

 

Could be a good feature also without OCS. Maybe worth a button on a phone.

Link to comment
Share on other sites

Hi Quentin,

 

if you have OCS R2, why you dont try using the R2 Response Group Service? You can easily configure Workflows, Agents, Huntgroups - working our's, holidays etc. This will also respects OCS presence state and offers you a lot of basic and advanced ACD options.

 

In your described case, user can redirect the second call in a "please wait a moment - I am in a call workflow". Configuration of this workflows can be very granular, but you will easily understand what is configured.

 

You described

user that receives a high volume of inbound calls and does not have a receptionist to field them

 

so OCS R2 Attendant Console might be the better client for this user, instead of Office Communicator. Please give both option's a try :)

 

Best regards,

Jan

Link to comment
Share on other sites

  • 2 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...