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) }