Priority Call Handling Configuration Reference (priority-call-config.xml)

The priority-call-config.xml custom resource configures the Priority Call Handling (PCH) feature. It defines:
  • Namespace Prioritization (mapping of supported PH/RPH namespaces to queueing-priority levels)
  • Priority Queues (per-queue processing priority, wait time, and timeout action)
  • Thresholds (status and evaluation order) and Leaky-Bucket Call-Rate partitions
  • Error Response Config entries (status code/text and optional headers)

Editing priority-call-config.xml

You should never move, modify, or delete the priority-call-config.xml file during normal operations.

Oracle recommends using the Remote Console to modify priority-call-config.xml indirectly, rather than editing the file manually with a text editor. Using the Remote Console ensures that priority-call-config.xml always contains valid XML. You may need to manually view or edit priority-call-config.xml to troubleshoot problem configurations, repair corrupted files, or to roll out custom configurations to many systems when installing or upgrading Converged Application Server.

When you manually edit priority-call-config.xml, you must restart Converged Application Server instances to apply your changes.

  1. Open <DOMAIN_HOME>/config/custom/priority-call-config.xml in a text editor.
  2. Modify the priority-call-config.xml file as necessary.
  3. Save and exit.
  4. Restart the Converged Application Server servers.
  5. Test the system to verify your changes.

XML Schema

The schema for priority-call-config.xml is packaged in the Converged Application Server distribution:

  • JAR: wlss-descriptor-binding.jar
  • Package (descriptor beans): com.bea.wcp.sip.management.descriptor.beans.*
    • PriorityCallConfigBean
    • PriorityNamespacePrioritizationBean
    • PriorityQueueBean
    • PriorityThresholdBean
    • PriorityLeakyBucketCallRateThresholdBean
    • PriorityErrorResponseConfigBean

Validation and bean creation are performed by the server’s descriptor framework when the custom resource is loaded.

Sample Example of priority-call-config.xml

<?xml version='1.0' encoding='UTF-8'?>
<priority-call-config xmlns="http://www.bea.com/ns/wlcp/wlss/300" xmlns:sec="http://xmlns.oracle.com/weblogic/security" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:wls="http://xmlns.oracle.com/weblogic/security/wls">

<!--Namespace Prioritization-->
<!-- ********************* -->
<priority-namespace-prioritization>
<name>sip.rph.wps.0</name>
<priority-header>rph</priority-header>
<priority-namespace>wps</priority-namespace>
<priority-level>0</priority-level>
<queueing-priority>0</queueing-priority>
</priority-namespace-prioritization>

<!-- QUEUE SPECIFIC SETTINGS -->
<!-- ********************* -->
<priority-queue>
<queue-name>order-0-message-Q</queue-name>
<queue-wait-time-in-secs>32</queue-wait-time-in-secs>
<queueing-priority>0</queueing-priority>
<processing-priority>5</processing-priority>
<queue-timeout-action>wlss.priority.call.violation.queue.maximum.wait.timeout</queue-timeout-action>
</priority-queue>

<!-- THRESHOLD SETTINGS -->
<!-- ********************* -->
<priority-threshold>
<threshold-name>leaky-bucket-call-rate-threshold</threshold-name>
<enabled>false</enabled>
<evaluation-order>1</evaluation-order>
</priority-threshold>

<!-- ERROR RESPONSE SETTINGS -->
<!-- ********************* -->
<priority-error-response-config>
<error-id>wlss.threshold.violation.callrate.protection</error-id>
<status-code>503</status-code>
<status-text>Service Unavailable</status-text>
</priority-error-response-config>

</priority-call-config>

XML Element Description

Namespace Prioritization

  • priority-namespace-prioritization
    • name: internal namespace ID (for example sip.rph.wps.0)
    • priority-header: "rph" or "ph"
    • priority-namespace: namespace segment (for example wps, ets, esnet, none)
    • priority-level: level value (0..4 for RPH; emergency, psap-callback for PH)
    • queueing-priority: integer where 0 is highest, 6 lowest, and -1 reserved for default (non-priority).

Priority Queues

  • priority-queue (multiple)
    • - queueing-priority: queueing-priority (0..6 for priority, -1 default)
    • queue-name: human-readable label
    • processing-priority: engine scheduling priority (10 highest..5 lowest)
    • queue-wait-time-in-secs: per-queue expiry horizon (0 disables expiry; use with care)
    • queue-timeout-action: reference to Error Response Config error ID

Thresholds

  • priority-threshold
    • threshold-name: “leaky-bucket-call-rate-threshold”
    • evaluation-order: integer to impose evaluation ordering when multiple thresholds are introduced in future phases
    • enabled: boolean

Error Response Config

  • priority-error-response-config
    • error-id: unique error identifier (referenced from thresholds and queue timeout actions)
    • status-code: SIP status code (for example 503, 408, 417).Range is 400-699
    • status-text: SIP reason phrase
    • additional-header-list: optional list of “Header-Name: value” strings to include in responses (for example “Retry-After: 10”)