Versions in this module Expand all Collapse all v1 v1.0.0 May 19, 2015 Changes in this version + const ErrCodeAccessTokenExpired + const ErrCodeOK + const ErrCodeSuiteAccessTokenExpired + const URLQueryAgentServerKeyName + var DefaultInvalidRequestHandler = InvalidRequestHandlerFunc(func(http.ResponseWriter, *http.Request, error) { ... }) + var LogInfoln = log.Println + var MediaHttpClient = &http.Client + var TextHttpClient = &http.Client + func ServeHTTP(w http.ResponseWriter, r *http.Request, queryValues url.Values, ...) + func SetLogInfoln(fn func(v ...interface{})) + func WriteResponse(w http.ResponseWriter, r *Request, msg interface{}) (err error) + type AccessTokenServer interface + Token func() (token string, err error) + TokenRefresh func() (token string, err error) + type AgentServer interface + AgentId func() int64 + CorpId func() string + CurrentAESKey func() [32]byte + LastAESKey func() [32]byte + MessageHandler func() MessageHandler + Token func() string + type AgentServerFrontend struct + func NewAgentServerFrontend(server AgentServer, handler InvalidRequestHandler) *AgentServerFrontend + func (frontend *AgentServerFrontend) ServeHTTP(w http.ResponseWriter, r *http.Request) + type CommonMessageHeader struct + AgentId int64 + CreateTime int64 + FromUserName string + MsgType string + ToUserName string + type CorpClient struct + HttpClient *http.Client + func NewCorpClient(AccessTokenServer AccessTokenServer, HttpClient *http.Client) *CorpClient + func (clt *CorpClient) GetCallbackIP() (ipList []string, err error) + func (clt *CorpClient) GetJSON(incompleteURL string, response interface{}) (err error) + func (clt *CorpClient) PostJSON(incompleteURL string, request interface{}, response interface{}) (err error) + func (clt *CorpClient) PostMultipartForm(incompleteURL string, fields []MultipartFormField, response interface{}) (err error) + type DefaultAccessTokenServer struct + func NewDefaultAccessTokenServer(corpId, corpSecret string, httpClient *http.Client) (srv *DefaultAccessTokenServer) + func (srv *DefaultAccessTokenServer) Token() (token string, err error) + func (srv *DefaultAccessTokenServer) TokenRefresh() (token string, err error) + type DefaultAgentServer struct + func NewDefaultAgentServer(corpId string, agentId int64, token string, AESKey []byte, ...) (srv *DefaultAgentServer) + func (srv *DefaultAgentServer) AgentId() int64 + func (srv *DefaultAgentServer) CorpId() string + func (srv *DefaultAgentServer) CurrentAESKey() (key [32]byte) + func (srv *DefaultAgentServer) LastAESKey() (key [32]byte) + func (srv *DefaultAgentServer) MessageHandler() MessageHandler + func (srv *DefaultAgentServer) Token() string + func (srv *DefaultAgentServer) UpdateAESKey(AESKey []byte) (err error) + type Error struct + ErrCode int + ErrMsg string + func (e *Error) Error() string + type InvalidRequestHandler interface + ServeInvalidRequest func(w http.ResponseWriter, r *http.Request, err error) + type InvalidRequestHandlerFunc func(http.ResponseWriter, *http.Request, error) + func (fn InvalidRequestHandlerFunc) ServeInvalidRequest(w http.ResponseWriter, r *http.Request, err error) + type MessageHandler interface + ServeMessage func(w http.ResponseWriter, r *Request) + type MessageHandlerFunc func(http.ResponseWriter, *Request) + func (fn MessageHandlerFunc) ServeMessage(w http.ResponseWriter, r *Request) + type MessageServeMux struct + func NewMessageServeMux() *MessageServeMux + func (mux *MessageServeMux) DefaultEventHandle(handler MessageHandler) + func (mux *MessageServeMux) DefaultEventHandleFunc(handler func(http.ResponseWriter, *Request)) + func (mux *MessageServeMux) DefaultMessageHandle(handler MessageHandler) + func (mux *MessageServeMux) DefaultMessageHandleFunc(handler func(http.ResponseWriter, *Request)) + func (mux *MessageServeMux) EventHandle(eventType string, handler MessageHandler) + func (mux *MessageServeMux) EventHandleFunc(eventType string, handler func(http.ResponseWriter, *Request)) + func (mux *MessageServeMux) MessageHandle(msgType string, handler MessageHandler) + func (mux *MessageServeMux) MessageHandleFunc(msgType string, handler func(http.ResponseWriter, *Request)) + func (mux *MessageServeMux) ServeMessage(w http.ResponseWriter, r *Request) + type MixedMessage struct + Content string + Event string + EventKey string + Format string + Label string + Latitude float64 + LocationX float64 + LocationY float64 + Longitude float64 + MediaId string + MsgId int64 + PicURL string + Precision float64 + Scale int + ScanCodeInfo struct{ ... } + SendLocationInfo struct{ ... } + SendPicsInfo struct{ ... } + ThumbMediaId string + XMLName struct{} + type MultiAgentServerFrontend struct + func (frontend *MultiAgentServerFrontend) DeleteAgentServer(serverKey string) + func (frontend *MultiAgentServerFrontend) DeleteAllAgentServer() + func (frontend *MultiAgentServerFrontend) ServeHTTP(w http.ResponseWriter, r *http.Request) + func (frontend *MultiAgentServerFrontend) SetAgentServer(serverKey string, server AgentServer) + func (frontend *MultiAgentServerFrontend) SetInvalidRequestHandler(handler InvalidRequestHandler) + type MultipartFormField struct + ContentType int + FieldName string + FileName string + Value io.Reader + type Request struct + AESKey [32]byte + AgentId int64 + AgentToken string + CorpId string + HttpRequest *http.Request + MixedMsg *MixedMessage + MsgSignature string + Nonce string + QueryValues url.Values + Random []byte + RawMsgXML []byte + Timestamp int64 + type RequestHttpBody struct + AgentId int64 + CorpId string + EncryptedMsg string + XMLName struct{} + type ResponseHttpBody struct + EncryptedMsg string + MsgSignature string + Nonce string + Timestamp int64 + XMLName struct{}