|
|
package im
import ( "encoding/json" "errors" "fmt" "github.com/kirinlabs/HttpRequest" "hudongzhuanjia/utils" )
func AccountImport(identifier, nickname, faceurl string) (string, error) { //sign, err := tencentyun.GenSig(SdkAppid, SdkAppKey, "admin", 86400*180)
sig, err := GenSig("admin") if err != nil { return "", err } random := utils.RandomStr(32) u := fmt.Sprintf("%s/im_open_login_svc/account_import?sdkappid=%d&identifier=admin&usersig=%s&random=%s&contenttype=json", TxImHostV4, SdkAppid, sig, random) bs, _ := json.Marshal(&AccountImportParam{ Identifier: identifier, Nick: nickname, FaceUrl: faceurl, }) resp, err := HttpRequest.NewRequest().Debug(true).JSON().Post(u, string(bs)) if err != nil { return "", err } res := CommonResult{} err = resp.Json(&res) if err != nil { return "", err } if res.ErrorCode != 0 { return "", errors.New(res.ErrorInfo) }
//return tencentyun.GenSig(SdkAppid, SdkAppKey, identifier, 86400000)
return GenSig(identifier) }
// 群通知
type SendGroupSystemNotificationParam struct { GroupId string `json:"GroupId"` Content string `json:"Content"` ToMembersAccount []string `json:"ToMembers_Account,omitempty"` }
func SendGroupSystemNotification(groupId string, status NoticeStatus, data map[string]interface{}, members ...string) error { sig, err := GenSig("admin") if err != nil { return err } random := utils.RandomStr(32) u := fmt.Sprintf("%s/group_open_http_svc/send_group_system_notification?sdkappid=%d&identifier=admin&usersig=%s&random=%s&contenttype=json", TxImHostV4, SdkAppid, sig, random)
var m = make(map[string]interface{}) m["status"] = status m["data"] = data content, err := json.Marshal(&m) if err != nil { return err }
bs, err := json.Marshal(&SendGroupSystemNotificationParam{ GroupId: groupId, Content: string(content), ToMembersAccount: members, }) if err != nil { return err } resp, err := HttpRequest.NewRequest().Debug(true).JSON().Post(u, string(bs)) res := CommonResult{} err = resp.Json(&res) if err != nil { return err } if res.ErrorCode != 0 { return errors.New(res.ErrorInfo) } return nil }
|