experiment (#12)
Reviewed-on: #12 Co-authored-by: phoenix <kundeng00@pm.me> Co-committed-by: phoenix <kundeng00@pm.me>
This commit is contained in:
+44
-5
@@ -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")
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user