SkillAgentSearch skills...

OpenIMSCore

No description available

Install / Use

/learn @cp-george/OpenIMSCore
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

This is the README file for usage of P-CSCF with the Policy and Charging interfaces enabled.

Written in Dezember 2007 by Alberto Diez Albaladejo (Alberto.Diez.Albaladejo at FOKUS) Some changes in April 2008

As for now two versions are supported Gq (Release 6 interface to the PDF) and Rx (release 7 to the PCRF). There are few differences between those.

Two files have to be configured to be able to use this interfaces the ser config file ie. pcscf.cfg and the C Diameter Peer XML configuration file ie. pcrfconfig.xml

Examples of both are given in the cfg directory.

CONFIGURING THE SER CONFIG FILE

To select between Rx or Gq set the parameter qos_release7 of the pcscf module to 1 for Rx or 0 for Gq.

modparam("pcscf","qos_release7",1)   

That would set Rx.

Support for Gqprima AVPs has been added, this is very basic but for Gqprima AVPs to be included in the AAR request the parameter qos_release7 has to be set to -1

moparam("pcscf","qos_release7",-1)

Another parameter is used to set the FQDN of the PCRF or PDF in case needed (see C Diameter Peer README)

modparam("pcscf","forced_qos_peer","pcrf.open-ims.test")

Another parameter has been defined that specifies which side (caller or callee or both) is the one to reserve resources (this is needed if testing with only one P-CSCF in order not to reserve twice for the same connections)

modparam("pcscf","qos_side",2)

0 caller , 1 callee 2 both

After that you have to set in which circunstances you want to do the authorization proccess... In the example config file, the following functions are used to use PCRF only in the originating side, because i use the same P-CSCF for both sides and it would be a bit messy if not. But it could be done also for orig and term.

Functions provided are : P_AAR , P_STR , P_generates_aar , P_release_call_onreply

P_AAR : This function sends AAR message to the PDF or PCRF to request authorization for the session. It should be called only in reply route blocks, when a successful reply to an INVITE, reINVITE or UPDATE with SDP content has been received. P_STR : This function sends an STR message after a session is dropped. In order that the PDF deallocates the resources reserved for that session.

P_generates_aar: This function helps to see if the reply that it has been recovered is one that should generate an AAR. It also does some checkings concerning the side of the transaction. (I should include here some checking of the SDP but i didnt have the time yet, please contribute with your code)

P_release_call_onreply: This function doesn't really do anything with the PCC architecture, but it generates the appropiate signaling to quit a call. Its useful when the PDF or PCRF rejects one session, then the PCSCF can generate CANCEL, or BYE depending on the situation. At the moment of writting this , there is an issue with the CANCEL because the cancel generated by the tm module isn't being accepted by some clients. I can generate a CANCEL myself but then there is an issue with the VIA branch parameter not following the RFC.... This has to be solved.

CONFIGURING THE C DIAMETER PEER XML CONFIG FILE

A sample config file called pcscf.pdf.xml is provided, if you change the name dont forget to change it in the ser config file accordingly.

This lines have to be included because the Vendor Specific Authorization Application ID its not used. It only works with vendor set to 0, its ok with the specification that way. <Auth id="16777236" vendor="10415"/> <Auth id="16777236" vendor="0"/>

TESTING

Wireshark dictionarys for the interfaces are included in the cfg directory TGPPGq.xml TGPPRx.xml

Put them in the wireshark diameter directory with other dictionarys and load them writting their entity description at the begining of dictionary.xml and the loading command at the end

&TGPPRx; &TGPPGq;

Seagull files to simulate a PDF are also included in this doc/Seagull

Three files are needed for seagull to act as a PDF config file --> conf.server.xml dictionary --> base_gq.xml server thing --> aar-aaa.server.xml

Related Skills

View on GitHub
GitHub Stars6
CategoryDevelopment
Updated12d ago
Forks8

Languages

C

Security Score

65/100

Audited on Mar 20, 2026

No findings