27 lines
828 B
Go
27 lines
828 B
Go
|
package messager
|
||
|
|
||
|
import (
|
||
|
"fmt"
|
||
|
"net"
|
||
|
"strings"
|
||
|
"time"
|
||
|
)
|
||
|
|
||
|
type Sender interface {
|
||
|
SendMessage(message string) error
|
||
|
}
|
||
|
|
||
|
func FormatInitMsg(currentTime time.Time, publicIP net.IP, hostname string) string {
|
||
|
formattedHostname := fmt.Sprintf("`%s`", hostname)
|
||
|
formattedIP := strings.ReplaceAll(publicIP.String(), ".", "\\.")
|
||
|
return fmt.Sprintf(`\[Host %s\] %s
|
||
|
Public IP tracker initialized\. Current IP is %s`, formattedHostname, currentTime.Format(time.RFC1123), formattedIP)
|
||
|
}
|
||
|
|
||
|
func FormatUpdate(currentTime time.Time, publicIP net.IP, hostname string) string {
|
||
|
formattedHostname := fmt.Sprintf("`%s`", hostname)
|
||
|
formattedIP := strings.ReplaceAll(publicIP.String(), ".", "\\.")
|
||
|
return fmt.Sprintf(`\[Host %s\] %s
|
||
|
Public IP has changed, new IP is %s`, formattedHostname, currentTime.Format(time.RFC1123), formattedIP)
|
||
|
}
|