实现启动时注册 register
This commit is contained in:
parent
838d64ebff
commit
3a5ac93d06
@ -79,8 +79,8 @@ func main() {
|
|||||||
|
|
||||||
time.Sleep(1 * time.Second)
|
time.Sleep(1 * time.Second)
|
||||||
|
|
||||||
device.Register(client, clientConfig)
|
|
||||||
message.SetupMessageHandler(srv, client, clientConfig)
|
message.SetupMessageHandler(srv, client, clientConfig)
|
||||||
|
device.SetupRegister(client, clientConfig)
|
||||||
keepalive.SetupKeepalive(client, clientConfig)
|
keepalive.SetupKeepalive(client, clientConfig)
|
||||||
device.StartKeepAlive(client)
|
device.StartKeepAlive(client)
|
||||||
defer device.StopKeepAlive()
|
defer device.StopKeepAlive()
|
||||||
|
@ -11,6 +11,19 @@ import (
|
|||||||
"time"
|
"time"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
var registerSenders = make(map[string]*time.Ticker)
|
||||||
|
|
||||||
|
func SetupRegister(client *sipgo.Client, clientConfig *config.ClientConfig) {
|
||||||
|
timer := time.NewTicker(time.Second * 3600)
|
||||||
|
registerSenders[clientConfig.DeviceId] = timer
|
||||||
|
go func() {
|
||||||
|
for range timer.C {
|
||||||
|
Register(client, clientConfig)
|
||||||
|
}
|
||||||
|
}()
|
||||||
|
Register(client, clientConfig)
|
||||||
|
}
|
||||||
|
|
||||||
func Register(client *sipgo.Client, clientConfig *config.ClientConfig) {
|
func Register(client *sipgo.Client, clientConfig *config.ClientConfig) {
|
||||||
target := sip.Uri{
|
target := sip.Uri{
|
||||||
User: clientConfig.ServerId,
|
User: clientConfig.ServerId,
|
||||||
@ -83,6 +96,8 @@ func Register(client *sipgo.Client, clientConfig *config.ClientConfig) {
|
|||||||
|
|
||||||
if resp.StatusCode != 403 {
|
if resp.StatusCode != 403 {
|
||||||
log.Log().Info().Msgf("设备:%s 注册成功", clientConfig.DeviceId)
|
log.Log().Info().Msgf("设备:%s 注册成功", clientConfig.DeviceId)
|
||||||
|
} else {
|
||||||
|
log.Log().Error().Msgf("设备:%s 注册失败", clientConfig.DeviceId)
|
||||||
}
|
}
|
||||||
|
|
||||||
log.Log().Info().Msgf(resp.String())
|
log.Log().Info().Msgf(resp.String())
|
||||||
|
Loading…
Reference in New Issue
Block a user