Highlight a phrase and click this icon to search it on Swyx-Forum    Highlight a phrase and click this icon to search it within the Swyx Knowledgebase    Highlight a phrase and click this icon to search it using Goolge    Highlight a phrase and click this icon to search it using Wikipedia

Forum

Bookmark and Share

Forum

Bookmark and Share

 
  Forums  SwyxWare Client  Configuration -...  Putting call on hold for few seconds
Previous Previous
 
Next Next
New Post 6/29/2009 6:57 PM
Unresolved
User is offline Oskar
11 posts
www.svar.is
9th Level Poster


Putting call on hold for few seconds  (Iceland)

This is a very simple call routing script, I need to connect the call then if the user is busy I want to park the call on hold for x number of seconds and then try again.

all ideas welcome :)

regards
Oskar

 
New Post 6/29/2009 11:22 PM
User is offline Morten Rokosz
1070 posts
www.linkedin.com/in/rokosz
1st Level Poster








Re: Putting call on hold for few seconds  (Norway)

Since you wil use ECR anyway, why do you not simply build a queue? There are predefined Action Blocks for this in GSE.


Morten Rokosz
(Swyx T.A.G Member)

The best way to predict the future is to invent it.

 
New Post 6/30/2009 12:46 AM
User is offline Mirjam
102 posts
www.itnetworld.co.nz
4th Level Poster






Re: Putting call on hold for few seconds  (New Zealand)

Hi  Oskar


There is a small sample ECR script to download which routes an incoming calls according to user state speaking, available and logged off.

If a called party is speaking, the caller has options to be redirected to the main office number, leave a voicemail, send a callback request message or can wait until the called party is becoming free. If the user status of the called party changes from speaking to available, the “parked” caller will be immediately altering at the User extension.

Click here and download "Advanced DDI call routing".

Maybe this helps you.

Cheers
Mirjam

New Zealand & Australia Swyx Distributor

 
New Post 6/30/2009 10:58 AM
User is offline Tom Wellige
2201 posts
www.swyx.com
1st Level Poster








Re: Putting call on hold for few seconds  (Germany)
Modified By Tom Wellige  on 6/29/2011 9:15:27 AM)

 Oskar wrote

This is a very simple call routing script, I need to connect the call then if the user is busy I want to park the call on hold for x number of seconds and then try again.

Hi Oskar,

there is a block to put the current call on hold (i.e. starting some announcement/music) within the GSE. Once you have called that you can use a simple vbscript loop to check the availability of a certain user. Don't miss to place a PBXScript.Sleep 1000 into this loop !

You can use the following function to check the the client state (place it into the start block of your gse script):

  1. '----------------------------------------------------------------
  2. ' IsAgentFree
  3. '
  4. ' Checks if given user is free or not. For SwyxWare version <= v7.x
  5. ' it is necessary to check with the client as well to get knowledge of
  6. ' locked lines as well.
  7. '
  8. ' Parameter
  9. '    sNumber        extension
  10. '
  11. ' Return
  12. '     boolean
  13. '----------------------------------------------------------------
  14. Function IsAgentFree(ByVal sNumber)
  15.  
  16.     PBXScript.OutputTrace("-------------> IsAgentFree ( sNumber = " & sNumber & " )")
  17.  
  18.     Dim bReturn
  19.     bReturn = False
  20.  
  21.     Dim PBXConfig
  22.     PBXConfig = PBXScript.CreateObject("IpPbxSrv.PBXConfig")
  23.     PBXConfig.Initialize(PBXUser)
  24.  
  25.     Dim Users
  26.     Users = PBXConfig.GetUserByAddress(sNumber)
  27.  
  28.     Dim User
  29.     For Each User In Users
  30.  
  31.         PBXScript.OutputTrace("Found user " & User.Name & " with current state " & User.State)
  32.  
  33.         ' does the server recognize this user a free ?
  34.         If User.State = 2 Then
  35.  
  36.             PBXScript.OutputTrace("Server reports user as free, check for the client as well...")
  37.  
  38.             ' check if client would really take the call (and not having locked it's lines)
  39.             If PBXScript.IsUserOrGroupBusy(sNumber) = 0 Then
  40.                 PBXScript.OutputTrace("Client reports user as free as well")
  41.                 bReturn = True
  42.             Else
  43.                 PBXScript.OutputTrace("Client reports user as busy")
  44.             End If
  45.  
  46.         End If
  47.  
  48.     Next
  49.  
  50.     IsAgentFree = bReturn
  51.  
  52.     PBXScript.OutputTrace("bReturn = " & bReturn)
  53.     PBXScript.OutputTrace("<------------- IsAgentFree")
  54.  
  55. End Function

 

To put everything together:

  • use the Hold block to put the call on hold
  • use a VBScript code block to place the loop in 
  1. While Not IsAgentFree (100)
  2.     PBXScript.Sleep 1000
  3. Wend
  • use a Connect To block to connect the call.
    please note that the Connect To block will automatically activate the call on hold, so you don't need to call the Activate block by yourself.

But maybe Morten is right by suggesting to use the build in queue blocks for this. The queue itself does in fact nearly the same a described above.

 

Regards, Tom.

 


Tom Wellige
(Lead Solution Consultant, Swyx)

I learned very early the difference between knowing the name of something and knowing something.
Richard P. Feynman

 
Previous Previous
 
Next Next
  Forums  SwyxWare Client  Configuration -...  Putting call on hold for few seconds

 

 

Forum Policy

The discussion forums at Swyx Forum are dedicated to the discussion of Swyx, SwyxWare and related topics.

For the benefit of the community and to protect the integrity of swyx-form, please observe the following posting guidelines:

  1. No Advertising. This includes promotion of commercial products and non-commercial products which are not directly related to SwyxWare, it's OEM versions.
  2. No Flaming or Trolling.
  3. No Profanity, Racism, or Prejudice.
  4. Furthermore, make sure your posts comply to our Terms of Use.
  5. Newest development in German law defines online forums as journalistic content, making the forum owner and all posters to journalists. With this statement the forum owner declares that neither he nor his users are journalists with all legal consequences.
  6. The German Jugendmedienschutz-Staatsvertrag (JMStV) (Protection of Minors) defines a disclosure of online medias which are not suitable for minors below the age of 18. The Swyx Forum webseite does not provide any such content and underlies therefore not this disclosure. Please see further details including the responsible person for the protection of minors and direct contact data in the Imprint.
  7. The forums are currently unmoderated, meaning all postings will appear immediately after submission. If this turns out not working due to massive abuse all forums will switch to moderated mode, meaning a posting must be approved after submission my a moderator before appearing.
  8. You can use any language you like (except for the project forums) but keep in mind that by using english you will reach the largest audience.
  9. Within the project forums english language is mandatory.

 

Forum Help

Stay up-to-date
Forum Icons
Image Usage
Report Abuse

 

The default language in the forums is english, but feel free to use your mother tongue. Just keep in mind that by using english you will reach the largest audience.

Sponsors
Atia Communications
UCIT cloud communication
Data Way - data your way
bluvo AG