Class: ONVIF::Action
- Inherits:
-
Object
show all
- Defined in:
- lib/ruby_onvif_client/action.rb
Direct Known Subclasses
DeviceManagementAction::GetCapabilities, DeviceManagementAction::GetDeviceInformation, DeviceManagementAction::GetNetworkInterfaces, DeviceManagementAction::GetNetworkProtocols, DeviceManagementAction::GetSystemDateAndTime, DeviceManagementAction::GetUsers, DeviceManagementAction::SetNetworkInterfaces, DeviceManagementAction::SetSystemDateAndTime, DeviceManagementAction::SetSystemFactoryDefault, DeviceManagementAction::SystemReboot, EventAction::CreatePullPointSubscription, EventAction::GetEventProperties, EventAction::PullMessages, EventAction::Renew, EventAction::SetSynchronizationPoint, EventAction::Subscribe, EventAction::Unsubscribe, MediaAction::GetAudioEncoderConfiguration, MediaAction::GetAudioEncoderConfigurationOptions, MediaAction::GetAudioEncoderConfigurations, MediaAction::GetAudioSourceConfigurations, MediaAction::GetProfile, MediaAction::GetProfiles, MediaAction::GetStreamUri, MediaAction::GetVideoEncoderConfiguration, MediaAction::GetVideoEncoderConfigurationOptions, MediaAction::GetVideoEncoderConfigurations, MediaAction::GetVideoSourceConfiguration, MediaAction::GetVideoSourceConfigurations, MediaAction::SetVideoEncoderConfiguration, PtzAction::AbsoluteMove, PtzAction::ContinuousMove, PtzAction::GetConfiguration, PtzAction::GetConfigurationOptions, PtzAction::GetConfigurations, PtzAction::GetNode, PtzAction::GetNodes, PtzAction::GetPresets, PtzAction::GotoHomePosition, PtzAction::GotoPreset, PtzAction::RelativeMove, PtzAction::RemovePreset, PtzAction::SetPreset, PtzAction::Stop
Instance Method Summary
collapse
Constructor Details
#initialize(client, username, password) ⇒ Action
Returns a new instance of Action.
5
6
7
8
9
|
# File 'lib/ruby_onvif_client/action.rb', line 5
def initialize client, username, password
@client = client
@username = username
@password = password
end
|
Instance Method Details
#attribute(xml_doc, xpath) ⇒ Object
30
31
32
33
34
35
|
# File 'lib/ruby_onvif_client/action.rb', line 30
def attribute xml_doc, xpath
return '' if xml_doc.nil?
node = xml_doc[xpath]
return node unless node.nil?
''
end
|
#callback(cb, *args) ⇒ Object
19
20
21
22
|
# File 'lib/ruby_onvif_client/action.rb', line 19
def callback cb, *args
return if cb.class != Proc
cb.call *args
end
|
#create_event_onvif_message(options = {}) ⇒ Object
53
54
55
56
57
58
59
|
# File 'lib/ruby_onvif_client/action.rb', line 53
def create_event_onvif_message options = {}
namespaces = {
:'xmlns:wsdl' => "http://www.onvif.org/ver10/events/wsdl"
}.merge(options[:namespaces] || {})
options[:namespaces] = namespaces
Message.new options
end
|
37
38
39
40
41
42
43
|
# File 'lib/ruby_onvif_client/action.rb', line 37
def create_media_onvif_message options = {}
namespaces = {
:'xmlns:wsdl' => "http://www.onvif.org/ver10/media/wsdl"
}.merge(options[:namespaces] || {})
options[:namespaces] = namespaces
Message.new options
end
|
#create_ptz_onvif_message(options = {}) ⇒ Object
45
46
47
48
49
50
51
|
# File 'lib/ruby_onvif_client/action.rb', line 45
def create_ptz_onvif_message options = {}
namespaces = {
:'xmlns:wsdl' => "http://www.onvif.org/ver20/ptz/wsdl"
}.merge(options[:namespaces] || {})
options[:namespaces] = namespaces
Message.new options
end
|
#send_message(message) ⇒ Object
11
12
13
14
15
16
17
|
# File 'lib/ruby_onvif_client/action.rb', line 11
def send_message message
message.username = @username
message.password = @password
@client.send message.to_s do |success, result|
yield success, result
end
end
|
#value(xml_doc, xpath) ⇒ Object
24
25
26
27
28
29
|
# File 'lib/ruby_onvif_client/action.rb', line 24
def value xml_doc, xpath
return '' if xml_doc.nil?
node = xml_doc.at_xpath(xpath)
return node.content unless node.nil?
''
end
|