github.com/livekit/protocol@v1.39.3/observability/roomobs/gen_reporter.go (about)

     1  // Code generated; DO NOT EDIT.
     2  
     3  package roomobs
     4  
     5  import (
     6  	"time"
     7  )
     8  
     9  const Version_LNTFR10 = true
    10  
    11  type KeyResolver interface {
    12  	Resolve(string)
    13  	Reset()
    14  }
    15  
    16  type Reporter interface {
    17  	WithProject(id string) ProjectReporter
    18  	WithDeferredProject() (ProjectReporter, KeyResolver)
    19  }
    20  
    21  type ProjectReporter interface {
    22  	RegisterFunc(func(ts time.Time, tx ProjectTx) bool)
    23  	Tx(func(tx ProjectTx))
    24  	TxAt(time.Time, func(tx ProjectTx))
    25  	WithRoom(name string) RoomReporter
    26  	WithDeferredRoom() (RoomReporter, KeyResolver)
    27  }
    28  
    29  type ProjectTx interface{}
    30  
    31  type RoomReporter interface {
    32  	RegisterFunc(func(ts time.Time, tx RoomTx) bool)
    33  	Tx(func(tx RoomTx))
    34  	TxAt(time.Time, func(tx RoomTx))
    35  	WithRoomSession(id string) RoomSessionReporter
    36  	WithDeferredRoomSession() (RoomSessionReporter, KeyResolver)
    37  }
    38  
    39  type RoomTx interface{}
    40  
    41  type RoomSessionReporter interface {
    42  	RegisterFunc(func(ts time.Time, tx RoomSessionTx) bool)
    43  	Tx(func(tx RoomSessionTx))
    44  	TxAt(time.Time, func(tx RoomSessionTx))
    45  	WithParticipant(identity string) ParticipantReporter
    46  	WithDeferredParticipant() (ParticipantReporter, KeyResolver)
    47  	ReportStartTime(v time.Time)
    48  	ReportEndTime(v time.Time)
    49  }
    50  
    51  type RoomSessionTx interface {
    52  	ReportStartTime(v time.Time)
    53  	ReportEndTime(v time.Time)
    54  }
    55  
    56  type ParticipantReporter interface {
    57  	RegisterFunc(func(ts time.Time, tx ParticipantTx) bool)
    58  	Tx(func(tx ParticipantTx))
    59  	TxAt(time.Time, func(tx ParticipantTx))
    60  	WithParticipantSession(id string) ParticipantSessionReporter
    61  	WithDeferredParticipantSession() (ParticipantSessionReporter, KeyResolver)
    62  }
    63  
    64  type ParticipantTx interface{}
    65  
    66  type ParticipantSessionReporter interface {
    67  	RegisterFunc(func(ts time.Time, tx ParticipantSessionTx) bool)
    68  	Tx(func(tx ParticipantSessionTx))
    69  	TxAt(time.Time, func(tx ParticipantSessionTx))
    70  	WithTrack(id string) TrackReporter
    71  	WithDeferredTrack() (TrackReporter, KeyResolver)
    72  	ReportRegion(v string)
    73  	ReportClientConnectTime(v uint16)
    74  	ReportConnectResult(v ConnectionResult)
    75  	ReportConnectionType(v ConnectionType)
    76  	ReportOs(v ClientOS)
    77  	ReportDeviceModel(v string)
    78  	ReportBrowser(v string)
    79  	ReportSdkVersion(v string)
    80  	ReportCountry(v uint16)
    81  	ReportIspAsn(v uint32)
    82  	ReportStartTime(v time.Time)
    83  	ReportEndTime(v time.Time)
    84  	ReportDuration(v uint16)
    85  	ReportDurationMinutes(v uint8)
    86  }
    87  
    88  type ParticipantSessionTx interface {
    89  	ReportRegion(v string)
    90  	ReportClientConnectTime(v uint16)
    91  	ReportConnectResult(v ConnectionResult)
    92  	ReportConnectionType(v ConnectionType)
    93  	ReportOs(v ClientOS)
    94  	ReportDeviceModel(v string)
    95  	ReportBrowser(v string)
    96  	ReportSdkVersion(v string)
    97  	ReportCountry(v uint16)
    98  	ReportIspAsn(v uint32)
    99  	ReportStartTime(v time.Time)
   100  	ReportEndTime(v time.Time)
   101  	ReportDuration(v uint16)
   102  	ReportDurationMinutes(v uint8)
   103  }
   104  
   105  type TrackReporter interface {
   106  	RegisterFunc(func(ts time.Time, tx TrackTx) bool)
   107  	Tx(func(tx TrackTx))
   108  	TxAt(time.Time, func(tx TrackTx))
   109  	ReportName(v string)
   110  	ReportKind(v TrackKind)
   111  	ReportType(v TrackType)
   112  	ReportSource(v TrackSource)
   113  	ReportMime(v MimeType)
   114  	ReportLayer(v uint32)
   115  	ReportDuration(v uint16)
   116  	ReportFrames(v uint16)
   117  	ReportSendBytes(v uint32)
   118  	ReportRecvBytes(v uint32)
   119  	ReportSendPackets(v uint32)
   120  	ReportRecvPackets(v uint32)
   121  	ReportPacketsLost(v uint32)
   122  	ReportScore(v float32)
   123  }
   124  
   125  type TrackTx interface {
   126  	ReportName(v string)
   127  	ReportKind(v TrackKind)
   128  	ReportType(v TrackType)
   129  	ReportSource(v TrackSource)
   130  	ReportMime(v MimeType)
   131  	ReportLayer(v uint32)
   132  	ReportDuration(v uint16)
   133  	ReportFrames(v uint16)
   134  	ReportSendBytes(v uint32)
   135  	ReportRecvBytes(v uint32)
   136  	ReportSendPackets(v uint32)
   137  	ReportRecvPackets(v uint32)
   138  	ReportPacketsLost(v uint32)
   139  	ReportScore(v float32)
   140  }