Open Ethernet Networking (OpEN) API Guide and Reference Manual  3.6.0.3
Auto-VoIP APIs

Voice over Internet Protocol (VoIP) allows you to make telephone calls using a computer network, over a data network like the Internet. With the increased prominence of delay-sensitive applications (voice, video, and other multimedia applications) deployed in networks today, proper QoS configuration ensures high-quality application performance. The Auto VoIP feature is intended to provide an easy classification mechanism for voice packets so that they can be prioritized above data packets in order to provide better QoS. Voice prioritization is provided based on protocol (SIP, SCCP, H.323, MGCP) and OUI bits.

AUTO-VOIP OpEN API

This document provides a brief description of the Auto-VoIP OpEN APIs. It provides the following services:

All 'Set' operations would affect the Switch behavior and configuration.

Example C Application voip_example

Initialization

In the main function, the sample application initializes the OpEN API RPC service by calling openapiClientRegister() and waits for the RPC service in switchdrvr to start. A Client Handle is returned by openapiClientRegister() which is used while invoking the OpEN APIs. The application then exercises the associated OpEN APIs and logs informational and/or error messages on the console. The example application runs to its completion and exits.

voip_example

voip_example.c is a sample application that demonstrates the use of the Auto-VoIP OpEN API. voip_example is started from the command line. It then exercises all the Auto-VoIP OpEN APIs one by one with appropriate arguments to manage the Auto-VoIP component in the ICOS main process (switchdrvr).

VOIP CLI/API Cross Reference

CLI Command OpEN API Reference
(Config)#
[no] auto-voip vlan <vlanID>
openapiVoipGlobalVlanIdGet()
openapiVoipGlobalVlanIdSet()
openapiVoipGlobalVlanIdReset

(Config)#
[no] auto-voip protocol-based {remark <priority> | traffic-class <priority>} | openapiVoipProfileCosQueueGet()
openapiVoipProfileCosQueueSet() (Config)#
[no] auto-voip oui-based {priority <priority>} (Interface-Config Mode)#
[no] auto-voip {oui-based | protocol-based} | openapiVoipIntfModeGet()
openapiVoipIntfModeSet() (Priv-User Mode)#
show auto-voip | openapiVoipGlobalVlanIdGet()
openapiVoipMaxCallsGet()
openapiVoipNumActiveProtocolSessionsGet() (Priv-User Mode)#
show auto-voip oui-based | openapiVoipGlobalVlanIdGet()
openapiVoipOUIPriorityGet() (Priv-User Mode)#
show auto-voip oui-based interface <all | slot/port > | openapiVoipGlobalVlanIdGet()
openapiVoipOUIPriorityGet()
openapiVoipIntfModeGet()
openapiVoipIntfOUIStatusGet() (Priv-User Mode)#
show auto-voip protocol-based interface <all | slot/port > | openapiVoipGlobalVlanIdGet()
openapiVoipProfileCosQueueGet()
openapiVoipIntfModeGet()
openapiVoipIntfOUIStatusGet()