SYMBOL INDEX (228 symbols across 18 files) FILE: channel.go type PullStream (line 23) | type PullStream struct method CreateRequest (line 29) | func (p *PullStream) CreateRequest(method sip.RequestMethod) (req sip.... method Bye (line 42) | func (p *PullStream) Bye() int { method info (line 57) | func (p *PullStream) info(body string) int { method Pause (line 73) | func (p *PullStream) Pause() int { method Resume (line 82) | func (p *PullStream) Resume() int { method PlayAt (line 93) | func (p *PullStream) PlayAt(second uint) int { method PlayForward (line 104) | func (p *PullStream) PlayForward(speed float32) int { type Channel (line 113) | type Channel struct method MarshalJSON (line 129) | func (c *Channel) MarshalJSON() ([]byte, error) { method CreateRequst (line 179) | func (channel *Channel) CreateRequst(Method sip.RequestMethod) (req si... method QueryRecord (line 239) | func (channel *Channel) QueryRecord(startTime, endTime string) ([]*Rec... method QueryPresetList (line 273) | func (channel *Channel) QueryPresetList() (sip.Response, error) { method PresetControl (line 292) | func (channel *Channel) PresetControl(ptzCode int, point byte) int { method Control (line 308) | func (channel *Channel) Control(PTZCmd string) int { method Invite (line 375) | func (channel *Channel) Invite(opt *InviteOptions) (code int, err erro... method Bye (line 534) | func (channel *Channel) Bye(streamPath string) int { method Pause (line 549) | func (channel *Channel) Pause(streamPath string) int { method Resume (line 560) | func (channel *Channel) Resume(streamPath string) int { method PlayAt (line 571) | func (channel *Channel) PlayAt(streamPath string, second uint) int { method PlayForward (line 582) | func (channel *Channel) PlayForward(streamPath string, speed float32) ... method TryAutoInvite (line 592) | func (channel *Channel) TryAutoInvite(opt *InviteOptions) { method CanInvite (line 600) | func (channel *Channel) CanInvite() bool { type PresetInfo (line 124) | type PresetInfo struct type ChannelInfo (line 155) | type ChannelInfo struct type ChannelStatus (line 172) | type ChannelStatus constant ChannelOnStatus (line 175) | ChannelOnStatus = "ON" constant ChannelOffStatus (line 176) | ChannelOffStatus = "OFF" function getSipRespErrorCode (line 629) | func getSipRespErrorCode(err error) int { FILE: const.go function Explain (line 58) | func Explain(statusCode int) string { constant INVIDE_MODE_MANUAL (line 63) | INVIDE_MODE_MANUAL = iota constant INVIDE_MODE_AUTO (line 64) | INVIDE_MODE_AUTO constant INVIDE_MODE_ONSUBSCRIBE (line 65) | INVIDE_MODE_ONSUBSCRIBE FILE: device.go constant TIME_LAYOUT (line 22) | TIME_LAYOUT = "2006-01-02T15:04:05" type Record (line 25) | type Record struct method GetPublishStreamPath (line 36) | func (r *Record) GetPublishStreamPath() string { type DeviceStatus (line 46) | type DeviceStatus constant DeviceRegisterStatus (line 49) | DeviceRegisterStatus = "REGISTER" constant DeviceRecoverStatus (line 50) | DeviceRecoverStatus = "RECOVER" constant DeviceOnlineStatus (line 51) | DeviceOnlineStatus = "ONLINE" constant DeviceOfflineStatus (line 52) | DeviceOfflineStatus = "OFFLINE" constant DeviceAlarmedStatus (line 53) | DeviceAlarmedStatus = "ALARMED" type Device (line 56) | type Device struct method MarshalJSON (line 83) | func (d *Device) MarshalJSON() ([]byte, error) { method addOrUpdateChannel (line 210) | func (d *Device) addOrUpdateChannel(info ChannelInfo) (c *Channel) { method deleteChannel (line 230) | func (d *Device) deleteChannel(DeviceID string) { method UpdateChannels (line 234) | func (d *Device) UpdateChannels(list ...ChannelInfo) { method CreateRequest (line 270) | func (d *Device) CreateRequest(Method sip.RequestMethod) (req sip.Requ... method Subscribe (line 336) | func (d *Device) Subscribe() int { method Catalog (line 363) | func (d *Device) Catalog() int { method QueryDeviceInfo (line 385) | func (d *Device) QueryDeviceInfo() { method SipRequestForResponse (line 410) | func (d *Device) SipRequestForResponse(request sip.Request) (sip.Respo... method MobilePositionSubscribe (line 415) | func (d *Device) MobilePositionSubscribe(id string, expires time.Durat... method UpdateChannelPosition (line 443) | func (d *Device) UpdateChannelPosition(channelId string, gpsTime strin... method UpdateChannelStatus (line 460) | func (d *Device) UpdateChannelStatus(deviceList []*notifyMessage) { method channelOnline (line 522) | func (d *Device) channelOnline(DeviceID string) { method channelOffline (line 532) | func (d *Device) channelOffline(DeviceID string) { method RecoverDevice (line 97) | func (c *GB28181Config) RecoverDevice(d *Device, req sip.Request) { method StoreDevice (line 131) | func (c *GB28181Config) StoreDevice(id string, req sip.Request) (d *Devi... method ReadDevices (line 181) | func (c *GB28181Config) ReadDevices() { method SaveDevices (line 196) | func (c *GB28181Config) SaveDevices() { FILE: handle.go type Authorization (line 21) | type Authorization struct method Verify (line 25) | func (a *Authorization) Verify(username, passwd, realm, nonce string) ... method getDigest (line 46) | func (a *Authorization) getDigest(raw string) string { method OnRegister (line 55) | func (c *GB28181Config) OnRegister(req sip.Request, tx sip.ServerTransac... method syncChannels (line 189) | func (d *Device) syncChannels() { type MessageEvent (line 198) | type MessageEvent struct method OnMessage (line 203) | func (c *GB28181Config) OnMessage(req sip.Request, tx sip.ServerTransact... method OnBye (line 294) | func (c *GB28181Config) OnBye(req sip.Request, tx sip.ServerTransaction) { type NotifyEvent (line 298) | type NotifyEvent method OnNotify (line 301) | func (c *GB28181Config) OnNotify(req sip.Request, tx sip.ServerTransacti... type notifyMessage (line 355) | type notifyMessage struct FILE: inviteoption.go type InviteOptions (line 10) | type InviteOptions struct method IsLive (line 21) | func (o InviteOptions) IsLive() bool { method Record (line 25) | func (o InviteOptions) Record() bool { method Validate (line 29) | func (o *InviteOptions) Validate(start, end string) error { method String (line 50) | func (o InviteOptions) String() string { method CreateSSRC (line 54) | func (o *InviteOptions) CreateSSRC() { FILE: link.go type recordQueryLink (line 16) | type recordQueryLink struct method cleanTimeout (line 51) | func (c *recordQueryLink) cleanTimeout() { method Put (line 68) | func (c *recordQueryLink) Put(deviceId, channelId string, sn int, sum ... method doPut (line 75) | func (c *recordQueryLink) doPut(deviceId, channelId string, sn, sum in... method WaitResult (line 97) | func (c *recordQueryLink) WaitResult( method notify (line 110) | func (c *recordQueryLink) notify(key string, r recordQueryResult) { type recordQueryResult (line 23) | type recordQueryResult struct type recordQueryResp (line 30) | type recordQueryResp struct function NewRecordQueryLink (line 36) | func NewRecordQueryLink(resultTimeout time.Duration) *recordQueryLink { function recordQueryKey (line 46) | func recordQueryKey(deviceId, channelId string, sn int) string { FILE: main.go type GB28181PositionConfig (line 16) | type GB28181PositionConfig struct type GB28181Config (line 22) | type GB28181Config struct method initRoutes (line 63) | func (c *GB28181Config) initRoutes() { method OnEvent (line 75) | func (c *GB28181Config) OnEvent(event any) { method IsMediaNetworkTCP (line 143) | func (c *GB28181Config) IsMediaNetworkTCP() bool { FILE: manscdp.go function intTotime (line 58) | func intTotime(t int64) time.Time { function BuildDeviceInfoXML (line 70) | func BuildDeviceInfoXML(sn int, id string) string { function BuildCatalogXML (line 75) | func BuildCatalogXML(sn int, id string) string { function BuildPresetListXML (line 79) | func BuildPresetListXML(sn int, id string) string { function BuildRecordInfoXML (line 84) | func BuildRecordInfoXML(sn int, id string, start, end int64) string { function BuildDevicePositionXML (line 89) | func BuildDevicePositionXML(sn int, id string, interval int) string { function BuildAlarmResponseXML (line 105) | func BuildAlarmResponseXML(id string) string { function XmlEncode (line 109) | func XmlEncode(v interface{}) (string, error) { FILE: portmanager.go type PortManager (line 9) | type PortManager struct method Init (line 17) | func (pm *PortManager) Init(start, end uint16) { method Range (line 27) | func (pm *PortManager) Range() uint16 { method Recycle (line 31) | func (pm *PortManager) Recycle(p uint16) (err error) { method GetPort (line 40) | func (pm *PortManager) GetPort() (p uint16, err error) { FILE: ptz.go type PresetCmd (line 25) | type PresetCmd constant PresetAddPoint (line 28) | PresetAddPoint = 0 constant PresetDelPoint (line 29) | PresetDelPoint = 1 constant PresetCallPoint (line 30) | PresetCallPoint = 2 constant DeviceControl (line 33) | DeviceControl = "DeviceControl" constant PTZFirstByte (line 34) | PTZFirstByte = 0xA5 constant PresetSet (line 36) | PresetSet = 0x81 constant PresetCall (line 37) | PresetCall = 0x82 constant PresetDel (line 38) | PresetDel = 0x83 type MessagePtz (line 41) | type MessagePtz struct type Preset (line 49) | type Preset struct function toPtzStrByCmdName (line 54) | func toPtzStrByCmdName(cmdName string, horizontalSpeed, verticalSpeed, z... function toPtzStr (line 62) | func toPtzStr(cmdCode, horizontalSpeed, verticalSpeed, zoomSpeed uint8) ... function toPtzCode (line 74) | func toPtzCode(cmd string) (uint8, error) { function getVerificationCode (line 82) | func getVerificationCode(ptz []byte) { function getAssembleCode (line 90) | func getAssembleCode() uint8 { function Pack (line 94) | func Pack(cmd, point byte) string { FILE: restful.go method API_list (line 17) | func (c *GB28181Config) API_list(w http.ResponseWriter, r *http.Request) { method API_records (line 32) | func (c *GB28181Config) API_records(w http.ResponseWriter, r *http.Reque... method API_control (line 55) | func (c *GB28181Config) API_control(w http.ResponseWriter, r *http.Reque... method API_ptz (line 66) | func (c *GB28181Config) API_ptz(w http.ResponseWriter, r *http.Request) { method API_invite (line 104) | func (c *GB28181Config) API_invite(w http.ResponseWriter, r *http.Reques... method API_bye (line 138) | func (c *GB28181Config) API_bye(w http.ResponseWriter, r *http.Request) { method API_play_pause (line 149) | func (c *GB28181Config) API_play_pause(w http.ResponseWriter, r *http.Re... method API_play_resume (line 160) | func (c *GB28181Config) API_play_resume(w http.ResponseWriter, r *http.R... method API_play_seek (line 171) | func (c *GB28181Config) API_play_seek(w http.ResponseWriter, r *http.Req... method API_play_forward (line 188) | func (c *GB28181Config) API_play_forward(w http.ResponseWriter, r *http.... method API_position (line 206) | func (c *GB28181Config) API_position(w http.ResponseWriter, r *http.Requ... method API_preset_list (line 233) | func (c *GB28181Config) API_preset_list(w http.ResponseWriter, r *http.R... method API_preset_control (line 252) | func (c *GB28181Config) API_preset_control(w http.ResponseWriter, r *htt... type DevicePosition (line 274) | type DevicePosition struct method API_get_position (line 281) | func (c *GB28181Config) API_get_position(w http.ResponseWriter, r *http.... FILE: server.go constant MaxRegisterCount (line 21) | MaxRegisterCount = 3 function FindChannel (line 23) | func FindChannel(deviceId string, channelId string) (c *Channel) { function GetSipServer (line 43) | func GetSipServer(transport string) gosip.Server { function CreateRequest (line 49) | func CreateRequest(exposedId string, Method sip.RequestMethod, recipient... function RequestForResponse (line 113) | func RequestForResponse(transport string, request sip.Request, method startServer (line 118) | func (c *GB28181Config) startServer() { method startJob (line 164) | func (c *GB28181Config) startJob() { method removeBanDevice (line 183) | func (c *GB28181Config) removeBanDevice() { method statusCheck (line 196) | func (c *GB28181Config) statusCheck() { FILE: utils/buffer.go type IOBuffer (line 9) | type IOBuffer struct method Next (line 14) | func (b *IOBuffer) Next(n int) []byte { method Uint16 (line 23) | func (b *IOBuffer) Uint16() (uint16, error) { method Skip (line 31) | func (b *IOBuffer) Skip(n int) (err error) { method Uint32 (line 36) | func (b *IOBuffer) Uint32() (uint32, error) { method ReadN (line 43) | func (b *IOBuffer) ReadN(length int) ([]byte, error) { method empty (line 58) | func (b *IOBuffer) empty() bool { return b.Len() <= b.off } method ReadByte (line 60) | func (b *IOBuffer) ReadByte() (byte, error) { method Reset (line 71) | func (b *IOBuffer) Reset() { method Len (line 76) | func (b *IOBuffer) Len() int { return len(b.buf) - b.off } method tryGrowByReslice (line 81) | func (b *IOBuffer) tryGrowByReslice(n int) (int, bool) { method Write (line 91) | func (b *IOBuffer) Write(p []byte) (n int, err error) { FILE: utils/bufferpool.go constant minBitSize (line 11) | minBitSize = 6 constant steps (line 12) | steps = 20 constant minSize (line 14) | minSize = 1 << minBitSize constant maxSize (line 15) | maxSize = 1 << (minBitSize + steps - 1) constant calibrateCallsThreshold (line 17) | calibrateCallsThreshold = 42000 constant maxPercentile (line 18) | maxPercentile = 0.95 type Pool (line 26) | type Pool struct method Get (line 49) | func (p *Pool) Get() *bytes.Buffer { method Put (line 66) | func (p *Pool) Put(b *bytes.Buffer) { method calibrate (line 80) | func (p *Pool) calibrate() { function Get (line 43) | func Get() *bytes.Buffer { return defaultPool.Get() } function Put (line 61) | func Put(b *bytes.Buffer) { b.Reset(); defaultPool.Put(b) } type callSize (line 119) | type callSize struct type callSizes (line 124) | type callSizes method Len (line 126) | func (ci callSizes) Len() int { method Less (line 130) | func (ci callSizes) Less(i, j int) bool { method Swap (line 134) | func (ci callSizes) Swap(i, j int) { function index (line 138) | func index(n int) int { FILE: utils/log.go type ZapLogger (line 12) | type ZapLogger struct method Print (line 30) | func (l *ZapLogger) Print(args ...interface{}) { method Printf (line 36) | func (l *ZapLogger) Printf(format string, args ...interface{}) { method Trace (line 42) | func (l *ZapLogger) Trace(args ...interface{}) { method Tracef (line 48) | func (l *ZapLogger) Tracef(format string, args ...interface{}) { method Debug (line 54) | func (l *ZapLogger) Debug(args ...interface{}) { method Debugf (line 60) | func (l *ZapLogger) Debugf(format string, args ...interface{}) { method Info (line 66) | func (l *ZapLogger) Info(args ...interface{}) { method Infof (line 72) | func (l *ZapLogger) Infof(format string, args ...interface{}) { method Warn (line 78) | func (l *ZapLogger) Warn(args ...interface{}) { method Warnf (line 84) | func (l *ZapLogger) Warnf(format string, args ...interface{}) { method Error (line 90) | func (l *ZapLogger) Error(args ...interface{}) { method Errorf (line 96) | func (l *ZapLogger) Errorf(format string, args ...interface{}) { method Fatal (line 102) | func (l *ZapLogger) Fatal(args ...interface{}) { method Fatalf (line 108) | func (l *ZapLogger) Fatalf(format string, args ...interface{}) { method Panic (line 114) | func (l *ZapLogger) Panic(args ...interface{}) { method Panicf (line 120) | func (l *ZapLogger) Panicf(format string, args ...interface{}) { method WithPrefix (line 126) | func (l *ZapLogger) WithPrefix(prefix string) log.Logger { method Prefix (line 130) | func (l *ZapLogger) Prefix() string { method WithFields (line 134) | func (l *ZapLogger) WithFields(fields map[string]interface{}) log.Logg... method Fields (line 138) | func (l *ZapLogger) Fields() log.Fields { method prepareEntry (line 142) | func (l *ZapLogger) prepareEntry() *zap.SugaredLogger { method SetLevel (line 157) | func (l *ZapLogger) SetLevel(level uint32) { function NewZapLogger (line 20) | func NewZapLogger(log *m7slog.Logger, prefix string, fields log.Fields) ... FILE: utils/rtp_sort.go constant MaxRtpDiff (line 10) | MaxRtpDiff = 65000 type PriorityQueueRtp (line 12) | type PriorityQueueRtp struct method Len (line 26) | func (p *PriorityQueueRtp) Len() int { method Push (line 30) | func (p *PriorityQueueRtp) Push(v rtp.Packet) { method Pop (line 41) | func (p *PriorityQueueRtp) Pop() (rtp.Packet, error) { method Empty (line 50) | func (p *PriorityQueueRtp) Empty() { function NewPqRtp (line 19) | func NewPqRtp() *PriorityQueueRtp { type packets (line 55) | type packets method Len (line 63) | func (p *packets) Len() int { method Less (line 67) | func (p *packets) Less(i, j int) bool { method Swap (line 78) | func (p *packets) Swap(i, j int) { method Push (line 84) | func (p *packets) Push(x interface{}) { method Pop (line 90) | func (p *packets) Pop() interface{} { type packet (line 57) | type packet struct FILE: utils/sip.go function RandNum16String (line 12) | func RandNum16String(n int) string { function RandNumString (line 17) | func RandNumString(n int) string { function RandString (line 22) | func RandString(n int) string { function randStringBySoure (line 28) | func randStringBySoure(src string, n int) string { type Error (line 51) | type Error struct method Error (line 56) | func (err *Error) Error() string { function NewError (line 68) | func NewError(err error, params ...interface{}) error { function PrintStack (line 71) | func PrintStack() { function ResolveSelfIP (line 78) | func ResolveSelfIP() (net.IP, error) { FILE: utils/string.go function ToJSONString (line 13) | func ToJSONString(v interface{}) string { function ToPrettyString (line 18) | func ToPrettyString(v interface{}) string { function GbkToUtf8 (line 23) | func GbkToUtf8(s []byte) ([]byte, error) { function DecodeGbk (line 32) | func DecodeGbk(v interface{}, body []byte) error {