experiment (#12)

Reviewed-on: #12
Co-authored-by: phoenix <kundeng00@pm.me>
Co-committed-by: phoenix <kundeng00@pm.me>
This commit is contained in:
phoenix
2025-11-14 22:09:08 +00:00
committed by phoenix
parent 59362806e5
commit a1c197cb06
9 changed files with 143 additions and 109 deletions
+44 -5
View File
@@ -1,11 +1,14 @@
package util
import "encoding/json"
import "fmt"
import "os"
import "strings"
import (
"encoding/json"
"fmt"
"os"
"strings"
"git.kundeng.us/phoenix/textsender-models/pkg/contact"
"git.kundeng.us/phoenix/textsender-models/pkg/message"
"git.kundeng.us/phoenix/sender/models"
)
@@ -64,3 +67,39 @@ func ParseMessage(filepath string) (message models.Message) {
return
}
func Convert(data interface{}, msgOrNumber int) (interface{}, error) {
switch msgOrNumber {
case 0:
{
if msg, ok := data.(models.Message); ok {
return message.Message{Content: msg.Text}, nil
} else {
return nil, fmt.Errorf("Could not resolve value")
}
}
case 1:
{
var items []contact.Contact
switch nbrs := data.(type) {
case []models.Number:
for _, number := range nbrs {
if !number.IsEmpty() {
items = append(items, contact.Contact{PhoneNumber: number.PhoneNumber})
}
}
default:
return nil, fmt.Errorf("Unrecognized type")
}
if len(items) == 0 {
return nil, fmt.Errorf("Failure converting")
} else {
return items, nil
}
}
default:
return nil, fmt.Errorf("Invalid msgOrNumber")
}
}