diff --git a/pkg/smart/channel.go b/pkg/smart/channel.go index 1766bcc..6b75c85 100644 --- a/pkg/smart/channel.go +++ b/pkg/smart/channel.go @@ -14,6 +14,16 @@ const ( length = 6 ) +func NewAutoSmartChannelPackage(mainSmartPackage *SmartPackage) (*SmartChannelPackage, error) { + conn, err := net.Dial(mainSmartPackage.conn.RemoteAddr().Network(), mainSmartPackage.conn.RemoteAddr().String()) + + if err != nil { + return nil, err + } + + return NewSmartChannelPackage(conn, mainSmartPackage) +} + func NewSmartChannelPackage(conn net.Conn, mainSmartPackage *SmartPackage) (*SmartChannelPackage, error) { pack := NewSmartPackage(conn) pack.pack.Payload.Session = mainSmartPackage.pack.Payload.Session