MCPcopy Create free account
hub / github.com/OpenSIPS/opensips / ospReportUsageFromDestination

Function ospReportUsageFromDestination

modules/osp/usage.c:644–685  ·  view source on GitHub ↗

* Report OSP usage from destination * param transaction OSP transaction handle * param inbound Inbound info * param dest Destination * return 0 success */

Source from the content-addressed store, hash-verified

642 * return 0 success
643 */
644static int ospReportUsageFromDestination(
645 OSPTTRANHANDLE transaction,
646 osp_inbound* inbound,
647 osp_dest* dest)
648{
649 OSPPTransactionSetSIPHeader(transaction, OSPC_SIPHEADER_FROM, OSPC_NFORMAT_DISPLAYNAME, inbound->fromdisplay);
650
651 OSPPTransactionSetSIPHeader(transaction, OSPC_SIPHEADER_RPID, OSPC_NFORMAT_E164, inbound->rpiduser);
652 OSPPTransactionSetSIPHeader(transaction, OSPC_SIPHEADER_RPID, OSPC_NFORMAT_TRANSPORT, inbound->rpidhost);
653 OSPPTransactionSetSIPHeader(transaction, OSPC_SIPHEADER_PAI, OSPC_NFORMAT_E164, inbound->paiuser);
654 OSPPTransactionSetSIPHeader(transaction, OSPC_SIPHEADER_PAI, OSPC_NFORMAT_TRANSPORT, inbound->paihost);
655 OSPPTransactionSetSIPHeader(transaction, OSPC_SIPHEADER_PCI, OSPC_NFORMAT_E164, inbound->pciuser);
656 OSPPTransactionSetSIPHeader(transaction, OSPC_SIPHEADER_PCI, OSPC_NFORMAT_TRANSPORT, inbound->pcihost);
657 OSPPTransactionSetDiversion(transaction, inbound->divuser, inbound->divhost);
658 OSPPTransactionSetSIPHeader(transaction, OSPC_SIPHEADER_CONTACT, OSPC_NFORMAT_TRANSPORT, inbound->contacthost);
659
660 OSPPTransactionSetChargingVector(transaction, inbound->pcvicid, NULL, NULL, NULL);
661
662 OSPPTransactionSetSrcAudioAddr(transaction, inbound->srcmedia);
663
664 OSPPTransactionSetProxyIngressAddr(transaction, inbound->ingressaddr);
665
666 OSPPTransactionSetSrcServiceProvider(transaction, inbound->sp);
667
668 OSPPTransactionSetCallPartyInfo(transaction, OSPC_CPARTY_SOURCE, NULL, inbound->userid, inbound->usergroup);
669
670 OSPPTransactionSetCDRProxy(transaction, _osp_in_device, OSP_OPENSIPS, NULL);
671
672 ospReportUsageWrapper(
673 transaction, /* In - Transaction handle */
674 dest->lastcode, /* In - Release Code */
675 0, /* In - Length of call */
676 inbound->authtime, /* In - Call start time */
677 0, /* In - Call end time */
678 dest->time180, /* In - Call alert time */
679 dest->time200, /* In - Call connect time */
680 dest->time180 ? 1 : 0, /* In - Is PDD Info present */
681 dest->time180 ? dest->time180 - inbound->authtime : 0, /* In - Post Dial Delay */
682 ((dest->lastcode == 200) || (dest->lastcode == 300)) ? OSPC_RELEASE_UNKNOWN : OSPC_RELEASE_INTERNAL);
683
684 return 0;
685}
686
687/*
688 * Report originate call setup usage

Callers 2

ospReportOrigSetupUsageFunction · 0.85
ospReportTermSetupUsageFunction · 0.85

Calls 1

ospReportUsageWrapperFunction · 0.85

Tested by

no test coverage detected