Personal tools

switchvox.extensions.callQueues.update

From SwitchvoxExtendAPI

Jump to: navigation, search

Contents

Description

Modify an existing call queue extension.

Arguments

See the Constructing Requests page to learn how to use arguments in requests.
Name Required Type Default Description
dial_zero_rule integer Which extension to ring when the caller dials zero
extension integer The extension to ring
seconds_to_wait integer Maximum number of seconds a queue member’s phone can ring before the system goes on to ring the next member of the queue.
announce_hold_time boolean Announce the estimated hold time to callers
seconds_for_wrap_up integer Minimum amount of time (in seconds) after disconnecting a call before the agent can receive a new call from the queue.
caller_announcements There are various announcement sounds that are played to the caller when he or she is waiting in a queue.
announcement_type string The announcement_type for this announcement.
  • you_are_next: You Are Next - "Your call is now first in line and will be answered by the next available representative."
  • there_are: Caller Number - "You are currently caller number"
  • thank_you: Thank You - "Thank you for your patience"
  • minutes: Minutes - "Minutes"
  • hold_time: Hold Time - "The estimated hold time is currently"
  • calls_waiting: Call Waiting - "Waiting to speak to a representative"
sound_id integer The sound_id for this announcement
ring_strategy string How to distribute the incmong call to queue members.
  • ringall: Ring All
  • rrmemory: Round Robin
  • leastrecent: Least Recently Called
  • fewestcalls: Fewest Calls
  • random: Random
  • inorder: In Order
caller_announcement_langauge_id integer The language for the announcements specified in the caller_announcements
number_missed_calls_before_logout integer If a member misses more calls in a row than the number in this setting, he is automatically logged out of this queue. Calls will not ring this member until he logs in again. If you do not want members to be logged out automatically, set this to 0 (zero).
wait_time_rule If a caller has been waiting in the queue for X seconds, route the caller to extension Y. Leave this blank to leave callers in the queue indefinitely.
wait_time integer The number of seconds for the caller to wait.
extension integer The extension to route to.
account_id required integer The account id of the queue to update
name string The name of the call queue
queue_members The members of this call queue.
login_type string The member login type
  • login
  • permanent
id integer The member's account_id or extension group ID
member_type string The member type
  • account
  • extension_group
announcement_frequency integer Number of seconds between caller announcements.
music_on_hold_group_id integer
cycle_rule If a queue call has passed through the Ringing Strategy X times without being answered then route that call to extension Y.
extension integer The extension to route to.
number_of_times integer The number of times the call has passed through the Ringing Strategy.
seconds_to_ring integer The maximum number of seconds a queue member’s phone can ring before the system stops ringing that member, and goes to the next member of the queue.
announce_position boolean If this is TRUE, the caller hears an announcement when they enter the queue, and the announcement says what the caller’s position is in the queue. The announcement is repeated depending on the Announcement Frequency setting. If this is FALSE, the caller hears Music on Hold with no position announcement.
acknowledge_call boolean If TRUE, require members to press the 1 key to accept the call. If the member hangs up, then the call goes to the next appropriate queue member.
no_members_rule If there aren't any members logged into the queue, route all incoming queue calls to extension Y. Leave blank to keep callers waiting in the queue until a queue member logs in.
extension integer The extension to route to.
member_announcement_language_id integer The language id of the member announcements
member_announcements The announcements made to queue members.
sound_id integer The sounds id for this announcement.
announcement_type string The announcement type.
  • pickup
receive_calls_while_on_call boolean If TRUE, queue members can receive a call while on a call.
ring_in_queue boolean If true, callers hear ringing when they are waiting in the queue, and caller announcements are disabled.
unanswerd_rule If there are X unanswered calls in the queue, route all new incoming queue calls to extension Y. Leave blank to have an unlimited queue length.
extension integer The extension to route to.
number_of_calls integer The maximum number of unanswered calls.
user_permissions Set the permission level for extensions to see this queue in the Queue Panel on their Switchboard.
permission_level string The permission level for this account
  • my_status
  • overview
  • detailed_view
account_id integer The account id for this permission level.

Example Requests & Responses

Please see the API Request and Response Format section for more information on various request encodings.

Example One (Using individual extensions)

Request

<request method="switchvox.extensions.callQueues.update">
  <parameters>
    <account_id>18</account_id>
    <name>Test Queue</name>
    <ring_strategy>ringall</ring_strategy>      
    <seconds_to_ring>10</seconds_to_ring>
    <seconds_to_wait>2</seconds_to_wait>
    <seconds_for_wrap_up>30</seconds_for_wrap_up>
    <member_announcement_language_id>0</member_announcement_language_id>
    <member_announcements>
      <member_announcement>
	<announcement_type>pickup</announcement_type>
	<sound_id>56</sound_id>
      </member_announcement>	
    </member_announcements>
    <acknowledge_call>1</acknowledge_call>
    <number_missed_calls_before_logout>5</number_missed_calls_before_logout>
    <receive_calls_while_on_call>1</receive_calls_while_on_call>
    <queue_members>
      <queue_member>
	<id>1104</id>
	<login_type>permanent</login_type>
	<member_type>account</member_type>
      </queue_member>
      <queue_member>
	<id>1105</id>
	<login_type>login</login_type>
	<member_type>account</member_type>
      </queue_member>
    </queue_members>
    <user_permissions>
      <user_permission>
	<account_id>1104</account_id>
	<permission_level>my_status</permission_level>
      </user_permission>
      <user_permission>
	<account_id>1105</account_id>
	<permission_level>my_status</permission_level>
      </use_permissionr>
    </user_permissions>
    <ring_in_queue>1</ring_in_queue>
    <music_on_hold_group_id>1</music_on_hold_group_id>
    <announce_position>1</announce_position>
    <announce_hold_time>1</announce_hold_time>
    <announcement_frequency>90</announcement_frequency>
    <caller_announcement_langauge_id>0</caller_announcement_langauge_id>
    <caller_announcements>
      <caller_announcement>                        
	<sound_id>35</sound_id>    
	<announcement_type>you_are_next</announcement_type>    
      </caller_announcement>
    </caller_announcements>
    <wait_time_rule>
      <wait_time>20</wait_time>
      <extension>333</extension>
    </wait_time_rule>
    <no_members_rule>
      <extension>333</extension>
    </no_members_rule>
    <unanswerd_rule>
      <number_of_calls>5</number_of_calls>
      <extension>333</extension>
    </unanswerd_rule>
    <cycle_rule>
      <number_of_times>5</number_of_times>
      <extension>333</extension>
    </cycle_rule>
    <dial_zero_rule>
      <extension>339</extension>
    </dial_zero_rule>
  </parameters>
</request>

Example Tow (Using extension groups)

Request

<request method="switchvox.extensions.callQueues.update">
  <parameters>
    <account_id>18</account_id>
    <name>Test Queue</name>
    <ring_strategy>ringall</ring_strategy>      
    <seconds_to_ring>10</seconds_to_ring>
    <seconds_to_wait>2</seconds_to_wait>
    <seconds_for_wrap_up>30</seconds_for_wrap_up>
    <member_announcement_language_id>0</member_announcement_language_id>
    <member_announcements>
      <member_announcement>
	<announcement_type>pickup</announcement_type>
	<sound_id>56</sound_id>
      </member_announcement>	
    </member_announcements>
    <acknowledge_call>1</acknowledge_call>
    <number_missed_calls_before_logout>5</number_missed_calls_before_logout>
    <receive_calls_while_on_call>1</receive_calls_while_on_call>
    <queue_members>
      <queue_member>
	<id>1104</id>
	<login_type>permanent</login_type>
	<member_type>extension_group</member_type>
      </queue_member>
      <queue_member>
	<id>1105</id>
	<login_type>login</login_type>
	<member_type>extension_group</member_type>
      </queue_member>
    </queue_members>
    <user_permissions>
      <user_permission>
	<account_id>1104</account_id>
	<permission_level>my_status</permission_level>
      </user_permission>
      <user_permission>
	<account_id>1105</account_id>
	<permission_level>my_status</permission_level>
      </use_permissionr>
    </user_permissions>
    <ring_in_queue>1</ring_in_queue>
    <music_on_hold_group_id>1</music_on_hold_group_id>
    <announce_position>1</announce_position>
    <announce_hold_time>1</announce_hold_time>
    <announcement_frequency>90</announcement_frequency>
    <caller_announcement_langauge_id>0</caller_announcement_langauge_id>
    <caller_announcements>
      <caller_announcement>                        
	<sound_id>35</sound_id>    
	<announcement_type>you_are_next</announcement_type>    
      </caller_announcement>
    </caller_announcements>
    <wait_time_rule>
      <wait_time>20</wait_time>
      <extension>333</extension>
    </wait_time_rule>
    <no_members_rule>
      <extension>333</extension>
    </no_members_rule>
    <unanswerd_rule>
      <number_of_calls>5</number_of_calls>
      <extension>333</extension>
    </unanswerd_rule>
    <cycle_rule>
      <number_of_times>5</number_of_times>
      <extension>333</extension>
    </cycle_rule>
    <dial_zero_rule>
      <extension>339</extension>
    </dial_zero_rule>
  </parameters>
</request>

Response

<response method="switchvox.extensions.callQueues.update">
  <result>
    <success />
  </result>
</response>

Error Codes

See the Error Code Formatting section to see the xml structure when an error is returned.
See the Generic Error Codes section to see a list of general fault codes that may be returned.
Code Description
10000 Missing required parameter (account_id)
10000 Invalid account_id (%1). Account_ids may only contain digits.
10000 That account_id is invalid.
35830 The extension in the dial zero rule is invalid (%1)
32494 Invalid seconds_to_wait. Must be a positive integer.
10000 Invalid announce_hold_time. Value must be either a 1 or a 0.
32494 Invalid seconds_for_wrap_up. Must be a positive integer.
59027 When specifying caller announcements, you must pass both the announcement_type and sound_id, or pass neither.
15490 The Caller Announcement has an invalid sound id (%1)
37063 %1 is not a valid language_id for caller_announcement_language_id
32494 Invalid number_missed_calls_before_logout. Must be a positive integer.
27597 When specifying the Wait Time Rule, you must pass both wait_time and extension, or pass neither.
54157 The wait time in the wait time rule is invalid (%1)
22736 The extension in the wait time rule is invalid (%1).
10000 A call queue with that name already exists.
14362 A queue member account id is invalid (%1)
66249 Extension group Id can only be digits
74243 Unable to find an extension group
32494 Invalid announcement_frequency. Must be a positive integer.
61402 That music on hold group does not exist
68522 When specifying the Cycle Rule, you must pass both number_of_times and extension, or pass neither.
75656 The number of times (%1) in the ring strategy rule is invalid
72882 The extension in the ring strategy rule is invalid
32494 Invalid seconds_to_ring. Must be a positive integer.
10000 Invalid announce_position. Value must be either a 1 or a 0.
10000 Invalid acknowledge_call. Value must be either a 1 or a 0.
74624 The extension in the no members rule is invalid (%1)
37603 %1 is not a valid language_id for member_announcement_language_id
29007 When specifying member announcements, you must pass both the announcement_type and sound_id, or pass neither.
51056 The Member Announcement has an invalid sound id (%1)
10000 Invalid receive_calls_while_on_call. Value must be either a 1 or a 0.
93411 When specifying the Unanswered Rule, you must pass both number_of_calls and extension, or pass neither.
31815 The number of calls in the unanswered rule is invalid (%1)
68752 The extension in the unanswered rule is invalid (%1)
21915 When specifying user permissions, you must pass both the permission_level and account_id, or pass neither.
76764 The account id for a user permission is invalid (%1)