Files
onvif-go/docs copy/DOCUMENTATION_INDEX.md
T
2026-01-16 04:11:59 +00:00

5.7 KiB

📚 Documentation Index

Welcome to onvif-go! This index helps you navigate all available documentation.

🚀 Start Here

New to onvif-go?

  1. Read: README.md - Project overview
  2. Read: QUICKSTART.md - Get started in 5 minutes
  3. Try: ./cmd/onvif-cli/onvif-cli - Run the CLI

📖 Core Documentation

User Guides

Document Purpose Length Audience
README.md Project overview Short Everyone
QUICKSTART.md Getting started Medium New users
CLI_NON_INTERACTIVE_MODE.md CLI automation guide 800+ lines Automation engineers
NETWORK_INTERFACE_DISCOVERY.md Discovery API guide 400+ lines Developers

Implementation Details

Document Purpose Audience
IMPLEMENTATION_STATUS.md Status & metrics Project managers
PROJECT_COMPLETION_SUMMARY.md What was built Stakeholders
BUILDING.md Build instructions Developers

🎯 By Use Case

I want to...

Discover cameras on my network

./onvif-cli discover -interface eth0

→ See QUICKSTART.md or CLI_NON_INTERACTIVE_MODE.md

Use the CLI in a script

./onvif-cli -op discover -interface eth0 -timeout 5

→ Read CLI_NON_INTERACTIVE_MODE.md

Integrate discovery into my Go code

import "github.com/0x524a/onvif-go/discovery"

→ Read NETWORK_INTERFACE_DISCOVERY.md

Build the project

make build-cli

→ See BUILDING.md

Run tests

go test ./discovery -v

→ See BUILDING.md

Modernize the CLI with urfave/cli

→ Follow SAFE_MIGRATION_GUIDE.md

📁 Code Structure

onvif-go/
├── cmd/onvif-cli/          Main CLI tool (1,195 lines)
├── cmd/onvif-quick/        Quick discovery tool
├── discovery/              Discovery library + tests
├── examples/               5 working example programs
└── docs/                   Additional documentation

🔍 Quick Reference

Common Commands

Command Purpose
./onvif-cli Launch interactive menu
./onvif-cli discover -interface eth0 Discover on specific interface
./onvif-cli -op discover -interface eth0 Non-interactive discover
go test ./discovery -v Run tests
go build ./cmd/onvif-cli Build CLI

Key Files

File Purpose Lines
cmd/onvif-cli/main.go Main CLI implementation 1,195
discovery/discovery.go Discovery API ~300
discovery/discovery_test.go Discovery tests ~400

📊 Statistics

Metric Value
Total documentation 1,200+ lines
CLI code 1,195 lines
Test code ~400 lines
Code examples 10+
Working examples 5
Tests passing 8/8

🎓 Learning Path

Beginner

  1. README.md - Understand what it does
  2. QUICKSTART.md - Try it out
  3. ./onvif-cli - Run interactive mode

Intermediate

  1. CLI_NON_INTERACTIVE_MODE.md - Learn automation
  2. NETWORK_INTERFACE_DISCOVERY.md - Understand API
  3. Review examples in examples/ directory

Advanced

  1. Study cmd/onvif-cli/main.go (implementation)
  2. Study discovery/discovery.go (library)
  3. Review discovery/discovery_test.go (testing)

Expert

  1. SAFE_MIGRATION_GUIDE.md - Extend the CLI
  2. URFAVE_CLI_MIGRATION_GUIDE.md - Modernize
  3. Build custom features

Examples

  • examples/discovery/ - Network discovery example
  • examples/device-info/ - Get device info
  • examples/ptz-control/ - Pan/tilt/zoom
  • examples/imaging-settings/ - Camera imaging
  • examples/complete-demo/ - Full integration

Other Docs

  • CHANGELOG.md - Version history
  • CONTRIBUTING.md - Contribution guidelines
  • LICENSE - Project license

FAQ

Q: Where do I start? A: Read README.md and QUICKSTART.md

Q: How do I use the CLI for automation? A: See CLI_NON_INTERACTIVE_MODE.md

Q: How do I use the discovery API? A: See NETWORK_INTERFACE_DISCOVERY.md

Q: How do I upgrade the CLI framework? A: Follow SAFE_MIGRATION_GUIDE.md

Q: Are there examples? A: Yes! Check examples/ directory (5 working programs)

Q: How do I run tests? A: go test ./discovery -v (all 8 tests pass)

Q: Is this production ready? A: Yes! See PROJECT_COMPLETION_SUMMARY.md

📞 Support

  • General questions: See README.md
  • Usage questions: See QUICKSTART.md
  • CLI questions: See CLI_NON_INTERACTIVE_MODE.md
  • API questions: See NETWORK_INTERFACE_DISCOVERY.md
  • Build questions: See BUILDING.md
  • Upgrade questions: See SAFE_MIGRATION_GUIDE.md

Project Status

  • Core features: Complete
  • CLI tool: Production ready
  • Documentation: Comprehensive
  • Tests: All passing
  • Examples: 5 working programs

Status: PRODUCTION READY 🚀


Last Updated: 2024 Go Version: 1.21+ urfave/cli: v2.27.7 (installed)