foscam-ruby 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (51) hide show
  1. checksums.yaml +15 -0
  2. data/.gitignore +17 -0
  3. data/Gemfile +4 -0
  4. data/Guardfile +10 -0
  5. data/LICENSE.txt +22 -0
  6. data/README.md +29 -0
  7. data/Rakefile +1 -0
  8. data/foscam-ruby.gemspec +34 -0
  9. data/lib/foscam-ruby.rb +8 -0
  10. data/lib/foscam/client.rb +425 -0
  11. data/lib/foscam/version.rb +3 -0
  12. data/spec/fixtures/vcr/foscam_camera_control_brightness.yml +42 -0
  13. data/spec/fixtures/vcr/foscam_camera_control_contrast.yml +42 -0
  14. data/spec/fixtures/vcr/foscam_camera_control_mode.yml +42 -0
  15. data/spec/fixtures/vcr/foscam_camera_control_orientation.yml +42 -0
  16. data/spec/fixtures/vcr/foscam_camera_control_resolution.yml +42 -0
  17. data/spec/fixtures/vcr/foscam_comm_write.yml +42 -0
  18. data/spec/fixtures/vcr/foscam_decoder_control.yml +42 -0
  19. data/spec/fixtures/vcr/foscam_get_camera_params.yml +52 -0
  20. data/spec/fixtures/vcr/foscam_get_forbidden.yml +84 -0
  21. data/spec/fixtures/vcr/foscam_get_misc.yml +66 -0
  22. data/spec/fixtures/vcr/foscam_get_params.yml +428 -0
  23. data/spec/fixtures/vcr/foscam_get_status.yml +68 -0
  24. data/spec/fixtures/vcr/foscam_reboot.yml +42 -0
  25. data/spec/fixtures/vcr/foscam_restore_factory.yml +42 -0
  26. data/spec/fixtures/vcr/foscam_set_alarm.yml +42 -0
  27. data/spec/fixtures/vcr/foscam_set_alias.yml +42 -0
  28. data/spec/fixtures/vcr/foscam_set_datetime.yml +42 -0
  29. data/spec/fixtures/vcr/foscam_set_ddns.yml +40 -0
  30. data/spec/fixtures/vcr/foscam_set_decoder.yml +42 -0
  31. data/spec/fixtures/vcr/foscam_set_forbidden.yml +40 -0
  32. data/spec/fixtures/vcr/foscam_set_ftp.yml +42 -0
  33. data/spec/fixtures/vcr/foscam_set_mail.yml +40 -0
  34. data/spec/fixtures/vcr/foscam_set_misc.yml +105 -0
  35. data/spec/fixtures/vcr/foscam_set_network.yml +40 -0
  36. data/spec/fixtures/vcr/foscam_set_pppoe.yml +42 -0
  37. data/spec/fixtures/vcr/foscam_set_upnp.yml +42 -0
  38. data/spec/fixtures/vcr/foscam_set_user2.yml +40 -0
  39. data/spec/fixtures/vcr/foscam_set_user3.yml +40 -0
  40. data/spec/fixtures/vcr/foscam_set_user4.yml +40 -0
  41. data/spec/fixtures/vcr/foscam_set_user5.yml +40 -0
  42. data/spec/fixtures/vcr/foscam_set_user6.yml +40 -0
  43. data/spec/fixtures/vcr/foscam_set_user7.yml +40 -0
  44. data/spec/fixtures/vcr/foscam_set_user8.yml +40 -0
  45. data/spec/fixtures/vcr/foscam_set_wifi.yml +40 -0
  46. data/spec/fixtures/vcr/foscam_snapshot.yml +236 -0
  47. data/spec/fixtures/vcr/foscam_upgrade_firmware.yml +40 -0
  48. data/spec/fixtures/vcr/foscam_upgrade_htmls.yml +40 -0
  49. data/spec/foscam/client_spec.rb +1269 -0
  50. data/spec/spec_helper.rb +24 -0
  51. metadata +301 -0
@@ -0,0 +1,42 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://my_username:my_password@192.168.0.117/reboot.cgi
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ authorization:
11
+ - Basic Y3dhZGRpbmc6ZnY1MHhFZ0d3Ug==
12
+ accept-encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ accept:
15
+ - ! '*/*'
16
+ user-agent:
17
+ - Ruby
18
+ response:
19
+ status:
20
+ code: 200
21
+ message: OK
22
+ headers:
23
+ server:
24
+ - Netwave IP Camera
25
+ date:
26
+ - Tue, 13 Nov 2012 05:01:50 GMT
27
+ content-type:
28
+ - text/plain
29
+ content-length:
30
+ - '4'
31
+ cache-control:
32
+ - no-cache
33
+ connection:
34
+ - close
35
+ body:
36
+ encoding: US-ASCII
37
+ string: ! 'ok.
38
+
39
+ '
40
+ http_version: '1.1'
41
+ recorded_at: Tue, 13 Nov 2012 05:01:50 GMT
42
+ recorded_with: VCR 2.3.0
@@ -0,0 +1,42 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://my_username:my_password@192.168.0.117/restore_factory.cgi
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ authorization:
11
+ - Basic Y3dhZGRpbmc6ZnY1MHhFZ0d3Ug==
12
+ accept-encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ accept:
15
+ - ! '*/*'
16
+ user-agent:
17
+ - Ruby
18
+ response:
19
+ status:
20
+ code: 200
21
+ message: OK
22
+ headers:
23
+ server:
24
+ - Netwave IP Camera
25
+ date:
26
+ - Wed, 12 Dec 2012 02:34:03 GMT
27
+ content-type:
28
+ - text/plain
29
+ content-length:
30
+ - '4'
31
+ cache-control:
32
+ - no-cache
33
+ connection:
34
+ - close
35
+ body:
36
+ encoding: US-ASCII
37
+ string: ! 'ok.
38
+
39
+ '
40
+ http_version: '1.1'
41
+ recorded_at: Wed, 12 Dec 2012 02:34:03 GMT
42
+ recorded_with: VCR 2.3.0
@@ -0,0 +1,42 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://my_username:my_password@192.168.0.117/set_alarm.cgi?input_armed=0&iolinkage=0&mail=0&motion_armed=0&motion_sensitivity=3&upload_interval=0
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ authorization:
11
+ - Basic Y3dhZGRpbmc6ZnY1MHhFZ0d3Ug==
12
+ accept-encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ accept:
15
+ - ! '*/*'
16
+ user-agent:
17
+ - Ruby
18
+ response:
19
+ status:
20
+ code: 200
21
+ message: OK
22
+ headers:
23
+ server:
24
+ - Netwave IP Camera
25
+ date:
26
+ - Thu, 13 Dec 2012 01:58:23 GMT
27
+ content-type:
28
+ - text/plain
29
+ content-length:
30
+ - '4'
31
+ cache-control:
32
+ - no-cache
33
+ connection:
34
+ - close
35
+ body:
36
+ encoding: US-ASCII
37
+ string: ! 'ok.
38
+
39
+ '
40
+ http_version: '1.1'
41
+ recorded_at: Thu, 13 Dec 2012 01:58:24 GMT
42
+ recorded_with: VCR 2.3.0
@@ -0,0 +1,42 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://my_username:my_password@192.168.0.117/set_alias.cgi?alias=R2D2
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ authorization:
11
+ - Basic Y3dhZGRpbmc6ZnY1MHhFZ0d3Ug==
12
+ accept-encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ accept:
15
+ - ! '*/*'
16
+ user-agent:
17
+ - Ruby
18
+ response:
19
+ status:
20
+ code: 200
21
+ message: OK
22
+ headers:
23
+ server:
24
+ - Netwave IP Camera
25
+ date:
26
+ - Thu, 01 Jan 1970 00:19:22 GMT
27
+ content-type:
28
+ - text/plain
29
+ content-length:
30
+ - '4'
31
+ cache-control:
32
+ - no-cache
33
+ connection:
34
+ - close
35
+ body:
36
+ encoding: US-ASCII
37
+ string: ! 'ok.
38
+
39
+ '
40
+ http_version: '1.1'
41
+ recorded_at: Wed, 12 Dec 2012 03:15:34 GMT
42
+ recorded_with: VCR 2.3.0
@@ -0,0 +1,42 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://my_username:my_password@192.168.0.117/set_datetime.cgi?ntp_enable=1&ntp_svr=0.ca.pool.ntp.org&tz=18000
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ authorization:
11
+ - Basic Y3dhZGRpbmc6ZnY1MHhFZ0d3Ug==
12
+ accept-encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ accept:
15
+ - ! '*/*'
16
+ user-agent:
17
+ - Ruby
18
+ response:
19
+ status:
20
+ code: 200
21
+ message: OK
22
+ headers:
23
+ server:
24
+ - Netwave IP Camera
25
+ date:
26
+ - Thu, 01 Jan 1970 00:58:10 GMT
27
+ content-type:
28
+ - text/plain
29
+ content-length:
30
+ - '4'
31
+ cache-control:
32
+ - no-cache
33
+ connection:
34
+ - close
35
+ body:
36
+ encoding: US-ASCII
37
+ string: ! 'ok.
38
+
39
+ '
40
+ http_version: '1.1'
41
+ recorded_at: Wed, 12 Dec 2012 03:54:24 GMT
42
+ recorded_with: VCR 2.3.0
@@ -0,0 +1,40 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://my_username:my_password@192.168.0.117/set_ddns.cgi?host=hostname.dyndns.com&pwd=password&service=3&user=root
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ authorization:
11
+ - Basic Y3dhZGRpbmc6ZnY1MHhFZ0d3Ug==
12
+ accept-encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ accept:
15
+ - ! '*/*'
16
+ user-agent:
17
+ - Ruby
18
+ response:
19
+ status:
20
+ code: 200
21
+ message: OK
22
+ headers:
23
+ server:
24
+ - Netwave IP Camera
25
+ date:
26
+ - Thu, 13 Dec 2012 01:02:32 GMT
27
+ content-type:
28
+ - text/plain
29
+ content-length:
30
+ - '22'
31
+ cache-control:
32
+ - no-cache
33
+ connection:
34
+ - close
35
+ body:
36
+ encoding: US-ASCII
37
+ string: ! 'error: illegal params.'
38
+ http_version: '1.1'
39
+ recorded_at: Thu, 13 Dec 2012 01:02:36 GMT
40
+ recorded_with: VCR 2.3.0
@@ -0,0 +1,42 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://my_username:my_password@192.168.0.117/set_decoder.cgi?baud=9
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ authorization:
11
+ - Basic Y3dhZGRpbmc6ZnY1MHhFZ0d3Ug==
12
+ accept-encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ accept:
15
+ - ! '*/*'
16
+ user-agent:
17
+ - Ruby
18
+ response:
19
+ status:
20
+ code: 200
21
+ message: OK
22
+ headers:
23
+ server:
24
+ - Netwave IP Camera
25
+ date:
26
+ - Thu, 01 Jan 1970 00:05:43 GMT
27
+ content-type:
28
+ - text/plain
29
+ content-length:
30
+ - '4'
31
+ cache-control:
32
+ - no-cache
33
+ connection:
34
+ - close
35
+ body:
36
+ encoding: US-ASCII
37
+ string: ! 'ok.
38
+
39
+ '
40
+ http_version: '1.1'
41
+ recorded_at: Wed, 12 Dec 2012 03:01:53 GMT
42
+ recorded_with: VCR 2.3.0
@@ -0,0 +1,40 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://my_username:my_password@192.168.0.117/set_forbidden.cgi?schedule_fri_0=95&schedule_fri_1=45&schedule_fri_2=20&schedule_mon_0=95&schedule_mon_1=45&schedule_mon_2=20&schedule_sat_0=95&schedule_sat_1=45&schedule_sat_2=20&schedule_sun_0=95&schedule_sun_1=45&schedule_sun_2=20&schedule_thu_0=95&schedule_thu_1=45&schedule_thu_2=20&schedule_tue_0=95&schedule_tue_1=45&schedule_tue_2=20&schedule_wed_0=95&schedule_wed_1=45&schedule_wed_2=20
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ authorization:
11
+ - Basic Y3dhZGRpbmc6ZnY1MHhFZ0d3Ug==
12
+ accept-encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ accept:
15
+ - ! '*/*'
16
+ user-agent:
17
+ - Ruby
18
+ response:
19
+ status:
20
+ code: 200
21
+ message: OK
22
+ headers:
23
+ server:
24
+ - Netwave IP Camera
25
+ date:
26
+ - Thu, 01 Jan 1970 01:51:09 GMT
27
+ content-type:
28
+ - text/plain
29
+ content-length:
30
+ - '22'
31
+ cache-control:
32
+ - no-cache
33
+ connection:
34
+ - close
35
+ body:
36
+ encoding: US-ASCII
37
+ string: ! 'error: illegal params.'
38
+ http_version: '1.1'
39
+ recorded_at: Wed, 12 Dec 2012 04:47:25 GMT
40
+ recorded_with: VCR 2.3.0
@@ -0,0 +1,42 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://my_username:my_password@192.168.0.117/set_ftp.cgi?dir=R2D2&port=21&pwd=my_password&svr=192.168.0.116&upload_interval=3600&user=my_username
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ authorization:
11
+ - Basic Y3dhZGRpbmc6ZnY1MHhFZ0d3Ug==
12
+ accept-encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ accept:
15
+ - ! '*/*'
16
+ user-agent:
17
+ - Ruby
18
+ response:
19
+ status:
20
+ code: 200
21
+ message: OK
22
+ headers:
23
+ server:
24
+ - Netwave IP Camera
25
+ date:
26
+ - Thu, 13 Dec 2012 01:21:20 GMT
27
+ content-type:
28
+ - text/plain
29
+ content-length:
30
+ - '4'
31
+ cache-control:
32
+ - no-cache
33
+ connection:
34
+ - close
35
+ body:
36
+ encoding: US-ASCII
37
+ string: ! 'ok.
38
+
39
+ '
40
+ http_version: '1.1'
41
+ recorded_at: Thu, 13 Dec 2012 01:21:22 GMT
42
+ recorded_with: VCR 2.3.0
@@ -0,0 +1,40 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://my_username:my_password@192.168.0.117/set_mail.cgi?port=465&pwd=password&receiver1=receiver@gmail.com&sender=sender@gmail.com&svr=smtp.gmail.com&user=username@gmail.com
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ authorization:
11
+ - Basic Y3dhZGRpbmc6ZnY1MHhFZ0d3Ug==
12
+ accept-encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ accept:
15
+ - ! '*/*'
16
+ user-agent:
17
+ - Ruby
18
+ response:
19
+ status:
20
+ code: 200
21
+ message: OK
22
+ headers:
23
+ server:
24
+ - Netwave IP Camera
25
+ date:
26
+ - Thu, 13 Dec 2012 01:54:09 GMT
27
+ content-type:
28
+ - text/plain
29
+ content-length:
30
+ - '22'
31
+ cache-control:
32
+ - no-cache
33
+ connection:
34
+ - close
35
+ body:
36
+ encoding: US-ASCII
37
+ string: ! 'error: illegal params.'
38
+ http_version: '1.1'
39
+ recorded_at: Thu, 13 Dec 2012 01:54:08 GMT
40
+ recorded_with: VCR 2.3.0
@@ -0,0 +1,105 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://my_username:my_password@192.168.0.117/set_misc.cgi?led_mode=0&ptz_auto_patrol_interval=5&ptz_auto_patrol_type=2&ptz_center_onstart=0&ptz_disable_preset=0&ptz_patrol_down_rate=10&ptz_patrol_h_rounds=1&ptz_patrol_left_rate=10&ptz_patrol_rate=20&ptz_patrol_right_rate=10&ptz_patrol_up_rate=10&ptz_patrol_v_rounds=1&ptz_preset_onstart=1
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ authorization:
11
+ - Basic Y3dhZGRpbmc6ZnY1MHhFZ0d3Ug==
12
+ accept-encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ accept:
15
+ - ! '*/*'
16
+ user-agent:
17
+ - Ruby
18
+ response:
19
+ status:
20
+ code: 200
21
+ message: OK
22
+ headers:
23
+ server:
24
+ - Netwave IP Camera
25
+ date:
26
+ - Thu, 01 Jan 1970 00:05:42 GMT
27
+ content-type:
28
+ - text/plain
29
+ content-length:
30
+ - '4'
31
+ cache-control:
32
+ - no-cache
33
+ connection:
34
+ - close
35
+ body:
36
+ encoding: US-ASCII
37
+ string: ! 'ok.
38
+
39
+ '
40
+ http_version: '1.1'
41
+ recorded_at: Wed, 12 Dec 2012 03:01:52 GMT
42
+ - request:
43
+ method: get
44
+ uri: http://my_username:my_password@192.168.0.117/get_misc.cgi
45
+ body:
46
+ encoding: US-ASCII
47
+ string: ''
48
+ headers:
49
+ authorization:
50
+ - Basic Y3dhZGRpbmc6ZnY1MHhFZ0d3Ug==
51
+ accept-encoding:
52
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
53
+ accept:
54
+ - ! '*/*'
55
+ user-agent:
56
+ - Ruby
57
+ response:
58
+ status:
59
+ code: 200
60
+ message: OK
61
+ headers:
62
+ server:
63
+ - Netwave IP Camera
64
+ date:
65
+ - Thu, 01 Jan 1970 00:05:43 GMT
66
+ content-type:
67
+ - text/plain
68
+ content-length:
69
+ - '347'
70
+ cache-control:
71
+ - no-cache
72
+ connection:
73
+ - close
74
+ body:
75
+ encoding: US-ASCII
76
+ string: ! 'var led_mode=0;
77
+
78
+ var ptz_center_onstart=0;
79
+
80
+ var ptz_auto_patrol_interval=5;
81
+
82
+ var ptz_auto_patrol_type=2;
83
+
84
+ var ptz_patrol_h_rounds=1;
85
+
86
+ var ptz_patrol_v_rounds=1;
87
+
88
+ var ptz_patrol_rate=20;
89
+
90
+ var ptz_patrol_up_rate=10;
91
+
92
+ var ptz_patrol_down_rate=10;
93
+
94
+ var ptz_patrol_left_rate=10;
95
+
96
+ var ptz_patrol_right_rate=10;
97
+
98
+ var ptz_disable_preset=0;
99
+
100
+ var ptz_preset_onstart=1;
101
+
102
+ '
103
+ http_version: '1.1'
104
+ recorded_at: Wed, 12 Dec 2012 03:01:52 GMT
105
+ recorded_with: VCR 2.3.0