package weixinrpc import ( "git.tetele.net/yueheng/conf" ) const DES_KEY = "wxserrpc" type WxApiRes struct { Errcode int Errmsg string } type Req struct { SiteId string Dbname string } type AccessTokenReq struct { Req Appid string Secret string } type AccessTokenRes struct { AccessToken string } type UniformMessageReq struct { Req Appid string Secret string Touser string MpAppid string TemplateId string Url string MiniProgram interface{} Data interface{} } type SubscribeMessageReq struct { Req Appid string Secret string Touser string TemplateId string Page string MiniprogramState string Lang string Data interface{} } /** * 获取小程序openid请求参数 */ type MiniAppOpenidReq struct { Appid string Secret string JsCode string } /** * 获取小程序openid返回参数 */ type MiniAppOpenidRes struct { Openid string `json:"openid"` SessionKey interface{} `json:"session_key"` Unionid interface{} `json:"unionid"` NickName string `json:"nick_name"` AvatarUrl string `json:"avatar_url"` WxApiRes } /** * 获取公众号openid返回参数 */ type MpOpenidRes struct { AccessToken string `json:"access_token"` ExpiresIn string `json:"expires_in"` RefreshToken string `json:"refresh_token"` Openid string `json:"openid"` Scope string `json:"scope"` } /** * 获取公众号用户信息请求参数 */ type MpUserInfoReq struct { AccessToken string Openid string } /** * 根据用户access_token换取用户信息返回参数 */ type MpUserInfoRes struct { Openid string Nickname string Sex string Province string City string Country string Headimgurl string Privilege string Unionid string } func rpc_server_conn(url ...string) (*WeixinRpcServiceClient, error) { var wx_rpc_url string if len(url) > 0 && url[0] != "" { wx_rpc_url = url[0] } else { wx_rpc_url = "127.0.0.1:" + conf.WEIXIN_RPC_PORT } conn, _, err := DialWeixinRpcService("tcp", wx_rpc_url) if err != nil { return nil, err } return conn, nil }