Documentation ¶
Overview ¶
Package wrapping Exchange Web Service (EWS)
Index ¶
- Constants
- func CreateCalendarItem(c Client, ci ...CalendarItem) error
- func CreateMessageItem(c Client, m ...Message) error
- func NewError(resp *http.Response) error
- type AdditionalProperties
- type ArrayOfAttendeeConflictData
- type AttachmentId
- type AttachmentItemMessage
- type Attachments
- type Attendee
- type AttendeeType
- type Attendees
- type BaseFiltering
- type BasePoint
- type BaseShape
- type Body
- type BooleanType
- type BusinessPhoneNumbers
- type BusyType
- type CalendarEvent
- type CalendarEventArray
- type CalendarEventDetails
- type CalendarItem
- type Client
- type Config
- type Constant
- type Contains
- type CreateAttachments
- type CreateFileAttachment
- type CreateItem
- type CreateItemResponse
- type DeleteItemMessage
- type DeleteItemRequest
- type DeleteItemResponse
- type DeleteItemResponseMessage
- type DeleteItemResponseMessages
- type Departments
- type DistinguishedFolderId
- type Email
- type EmailAddress
- type EmailBody
- type Fault
- type FieldURI
- type FieldURIOrConstant
- type FileAttachment
- type FindItemMessage
- type FindItemRequest
- type FindItemResponse
- type FindItemResponseMessage
- type FindItemResponseMessages
- type FindItems
- type FindPeopleRequest
- type FindPeopleResponse
- type FreeBusyResponse
- type FreeBusyResponseArray
- type FreeBusyView
- type FreeBusyViewOptions
- type From
- type GetAttachmentRequest
- type GetAttachmentResponse
- type GetAttachmentResponseMessage
- type GetAttachmentResponseMessages
- type GetAttachments
- type GetFileAttachment
- type GetItemEmailAddress
- type GetItemMessage
- type GetItemRequest
- type GetItemResponse
- type GetItemResponseMessage
- type GetItemResponseMessages
- type GetItemShape
- type GetItems
- type GetPersonaRequest
- type GetPersonaResponse
- type GetRoomListsRequest
- type GetRoomListsResponse
- type GetUserAvailabilityRequest
- type GetUserAvailabilityResponse
- type GetUserPhotoRequest
- type GetUserPhotoResponse
- type GroupAttendeeConflictData
- type HTTPError
- type IndexedPageItemView
- type IsEqualTo
- type ItemId
- type ItemMessage
- type ItemShape
- type Items
- type LoginStrategy
- type Mailbox
- type MailboxData
- type MailboxDataArray
- type Message
- type MessageXml
- type MimeContent
- type MobilePhones
- type OfficeLocations
- type OneMailbox
- type ParentFolderId
- type ParentFolderIds
- type People
- type Persona
- type PersonaId
- type PersonaShape
- type PhoneNumberAttributedValue
- type PlainLogin
- type Response
- type ResponseClass
- type ResponseMessage
- type ResponseMessages
- type Restriction
- type RoomLists
- type RootFolder
- type SavedItemFolderId
- type SoapError
- type StringAttributedValue
- type Suggestion
- type SuggestionArray
- type SuggestionDayResult
- type SuggestionDayResultArray
- type SuggestionsResponse
- type Time
- type TimeWindow
- type TimeZone
- type TimeZoneTime
- type Value
- type WorkingHours
- type WorkingPeriod
- type WorkingPeriodArray
- type XMailbox
- type XOAuthLogin
Constants ¶
View Source
const ( DeleteTypeHardDelete string = "HardDelete" DeleteTypeMoveToDeletedItems string = "MoveToDeletedItems" DeleteTypeSoftDelete string = "SoftDelete" )
View Source
const ( RequestedViewNone = "None" RequestedViewMergedOnly = "MergedOnly" RequestedViewFreeBusy = "FreeBusy" RequestedViewFreeBusyMerged = "FreeBusyMerged" RequestedViewDetailed = "Detailed" RequestedViewDetailedMerged = "DetailedMerged" )
View Source
const ( BusyTypeFree = "Free" BusyTypeTentative = "Tentative" BusyTypeBusy = "Busy" BusyTypeOOF = "OOF" BusyTypeNoData = "NoData" )
Variables ¶
This section is empty.
Functions ¶
func CreateCalendarItem ¶
func CreateCalendarItem(c Client, ci ...CalendarItem) error
CreateCalendarItem https://docs.microsoft.com/en-us/exchange/client-developer/web-service-reference/createitem-operation-calendar-item
Types ¶
type AdditionalProperties ¶
type AdditionalProperties struct {
FieldURI []FieldURI `xml:"t:FieldURI,omitempty"`
}
type ArrayOfAttendeeConflictData ¶
type ArrayOfAttendeeConflictData struct { UnknownAttendeeConflictData string `xml:"UnknownAttendeeConflictData"` IndividualAttendeeConflictData string `xml:"IndividualAttendeeConflictData"` TooBigGroupAttendeeConflictData string `xml:"TooBigGroupAttendeeConflictData"` GroupAttendeeConflictData GroupAttendeeConflictData `xml:"GroupAttendeeConflictData"` }
type AttachmentId ¶
type AttachmentId struct {
Id string `xml:"Id,attr"`
}
type AttachmentItemMessage ¶
type AttachmentItemMessage struct {
AttachmentId AttachmentId `xml:"t:AttachmentId"`
}
type Attachments ¶
type Attachments struct {
FileAttachment []FileAttachment `xml:"FileAttachment"`
}
type AttendeeType ¶
type AttendeeType string
const ( AttendeeTypeOrganizer AttendeeType = "Organizer" AttendeeTypeRequired AttendeeType = "Required" AttendeeTypeOptional AttendeeType = "Optional" AttendeeTypeRoom AttendeeType = "Room" AttendeeTypeResource AttendeeType = "Resource" )
type BaseFiltering ¶
type BaseFiltering struct {
AdditionalProperties `xml:"t:FieldURI"`
}
type BooleanType ¶
type BooleanType bool
type BusinessPhoneNumbers ¶
type BusinessPhoneNumbers struct {
PhoneNumberAttributedValue PhoneNumberAttributedValue `xml:"PhoneNumberAttributedValue"`
}
type CalendarEvent ¶
type CalendarEvent struct { StartTime Time `xml:"StartTime"` EndTime Time `xml:"EndTime"` BusyType BusyType `xml:"BusyType"` CalendarEventDetails CalendarEventDetails `xml:"CalendarEventDetails"` }
type CalendarEventArray ¶
type CalendarEventArray struct {
CalendarEvent []CalendarEvent `xml:"CalendarEvent"`
}
type CalendarEventDetails ¶
type CalendarEventDetails struct { ID string `xml:"ID"` Subject string `xml:"Subject"` Location string `xml:"Location"` IsMeeting bool `xml:"IsMeeting"` IsRecurring bool `xml:"IsRecurring"` IsException bool `xml:"IsException"` IsReminderSet bool `xml:"IsReminderSet"` IsPrivate bool `xml:"IsPrivate"` }
type CalendarItem ¶
type CalendarItem struct { Subject string `xml:"t:Subject"` Body Body `xml:"t:Body"` ReminderIsSet bool `xml:"t:ReminderIsSet"` ReminderMinutesBeforeStart int `xml:"t:ReminderMinutesBeforeStart"` Start time.Time `xml:"t:Start"` End time.Time `xml:"t:End"` IsAllDayEvent bool `xml:"t:IsAllDayEvent"` LegacyFreeBusyStatus string `xml:"t:LegacyFreeBusyStatus"` Location string `xml:"t:Location"` RequiredAttendees []Attendees `xml:"t:RequiredAttendees"` OptionalAttendees []Attendees `xml:"t:OptionalAttendees"` Resources []Attendees `xml:"t:Resources"` }
type Client ¶
type Client interface { SendAndReceive(body []byte) ([]byte, error) GetEWSAddr() string GetUsername() string }
func NewClientWithLoginStrategy ¶ added in v1.1.4
func NewClientWithLoginStrategy(ewsAddr, email string, loginStrategy LoginStrategy, config *Config) Client
type Contains ¶
type Contains struct { BaseFiltering Constant []Constant `xml:"t:Constant,omitempty"` ContainmentMode string `xml:"ContainmentMode,attr"` ContainmentComparison string `xml:"ContainmentComparison,attr"` }
type CreateAttachments ¶
type CreateAttachments struct {
CreateFileAttachment []CreateFileAttachment `xml:"t:FileAttachment"`
}
type CreateFileAttachment ¶
type CreateItem ¶
type CreateItem struct { XMLName struct{} `xml:"m:CreateItem"` MessageDisposition string `xml:"MessageDisposition,attr"` SendMeetingInvitations string `xml:"SendMeetingInvitations,attr"` SavedItemFolderId SavedItemFolderId `xml:"m:SavedItemFolderId"` Items Items `xml:"m:Items"` }
type CreateItemResponse ¶
type CreateItemResponse struct {
ResponseMessages ResponseMessages `xml:"ResponseMessages"`
}
type DeleteItemMessage ¶
type DeleteItemMessage struct {
ItemId ItemId `xml:"t:ItemId"`
}
type DeleteItemRequest ¶
type DeleteItemRequest struct { XMLName struct{} `xml:"m:DeleteItem"` DeleteType string `xml:"DeleteType,attr"` Items []DeleteItemMessage `xml:"m:ItemIds"` }
type DeleteItemResponse ¶
type DeleteItemResponse struct {
DeleteItemResponseMessages DeleteItemResponseMessages `xml:"ResponseMessages"`
}
type DeleteItemResponseMessage ¶
type DeleteItemResponseMessage struct {
Response
}
type DeleteItemResponseMessages ¶
type DeleteItemResponseMessages struct {
DeleteItemResponseMessage DeleteItemResponseMessage `xml:"DeleteItemResponseMessage"`
}
type Departments ¶
type Departments struct {
StringAttributedValue StringAttributedValue `xml:"StringAttributedValue"`
}
type DistinguishedFolderId ¶
type DistinguishedFolderId struct { // List of values: // https://docs.microsoft.com/en-us/exchange/client-developer/web-service-reference/distinguishedfolderid Id string `xml:"Id,attr"` }
type EmailAddress ¶
type FieldURI ¶
type FieldURI struct { // List of possible values: // https://docs.microsoft.com/en-us/exchange/client-developer/web-service-reference/fielduri FieldURI string `xml:"FieldURI,attr,omitempty"` }
type FieldURIOrConstant ¶
type FieldURIOrConstant struct {
Constant []Constant `xml:"t:Constant,omitempty"`
}
type FileAttachment ¶
type FindItemMessage ¶
type FindItemRequest ¶
type FindItemRequest struct { XMLName struct{} `xml:"m:FindItem"` Traversal string `xml:"Traversal,attr"` ItemShape ItemShape `xml:"m:ItemShape"` IndexedPageItemView IndexedPageItemView `xml:"m:IndexedPageItemView"` ParentFolderIds ParentFolderIds `xml:"m:ParentFolderIds"` Restriction Restriction `xml:"m:Restriction"` }
type FindItemResponse ¶
type FindItemResponse struct {
FindItemResponseMessages FindItemResponseMessages `xml:"ResponseMessages"`
}
type FindItemResponseMessage ¶
type FindItemResponseMessage struct { Response RootFolder *RootFolder `xml:"RootFolder"` }
type FindItemResponseMessages ¶
type FindItemResponseMessages struct {
FindItemResponseMessage FindItemResponseMessage `xml:"FindItemResponseMessage"`
}
type FindItems ¶
type FindItems struct {
Message []FindItemMessage `xml:"Message"`
}
type FindPeopleRequest ¶
type FindPeopleRequest struct { XMLName struct{} `xml:"m:FindPeople"` PersonaShape *PersonaShape `xml:"m:PersonaShape,omitempty"` IndexedPageItemView IndexedPageItemView `xml:"m:IndexedPageItemView"` ParentFolderId ParentFolderId `xml:"m:ParentFolderId"` QueryString string `xml:"m:QueryString,omitempty"` }
type FindPeopleResponse ¶
type FindPeopleResponse struct { Response People People `xml:"People"` TotalNumberOfPeopleInView int `xml:"TotalNumberOfPeopleInView"` FirstMatchingRowIndex int `xml:"FirstMatchingRowIndex"` FirstLoadedRowIndex int `xml:"FirstLoadedRowIndex"` }
func FindPeople ¶
func FindPeople(c Client, r *FindPeopleRequest) (*FindPeopleResponse, error)
GetUserAvailability https://docs.microsoft.com/en-us/exchange/client-developer/web-service-reference/findpeople-operation
type FreeBusyResponse ¶
type FreeBusyResponse struct { ResponseMessage ResponseMessage `xml:"ResponseMessage"` FreeBusyView FreeBusyView `xml:"FreeBusyView"` }
type FreeBusyResponseArray ¶
type FreeBusyResponseArray struct {
FreeBusyResponse []FreeBusyResponse `xml:"FreeBusyResponse"`
}
type FreeBusyView ¶
type FreeBusyView struct { FreeBusyViewType string `xml:"FreeBusyViewType"` MergedFreeBusy string `xml:"MergedFreeBusy"` CalendarEventArray CalendarEventArray `xml:"CalendarEventArray"` WorkingHours WorkingHours `xml:"WorkingHours"` }
type FreeBusyViewOptions ¶
type FreeBusyViewOptions struct { TimeWindow TimeWindow `xml:"t:TimeWindow"` MergedFreeBusyIntervalInMinutes int `xml:"t:MergedFreeBusyIntervalInMinutes,omitempty"` RequestedView string `xml:"t:RequestedView"` }
type From ¶
type From struct {
Mailbox []GetItemEmailAddress `xml:"Mailbox"`
}
type GetAttachmentRequest ¶
type GetAttachmentRequest struct { XMLName struct{} `xml:"m:GetAttachment"` Items []AttachmentItemMessage `xml:"m:AttachmentIds"` }
type GetAttachmentResponse ¶
type GetAttachmentResponse struct {
GetAttachmentResponseMessages GetAttachmentResponseMessages `xml:"ResponseMessages"`
}
type GetAttachmentResponseMessage ¶
type GetAttachmentResponseMessage struct { Response Attachments GetAttachments `xml:"Attachments"` }
type GetAttachmentResponseMessages ¶
type GetAttachmentResponseMessages struct {
GetAttachmentResponseMessage GetAttachmentResponseMessage `xml:"GetAttachmentResponseMessage"`
}
type GetAttachments ¶ added in v1.1.2
type GetAttachments struct {
FileAttachment []GetFileAttachment `xml:"FileAttachment"`
}
type GetFileAttachment ¶ added in v1.1.2
type GetItemEmailAddress ¶
type GetItemMessage ¶
type GetItemMessage struct {
ItemId ItemId `xml:"t:ItemId"`
}
type GetItemRequest ¶
type GetItemRequest struct { XMLName struct{} `xml:"m:GetItem"` ItemShape GetItemShape `xml:"m:ItemShape"` Items []GetItemMessage `xml:"m:ItemIds"` }
type GetItemResponse ¶
type GetItemResponse struct {
GetItemResponseMessages GetItemResponseMessages `xml:"ResponseMessages"`
}
type GetItemResponseMessage ¶
type GetItemResponseMessages ¶
type GetItemResponseMessages struct {
GetItemResponseMessage GetItemResponseMessage `xml:"GetItemResponseMessage"`
}
type GetItemShape ¶
type GetItemShape struct { BaseShape BaseShape `xml:"t:BaseShape"` IncludeMimeContent BooleanType `xml:"t:IncludeMimeContent"` }
type GetItems ¶
type GetItems struct {
Message []ItemMessage `xml:"Message"`
}
type GetPersonaRequest ¶
type GetPersonaRequest struct { XMLName struct{} `xml:"m:GetPersona"` PersonaId PersonaId `xml:"m:PersonaId"` }
type GetPersonaResponse ¶
func GetPersona ¶
func GetPersona(c Client, r *GetPersonaRequest) (*GetPersonaResponse, error)
type GetRoomListsRequest ¶
type GetRoomListsRequest struct {
XMLName struct{} `xml:"m:GetRoomLists"`
}
type GetRoomListsResponse ¶
func GetRoomLists ¶
func GetRoomLists(c Client) (*GetRoomListsResponse, error)
type GetUserAvailabilityRequest ¶
type GetUserAvailabilityRequest struct { XMLName struct{} `xml:"m:GetUserAvailabilityRequest"` TimeZone TimeZone `xml:"t:TimeZone"` MailboxDataArray MailboxDataArray `xml:"m:MailboxDataArray"` FreeBusyViewOptions FreeBusyViewOptions `xml:"t:FreeBusyViewOptions"` }
type GetUserAvailabilityResponse ¶
type GetUserAvailabilityResponse struct { FreeBusyResponseArray FreeBusyResponseArray `xml:"FreeBusyResponseArray"` SuggestionsResponse SuggestionsResponse `xml:"SuggestionsResponse"` }
func GetUserAvailability ¶
func GetUserAvailability(c Client, r *GetUserAvailabilityRequest) (*GetUserAvailabilityResponse, error)
GetUserAvailability https://docs.microsoft.com/en-us/exchange/client-developer/web-service-reference/getuseravailability-operation
type GetUserPhotoRequest ¶
type GetUserPhotoResponse ¶
type GetUserPhotoResponse struct { Response HasChanged bool `xml:"HasChanged"` PictureData string `xml:"PictureData"` }
func GetUserPhoto ¶
func GetUserPhoto(c Client, r *GetUserPhotoRequest) (*GetUserPhotoResponse, error)
GetUserPhoto https://docs.microsoft.com/en-us/exchange/client-developer/web-service-reference/getuserphoto-operation
type IndexedPageItemView ¶
type IsEqualTo ¶
type IsEqualTo struct { BaseFiltering FieldURIOrConstant FieldURIOrConstant `xml:"t:FieldURIOrConstant"` }
type ItemMessage ¶
type ItemMessage struct { ItemId ItemId `xml:"ItemId"` Subject string `xml:"Subject"` MimeContent MimeContent `xml:"MimeContent"` Sensitivity string `xml:"Sensitivity"` Body EmailBody `xml:"Body"` Attachments Attachments `xml:"Attachments"` Size uint64 `xml:"Size"` DateTimeSent Time `xml:"DateTimeSent"` DateTimeCreated Time `xml:"DateTimeCreated"` HasAttachments BooleanType `xml:"HasAttachments"` IsAssociated BooleanType `xml:"IsAssociated"` ToRecipients From `xml:"ToRecipients"` IsReadReceiptRequested BooleanType `xml:"IsReadReceiptRequested"` IsDeliveryReceiptRequested BooleanType `xml:"IsDeliveryReceiptRequested"` From From `xml:"From"` IsRead BooleanType `xml:"IsRead"` }
type ItemShape ¶
type ItemShape struct { BaseShape BaseShape `xml:"t:BaseShape"` AdditionalProperties AdditionalProperties `xml:"t:AdditionalProperties"` }
type Items ¶
type Items struct { Message []Message `xml:"t:Message"` CalendarItem []CalendarItem `xml:"t:CalendarItem"` }
type LoginStrategy ¶ added in v1.1.4
type MailboxData ¶
type MailboxData struct { Email Email `xml:"t:Email"` AttendeeType AttendeeType `xml:"t:AttendeeType"` ExcludeConflicts bool `xml:"t:ExcludeConflicts"` }
type MailboxDataArray ¶
type MailboxDataArray struct {
MailboxData []MailboxData `xml:"t:MailboxData"`
}
type Message ¶
type Message struct { ItemClass string `xml:"t:ItemClass"` Subject string `xml:"t:Subject"` Body Body `xml:"t:Body"` Sender OneMailbox `xml:"t:Sender"` ToRecipients XMailbox `xml:"t:ToRecipients"` Attachments *CreateAttachments `xml:"t:Attachments"` }
type MessageXml ¶
type MimeContent ¶
type MobilePhones ¶
type MobilePhones struct {
PhoneNumberAttributedValue PhoneNumberAttributedValue `xml:"PhoneNumberAttributedValue"`
}
type OfficeLocations ¶
type OfficeLocations struct {
StringAttributedValue StringAttributedValue `xml:"StringAttributedValue"`
}
type OneMailbox ¶
type OneMailbox struct {
Mailbox Mailbox `xml:"t:Mailbox"`
}
type ParentFolderId ¶
type ParentFolderId struct {
DistinguishedFolderId DistinguishedFolderId `xml:"t:DistinguishedFolderId"`
}
type ParentFolderIds ¶
type ParentFolderIds struct {
DistinguishedFolderId DistinguishedFolderId `xml:"t:DistinguishedFolderId"`
}
type Persona ¶
type Persona struct { PersonaId PersonaId `xml:"PersonaId"` DisplayName string `xml:"DisplayName"` Title string `xml:"Title"` Department string `xml:"Department"` Departments Departments `xml:"Departments"` EmailAddress EmailAddress `xml:"EmailAddress"` RelevanceScore int `xml:"RelevanceScore"` BusinessPhoneNumbers BusinessPhoneNumbers `xml:"BusinessPhoneNumbers"` MobilePhones MobilePhones `xml:"MobilePhones"` OfficeLocations OfficeLocations `xml:"OfficeLocations"` }
type PersonaShape ¶
type PersonaShape struct { BaseShape BaseShape `xml:"t:BaseShape,omitempty"` AdditionalProperties AdditionalProperties `xml:"t:AdditionalProperties,omitempty"` }
type PhoneNumberAttributedValue ¶
type PhoneNumberAttributedValue struct {
Value Value `json:"Value"`
}
type PlainLogin ¶ added in v1.1.4
func (PlainLogin) SetLoginHeaders ¶ added in v1.1.4
func (p PlainLogin) SetLoginHeaders(req *http.Request)
type Response ¶
type Response struct { ResponseClass ResponseClass `xml:"ResponseClass,attr"` MessageText string `xml:"MessageText"` ResponseCode string `xml:"ResponseCode"` MessageXml MessageXml `xml:"MessageXml"` }
type ResponseClass ¶
type ResponseClass string
const ( ResponseClassSuccess ResponseClass = "Success" ResponseClassWarning ResponseClass = "Warning" ResponseClassError ResponseClass = "Error" )
type ResponseMessage ¶
type ResponseMessages ¶
type ResponseMessages struct {
CreateItemResponseMessage Response `xml:"CreateItemResponseMessage"`
}
type Restriction ¶
type RoomLists ¶
type RoomLists struct {
Address []EmailAddress `xml:"Address"`
}
type RootFolder ¶
type SavedItemFolderId ¶
type SavedItemFolderId struct {
DistinguishedFolderId DistinguishedFolderId `xml:"t:DistinguishedFolderId"`
}
type StringAttributedValue ¶
type StringAttributedValue struct {
Value string `json:"Value"`
}
type Suggestion ¶
type Suggestion struct { MeetingTime time.Time `xml:"MeetingTime"` IsWorkTime bool `xml:"IsWorkTime"` SuggestionQuality string `xml:"SuggestionQuality"` ArrayOfAttendeeConflictData ArrayOfAttendeeConflictData `xml:"ArrayOfAttendeeConflictData"` }
type SuggestionArray ¶
type SuggestionArray struct {
Suggestion []Suggestion `xml:"Suggestion"`
}
type SuggestionDayResult ¶
type SuggestionDayResult struct { Date time.Time `xml:"Date"` DayQuality string `xml:"DayQuality"` SuggestionArray SuggestionArray `xml:"SuggestionArray"` }
type SuggestionDayResultArray ¶
type SuggestionDayResultArray struct {
SuggestionDayResult []SuggestionDayResult `xml:"SuggestionDayResult"`
}
type SuggestionsResponse ¶
type SuggestionsResponse struct { ResponseMessage ResponseMessage `xml:"ResponseMessage"` SuggestionDayResultArray SuggestionDayResultArray `xml:"SuggestionDayResultArray"` }
type TimeWindow ¶
type TimeZone ¶
type TimeZone struct { Bias int `xml:"t:Bias"` StandardTime TimeZoneTime `xml:"t:StandardTime"` DaylightTime TimeZoneTime `xml:"t:DaylightTime"` }
type TimeZoneTime ¶
type WorkingHours ¶
type WorkingHours struct { TimeZone TimeZone `xml:"TimeZone"` WorkingPeriodArray WorkingPeriodArray `xml:"WorkingPeriodArray"` }
type WorkingPeriod ¶
type WorkingPeriodArray ¶
type WorkingPeriodArray struct {
WorkingPeriod []WorkingPeriod `xml:"WorkingPeriod"`
}
type XOAuthLogin ¶ added in v1.1.4
type XOAuthLogin struct{ Token string }
func (XOAuthLogin) SetLoginHeaders ¶ added in v1.1.4
func (p XOAuthLogin) SetLoginHeaders(req *http.Request)
Source Files ¶
Click to show internal directories.
Click to hide internal directories.