Documentation
¶
Overview ¶
Provides a client for interacting with the Bittorrent Sync API.
Index ¶
- type BTSyncAPI
- func (api *BTSyncAPI) AddFolder(folder string) (*Response, error)
- func (api *BTSyncAPI) AddFolderWithSecret(folder string, secret string) (response *Response, err error)
- func (api *BTSyncAPI) GetFiles(secret string) (*GetFilesResponse, error)
- func (api *BTSyncAPI) GetFilesForPath(secret string, path string) (response *GetFilesResponse, err error)
- func (api *BTSyncAPI) GetFolder(secret string) (response *GetFoldersResponse, err error)
- func (api *BTSyncAPI) GetFolderHosts(secret string) (response *GetFolderHostsResponse, err error)
- func (api *BTSyncAPI) GetFolderPeers(secret string) (response *GetFolderPeersResponse, err error)
- func (api *BTSyncAPI) GetFolderPrefs(secret string) (response *GetFolderPrefsResponse, err error)
- func (api *BTSyncAPI) GetFolders() (*GetFoldersResponse, error)
- func (api *BTSyncAPI) GetOS() (response *GetOSResponse, err error)
- func (api *BTSyncAPI) GetPreferences() (response *GetPreferencesResponse, err error)
- func (api *BTSyncAPI) GetSecrets(encryption bool) (response *GetSecretsResponse, err error)
- func (api *BTSyncAPI) GetSecretsForSecret(secret string) (response *GetSecretsResponse, err error)
- func (api *BTSyncAPI) GetSpeed() (response *GetSpeedResponse, err error)
- func (api *BTSyncAPI) GetVersion() (response *GetVersionResponse, err error)
- func (api *BTSyncAPI) RemoveFolder(secret string) (response *Response, err error)
- func (api *BTSyncAPI) Request(method string, args map[string]string) *Request
- func (api *BTSyncAPI) SetFilePrefs(secret string, path string, download int) (response *SetFilePrefsResponse, err error)
- func (api *BTSyncAPI) SetFolderHosts(secret string, hosts []string) (response *Response, err error)
- func (api *BTSyncAPI) SetFolderPrefs(secret string, prefs *FolderPreferences) (response *SetFolderPrefsResponse, err error)
- func (api *BTSyncAPI) SetPreferences(prefs Preferences) (response *Response, err error)
- type File
- type Folder
- type FolderPreferences
- type GetFilesResponse
- type GetFolderHostsResponse
- type GetFolderPeersResponse
- type GetFolderPrefsResponse
- type GetFoldersResponse
- type GetOSResponse
- type GetPreferencesResponse
- type GetSecretsResponse
- type GetSpeedResponse
- type GetVersionResponse
- type Peer
- type Preferences
- type Request
- type Response
- type SetFilePrefsResponse
- type SetFolderPrefsResponse
- Bugs
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BTSyncAPI ¶
type BTSyncAPI struct {
Username string
Password string
Port int
Endpoint string
Debug bool
Logger *log.Logger
}
Client used to connect to the Bittorrent Sync API.
func (*BTSyncAPI) AddFolderWithSecret ¶
func (api *BTSyncAPI) AddFolderWithSecret(folder string, secret string) (response *Response, err error)
Add a folder to Sync with the given secret.
func (*BTSyncAPI) GetFiles ¶
func (api *BTSyncAPI) GetFiles(secret string) (*GetFilesResponse, error)
Get a list of all files for a folder.
func (*BTSyncAPI) GetFilesForPath ¶
func (api *BTSyncAPI) GetFilesForPath(secret string, path string) (response *GetFilesResponse, err error)
Get a list of all files for the given secret under the given path.
func (*BTSyncAPI) GetFolder ¶
func (api *BTSyncAPI) GetFolder(secret string) (response *GetFoldersResponse, err error)
Get information about a folder.
func (*BTSyncAPI) GetFolderHosts ¶
func (api *BTSyncAPI) GetFolderHosts(secret string) (response *GetFolderHostsResponse, err error)
Get a list of hosts for a folder.
func (*BTSyncAPI) GetFolderPeers ¶
func (api *BTSyncAPI) GetFolderPeers(secret string) (response *GetFolderPeersResponse, err error)
Get a list of all peers for a folder.
func (*BTSyncAPI) GetFolderPrefs ¶
func (api *BTSyncAPI) GetFolderPrefs(secret string) (response *GetFolderPrefsResponse, err error)
Get preferences for a folder.
func (*BTSyncAPI) GetFolders ¶
func (api *BTSyncAPI) GetFolders() (*GetFoldersResponse, error)
Get a list of all folders.
func (*BTSyncAPI) GetOS ¶
func (api *BTSyncAPI) GetOS() (response *GetOSResponse, err error)
Get name of OS.
func (*BTSyncAPI) GetPreferences ¶
func (api *BTSyncAPI) GetPreferences() (response *GetPreferencesResponse, err error)
Get Sync preferences.
func (*BTSyncAPI) GetSecrets ¶
func (api *BTSyncAPI) GetSecrets(encryption bool) (response *GetSecretsResponse, err error)
Generate new secrets.
func (*BTSyncAPI) GetSecretsForSecret ¶
func (api *BTSyncAPI) GetSecretsForSecret(secret string) (response *GetSecretsResponse, err error)
Get the secrets for a folder.
func (*BTSyncAPI) GetSpeed ¶
func (api *BTSyncAPI) GetSpeed() (response *GetSpeedResponse, err error)
Get current upload and download speed.
func (*BTSyncAPI) GetVersion ¶
func (api *BTSyncAPI) GetVersion() (response *GetVersionResponse, err error)
Get Bittorrent Sync version.
func (*BTSyncAPI) RemoveFolder ¶
Remove a folder from Sync using its secret.
func (*BTSyncAPI) Request ¶
Make a request to the API. Requires the method name and a map of query string parameters.
func (*BTSyncAPI) SetFilePrefs ¶
func (api *BTSyncAPI) SetFilePrefs(secret string, path string, download int) (response *SetFilePrefsResponse, err error)
Set preferences for a file.
func (*BTSyncAPI) SetFolderHosts ¶
Set the list of hosts for a folder.
func (*BTSyncAPI) SetFolderPrefs ¶
func (api *BTSyncAPI) SetFolderPrefs(secret string, prefs *FolderPreferences) (response *SetFolderPrefsResponse, err error)
Set preferences for a folder.
func (*BTSyncAPI) SetPreferences ¶
func (api *BTSyncAPI) SetPreferences(prefs Preferences) (response *Response, err error)
Set Sync preferences.
type FolderPreferences ¶
type GetFilesResponse ¶
type GetFilesResponse []File
type GetFolderHostsResponse ¶
type GetFolderPeersResponse ¶
type GetFolderPeersResponse []Peer
type GetFolderPrefsResponse ¶
type GetFolderPrefsResponse FolderPreferences
type GetFoldersResponse ¶
type GetFoldersResponse []Folder
type GetOSResponse ¶
type GetOSResponse struct {
Name string `json:"os"`
}
type GetPreferencesResponse ¶
type GetPreferencesResponse Preferences
type GetSecretsResponse ¶
type GetSpeedResponse ¶
type GetVersionResponse ¶
type GetVersionResponse struct {
Version string `json:"version"`
}
type Preferences ¶
type Preferences struct {
DeviceName string `json:"device_name"`
DiskLowPriority bool `json:"disk_low_priority"`
DownloadLimit int `json:"download_limit"`
FolderRescanInterval int `json:"folder_rescan_interval"`
LANEncryptData bool `json:"lan_encrypt_data"`
LANUseTCP bool `json:"lan_use_tcp"`
Lang int `json:"lang"`
ListeningPort int `json:"listening_port"`
MaxFileSizeDiffForPatching int64 `json:"max_file_size_diff_for_patching"`
MaxFileSizeForVersioning int64 `json:"max_file_size_for_versioning"`
RateLimitLocalPeers bool `json:"rate_limit_local_peers"`
ReadPoolSize int64 `json:"read_pool_size"`
SyncMaxTimeDiff int64 `json:"sync_max_time_diff"`
SyncTrashTTL int64 `json:"sync_trash_ttl"`
UploadLimit int64 `json:"upload_limit"`
UseUPnP int `json:"use_upnp"`
WritePoolSize int `json:"write_pool_size"`
}
type Request ¶
func (*Request) GetResponse ¶
type SetFilePrefsResponse ¶
type SetFilePrefsResponse []File
type SetFolderPrefsResponse ¶
type SetFolderPrefsResponse FolderPreferences
Notes ¶
Bugs ¶
Currently nothing to handle the case where Basic Auth fails.