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 }