๐ŸฐQuickstart

The Python vCon library

vCon Library

A Python library for working with vCon (Virtual Conversation) objects according to the vCon specification.

Overview

The vCon library provides a complete implementation of the vCon format for representing conversations and related metadata. It supports all features defined in the latest vCon specification including:

  • Conversation Management: Parties, dialogs, attachments, and analysis

  • Contact Information: Multiple contact methods (tel, email, SIP, DID)

  • Media Support: Audio, video, text, and image formats

  • Security: Digital signatures and content hashing

  • Extensibility: Extensions and must_support fields

  • Location Data: Civic address information (GEOPRIV)

  • Event Tracking: Party history with join/drop/hold/mute events

  • Privacy Compliance: Lawful Basis extension for GDPR compliance

  • Transcription Support: WTF (World Transcription Format) extension for standardized speech-to-text

Quick Start

Basic vCon Creation

Privacy Compliance with Lawful Basis Extension

Transcription with WTF Extension

Complete Example with Extensions

Key Features

This library implements the latest vCon specification with the following features:

Enhanced Party Information

Extensions and Must-Support

Enhanced Dialog Support

Party History Events

Disposition Values for Incomplete Dialogs

Civic Address Support

Lawful Basis Extension (Privacy Compliance)

WTF Extension (Transcription Support)

Provider Data Conversion

Installation

Basic Usage

Creating a vCon

Loading a vCon

Validation

Media Support

Audio and Video

Supported Media Types

Audio: audio/x-wav, audio/x-mp3, audio/x-mp4, audio/ogg Video: video/x-mp4, video/ogg Text: text/plain Multipart: multipart/mixed

Security Features

Digital Signatures

Content Hashing

Advanced Features

Property Handling

Transfer Dialogs

Analysis Data

Specification Compliance

This library implements the latest vCon specification with:

  • โœ… All required fields and validation

  • โœ… Proper media type support

  • โœ… Civic address (GEOPRIV) compliance

  • โœ… Party history event tracking

  • โœ… Transfer dialog support

  • โœ… Content hashing and security

  • โœ… Extensions and must_support

  • โœ… Flexible versioning (version field is optional)

  • โœ… Backward compatibility

  • โœ… Lawful Basis Extension - GDPR-compliant privacy management

  • โœ… WTF Extension - World Transcription Format for standardized speech-to-text

  • โœ… Extension Framework - Comprehensive validation and processing

  • โœ… Multi-Provider Support - Whisper, Deepgram, AssemblyAI, and more

  • โœ… Export Capabilities - SRT and WebVTT subtitle formats

Testing

Run the test suite:

All tests pass, covering:

  • Basic functionality

  • Enhanced vCon features

  • Validation and error handling

  • Media type support

  • Security features

  • Flexible versioning

  • Backward compatibility

  • Extension Framework - Lawful Basis and WTF extensions

  • Privacy Compliance - GDPR-compliant consent management

  • Transcription Support - Multi-provider transcription handling

  • Provider Adapters - Data conversion and validation

  • Export Functionality - SRT and WebVTT export testing

Extension Framework

The vCon library includes a comprehensive extension framework that allows for standardized implementation of additional functionality:

Available Extensions

  • Lawful Basis Extension - GDPR-compliant privacy management and consent tracking

  • WTF Extension - World Transcription Format for standardized speech-to-text data

Extension Features

  • Validation Framework - Comprehensive validation for all extension data

  • Processing Framework - Standardized processing and analysis

  • Provider Adapters - Automatic conversion from provider-specific formats

  • Export Capabilities - Multiple export formats (SRT, WebVTT)

  • Permission Management - Granular permission checking and validation

Extension Usage

Documentation

  • API Reference - Complete API documentation

  • User Guide - Comprehensive usage guide

  • LLM Guide - Guide for AI-assisted development

  • Migration Guide - Upgrading from older versions

License

This project is licensed under the MIT License - see the LICENSE file for details.

Last updated

Was this helpful?