{"id":3276,"date":"2026-04-26T07:13:48","date_gmt":"2026-04-26T07:13:48","guid":{"rendered":"https:\/\/multahost.com\/blog\/?p=3276"},"modified":"2026-04-26T07:24:01","modified_gmt":"2026-04-26T07:24:01","slug":"vos3000-cdr-pipe-format","status":"publish","type":"post","link":"https:\/\/multahost.com\/blog\/vos3000-cdr-pipe-format\/","title":{"rendered":"VOS3000 CDR Pipe Format Definitive 18-Field Important Reference Guide"},"content":{"rendered":"\n<h1 class=\"wp-block-heading\" id=\"vos-3000-cdr-pipe-format-definitive-18-field-reference-guide\">VOS3000 CDR Pipe Format Definitive 18-Field Reference Guide<\/h1>\n\n\n\n<p>\ud83d\udcca Every VOS3000 operator who exports call detail records must understand the <strong>VOS3000 CDR pipe format<\/strong> down to the individual field level. The pipe-delimited text file is the universal interface between your softswitch and every external system that consumes call data \u2014 billing platforms, fraud detection engines, analytics dashboards, and regulatory compliance archives. A single misinterpreted field can cascade into billing errors, incorrect traffic reports, or failed audits. Yet the official manual provides only a brief field listing, leaving operators to figure out data types, edge cases, and integration mappings on their own. \ud83d\udd0d<\/p>\n\n\n\n<p>\u2699\ufe0f This guide provides a definitive, field-by-field reference of every column in the VOS3000 CDR pipe format. Each field is documented with its position in the pipe-delimited line, data type, example value, special considerations, and how it maps to external billing and analytics systems. All field definitions are sourced from the official VOS3000 2.1.8.0\/2.1.9.07 English manual \u00a74.4 (pages 241\u2013243), with additional practical guidance based on real-world parsing and integration experience. \ud83d\udcd8<\/p>\n\n\n\n<p>\ud83c\udfaf Whether you are building a Python CDR parser, configuring a MySQL import pipeline, or integrating VOS3000 with a third-party billing system, this reference eliminates the guesswork from field mapping and data interpretation. Let us walk through every field in the exact order it appears in each CDR line. \ud83d\udd27<\/p>\n\n\n\n<div class=\"wp-block-rank-math-toc-block\" id=\"rank-math-toc\"><h2>Table of Contents<\/h2><nav><ul><li><a href=\"#vos-3000-cdr-pipe-format-definitive-18-field-reference-guide\">VOS3000 CDR Pipe Format Definitive 18-Field Reference Guide<\/a><ul><li><a href=\"#\ud83d\udd10-vos-3000-cdr-pipe-format-overview\">\ud83d\udd10 VOS3000 CDR Pipe Format Overview<\/a><ul><li><a href=\"#\ud83d\udccb-cdr-line-format-structure\">\ud83d\udccb CDR Line Format Structure &#8211; VOS3000 CDR Pipe<\/a><\/li><\/ul><\/li><li><a href=\"#\ud83d\udcca-complete-field-by-field-reference\">\ud83d\udcca Complete Field-by-Field Reference &#8211; VOS3000 CDR Pipe<\/a><ul><li><a href=\"#field-1-caller-e-164-the-caller-id-\ud83d\udd14\">Field 1: callerE164 \u2014 The Caller ID \ud83d\udd14<\/a><\/li><li><a href=\"#field-2-callee-e-164-the-callee-id-\ud83d\udcde\">Field 2: calleeE164 \u2014 The Callee ID \ud83d\udcde<\/a><\/li><li><a href=\"#field-3-start-time-call-begin-time-\u23f0\">Field 3: startTime \u2014 Call Begin Time \u23f0<\/a><\/li><li><a href=\"#field-4-stop-time-call-end-time-\ud83d\uded1\">Field 4: stopTime \u2014 Call End Time \ud83d\uded1<\/a><\/li><li><a href=\"#field-5-hold-time-call-duration-\u23f1\ufe0f\">Field 5: holdTime \u2014 Call Duration \u23f1\ufe0f<\/a><\/li><li><a href=\"#field-6-end-reason-end-reason-code-\ud83d\udccb\">Field 6: endReason \u2014 End Reason Code \ud83d\udccb<\/a><\/li><li><a href=\"#field-7-end-direction-hangup-side-\ud83d\udd04\">Field 7: endDirection \u2014 Hangup Side \ud83d\udd04<\/a><\/li><li><a href=\"#fields-8-9-gateway-identifiers-\ud83d\udce1\">Fields 8\u20139: Gateway Identifiers \ud83d\udce1<\/a><\/li><li><a href=\"#fields-10-11-ip-addresses-\ud83c\udf10\">Fields 10\u201311: IP Addresses \ud83c\udf10<\/a><\/li><li><a href=\"#fields-12-13-access-incoming-e-164-numbers-\ud83d\udce5\">Fields 12\u201313: Access (Incoming) E164 Numbers \ud83d\udce5<\/a><\/li><li><a href=\"#fields-14-15-outbound-to-gateway-e-164-numbers-\ud83d\udce4\">Fields 14\u201315: Outbound (To Gateway) E164 Numbers \ud83d\udce4<\/a><\/li><li><a href=\"#field-16-callee-billing-billing-method-\ud83d\udcb0\">Field 16: calleeBilling \u2014 Billing Method \ud83d\udcb0<\/a><\/li><li><a href=\"#field-17-billing-mode-charge-mode-\ud83d\udcb3\">Field 17: billingMode \u2014 Charge Mode \ud83d\udcb3<\/a><\/li><li><a href=\"#fields-18-19-post-dial-delay-metrics-\u23f1\ufe0f\">Fields 18\u201319: Post-Dial Delay Metrics \u23f1\ufe0f<\/a><\/li><\/ul><\/li><li><a href=\"#\ud83d\udccb-complete-vos-3000-cdr-pipe-format-quick-reference-table\">\ud83d\udccb Complete VOS3000 CDR Pipe Format Quick Reference Table<\/a><\/li><li><a href=\"#\ud83d\udcca-external-system-mapping-guide\">\ud83d\udcca External System Mapping Guide &#8211; VOS3000 CDR Pipe<\/a><\/li><li><a href=\"#\u2753-frequently-asked-questions\">\u2753 Frequently Asked Questions<\/a><ul><li><a href=\"#\u2753-how-many-fields-are-in-the-vos-3000-cdr-pipe-format\">\u2753 How many fields are in the VOS3000 CDR pipe format?<\/a><\/li><li><a href=\"#\u2753-why-is-hold-time-in-milliseconds-instead-of-seconds\">\u2753 Why is holdTime in milliseconds instead of seconds?<\/a><\/li><li><a href=\"#\u2753-what-is-the-difference-between-caller-e-164-and-caller-access-e-164\">\u2753 What is the difference between callerE164 and callerAccessE164?<\/a><\/li><li><a href=\"#\u2753-what-does-a-billing-mode-of-1-mean-in-the-cdr\">\u2753 What does a billingMode of -1 mean in the CDR?<\/a><\/li><li><a href=\"#\u2753-how-do-i-parse-vos-3000-cdr-files-with-different-field-counts\">\u2753 How do I parse VOS3000 CDR files with different field counts?<\/a><\/li><li><a href=\"#\u2753-are-vos-3000-cdr-timestamps-in-utc-or-local-time\">\u2753 Are VOS3000 CDR timestamps in UTC or local time?<\/a><\/li><\/ul><\/li><li><a href=\"#\ud83d\udcde-need-expert-help-with-vos-3000-cdr-pipe-format\">\ud83d\udcde Need Expert Help with VOS3000 CDR Pipe Format?<\/a><\/li><li><a href=\"#\ud83d\udcde-need-call-center-setup-support\">\ud83d\udcde Need Professional VOS3000 Setup Support?<\/a><\/li><\/ul><\/li><\/ul><\/nav><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"\ud83d\udd10-vos-3000-cdr-pipe-format-overview\">\ud83d\udd10 VOS3000 CDR Pipe Format Overview<\/h2>\n\n\n\n<p>\ud83d\udcc1 When <strong>SS_CDR_RECORD_TO_FILE<\/strong> is enabled in VOS3000, the softswitch generates hourly text files in the <code>cdr\/<\/code> directory. Each file follows the naming convention YYYYMMDDHH.txt, and each line within the file represents one call detail record with fields separated by the pipe character (<code>|<\/code>, ASCII 124). The format specification is documented in the official VOS3000 manual \u00a74.4.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"\ud83d\udccb-cdr-line-format-structure\">\ud83d\udccb CDR Line Format Structure &#8211; VOS3000 CDR Pipe<\/h3>\n\n\n\n<pre class=\"wp-block-preformatted\">callerE164|calleeE164|startTime|stopTime|holdTime|endReason|\nendDirection|callerGatewayId|calleeGatewayId|callerIp|calleeIp|\ncallerAccessE164|calleeAccessE164|callerToGatewayE164|\ncalleeToGatewayE164|calleeBilling|billingMode|callerPdd|calleePdd\n<\/pre>\n\n\n\n<p>\ud83d\udcdd <strong>Field count note:<\/strong> The VOS3000 manual \u00a74.4 documents the header line with 18 pipe separators producing 19 columns. The first 17 fields (through billingMode) are the core billing-critical fields present in all CDR records. Fields 18 and 19 (callerPdd and calleePdd) provide Post-Dial Delay metrics that measure call setup timing. Your parsing logic should handle both 17-field and 19-field records for maximum compatibility across VOS3000 versions.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"\ud83d\udcca-complete-field-by-field-reference\">\ud83d\udcca Complete Field-by-Field Reference &#8211; VOS3000 CDR Pipe<\/h2>\n\n\n\n<p>\ud83d\udccb Below is the definitive reference for every field in the VOS3000 CDR pipe format, in the exact order they appear in each line:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"field-1-caller-e-164-the-caller-id-\ud83d\udd14\">Field 1: callerE164 \u2014 The Caller ID \ud83d\udd14<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th class=\"has-text-align-left\" data-align=\"left\">Attribute<\/th><th class=\"has-text-align-left\" data-align=\"left\">Value<\/th><\/tr><tr><td>\ud83d\udccc Field Position<\/td><td>1 (first field)<\/td><\/tr><tr><td>\ud83d\udcd0 Data Type<\/td><td>String (numeric E.164 format)<\/td><\/tr><tr><td>\ud83d\udcdd Description<\/td><td>The caller ID \u2014 the originating party&#8217;s phone number<\/td><\/tr><tr><td>\ud83d\udd22 Example<\/td><td>12125551234<\/td><\/tr><tr><td>\u26a0\ufe0f Notes<\/td><td>May differ from callerAccessE164 after prefix transformations<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>\ud83d\udca1 <strong>Practical note:<\/strong> The callerE164 field reflects the caller ID after VOS3000 has applied any configured prefix transformations. This is the number as seen by the billing engine, not necessarily the original incoming number. For the original incoming caller ID before any transformations, refer to Field 12 (callerAccessE164). Understanding this distinction is essential when troubleshooting <a href=\"https:\/\/multahost.com\/blog\/vos3000-cdr-billing-discrepancy\/\">billing discrepancies<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"field-2-callee-e-164-the-callee-id-\ud83d\udcde\">Field 2: calleeE164 \u2014 The Callee ID \ud83d\udcde<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th class=\"has-text-align-left\" data-align=\"left\">Attribute<\/th><th class=\"has-text-align-left\" data-align=\"left\">Value<\/th><\/tr><tr><td>\ud83d\udccc Field Position<\/td><td>2<\/td><\/tr><tr><td>\ud83d\udcd0 Data Type<\/td><td>String (numeric E.164 format)<\/td><\/tr><tr><td>\ud83d\udcdd Description<\/td><td>The callee ID \u2014 the destination phone number<\/td><\/tr><tr><td>\ud83d\udd22 Example<\/td><td>18005559876<\/td><\/tr><tr><td>\u26a0\ufe0f Notes<\/td><td>This is the billed destination number after prefix processing<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>\ud83d\udd11 <strong>Billing relevance:<\/strong> The calleeE164 is the number used by the VOS3000 billing engine to match the call against rate tables. If your <a href=\"https:\/\/multahost.com\/blog\/vos3000-prefix-settings-rate-prefix-area-prefix-client-vendor-prefix-settings-in-vos3000-server-in-easy-ways\/\">prefix settings<\/a> strip or add digits, the calleeE164 reflects the number after those transformations. This is critical for rate table matching \u2014 a calleeE164 of 18005559876 matches a different rate entry than 01118005559876.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"field-3-start-time-call-begin-time-\u23f0\">Field 3: startTime \u2014 Call Begin Time \u23f0<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th class=\"has-text-align-left\" data-align=\"left\">Attribute<\/th><th class=\"has-text-align-left\" data-align=\"left\">Value<\/th><\/tr><tr><td>\ud83d\udccc Field Position<\/td><td>3<\/td><\/tr><tr><td>\ud83d\udcd0 Data Type<\/td><td>Datetime string<\/td><\/tr><tr><td>\ud83d\udcdd Description<\/td><td>Begin time of the call<\/td><\/tr><tr><td>\ud83d\udd22 Example<\/td><td>2018-12-20 11:20:18<\/td><\/tr><tr><td>\u26a0\ufe0f Notes<\/td><td>Format is YYYY-MM-DD HH:MM:SS; timezone is server local time<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>\u23f1\ufe0f <strong>Time zone awareness:<\/strong> The startTime is recorded in the VOS3000 server&#8217;s local timezone. If your server is configured in UTC+6 (Bangladesh Standard Time), all timestamps reflect that timezone. When integrating CDR data with systems in different timezones, always account for the offset. The startTime represents when the call was initially received by VOS3000, not when it was answered.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"field-4-stop-time-call-end-time-\ud83d\uded1\">Field 4: stopTime \u2014 Call End Time \ud83d\uded1<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th class=\"has-text-align-left\" data-align=\"left\">Attribute<\/th><th class=\"has-text-align-left\" data-align=\"left\">Value<\/th><\/tr><tr><td>\ud83d\udccc Field Position<\/td><td>4<\/td><\/tr><tr><td>\ud83d\udcd0 Data Type<\/td><td>Datetime string<\/td><\/tr><tr><td>\ud83d\udcdd Description<\/td><td>End time of the call<\/td><\/tr><tr><td>\ud83d\udd22 Example<\/td><td>2018-12-20 16:34:09<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>\ud83d\udcca <strong>Duration calculation:<\/strong> The actual call duration is stored in Field 5 (holdTime), not calculated from startTime and stopTime. The difference between startTime and stopTime includes call setup time, ringing time, and other pre-connection delays. Only holdTime represents the actual conversation duration. The stopTime determines which hourly CDR file the record is written to.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"field-5-hold-time-call-duration-\u23f1\ufe0f\">Field 5: holdTime \u2014 Call Duration \u23f1\ufe0f<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th class=\"has-text-align-left\" data-align=\"left\">Attribute<\/th><th class=\"has-text-align-left\" data-align=\"left\">Value<\/th><\/tr><tr><td>\ud83d\udccc Field Position<\/td><td>5<\/td><\/tr><tr><td>\ud83d\udcd0 Data Type<\/td><td>Integer (milliseconds)<\/td><\/tr><tr><td>\ud83d\udcdd Description<\/td><td>Call duration in milliseconds<\/td><\/tr><tr><td>\ud83d\udd22 Example<\/td><td>45000 (equals 45 seconds)<\/td><\/tr><tr><td>\ud83d\udea8 Critical Note<\/td><td>Value is in MILLISECONDS, not seconds \u2014 a common parsing error<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>\u26a0\ufe0f <strong>The #1 parsing mistake:<\/strong> The holdTime field is recorded in <strong>milliseconds<\/strong>, not seconds. A value of 45000 means 45 seconds of conversation, not 45000 seconds. This is the single most common error when integrating VOS3000 CDR data with external billing systems. Always divide holdTime by 1000 before applying per-second or per-minute billing rates. The holdTime is also affected by the <a href=\"https:\/\/multahost.com\/blog\/vos3000-billing-time-precision-config\/\">SERVER_BILLING_HOLD_TIME_PRECISION<\/a> parameter, which controls millisecond rounding before billing calculation.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"field-6-end-reason-end-reason-code-\ud83d\udccb\">Field 6: endReason \u2014 End Reason Code \ud83d\udccb<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th class=\"has-text-align-left\" data-align=\"left\">Attribute<\/th><th class=\"has-text-align-left\" data-align=\"left\">Value<\/th><\/tr><tr><td>\ud83d\udccc Field Position<\/td><td>6<\/td><\/tr><tr><td>\ud83d\udcd0 Data Type<\/td><td>String\/Integer<\/td><\/tr><tr><td>\ud83d\udcdd Description<\/td><td>End reason \u2014 SIP response code or Q.850 cause code<\/td><\/tr><tr><td>\ud83d\udd22 Example<\/td><td>200 (normal), 486 (busy), 480 (no answer)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>\ud83d\udd0d <strong>Interpreting endReason:<\/strong> For SIP calls, the endReason typically contains the SIP response code from the final response message (200 OK, 486 Busy, 480 Temporarily Unavailable, 503 Service Unavailable, etc.). For H.323 calls, it may contain Q.850 cause codes. The endReason field, combined with endDirection, provides the complete picture of why and how a call terminated. For a detailed breakdown of termination codes, see our guide on <a href=\"https:\/\/multahost.com\/blog\/vos3000-call-termination-reasons\/\">VOS3000 call termination reasons<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"field-7-end-direction-hangup-side-\ud83d\udd04\">Field 7: endDirection \u2014 Hangup Side \ud83d\udd04<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th class=\"has-text-align-left\" data-align=\"left\">Attribute<\/th><th class=\"has-text-align-left\" data-align=\"left\">Value<\/th><\/tr><tr><td>\ud83d\udccc Field Position<\/td><td>7<\/td><\/tr><tr><td>\ud83d\udcd0 Data Type<\/td><td>Integer (0, 1, or 2)<\/td><\/tr><tr><td>\ud83d\udcdd Description<\/td><td>Hangup side: 0 = caller, 1 = callee, 2 = server<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>\ud83d\udd11 <strong>Billing impact:<\/strong> The endDirection tells you who initiated the call termination. A value of 0 means the calling party hung up normally, 1 means the called party hung up, and 2 means the VOS3000 server itself terminated the call (which could indicate a session timeout, account balance exhaustion, or administrative intervention). This field is critical for dispute resolution \u2014 see our detailed analysis in the <a href=\"https:\/\/multahost.com\/blog\/vos3000-server-hangup-cdr\/\">server hangup CDR recording guide<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"fields-8-9-gateway-identifiers-\ud83d\udce1\">Fields 8\u20139: Gateway Identifiers \ud83d\udce1<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th class=\"has-text-align-left\" data-align=\"left\">Field<\/th><th class=\"has-text-align-left\" data-align=\"left\">Position<\/th><th class=\"has-text-align-left\" data-align=\"left\">Description<\/th><th class=\"has-text-align-left\" data-align=\"left\">Example<\/th><\/tr><tr><td>callerGatewayId<\/td><td>8<\/td><td>Calling gateway ID<\/td><td>1001<\/td><\/tr><tr><td>calleeGatewayId<\/td><td>9<\/td><td>Called gateway ID<\/td><td>2003<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>\ud83d\udce1 <strong>Gateway mapping:<\/strong> These fields contain the VOS3000 internal gateway IDs, not the gateway names you see in the client interface. To map these IDs to human-readable gateway names, you need to cross-reference the VOS3000 gateway configuration. The callerGatewayId refers to the mapping gateway (incoming side), while the calleeGatewayId refers to the routing gateway (outgoing side). Understanding this mapping is essential for <a href=\"https:\/\/multahost.com\/blog\/vos3000-gateway-analysis-reports\/\">gateway performance analysis<\/a> and route optimization.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"fields-10-11-ip-addresses-\ud83c\udf10\">Fields 10\u201311: IP Addresses \ud83c\udf10<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th class=\"has-text-align-left\" data-align=\"left\">Field<\/th><th class=\"has-text-align-left\" data-align=\"left\">Position<\/th><th class=\"has-text-align-left\" data-align=\"left\">Description<\/th><th>Example<\/th><\/tr><tr><td>callerIp<\/td><td>10<\/td><td>Caller IP address<\/td><td>192.168.1.100<\/td><\/tr><tr><td>calleeIp<\/td><td>11<\/td><td>Callee IP address<\/td><td>10.0.0.50<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>\ud83d\udd12 <strong>Security value:<\/strong> The IP address fields are invaluable for security analysis. By tracking callerIp patterns, you can identify traffic from unexpected source IPs that may indicate unauthorized access or SIP scanning attacks. The <a href=\"https:\/\/multahost.com\/blog\/vos3000-anti-hack\/\">VOS3000 anti-hack<\/a> configuration uses IP-level authentication, and these CDR fields provide the audit trail for verifying that authentication is working correctly.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"fields-12-13-access-incoming-e-164-numbers-\ud83d\udce5\">Fields 12\u201313: Access (Incoming) E164 Numbers \ud83d\udce5<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th class=\"has-text-align-left\" data-align=\"left\">Field<\/th><th class=\"has-text-align-left\" data-align=\"left\">Position<\/th><th class=\"has-text-align-left\" data-align=\"left\">Description<\/th><\/tr><tr><td>callerAccessE164<\/td><td>12<\/td><td>Incoming caller \u2014 the original caller ID as received by VOS3000 before any transformations<\/td><\/tr><tr><td>calleeAccessE164<\/td><td>13<\/td><td>Incoming callee \u2014 the original destination number as received before transformations<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>\ud83d\udd04 <strong>Why access fields matter:<\/strong> These fields preserve the original phone numbers as they arrived at VOS3000, before any callee rewrite rules, prefix stripping, or number transformations were applied. This is crucial for debugging routing issues \u2014 if a call was routed incorrectly because a prefix transformation changed the destination, you can compare calleeAccessE164 (original) with calleeE164 (transformed) to identify exactly where the routing went wrong. For detailed prefix configuration guidance, see our <a href=\"https:\/\/multahost.com\/blog\/callee-rewrite-rule-prefix-conversion-clients-vendor-prefix-settings-in-vos3000\/\">callee rewrite rule guide<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"fields-14-15-outbound-to-gateway-e-164-numbers-\ud83d\udce4\">Fields 14\u201315: Outbound (To Gateway) E164 Numbers \ud83d\udce4<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th class=\"has-text-align-left\" data-align=\"left\">Field<\/th><th class=\"has-text-align-left\" data-align=\"left\">Position<\/th><th class=\"has-text-align-left\" data-align=\"left\">Header Name<\/th><th class=\"has-text-align-left\" data-align=\"left\">Description<\/th><\/tr><tr><td>callerToGatewayE164<\/td><td>14<\/td><td>callerToGatewayE164<\/td><td>Outbound caller \u2014 the caller ID sent to the outgoing gateway<\/td><\/tr><tr><td>calleeToGatewayE164<\/td><td>15<\/td><td>calleeToGatewayE164<\/td><td>Outbound callee \u2014 the destination number sent to the outgoing gateway<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>\ud83d\udccb <strong>Naming discrepancy note:<\/strong> The VOS3000 manual \u00a74.4 header line labels these fields as <code>callerToGatewayE164<\/code> and <code>calleeToGatewayE164<\/code>, but the field description table in the same section refers to them as &#8220;Outbound caller&#8221; and &#8220;Outbound callee&#8221; (callerOutE164 \/ calleeOutE164). Both names refer to the same data \u2014 the phone numbers after all VOS3000 transformations have been applied, as they are sent out to the routing gateway. These outbound fields show the final form of the numbers as seen by the terminating carrier.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"field-16-callee-billing-billing-method-\ud83d\udcb0\">Field 16: calleeBilling \u2014 Billing Method \ud83d\udcb0<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th class=\"has-text-align-left\" data-align=\"left\">Attribute<\/th><th class=\"has-text-align-left\" data-align=\"left\">Value<\/th><\/tr><tr><td>\ud83d\udccc Field Position<\/td><td>16<\/td><\/tr><tr><td>\ud83d\udcd0 Data Type<\/td><td>Integer (0 or 1)<\/td><\/tr><tr><td>\ud83d\udcdd Description<\/td><td>Billing method: 0 = By caller, 1 = By callee<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>\ud83d\udca1 <strong>Understanding billing method:<\/strong> This field indicates which party&#8217;s account is charged for the call. A value of 0 means the caller&#8217;s account is billed (the standard arrangement for most calls). A value of 1 means the callee&#8217;s account is billed, which applies to collect calls, toll-free number calls, or special reverse-charging arrangements. This field works in conjunction with billingMode (Field 17) to determine the complete billing attribution for each call.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"field-17-billing-mode-charge-mode-\ud83d\udcb3\">Field 17: billingMode \u2014 Charge Mode \ud83d\udcb3<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th class=\"has-text-align-left\" data-align=\"left\">Attribute<\/th><th class=\"has-text-align-left\" data-align=\"left\">Value<\/th><\/tr><tr><td>\ud83d\udccc Field Position<\/td><td>17<\/td><\/tr><tr><td>\ud83d\udcd0 Data Type<\/td><td>Integer (-1, 0, 1, or 3)<\/td><\/tr><tr><td>\ud83d\udcdd Description<\/td><td>Charge mode: -1 = no billing, 0 = phone number, 1 = gateway ID, 3 = phone card<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>\ud83d\udd11 <strong>Billing mode codes explained:<\/strong> This is one of the most important fields for billing analysis. A billingMode of -1 means the call was not billed at all \u2014 this applies to illegal calls, free numbers, and calls that bypass the billing engine. A value of 0 means billing is attributed to a phone number account. A value of 1 means billing is attributed to a gateway ID. A value of 3 means billing is attributed to a phone card (calling card). For a comprehensive breakdown of how each code affects billing calculations, refer to our detailed billing mode codes reference.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"fields-18-19-post-dial-delay-metrics-\u23f1\ufe0f\">Fields 18\u201319: Post-Dial Delay Metrics \u23f1\ufe0f<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th class=\"has-text-align-left\" data-align=\"left\">Field<\/th><th class=\"has-text-align-left\" data-align=\"left\">Position<\/th><th class=\"has-text-align-left\" data-align=\"left\">Description<\/th><\/tr><tr><td>callerPdd<\/td><td>18<\/td><td>Time elapsed from call received to call connected (incoming PDD)<\/td><\/tr><tr><td>calleePdd<\/td><td>19<\/td><td>Time elapsed from call sent to routing response (outgoing PDD)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>\ud83d\udcca <strong>PDD analysis value:<\/strong> Post-Dial Delay is a critical quality-of-service metric. High callerPdd values indicate that calls take too long to connect on the incoming side, which frustrates callers. High calleePdd values indicate slow response from routing gateways, which may point to gateway overload, network latency, or incorrect <a href=\"https:\/\/multahost.com\/blog\/vos3000-sip-invite-timeout\/\">INVITE timeout<\/a> configuration. Monitoring PDD trends helps you identify degrading gateway performance before it impacts your ASR.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"\ud83d\udccb-complete-vos-3000-cdr-pipe-format-quick-reference-table\">\ud83d\udccb Complete VOS3000 CDR Pipe Format Quick Reference Table<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th class=\"has-text-align-left\" data-align=\"left\">#<\/th><th class=\"has-text-align-left\" data-align=\"left\">Field Name<\/th><th class=\"has-text-align-left\" data-align=\"left\">Type<\/th><th class=\"has-text-align-left\" data-align=\"left\">Description<\/th><th class=\"has-text-align-left\" data-align=\"left\">Example<\/th><\/tr><tr><td>1<\/td><td>callerE164<\/td><td>String<\/td><td>The caller ID<\/td><td>12125551234<\/td><\/tr><tr><td>2<\/td><td>calleeE164<\/td><td>String<\/td><td>The callee ID<\/td><td>18005559876<\/td><\/tr><tr><td>3<\/td><td>startTime<\/td><td>Datetime<\/td><td>Call begin time<\/td><td>2018-12-20 11:20:18<\/td><\/tr><tr><td>4<\/td><td>stopTime<\/td><td>Datetime<\/td><td>Call end time<\/td><td>2018-12-20 16:34:09<\/td><\/tr><tr><td>5<\/td><td>holdTime<\/td><td>Integer (ms)<\/td><td>Call duration in milliseconds<\/td><td>45000<\/td><\/tr><tr><td>6<\/td><td>endReason<\/td><td>String\/Int<\/td><td>End reason code<\/td><td>200<\/td><\/tr><tr><td>7<\/td><td>endDirection<\/td><td>Integer<\/td><td>Hangup side (0\/1\/2)<\/td><td>0<\/td><\/tr><tr><td>8<\/td><td>callerGatewayId<\/td><td>Integer<\/td><td>Calling gateway<\/td><td>1001<\/td><\/tr><tr><td>9<\/td><td>calleeGatewayId<\/td><td>Integer<\/td><td>Called gateway<\/td><td>2003<\/td><\/tr><tr><td>10<\/td><td>callerIp<\/td><td>String<\/td><td>Caller IP address<\/td><td>192.168.1.100<\/td><\/tr><tr><td>11<\/td><td>calleeIp<\/td><td>String<\/td><td>Callee IP address<\/td><td>10.0.0.50<\/td><\/tr><tr><td>12<\/td><td>callerAccessE164<\/td><td>String<\/td><td>Incoming caller<\/td><td>12125551234<\/td><\/tr><tr><td>13<\/td><td>calleeAccessE164<\/td><td>String<\/td><td>Incoming callee<\/td><td>01118005559876<\/td><\/tr><tr><td>14<\/td><td>callerToGatewayE164<\/td><td>String<\/td><td>Outbound caller<\/td><td>12125551234<\/td><\/tr><tr><td>15<\/td><td>calleeToGatewayE164<\/td><td>String<\/td><td>Outbound callee<\/td><td>18005559876<\/td><\/tr><tr><td>16<\/td><td>calleeBilling<\/td><td>Integer<\/td><td>Billing method (0\/1)<\/td><td>0<\/td><\/tr><tr><td>17<\/td><td>billingMode<\/td><td>Integer<\/td><td>Charge mode (-1\/0\/1\/3)<\/td><td>0<\/td><\/tr><tr><td>18<\/td><td>callerPdd<\/td><td>Integer<\/td><td>Incoming PDD (ms)<\/td><td>3200<\/td><\/tr><tr><td>19<\/td><td>calleePdd<\/td><td>Integer<\/td><td>Outgoing PDD (ms)<\/td><td>1500<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"\ud83d\udcca-external-system-mapping-guide\">\ud83d\udcca External System Mapping Guide &#8211; VOS3000 CDR Pipe<\/h2>\n\n\n\n<p>\ud83d\udd17 When integrating VOS3000 CDR data with external billing and analytics systems, field names and data types often need to be mapped to the target system&#8217;s schema. Here is a reference mapping for common integration targets:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th class=\"has-text-align-left\" data-align=\"left\">VOS3000 Field<\/th><th class=\"has-text-align-left\" data-align=\"left\">MySQL Column<\/th><th class=\"has-text-align-left\" data-align=\"left\">Common Billing Label<\/th><th class=\"has-text-align-left\" data-align=\"left\">Transform Needed<\/th><\/tr><tr><td>callerE164<\/td><td>VARCHAR(32)<\/td><td>ANI \/ Calling Number<\/td><td>None<\/td><\/tr><tr><td>calleeE164<\/td><td>VARCHAR(32)<\/td><td>DNIS \/ Called Number<\/td><td>None<\/td><\/tr><tr><td>startTime<\/td><td>DATETIME<\/td><td>Call Start \/ Setup Time<\/td><td>Parse datetime string<\/td><\/tr><tr><td>holdTime<\/td><td>INT<\/td><td>Duration (seconds)<\/td><td>\u26a0\ufe0f Divide by 1000<\/td><\/tr><tr><td>endReason<\/td><td>VARCHAR(16)<\/td><td>Release Cause<\/td><td>Map to cause code table<\/td><\/tr><tr><td>endDirection<\/td><td>TINYINT<\/td><td>Release Source<\/td><td>Map 0\/1\/2 to labels<\/td><\/tr><tr><td>billingMode<\/td><td>TINYINT<\/td><td>Billing Type<\/td><td>Map -1\/0\/1\/3 to labels<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"\u2753-frequently-asked-questions\">\u2753 Frequently Asked Questions<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"\u2753-how-many-fields-are-in-the-vos-3000-cdr-pipe-format\">\u2753 How many fields are in the VOS3000 CDR pipe format?<\/h3>\n\n\n\n<p>\ud83d\udccb The VOS3000 CDR pipe format contains 17 core billing-critical fields (through the billingMode field at position 17) plus 2 Post-Dial Delay fields (callerPdd at position 18 and calleePdd at position 19), for a total of up to 19 fields. The pipe delimiter creates 18 separators for the full 19-column format. Older VOS3000 versions may produce records with only 17 fields (without PDD data). Your parsing code should handle variable field counts gracefully by checking the number of pipe-delimited columns in each line before processing.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"\u2753-why-is-hold-time-in-milliseconds-instead-of-seconds\">\u2753 Why is holdTime in milliseconds instead of seconds?<\/h3>\n\n\n\n<p>\u23f1\ufe0f VOS3000 records holdTime in milliseconds to support high-precision billing configurations. The <a href=\"https:\/\/multahost.com\/blog\/vos3000-billing-precision\/\">SERVER_BILLING_FEE_PRECISTION<\/a> and <strong>SERVER_BILLING_HOLD_TIME_PRECISION<\/strong> parameters allow billing calculations down to millisecond granularity. While most operators bill in whole seconds or minutes, the millisecond precision in the CDR ensures that no rounding is applied before the data is exported \u2014 any rounding happens in the billing engine according to the configured precision parameters. When parsing CDR data, always divide holdTime by 1000 to convert to seconds.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"\u2753-what-is-the-difference-between-caller-e-164-and-caller-access-e-164\">\u2753 What is the difference between callerE164 and callerAccessE164?<\/h3>\n\n\n\n<p>\ud83d\udd04 <strong>callerE164<\/strong> (Field 1) is the caller ID after VOS3000 has applied all prefix transformations and number manipulations. <strong>callerAccessE164<\/strong> (Field 12) is the original incoming caller ID as it was received by VOS3000 before any transformations. The two values differ when VOS3000&#8217;s callee rewrite rules, prefix stripping, or caller ID manipulation features modify the number. Similarly, calleeE164 (Field 2) may differ from calleeAccessE164 (Field 13) when the destination number is transformed before routing.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"\u2753-what-does-a-billing-mode-of-1-mean-in-the-cdr\">\u2753 What does a billingMode of -1 mean in the CDR?<\/h3>\n\n\n\n<p>\ud83d\udcb3 A <strong>billingMode of -1<\/strong> means the call was not billed. This applies to calls that bypass the billing engine entirely, including illegal calls from unauthorized IP addresses, calls to toll-free numbers configured under SERVER_BILLING_FREE_E164S, and calls where the billing system could not determine an account to charge. These records still appear in the CDR export (when SS_CDR_RECORD_ILLEGAL is On) for security auditing purposes, but they carry no billing charge.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"\u2753-how-do-i-parse-vos-3000-cdr-files-with-different-field-counts\">\u2753 How do I parse VOS3000 CDR files with different field counts?<\/h3>\n\n\n\n<p>\ud83d\udd27 The safest approach is to split each CDR line on the pipe character and check the resulting field count before processing. Lines with 17 fields contain core billing data without PDD metrics. Lines with 19 fields include the PDD columns. Always map fields by position (index), not by counting from the end, since new fields are added at the end of the line. Use the field position reference table in this guide to ensure correct mapping regardless of the field count in your specific VOS3000 version.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"\u2753-are-vos-3000-cdr-timestamps-in-utc-or-local-time\">\u2753 Are VOS3000 CDR timestamps in UTC or local time?<\/h3>\n\n\n\n<p>\u23f0 VOS3000 CDR timestamps (startTime and stopTime) are recorded in the server&#8217;s local timezone, not UTC. If your server is configured with timezone Asia\/Dhaka (UTC+6), all timestamps will be in BST. When integrating CDR data with systems that expect UTC, you must apply the appropriate timezone offset during parsing. Always verify your server&#8217;s timezone setting with the <code>date<\/code> command in SSH before assuming the timezone in your CDR processing logic.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"\ud83d\udcde-need-expert-help-with-vos-3000-cdr-pipe-format\">\ud83d\udcde Need Expert Help with VOS3000 CDR Pipe Format?<\/h2>\n\n\n\n<p>\ud83d\udd27 Accurate VOS3000 CDR pipe format parsing is the foundation of every billing integration, analytics pipeline, and compliance archive. A single misinterpreted field \u2014 especially the millisecond holdTime or the billing mode codes \u2014 can cascade into revenue-impacting billing errors. Whether you are building a CDR parser from scratch, troubleshooting field mapping issues, or integrating VOS3000 with an external billing platform, expert guidance ensures your data pipeline is accurate from day one. \ud83d\udcca<\/p>\n\n\n\n<p>\ud83d\udcac <strong>WhatsApp:<\/strong> <a href=\"https:\/\/wa.me\/8801911119966\" target=\"_blank\" rel=\"noopener\">+8801911119966<\/a> \u2014 Get immediate assistance with VOS3000 CDR pipe format parsing, field mapping, and external system integration. Our team specializes in VOS3000 CDR data extraction, billing system integration, and custom analytics development. \ud83d\udd27<\/p>\n\n\n\n<p>\ud83d\udd17 Explore related VOS3000 CDR and configuration guides:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/multahost.com\/blog\/vos3000-cdr-analysis-billing\/\">VOS3000 CDR Analysis and Billing<\/a> \u2014 Complete guide to analyzing CDR data for revenue optimization<\/li>\n\n\n\n<li><a href=\"https:\/\/multahost.com\/blog\/vos3000-cdr-billing-discrepancy\/\">VOS3000 CDR Billing Discrepancy<\/a> \u2014 Troubleshooting billing differences between CDR and rate tables<\/li>\n\n\n\n<li><a href=\"https:\/\/multahost.com\/blog\/vos3000-billing-system\/\">VOS3000 Billing System<\/a> \u2014 Overview of the entire VOS3000 billing architecture<\/li>\n\n\n\n<li><a href=\"https:\/\/multahost.com\/blog\/vos3000-call-termination-reasons\/\">VOS3000 Call Termination Reasons<\/a> \u2014 Complete reference for endReason codes in CDR records<\/li>\n\n\n\n<li><a href=\"https:\/\/multahost.com\/blog\/vos3000-parameter-description\/\">VOS3000 Parameter Description<\/a> \u2014 Complete parameter reference for all VOS3000 configuration settings<\/li>\n\n\n\n<li><a href=\"https:\/\/multahost.com\/blog\/vos3000-gateway-configuration-routing-mapping\/\">VOS3000 Gateway Configuration<\/a> \u2014 Setting up mapping and routing gateways for CDR field population<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"\ud83d\udcde-need-call-center-setup-support\">\ud83d\udcde Need Professional VOS3000 Setup Support?<\/h2>\n\n\n\n<p>For professional VOS3000 installations and deployment, VOS3000 Server Rental Solution:<\/p>\n\n\n\n<p>\ud83d\udcf1 <strong>WhatsApp:<\/strong> <a href=\"https:\/\/wa.me\/8801911119966\" target=\"_blank\" rel=\"noopener\">+8801911119966<\/a><br>\ud83c\udf10 <strong>Website:<\/strong> <a href=\"https:\/\/www.vos3000.com\" target=\"_blank\" rel=\"noopener\">www.vos3000.com<\/a><br>\ud83c\udf10 <strong>Blog:<\/strong> <a href=\"https:\/\/multahost.com\/blog\">multahost.com\/blog<\/a><br>\ud83d\udce5 <strong>Downloads:<\/strong> <a href=\"https:\/\/www.vos3000.com\/downloads.php\" target=\"_blank\" rel=\"noopener\">VOS3000 Downloads<\/a><\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td><img data-recalc-dims=\"1\" height=\"540\" width=\"809\" decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"VOS3000 CDR File Rotation, VOS3000 Real-Time CDR Forwarding, VOS3000 CDR Query Blackout, VOS3000 CDR Query Date Range, VOS3000 CDR Text File Export, VOS3000 CDR Pipe Format, VOS3000 CDR Billing Mode Codes, VOS3000 CDR End Direction Critical\" title=\"\" class=\"lazyload\" data-src=\"https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/04\/VOS3000-Real-Time-CDR-Forwarding-VOS3000-CDR-Query-Blackout-VOS3000-CDR-Query-Date-Range-VOS3000-CDR-Text-File-Export-VOS3000-CDR-Pipe-Format-VOS3000-CDR-Billing-Mode-Codes.png?resize=809%2C540\"><\/td><td><img data-recalc-dims=\"1\" height=\"540\" width=\"809\" decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"VOS3000 CDR File Rotation, VOS3000 Real-Time CDR Forwarding, VOS3000 CDR Query Blackout, VOS3000 CDR Query Date Range, VOS3000 CDR Text File Export, VOS3000 CDR Pipe Format, VOS3000 CDR Billing Mode Codes, VOS3000 CDR End Direction Critical\" title=\"\" class=\"lazyload\" data-src=\"https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/04\/VOS3000-Real-Time-CDR-Forwarding-VOS3000-CDR-Query-Blackout-VOS3000-CDR-Query-Date-Range-VOS3000-CDR-Text-File-Export-VOS3000-CDR-Pipe-Format-VOS3000-CDR-Billing-Mode-Codes.png?resize=809%2C540\"><\/td><td><img data-recalc-dims=\"1\" height=\"540\" width=\"809\" decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" alt=\"VOS3000 CDR File Rotation, VOS3000 Real-Time CDR Forwarding, VOS3000 CDR Query Blackout, VOS3000 CDR Query Date Range, VOS3000 CDR Text File Export, VOS3000 CDR Pipe Format, VOS3000 CDR Billing Mode Codes, VOS3000 CDR End Direction Critical\" title=\"\" class=\"lazyload\" data-src=\"https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/04\/VOS3000-Real-Time-CDR-Forwarding-VOS3000-CDR-Query-Blackout-VOS3000-CDR-Query-Date-Range-VOS3000-CDR-Text-File-Export-VOS3000-CDR-Pipe-Format-VOS3000-CDR-Billing-Mode-Codes.png?resize=809%2C540\"><\/td><\/tr><\/tbody><\/table><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>Master the VOS3000 CDR pipe format with this definitive 18-field reference. Learn every pipe-delimited field, data type, example value, and external system mapping.<\/p>\n","protected":false},"author":1,"featured_media":3265,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[2],"tags":[9537,9526,9521,9512,9508,9510,9535,9506,9514,9538,9523,9501,9533,9531,9519,9504,9530,9524,9513,9528,9517,9481,9534,9466,9507,9515,9503,9509,9502,2294,9511,9518,9532,9522,9516,9493,9529,2342,9536,9525,9482,9527,9320,9414,9321,9427,9505,9520,8262,4879],"class_list":["post-3276","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-vos3000","tag-call-record-pipe-format","tag-cdr-billing-method","tag-cdr-billing-mode-field","tag-cdr-calleeaccesse164","tag-cdr-callergatewayid","tag-cdr-callerip-calleeip","tag-cdr-data-extraction","tag-cdr-endreason","tag-cdr-field-descriptions","tag-cdr-field-guide","tag-cdr-field-positions","tag-cdr-field-reference","tag-cdr-field-by-field","tag-cdr-file-structure","tag-cdr-holdtime-field","tag-cdr-holdtime-milliseconds","tag-cdr-manual-reference","tag-cdr-outbound-caller","tag-cdr-pipe-separator","tag-cdr-post-dial-delay","tag-cdr-text-file-parsing","tag-cdr-yyyymmddhh-format","tag-pipe-delimited-call-record","tag-pipe-delimited-cdr-format","tag-vos3000-billingmode-field","tag-vos3000-call-detail-record-format","tag-vos3000-calleee164","tag-vos3000-calleegatewayid","tag-vos3000-callere164","tag-vos3000-cdr-analysis","tag-vos3000-cdr-calleraccesse164","tag-vos3000-cdr-data-types","tag-vos3000-cdr-database-mapping","tag-vos3000-cdr-external-integration","tag-vos3000-cdr-field-count","tag-vos3000-cdr-field-mapping","tag-vos3000-cdr-field-names","tag-vos3000-cdr-fields","tag-vos3000-cdr-format-specification","tag-vos3000-cdr-outbound-callee","tag-vos3000-cdr-parsing","tag-vos3000-cdr-pdd-field","tag-vos3000-cdr-pipe-format","tag-vos3000-cdr-reporting","tag-vos3000-cdr-text-export","tag-vos3000-cdr-text-file","tag-vos3000-enddirection","tag-vos3000-endreason-codes","tag-vos3000-operation-management","tag-vos3000-softswitch-cdr"],"acf":[],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/04\/VOS3000-CDR-Pipe-Format-VOS3000-CDR-Billing-Mode-Codes-VOS3000-CDR-End-Direction-Critical.png?fit=1536%2C1024&ssl=1?v=1777165587","jetpack-related-posts":[{"id":1809,"url":"https:\/\/multahost.com\/blog\/vos3000-vicidial-auto-dialer\/","url_meta":{"origin":3276,"position":0},"title":"VOS3000 VICIdial Auto Dialer Solution \u2013 Call Center Important Setup Guide","author":"king","date":"March 13, 2026","format":false,"excerpt":"Complete guide to VOS3000 VICIdial auto dialer solution for call centers. Learn how VICIdial connects with VOS3000 for routing and telecom carrier management.","rel":"","context":"In &quot;VOS3000&quot;","block_context":{"text":"VOS3000","link":"https:\/\/multahost.com\/blog\/category\/vos3000\/"},"img":{"alt_text":"best voip softswitch, vos3000 routing, vos3000 vicidial auto dialer, vos3000 sip trunk configuration","src":"https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/03\/best-voip-softswitch.png?fit=1200%2C800&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/03\/best-voip-softswitch.png?fit=1200%2C800&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/03\/best-voip-softswitch.png?fit=1200%2C800&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/03\/best-voip-softswitch.png?fit=1200%2C800&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/03\/best-voip-softswitch.png?fit=1200%2C800&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":1631,"url":"https:\/\/multahost.com\/blog\/vos3000-data-maintenance\/","url_meta":{"origin":3276,"position":1},"title":"VOS3000 Data Maintenance &amp; Auto\u2011Cleanup: Important Database Management Guide","author":"king","date":"March 8, 2026","format":false,"excerpt":"VOS3000 data maintenance guide: learn how to manage CDR tables, enable auto\u2011cleanup, optimize database performance, and prevent disk space issues with scheduled purging.","rel":"","context":"In &quot;VOS3000&quot;","block_context":{"text":"VOS3000","link":"https:\/\/multahost.com\/blog\/category\/vos3000\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/03\/vos3000-banners-post.png?fit=1200%2C402&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/03\/vos3000-banners-post.png?fit=1200%2C402&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/03\/vos3000-banners-post.png?fit=1200%2C402&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/03\/vos3000-banners-post.png?fit=1200%2C402&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/03\/vos3000-banners-post.png?fit=1200%2C402&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":710,"url":"https:\/\/multahost.com\/blog\/why-vos3000-server-getting-restarted-daily-auto\/","url_meta":{"origin":3276,"position":2},"title":"Why VOS3000 Server getting restarted daily auto, Know easy Solution","author":"king","date":"September 29, 2025","format":false,"excerpt":"Why VOS3000 Server getting restarted daily auto? VOS3000 2.1.8.0 or 2.1.8.05 sometime VOS3000 server went down\/restart\/reboot auto daily in a fixed time and VOS3000 server starts but vos3000 softswitch shows offline or softswitch stays offline or red on softswich","rel":"","context":"In &quot;VOS3000&quot;","block_context":{"text":"VOS3000","link":"https:\/\/multahost.com\/blog\/category\/vos3000\/"},"img":{"alt_text":"VOS3000 Server down","src":"https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2025\/09\/1759078473-e1759086323296.png?fit=928%2C480&ssl=1%3Fv%3D1768597291&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2025\/09\/1759078473-e1759086323296.png?fit=928%2C480&ssl=1%3Fv%3D1768597291&resize=350%2C200 1x, https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2025\/09\/1759078473-e1759086323296.png?fit=928%2C480&ssl=1%3Fv%3D1768597291&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2025\/09\/1759078473-e1759086323296.png?fit=928%2C480&ssl=1%3Fv%3D1768597291&resize=700%2C400 2x"},"classes":[]},{"id":3017,"url":"https:\/\/multahost.com\/blog\/vos3000-g729-negotiation-mode-fix\/","url_meta":{"origin":3276,"position":3},"title":"VOS3000 G729 Negotiation Mode: Reliable Fix for Codec Mismatch","author":"king","date":"April 18, 2026","format":false,"excerpt":"VOS3000 G729 negotiation mode fixes codec mismatch between G729 and G729a. Configure Auto\/G729\/G729a\/G729&G729a modes in routing gateway additional settings.","rel":"","context":"In &quot;VOS3000&quot;","block_context":{"text":"VOS3000","link":"https:\/\/multahost.com\/blog\/category\/vos3000\/"},"img":{"alt_text":"VOS3000 SIP Authentication, VOS3000 Domain Management, VOS3000 Call Failed Announcement, VOS3000 G729 Negotiation Mode, VOS3000 RTP Encryption","src":"https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/04\/VOS3000-SIP-Authentication-VOS3000-Domain-Management-VOS3000-Call-Failed-Announcement-VOS3000-G729-Negotiation-Mode-VOS3000-RTP-Encryption-4.png?fit=1200%2C800&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/04\/VOS3000-SIP-Authentication-VOS3000-Domain-Management-VOS3000-Call-Failed-Announcement-VOS3000-G729-Negotiation-Mode-VOS3000-RTP-Encryption-4.png?fit=1200%2C800&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/04\/VOS3000-SIP-Authentication-VOS3000-Domain-Management-VOS3000-Call-Failed-Announcement-VOS3000-G729-Negotiation-Mode-VOS3000-RTP-Encryption-4.png?fit=1200%2C800&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/04\/VOS3000-SIP-Authentication-VOS3000-Domain-Management-VOS3000-Call-Failed-Announcement-VOS3000-G729-Negotiation-Mode-VOS3000-RTP-Encryption-4.png?fit=1200%2C800&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/04\/VOS3000-SIP-Authentication-VOS3000-Domain-Management-VOS3000-Call-Failed-Announcement-VOS3000-G729-Negotiation-Mode-VOS3000-RTP-Encryption-4.png?fit=1200%2C800&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":3152,"url":"https:\/\/multahost.com\/blog\/vos3000-sip-outbound-registration-parameters\/","url_meta":{"origin":3276,"position":4},"title":"VOS3000 SIP Outbound Registration Parameters: Expiry and Retry Delay Easy Guide","author":"king","date":"April 21, 2026","format":false,"excerpt":"Master VOS3000 SIP outbound registration parameters: SS_SIP_USER_AGENT_EXPIRE (Auto Negotiation, 20-7200s) and SS_SIP_USER_AGENT_RETRY_DELAY (30-600s). Configure registration expiry, retry delay, and failover for stable SIP trunking.","rel":"","context":"In &quot;VOS3000 SIP&quot;","block_context":{"text":"VOS3000 SIP","link":"https:\/\/multahost.com\/blog\/category\/vos3000-sip\/"},"img":{"alt_text":"VOS3000 SIP Authentication Retry, VOS3000 SIP Early Hangup, VOS3000 SIP Session Timer Refresh, VOS3000 Non-Timer Endpoint Safety, VOS3000 SIP NAT Keepalive, VOS3000 SIP Resend Interval, VOS3000 SIP INVITE Timeout, VOS3000 SIP Call Progress Timeout, VOS3000 SIP Outbound Registration Parameters, VOS3000 SIP Privacy Header, VOS3000 SIP Routing Gateway Contact, VOS3000 SIP Publish Expire, VOS3000 SIP Display From, VOS3000 SIP Send Unregister","src":"https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/04\/VOS3000-SIP-Routing-Gateway-Contact-VOS3000-SIP-Publish-Expire-VOS3000-SIP-Display-From-VOS3000-SIP-Send-Unregister.png?fit=1200%2C800&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/04\/VOS3000-SIP-Routing-Gateway-Contact-VOS3000-SIP-Publish-Expire-VOS3000-SIP-Display-From-VOS3000-SIP-Send-Unregister.png?fit=1200%2C800&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/04\/VOS3000-SIP-Routing-Gateway-Contact-VOS3000-SIP-Publish-Expire-VOS3000-SIP-Display-From-VOS3000-SIP-Send-Unregister.png?fit=1200%2C800&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/04\/VOS3000-SIP-Routing-Gateway-Contact-VOS3000-SIP-Publish-Expire-VOS3000-SIP-Display-From-VOS3000-SIP-Send-Unregister.png?fit=1200%2C800&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/04\/VOS3000-SIP-Routing-Gateway-Contact-VOS3000-SIP-Publish-Expire-VOS3000-SIP-Display-From-VOS3000-SIP-Send-Unregister.png?fit=1200%2C800&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":2893,"url":"https:\/\/multahost.com\/blog\/vos3000-dtmf-configuration\/","url_meta":{"origin":3276,"position":5},"title":"VOS3000 DTMF Configuration: RFC2833 vs SIP INFO Important Setup Guide","author":"king","date":"April 13, 2026","format":false,"excerpt":"VOS3000 DTMF configuration guide comparing RFC2833, SIP INFO, and Inband methods. Step-by-step setup for IVR, DTMF relay, and troubleshooting DTMF issues in VoIP.","rel":"","context":"In &quot;VOS3000&quot;","block_context":{"text":"VOS3000","link":"https:\/\/multahost.com\/blog\/category\/vos3000\/"},"img":{"alt_text":"VOS3000 P-Asserted-Identity, VOS3000 Web Manager, VOS3000 DTMF Configuration, VOS3000 Agent Account, VOS3000 Transcoding","src":"https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/04\/VOS3000-P-Asserted-Identity-VOS3000-Web-Manager-VOS3000-DTMF-Configuration-VOS3000-Agent-Account-VOS3000-Transcoding-2.png?fit=1200%2C800&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/04\/VOS3000-P-Asserted-Identity-VOS3000-Web-Manager-VOS3000-DTMF-Configuration-VOS3000-Agent-Account-VOS3000-Transcoding-2.png?fit=1200%2C800&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/04\/VOS3000-P-Asserted-Identity-VOS3000-Web-Manager-VOS3000-DTMF-Configuration-VOS3000-Agent-Account-VOS3000-Transcoding-2.png?fit=1200%2C800&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/04\/VOS3000-P-Asserted-Identity-VOS3000-Web-Manager-VOS3000-DTMF-Configuration-VOS3000-Agent-Account-VOS3000-Transcoding-2.png?fit=1200%2C800&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/multahost.com\/blog\/wp-content\/uploads\/2026\/04\/VOS3000-P-Asserted-Identity-VOS3000-Web-Manager-VOS3000-DTMF-Configuration-VOS3000-Agent-Account-VOS3000-Transcoding-2.png?fit=1200%2C800&ssl=1&resize=1050%2C600 3x"},"classes":[]}],"jetpack_sharing_enabled":true,"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/multahost.com\/blog\/wp-json\/wp\/v2\/posts\/3276","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/multahost.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/multahost.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/multahost.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/multahost.com\/blog\/wp-json\/wp\/v2\/comments?post=3276"}],"version-history":[{"count":0,"href":"https:\/\/multahost.com\/blog\/wp-json\/wp\/v2\/posts\/3276\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/multahost.com\/blog\/wp-json\/wp\/v2\/media\/3265"}],"wp:attachment":[{"href":"https:\/\/multahost.com\/blog\/wp-json\/wp\/v2\/media?parent=3276"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/multahost.com\/blog\/wp-json\/wp\/v2\/categories?post=3276"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/multahost.com\/blog\/wp-json\/wp\/v2\/tags?post=3276"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}