diff --git a/apps/carrier-connector/internal/id/generate.go b/apps/carrier-connector/internal/id/generate.go new file mode 100644 index 0000000..a819240 --- /dev/null +++ b/apps/carrier-connector/internal/id/generate.go @@ -0,0 +1,31 @@ +package id + +import ( + "fmt" + "time" +) + + +func GenerateRuleID() string { + return fmt.Sprintf("rule_%d", GetCurrentTime().UnixNano()) +} + +// GetCurrentTime returns the current time +func GetCurrentTime() time.Time { + return time.Now() +} + +func GenerateEventID() string { + // Generate unique event ID (implementation depends on your ID generation strategy) + return "evt_" + GenerateRandomString(16) +} + +func GenerateRandomString(length int) string { + // Generate random string (implementation depends on your random string generation) + const charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789" + b := make([]byte, length) + for i := range b { + b[i] = charset[i%len(charset)] + } + return string(b) +}