Documentation ¶
Overview ¶
Package rescuetime provides a Golang library for the RescueTime API
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AnalyticData ¶
type AnalyticData struct { Notes string `json:"notes"` RowHeaders []string `json:"row_headers"` Rows []row `json:"rows"` Parameters *AnalyticDataQueryParameters `json:"-,omitempty"` }
AnalyticData describes an Analytic Data API result
type AnalyticDataQueryParameters ¶
type AnalyticDataQueryParameters struct { Perspective string `field_name:"perspective"` ResolutionTime string `field_name:"resolution_time"` RestrictGroup string `field_name:"restrict_group"` RestrictBegin string `field_name:"restrict_begin"` RestrictEnd string `field_name:"restrict_end"` RestrictKind string `field_name:"restrict_kind"` RestrictThing string `field_name:"restrict_thing"` RestrictThingy string `field_name:"restrict_thingy"` }
AnalyticDataQueryParameters is used to provide parameters to the Analytic Data API
type DailySummary ¶
type DailySummary struct { AllDistractingDurationFormatted string `json:"all_distracting_duration_formatted"` AllDistractingHours float64 `json:"all_distracting_hours"` AllDistractingPercentage float64 `json:"all_distracting_percentage"` AllProductiveDurationFormatted string `json:"all_productive_duration_formatted"` AllProductiveHours float64 `json:"all_productive_hours"` AllProductivePercentage float64 `json:"all_productive_percentage"` BusinessDurationFormatted string `json:"business_duration_formatted"` BusinessHours float64 `json:"business_hours"` BusinessPercentage float64 `json:"business_percentage"` CommunicationAndSchedulingDurationFormatted string `json:"communication_and_scheduling_duration_formatted"` CommunicationAndSchedulingHours float64 `json:"communication_and_scheduling_hours"` CommunicationAndSchedulingPercentage float64 `json:"communication_and_scheduling_percentage"` Date string `json:"date"` DesignAndCompositionDurationFormatted string `json:"design_and_composition_duration_formatted"` DesignAndCompositionHours float64 `json:"design_and_composition_hours"` DesignAndCompositionPercentage float64 `json:"design_and_composition_percentage"` DistractingDurationFormatted string `json:"distracting_duration_formatted"` DistractingHours float64 `json:"distracting_hours"` DistractingPercentage float64 `json:"distracting_percentage"` EntertainmentDurationFormatted string `json:"entertainment_duration_formatted"` EntertainmentHours float64 `json:"entertainment_hours"` EntertainmentPercentage float64 `json:"entertainment_percentage"` ID float64 `json:"id"` NeutralDurationFormatted string `json:"neutral_duration_formatted"` NeutralHours float64 `json:"neutral_hours"` NeutralPercentage float64 `json:"neutral_percentage"` NewsDurationFormatted string `json:"news_duration_formatted"` NewsHours float64 `json:"news_hours"` NewsPercentage float64 `json:"news_percentage"` ProductiveDurationFormatted string `json:"productive_duration_formatted"` ProductiveHours float64 `json:"productive_hours"` ProductivePercentage float64 `json:"productive_percentage"` ProductivityPulse float64 `json:"productivity_pulse"` ReferenceAndLearningDurationFormatted string `json:"reference_and_learning_duration_formatted"` ReferenceAndLearningHours float64 `json:"reference_and_learning_hours"` ReferenceAndLearningPercentage float64 `json:"reference_and_learning_percentage"` ShoppingDurationFormatted string `json:"shopping_duration_formatted"` ShoppingHours float64 `json:"shopping_hours"` ShoppingPercentage float64 `json:"shopping_percentage"` SocialNetworkingDurationFormatted string `json:"social_networking_duration_formatted"` SocialNetworkingHours float64 `json:"social_networking_hours"` SocialNetworkingPercentage float64 `json:"social_networking_percentage"` SoftwareDevelopmentDurationFormatted string `json:"software_development_duration_formatted"` SoftwareDevelopmentHours float64 `json:"software_development_hours"` SoftwareDevelopmentPercentage float64 `json:"software_development_percentage"` TotalDurationFormatted string `json:"total_duration_formatted"` TotalHours float64 `json:"total_hours"` UncategorizedDurationFormatted string `json:"uncategorized_duration_formatted"` UncategorizedHours float64 `json:"uncategorized_hours"` UncategorizedPercentage float64 `json:"uncategorized_percentage"` UtilitiesDurationFormatted string `json:"utilities_duration_formatted"` UtilitiesHours float64 `json:"utilities_hours"` UtilitiesPercentage float64 `json:"utilities_percentage"` VeryDistractingDurationFormatted string `json:"very_distracting_duration_formatted"` VeryDistractingHours float64 `json:"very_distracting_hours"` VeryDistractingPercentage float64 `json:"very_distracting_percentage"` VeryProductiveDurationFormatted string `json:"very_productive_duration_formatted"` VeryProductiveHours float64 `json:"very_productive_hours"` VeryProductivePercentage float64 `json:"very_productive_percentage"` }
DailySummary is a users summary for a single day
type RescueTime ¶
type RescueTime struct {
APIKey string
}
RescueTime contains the user's API key
func (*RescueTime) GetAnalyticData ¶
func (r *RescueTime) GetAnalyticData(timezone string, parameters *AnalyticDataQueryParameters) (AnalyticData, error)
GetAnalyticData makes a request to the Analytic Data API with the provided parameters. If a timezone is given, all dates will be located in the given timezone, otherwise system's local timezone.
func (*RescueTime) GetDailySummary ¶
func (r *RescueTime) GetDailySummary() ([]DailySummary, error)
GetDailySummary returns the last two weeks of daily summaries for the user. It does not include the current day, and new summaries for the previous day are available at 12:01 am in the user’s local time zone.