Jump to content

Подключиться к камере SOAP (стандарт ONVIF)


Ялекс
 Share

Recommended Posts

Здравствуйте.

Суть: необходимо подключиться к камере через SOAP, поддерживающей стандарт ONVIF 1.02 средствами PHP.

Необходимо сформировать правильные SOAP заголовки, пройти авторизацию, вызвать метод, например, GetWsdlUrl либо GetCapabilities.

Кто ни будь сталкивался с подобной задачей и поможет решить её?

Возможно материальное вознаграждение.

Пример кода, который не работает:


try {
$HeaderSecurity = array(
"UsernameToken" => array(
"Username" => 'username',
"Password" => 'password',
'Nonce' => '',
'Created' => '',
),
);

$headers = array();
//$headers[] = new SoapHeader("http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd", "Security", $HeaderSecurity, true);

$location = 'http://<IP_ADDRESS>:<PORT>/onvif/services';

$client = new SoapClient(null, array(
'location' => $location,
'uri' => $location,
'soap_version' => SOAP_1_2,
//'style' => SOAP_DOCUMENT,
//'use' => SOAP_ENCODED,
'encoding' => 'UTF-8',
'trace' => 1,
));

$client->__setSoapHeaders($headers);

$result = $client->__soapCall(
'GetWsdlUrl',
array()
);

var_dump($result);
} catch (Exception $e) {
echo '<pre>';
var_dump($e);
var_dump($client->__getLastRequestHeaders());
var_dump($client->__getLastRequest());
var_dump($client->__getLastResponse());
}

Ссылки по теме:

Onvif Specification v. 1.02 http://www.videosec.com/IP-1080p/ONVIF-Ver1.02-3.pdf

Onvif http://onvif.org/

Заранее спасибо.

Edited by Ялекс
Link to comment
Share on other sites

 Share

  • Обсуждения

    • Актуальные контакты: Telegram: @Nikker_web E-Mail:   tarasevich.email@gmail.com Портфолио https://www.behance.net/d4d4186e Разрабатываю дизайн групп в соц сетях, сайтов, приложений, другой дизайн под заказ    
    • Актуальные контакты: Telegram: @Nikker_web E-Mail:   tarasevich.email@gmail.com   Разрабатываю дизайн групп в соц сетях, сайтов, приложений, другой дизайн под заказ   Портфолио https://www.behance.net/d4d4186e
    • Доброго всем времени суток. Прошу помощи. Научите принципу изменения футера. Движок Xenforo. Версия 2.2.10. Стиль дефолтный. Что именно нужно в итоге на фото примере. Мой шаблон app.footer less имеет следующее значение.  .p-footer { .xf-publicFooter(); a { .xf-publicFooterLink(); } } .p-footer-inner { .m-pageWidth(); .m-pageInset(); padding-top: @xf-paddingMedium; padding-bottom: @xf-paddingLarge; } .p-footer-row { .m-clearFix(); margin-bottom: -@xf-paddingLarge; } .p-footer-row-main { float: left; margin-bottom: @xf-paddingLarge; } .p-footer-row-opposite { float: right; margin-bottom: @xf-paddingLarge; } .p-footer-linkList { .m-listPlain(); .m-clearFix(); > li { float: left; margin-right: .5em; &:last-child { margin-right: 0; } a { padding: 2px 4px; border-radius: @xf-borderRadiusSmall; &:hover { text-decoration: none; background-color: fade(@xf-publicFooterLink--color, 10%); } } } } .p-footer-rssLink { > span { position: relative; top: -1px; display: inline-block; width: 1.44em; height: 1.44em; line-height: 1.44em; text-align: center; font-size: .8em; background-color: #4682B4; border-radius: 2px; } .fa-rss { color: white; } } .p-footer-copyright { margin-top: @xf-elementSpacer; text-align: center; font-size: @xf-fontSizeSmallest; } .p-footer-debug { margin-top: @xf-paddingLarge; text-align: right; font-size: @xf-fontSizeSmallest; .pairs > dt { color: inherit; } } @media (max-width: @xf-responsiveMedium) { .p-footer-row-main, .p-footer-row-opposite { float: none; } .p-footer-copyright { text-align: left; padding: 0 4px; // aligns with other links } }  
    • Нужны сайты с примерами верстки, типа https://css-tricks.com/. Типовые приемы и нестандартные на все случаи жизни. Накидайте ссылок.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy