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.