Given that this isn't _exactly_ python code (it's meant to represent a console), remove python highlighting.

This commit is contained in:
Adam Coddington 2013-10-11 18:47:46 -07:00
parent 7ee870c329
commit 91179a00a9

View file

@ -8,7 +8,7 @@ At its core, PyiCloud connects to iCloud using your username and password, then
Authentication is as simple as passing your username and password to the `PyiCloudService` class: Authentication is as simple as passing your username and password to the `PyiCloudService` class:
```python ```
>>> from pyicloud import PyiCloudService >>> from pyicloud import PyiCloudService
>>> api = PyiCloudService('jappleseed@apple.com', 'password') >>> api = PyiCloudService('jappleseed@apple.com', 'password')
``` ```
@ -19,7 +19,7 @@ In the event that the username/password combination is invalid, a `PyiCloudFaile
You can list which devices associated with your account by using the `devices` property: You can list which devices associated with your account by using the `devices` property:
```python ```
>>> api.devices >>> api.devices
{ {
u'i9vbKRGIcLYqJnXMd1b257kUWnoyEBcEh6yM+IfmiMLh7BmOpALS+w==': <AppleDevice(iPhone 4S: Johnny Appleseed's iPhone)>, u'i9vbKRGIcLYqJnXMd1b257kUWnoyEBcEh6yM+IfmiMLh7BmOpALS+w==': <AppleDevice(iPhone 4S: Johnny Appleseed's iPhone)>,
@ -29,7 +29,7 @@ u'reGYDh9XwqNWTGIhNBuEwP1ds0F/Lg5t/fxNbI4V939hhXawByErk+HYVNSUzmWV': <AppleDevic
and you can access individual devices by either their index, or their ID: and you can access individual devices by either their index, or their ID:
```python ```
>>> api.devices[0] >>> api.devices[0]
<AppleDevice(iPhone 4S: Johnny Appleseed's iPhone)> <AppleDevice(iPhone 4S: Johnny Appleseed's iPhone)>
>>> api.devices['i9vbKRGIcLYqJnXMd1b257kUWnoyEBcEh6yM+IfmiMLh7BmOpALS+w=='] >>> api.devices['i9vbKRGIcLYqJnXMd1b257kUWnoyEBcEh6yM+IfmiMLh7BmOpALS+w==']
@ -38,7 +38,7 @@ and you can access individual devices by either their index, or their ID:
or, as a shorthand if you have only one associated apple device, you can simply use the `iphone` property to access the first device associated with your account: or, as a shorthand if you have only one associated apple device, you can simply use the `iphone` property to access the first device associated with your account:
```python ```
>>> api.iphone >>> api.iphone
<AppleDevice(iPhone 4S: Johnny Appleseed's iPhone)> <AppleDevice(iPhone 4S: Johnny Appleseed's iPhone)>
``` ```
@ -53,7 +53,7 @@ Once you have successfully authenticated, you can start querying your data!
Returns the device's last known location. The Find My iPhone app must have been installed and initialized. Returns the device's last known location. The Find My iPhone app must have been installed and initialized.
```python ```
>>> api.iphone.location() >>> api.iphone.location()
{u'timeStamp': 1357753796553, u'locationFinished': True, u'longitude': -0.14189, u'positionType': u'GPS', u'locationType': None, u'latitude': 51.501364, u'isOld': False, u'horizontalAccuracy': 5.0} {u'timeStamp': 1357753796553, u'locationFinished': True, u'longitude': -0.14189, u'positionType': u'GPS', u'locationType': None, u'latitude': 51.501364, u'isOld': False, u'horizontalAccuracy': 5.0}
``` ```
@ -62,7 +62,7 @@ Returns the device's last known location. The Find My iPhone app must have been
The Find My iPhone response is quite bloated, so for simplicity's sake this method will return a subset of the properties. The Find My iPhone response is quite bloated, so for simplicity's sake this method will return a subset of the properties.
```python ```
>>> api.iphone.status() >>> api.iphone.status()
{'deviceDisplayName': u'iPhone 5', 'deviceStatus': u'200', 'batteryLevel': 0.6166913, 'name': u"Peter's iPhone"} {'deviceDisplayName': u'iPhone 5', 'deviceStatus': u'200', 'batteryLevel': 0.6166913, 'name': u"Peter's iPhone"}
``` ```
@ -73,7 +73,7 @@ If you wish to request further properties, you may do so by passing in a list of
Sends a request to the device to play a sound, if you wish pass a custom message you can do so by changing the subject arg. Sends a request to the device to play a sound, if you wish pass a custom message you can do so by changing the subject arg.
```python ```
>>> api.iphone.play_sound() >>> api.iphone.play_sound()
``` ```
@ -83,7 +83,7 @@ A few moments later, the device will play a ringtone, display the default notifi
Lost mode is slightly different to the "Play Sound" functionality in that it allows the person who picks up the phone to call a specific phone number *without having to enter the passcode*. Just like "Play Sound" you may pass a custom message which the device will display, if it's not overriden the custom message of "This iPhone has been lost. Please call me." is used. Lost mode is slightly different to the "Play Sound" functionality in that it allows the person who picks up the phone to call a specific phone number *without having to enter the passcode*. Just like "Play Sound" you may pass a custom message which the device will display, if it's not overriden the custom message of "This iPhone has been lost. Please call me." is used.
```python ```
>>> phone_number = '555-373-383' >>> phone_number = '555-373-383'
>>> message = 'Thief! Return my phone immediately.' >>> message = 'Thief! Return my phone immediately.'
>>> api.iphone.lost_device(phone_number, message) >>> api.iphone.lost_device(phone_number, message)
@ -97,13 +97,13 @@ The calendar webservice currently only supports fetching events.
Returns this month's events: Returns this month's events:
```python ```
api.calendar.events() api.calendar.events()
``` ```
Or, between a specific date range: Or, between a specific date range:
```python ```
from_dt = datetime(2012, 1, 1) from_dt = datetime(2012, 1, 1)
to_dt = datetime(2012, 1, 31) to_dt = datetime(2012, 1, 31)
api.calendar.events(from_dt, to_dt) api.calendar.events(from_dt, to_dt)
@ -113,7 +113,7 @@ api.calendar.events(from_dt, to_dt)
You can access documents stored in your iCloud account by using the `files` property's `dir` method: You can access documents stored in your iCloud account by using the `files` property's `dir` method:
```python ```
>>> api.files.dir() >>> api.files.dir()
[u'.do-not-delete', [u'.do-not-delete',
u'.localized', u'.localized',
@ -127,7 +127,7 @@ You can access documents stored in your iCloud account by using the `files` prop
You can access children and their children's children using the filename as an index: You can access children and their children's children using the filename as an index:
```python ```
>>> api.files['com~apple~Notes'] >>> api.files['com~apple~Notes']
<Folder: u'com~apple~Notes'> <Folder: u'com~apple~Notes'>
>>> api.files['com~apple~Notes'].type >>> api.files['com~apple~Notes'].type
@ -148,7 +148,7 @@ u'file'
And when you have a file that you'd like to download, the `open` method will return a response object from which you can read the `content`. And when you have a file that you'd like to download, the `open` method will return a response object from which you can read the `content`.
```python ```
>>> api.files['com~apple~Notes']['Documents']['Some Document'].open().content >>> api.files['com~apple~Notes']['Documents']['Some Document'].open().content
'Hello, these are the file contents' 'Hello, these are the file contents'
``` ```
@ -157,7 +157,7 @@ Note: the object returned from the above `open` method is a [response object](ht
For example, if you know that the file you're opening has JSON content: For example, if you know that the file you're opening has JSON content:
```python ```
>>> api.files['com~apple~Notes']['Documents']['information.json'].open().json() >>> api.files['com~apple~Notes']['Documents']['information.json'].open().json()
{'How much we love you': 'lots'} {'How much we love you': 'lots'}
>>> api.files['com~apple~Notes']['Documents']['information.json'].open().json()['How much we love you'] >>> api.files['com~apple~Notes']['Documents']['information.json'].open().json()['How much we love you']
@ -166,7 +166,7 @@ For example, if you know that the file you're opening has JSON content:
Or, if you're downloading a particularly large file, you may want to use the `stream` keyword argument, and read directly from the raw response object: Or, if you're downloading a particularly large file, you may want to use the `stream` keyword argument, and read directly from the raw response object:
```python ```
>>> download = api.files['com~apple~Notes']['Documents']['big_file.zip'].open(stream=True) >>> download = api.files['com~apple~Notes']['Documents']['big_file.zip'].open(stream=True)
>>> with open('downloaded_file.zip', 'wb') as opened_file: >>> with open('downloaded_file.zip', 'wb') as opened_file:
opened_file.write(download.raw.read()) opened_file.write(download.raw.read())