Skip to content

mannixsuo/vcalender

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RFC5445 simple client implication in go

see https://tools.ietf.org/html/rfc5545

todo list:

  • Value Types
    • Binary
    • Boolean
    • Calendar User Address
    • Date
    • Date-Time
    • Duration
    • Float
    • Integer
    • Period of Time
    • Recurrence Rule
    • Text
    • Time
    • URI
    • UTC Offset
  • Property Parameters
    • Alternate Text Representation
    • Common Name
    • Calendar User Type
    • Delegators
    • Delegatees
    • Directory Entry Reference
    • Inline Encoding
    • Format Type
    • Free/Busy Time Type
    • Language
    • Group or List Membership
    • Participation Status
    • Recurrence Identifier Range
    • Alarm Trigger Relationship
    • Relationship Type
    • Participation Role
    • RSVP Expectation
    • Sent By
    • Time Zone Identifier
    • Value Data Types
  • Component Properties
    • Descriptive Component Properties
      • Attachment
      • Categories
      • Classification
      • Comment
      • Description
      • Geographic Position
      • Location
      • Percent Complete
      • Priority
      • Resources
      • Status
    • Date and Time Component Properties
      • Date-Time Completed
      • Date-Time End
      • Date-Time Due
      • Date-Time Start
      • Duration
      • Free/Busy Time
      • Time Transparency
    • Time Zone Component Properties
      • Time Zone Identifier
      • Time Zone Name
      • Time Zone Offset From
      • Time Zone Offset To
      • Time Zone URL
    • Relationship Component Properties
      • Attendee
      • Contact
      • Organizer
      • Recurrence ID
      • Related To
      • Uniform Resource Locator
      • Unique Identifier
    • Recurrence Component Properties
      • Exception Date-Times
      • Recurrence Date-Times
      • Recurrence Rule
    • Alarm Component Properties
      • Action
      • Repeat Count
      • Trigger
    • Change Management Component Properties
      • Date-Time Created
      • Date-Time Stamp
      • Last Modified
      • Sequence Number
    • Miscellaneous Component Properties
      • IANA Properties
      • Non-Standard Properties
      • Request Status
  • EVENT
  • TO-DO
  • JOURNAL
  • FREE/BUSY
  • TIME ZONE
  • Calender
  • Error-check

Usage:

	//       BEGIN:VCALENDAR
	//       VERSION:2.0
	//       PRODID:-//hacksw/handcal//NONSGML v1.0//EN
	//       BEGIN:VEVENT
	//       UID:19970610T172345Z-AF23B2@example.com
	//       DTSTAMP:19970610T172345Z
	//       DTSTART:19970714T170000Z
	//       DTEND:19970715T040000Z
	//       SUMMARY:Bastille Day Party
	//       END:VEVENT
	//       END:VCALENDAR
	c := Calendar{
		ProdId:  property.NewProductIdentifier("-//hacksw/handcal//NONSGML v1.0//EN"),
		Version: &property.Version2,
		Components: []components.Component{
			&components.Event{
				DtStamp: changemanage.NewDtStamp(1997, 6, 10, 17, 23, 45),
				Uid:     relationship.NewUid("19970610T172345Z-AF23B2@example.com"),
				DtStart: datetime.NewDateStartWithDatetime(1997, 7, 14, 17, 0, 0),
				Summary: descriptive.NewSummary("Bastille Day Party"),
				DtEnd:   datetime.NewDateTimeDateEnd(1997, 7, 15, 4, 0, 0),
			},
		},
	}
	calendar, _ := c.Calendar()
	fmt.Println(calendar)

About

RFC5445 simple client implication in golang

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages