\hypertarget{class_skm_xml_api_1_1_camera}{}\doxysection{Skm\+Xml\+Api.\+Camera Class Reference}
\label{class_skm_xml_api_1_1_camera}\index{SkmXmlApi.Camera@{SkmXmlApi.Camera}}


Skm \mbox{\hyperlink{class_skm_xml_api_1_1_camera}{Camera}} represents an Skm camera object  


Inheritance diagram for Skm\+Xml\+Api.\+Camera\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=3.000000cm]{class_skm_xml_api_1_1_camera}
\end{center}
\end{figure}
\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
string \mbox{\hyperlink{class_skm_xml_api_1_1_camera_a17d18e5f7756f0df6487a3c9e1e5e904}{Get\+Live\+Url}} (bool analytics=false)
\begin{DoxyCompactList}\small\item\em Gets the live Rtsp url for a Skm camera \end{DoxyCompactList}\item 
string \mbox{\hyperlink{class_skm_xml_api_1_1_camera_a0a48766f4f80197ac3468694b73e143e}{Get\+Archive\+Url}} (Date\+Time Start\+Time, Date\+Time End\+Time, bool skip\+Gaps=false)
\begin{DoxyCompactList}\small\item\em Gets the Rtsp Url for an archive time span. The times requested must be in Utc/\+Universal time. The method will create a single use ticket, that is a part of the returned string, on the Skm server. This Url/ticket is only good for ten seconds. \end{DoxyCompactList}\item 
Bitmap \mbox{\hyperlink{class_skm_xml_api_1_1_camera_a6cb55c8670a61a965f9cd054dc2cb069}{Get\+Thumbnail}} ()
\begin{DoxyCompactList}\small\item\em Retrieves the thumbnail/snapshot for a specific device. ~\newline
 This method will return a null Bitmap if there is an error. \end{DoxyCompactList}\item 
byte\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_skm_xml_api_1_1_camera_a44e61910e69dc91a662288c970bdc8f3}{Get\+Raw\+Thumbnail}} ()
\begin{DoxyCompactList}\small\item\em Retrieves the thumbnail for a specific device \end{DoxyCompactList}\item 
\mbox{\hyperlink{class_skm_xml_api_1_1_download_task}{Download\+Task}} \mbox{\hyperlink{class_skm_xml_api_1_1_camera_adf9a4703fd9d0e048ce41b1898a5ada4}{Start\+Download\+Media\+Clip}} (string File\+Path, Date\+Time Start\+Time, Date\+Time End\+Time)
\begin{DoxyCompactList}\small\item\em Starts video export from the server. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Properties}
\begin{DoxyCompactItemize}
\item 
string \mbox{\hyperlink{class_skm_xml_api_1_1_camera_ab07471dfd1090b349cb6d64b5f068204}{Thumbnail\+Url}}\hspace{0.3cm}{\ttfamily  \mbox{[}get\mbox{]}}
\begin{DoxyCompactList}\small\item\em Gets the Url for the thumbnail of a Skm camera \end{DoxyCompactList}\item 
Memory\+Stream \mbox{\hyperlink{class_skm_xml_api_1_1_camera_a41c32254706d501185bf5358b506006b}{Raw\+Thumbnail\+Stream}}\hspace{0.3cm}{\ttfamily  \mbox{[}get\mbox{]}}
\begin{DoxyCompactList}\small\item\em Retrieves the thumbnail for a specific device \end{DoxyCompactList}\item 
string \mbox{\hyperlink{class_skm_xml_api_1_1_camera_a902ef9095082ed92de7c781f11306d53}{Time\+Zone}}\hspace{0.3cm}{\ttfamily  \mbox{[}get\mbox{]}}
\begin{DoxyCompactList}\small\item\em Time zone name in I\+A\+NA format (TZ database name). \end{DoxyCompactList}\item 
\mbox{\hyperlink{class_skm_xml_api_1_1_skm_object}{Skm\+Object}} \mbox{\hyperlink{class_skm_xml_api_1_1_camera_a7bbae4ce9f7df52e3cf1213614d0bfea}{Audio}}\hspace{0.3cm}{\ttfamily  \mbox{[}get, set\mbox{]}}
\begin{DoxyCompactList}\small\item\em Audio object corresponding to the camera. \end{DoxyCompactList}\item 
Dictionary$<$ string, string $>$ \mbox{\hyperlink{class_skm_xml_api_1_1_camera_aa4012e59490b3407912fc6153b62709f}{Camera\+Data}} = new Dictionary$<$string, string$>$()\hspace{0.3cm}{\ttfamily  \mbox{[}get\mbox{]}}
\begin{DoxyCompactList}\small\item\em \mbox{\hyperlink{class_skm_xml_api_1_1_camera}{Camera}} metadata. Can contain the following keys\+: Id, Name, Time\+Zone, P\+TZ, MD, Analytics, Geo\+Lat, Geo\+Long, Geo\+Alt, Location, Note, Audio\+Id, Audio\+Name, etc. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Events}
\begin{DoxyCompactItemize}
\item 
Event\+Handler$<$ \mbox{\hyperlink{class_skm_xml_api_1_1_download_progress_event_args}{Download\+Progress\+Event\+Args}} $>$ \mbox{\hyperlink{class_skm_xml_api_1_1_camera_a53c9feed9b19bd8f7b31d5171ab19b99}{Download\+Media\+Clip\+Progress}}
\begin{DoxyCompactList}\small\item\em Download video progress. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Additional Inherited Members}


\doxysubsection{Detailed Description}
Skm \mbox{\hyperlink{class_skm_xml_api_1_1_camera}{Camera}} represents an Skm camera object 



\doxysubsection{Member Function Documentation}
\mbox{\Hypertarget{class_skm_xml_api_1_1_camera_a0a48766f4f80197ac3468694b73e143e}\label{class_skm_xml_api_1_1_camera_a0a48766f4f80197ac3468694b73e143e}} 
\index{SkmXmlApi.Camera@{SkmXmlApi.Camera}!GetArchiveUrl@{GetArchiveUrl}}
\index{GetArchiveUrl@{GetArchiveUrl}!SkmXmlApi.Camera@{SkmXmlApi.Camera}}
\doxysubsubsection{\texorpdfstring{GetArchiveUrl()}{GetArchiveUrl()}}
{\footnotesize\ttfamily string Skm\+Xml\+Api.\+Camera.\+Get\+Archive\+Url (\begin{DoxyParamCaption}\item[{Date\+Time}]{Start\+Time,  }\item[{Date\+Time}]{End\+Time,  }\item[{bool}]{skip\+Gaps = {\ttfamily false} }\end{DoxyParamCaption})}



Gets the Rtsp Url for an archive time span. The times requested must be in Utc/\+Universal time. The method will create a single use ticket, that is a part of the returned string, on the Skm server. This Url/ticket is only good for ten seconds. 


\begin{DoxyParams}{Parameters}
{\em Start\+Time} & Start time of the archive clip in Utc/\+Universal time\\
\hline
{\em End\+Time} & End time of the archive clip in Utc/\+Universal\\
\hline
{\em skip\+Gaps} & Skip archive gaps\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Rtsp Url of the requested archive clip
\end{DoxyReturn}



\begin{DoxyCode}{0}
\DoxyCodeLine{\textcolor{keywordtype}{string} url = \textcolor{keywordtype}{string}.Empty;}
\DoxyCodeLine{}
\DoxyCodeLine{\textcolor{keywordflow}{try}}
\DoxyCodeLine{\{}
\DoxyCodeLine{    \textcolor{comment}{/* Get the archive Rtsp Url *\&zwj;/}}
\DoxyCodeLine{\textcolor{comment}{    url = m\_camera.GetArchiveUrl(StartTime, EndTime);}}
\DoxyCodeLine{\textcolor{comment}{\}}}
\DoxyCodeLine{\textcolor{comment}{catch (SkmApiException ex)}}
\DoxyCodeLine{\textcolor{comment}{\{}}
\DoxyCodeLine{\textcolor{comment}{    ChangePlayerState(SkmPlayState.Error, ex.Message);}}
\DoxyCodeLine{\textcolor{comment}{\}}}
\DoxyCodeLine{\textcolor{comment}{catch (Exception ex)}}
\DoxyCodeLine{\textcolor{comment}{\{}}
\DoxyCodeLine{\textcolor{comment}{    ChangePlayerState(SkmPlayState.Error, ex.Message);}}
\DoxyCodeLine{\textcolor{comment}{\}}}
\end{DoxyCode}
 \mbox{\Hypertarget{class_skm_xml_api_1_1_camera_a17d18e5f7756f0df6487a3c9e1e5e904}\label{class_skm_xml_api_1_1_camera_a17d18e5f7756f0df6487a3c9e1e5e904}} 
\index{SkmXmlApi.Camera@{SkmXmlApi.Camera}!GetLiveUrl@{GetLiveUrl}}
\index{GetLiveUrl@{GetLiveUrl}!SkmXmlApi.Camera@{SkmXmlApi.Camera}}
\doxysubsubsection{\texorpdfstring{GetLiveUrl()}{GetLiveUrl()}}
{\footnotesize\ttfamily string Skm\+Xml\+Api.\+Camera.\+Get\+Live\+Url (\begin{DoxyParamCaption}\item[{bool}]{analytics = {\ttfamily false} }\end{DoxyParamCaption})}



Gets the live Rtsp url for a Skm camera 


\begin{DoxyParams}{Parameters}
{\em analytics} & True for analytics\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Live Rtsp Url of the camera
\end{DoxyReturn}



\begin{DoxyCode}{0}
\DoxyCodeLine{\textcolor{keywordtype}{string} url = \textcolor{keywordtype}{string}.Empty;}
\DoxyCodeLine{}
\DoxyCodeLine{\textcolor{keywordflow}{try}}
\DoxyCodeLine{\{}
\DoxyCodeLine{    \textcolor{comment}{/* Get the live Rtsp Url *\&zwj;/}}
\DoxyCodeLine{\textcolor{comment}{    url = m\_camera.GetLiveUrl();}}
\DoxyCodeLine{\textcolor{comment}{\}}}
\DoxyCodeLine{\textcolor{comment}{catch (SkmApiException ex)}}
\DoxyCodeLine{\textcolor{comment}{\{}}
\DoxyCodeLine{\textcolor{comment}{    ChangePlayerState(SkmPlayState.Error, ex.Message);}}
\DoxyCodeLine{\textcolor{comment}{\}}}
\DoxyCodeLine{\textcolor{comment}{catch (Exception ex)}}
\DoxyCodeLine{\textcolor{comment}{\{}}
\DoxyCodeLine{\textcolor{comment}{    ChangePlayerState(SkmPlayState.Error, ex.Message);}}
\DoxyCodeLine{\textcolor{comment}{\}}}
\end{DoxyCode}
 \mbox{\Hypertarget{class_skm_xml_api_1_1_camera_a44e61910e69dc91a662288c970bdc8f3}\label{class_skm_xml_api_1_1_camera_a44e61910e69dc91a662288c970bdc8f3}} 
\index{SkmXmlApi.Camera@{SkmXmlApi.Camera}!GetRawThumbnail@{GetRawThumbnail}}
\index{GetRawThumbnail@{GetRawThumbnail}!SkmXmlApi.Camera@{SkmXmlApi.Camera}}
\doxysubsubsection{\texorpdfstring{GetRawThumbnail()}{GetRawThumbnail()}}
{\footnotesize\ttfamily byte \mbox{[}$\,$\mbox{]} Skm\+Xml\+Api.\+Camera.\+Get\+Raw\+Thumbnail (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Retrieves the thumbnail for a specific device 

\begin{DoxyReturn}{Returns}
Raw bytes of the thumbnail, usually in Jpeg format
\end{DoxyReturn}



\begin{DoxyCode}{0}
\DoxyCodeLine{Bitmap image = \textcolor{keyword}{null};}
\DoxyCodeLine{\textcolor{keywordtype}{byte}[] imageBytes = \textcolor{keyword}{null};}
\DoxyCodeLine{}
\DoxyCodeLine{\textcolor{comment}{/* Download the thumbnail bytes *\&zwj;/}}
\DoxyCodeLine{\textcolor{comment}{imageBytes = SkmCamera.GetRawThumbnail();}}
\DoxyCodeLine{\textcolor{comment}{}}
\DoxyCodeLine{\textcolor{comment}{try}}
\DoxyCodeLine{\textcolor{comment}{\{}}
\DoxyCodeLine{\textcolor{comment}{    /* Load our image bytes into a Bitmap <em>\&zwj;/}}
\DoxyCodeLine{\textcolor{comment}{    image = new Bitmap(new MemoryStream(imageBytes));}}
\DoxyCodeLine{\textcolor{comment}{\}}}
\DoxyCodeLine{\textcolor{comment}{catch(Exception)}}
\DoxyCodeLine{\textcolor{comment}{\{}}
\DoxyCodeLine{\textcolor{comment}{    /</em> Suppress errors *\&zwj;/}}
\DoxyCodeLine{\textcolor{comment}{\}}}
\end{DoxyCode}
 \mbox{\Hypertarget{class_skm_xml_api_1_1_camera_a6cb55c8670a61a965f9cd054dc2cb069}\label{class_skm_xml_api_1_1_camera_a6cb55c8670a61a965f9cd054dc2cb069}} 
\index{SkmXmlApi.Camera@{SkmXmlApi.Camera}!GetThumbnail@{GetThumbnail}}
\index{GetThumbnail@{GetThumbnail}!SkmXmlApi.Camera@{SkmXmlApi.Camera}}
\doxysubsubsection{\texorpdfstring{GetThumbnail()}{GetThumbnail()}}
{\footnotesize\ttfamily Bitmap Skm\+Xml\+Api.\+Camera.\+Get\+Thumbnail (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Retrieves the thumbnail/snapshot for a specific device. ~\newline
 This method will return a null Bitmap if there is an error. 

\begin{DoxyReturn}{Returns}
Bitmap image of the thumbnail
\end{DoxyReturn}



\begin{DoxyCode}{0}
\DoxyCodeLine{Bitmap image = \textcolor{keyword}{null};}
\DoxyCodeLine{}
\DoxyCodeLine{\textcolor{keywordflow}{try}}
\DoxyCodeLine{\{}
\DoxyCodeLine{    \textcolor{comment}{/* Get our Bitmap thumbnail <em>\&zwj;/}}
\DoxyCodeLine{\textcolor{comment}{    image = camera.GetThumbnail();}}
\DoxyCodeLine{\textcolor{comment}{\}}}
\DoxyCodeLine{\textcolor{comment}{catch(Exception)}}
\DoxyCodeLine{\textcolor{comment}{\{}}
\DoxyCodeLine{\textcolor{comment}{    /</em> Suppress errors *\&zwj;/}}
\DoxyCodeLine{\textcolor{comment}{\}}}
\end{DoxyCode}
 \mbox{\Hypertarget{class_skm_xml_api_1_1_camera_adf9a4703fd9d0e048ce41b1898a5ada4}\label{class_skm_xml_api_1_1_camera_adf9a4703fd9d0e048ce41b1898a5ada4}} 
\index{SkmXmlApi.Camera@{SkmXmlApi.Camera}!StartDownloadMediaClip@{StartDownloadMediaClip}}
\index{StartDownloadMediaClip@{StartDownloadMediaClip}!SkmXmlApi.Camera@{SkmXmlApi.Camera}}
\doxysubsubsection{\texorpdfstring{StartDownloadMediaClip()}{StartDownloadMediaClip()}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_skm_xml_api_1_1_download_task}{Download\+Task}} Skm\+Xml\+Api.\+Camera.\+Start\+Download\+Media\+Clip (\begin{DoxyParamCaption}\item[{string}]{File\+Path,  }\item[{Date\+Time}]{Start\+Time,  }\item[{Date\+Time}]{End\+Time }\end{DoxyParamCaption})}



Starts video export from the server. 


\begin{DoxyParams}{Parameters}
{\em File\+Path} & Path and filename of where to store the media clip.\\
\hline
{\em Start\+Time} & The U\+TC time of where the export should begin.\\
\hline
{\em End\+Time} & The U\+TC time of where the export should end.\\
\hline
\end{DoxyParams}


\doxysubsection{Property Documentation}
\mbox{\Hypertarget{class_skm_xml_api_1_1_camera_a7bbae4ce9f7df52e3cf1213614d0bfea}\label{class_skm_xml_api_1_1_camera_a7bbae4ce9f7df52e3cf1213614d0bfea}} 
\index{SkmXmlApi.Camera@{SkmXmlApi.Camera}!Audio@{Audio}}
\index{Audio@{Audio}!SkmXmlApi.Camera@{SkmXmlApi.Camera}}
\doxysubsubsection{\texorpdfstring{Audio}{Audio}}
{\footnotesize\ttfamily \mbox{\hyperlink{class_skm_xml_api_1_1_skm_object}{Skm\+Object}} Skm\+Xml\+Api.\+Camera.\+Audio\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}}



Audio object corresponding to the camera. 

\mbox{\Hypertarget{class_skm_xml_api_1_1_camera_aa4012e59490b3407912fc6153b62709f}\label{class_skm_xml_api_1_1_camera_aa4012e59490b3407912fc6153b62709f}} 
\index{SkmXmlApi.Camera@{SkmXmlApi.Camera}!CameraData@{CameraData}}
\index{CameraData@{CameraData}!SkmXmlApi.Camera@{SkmXmlApi.Camera}}
\doxysubsubsection{\texorpdfstring{CameraData}{CameraData}}
{\footnotesize\ttfamily Dictionary$<$string, string$>$ Skm\+Xml\+Api.\+Camera.\+Camera\+Data = new Dictionary$<$string, string$>$()\hspace{0.3cm}{\ttfamily [get]}}



\mbox{\hyperlink{class_skm_xml_api_1_1_camera}{Camera}} metadata. Can contain the following keys\+: Id, Name, Time\+Zone, P\+TZ, MD, Analytics, Geo\+Lat, Geo\+Long, Geo\+Alt, Location, Note, Audio\+Id, Audio\+Name, etc. 

\mbox{\Hypertarget{class_skm_xml_api_1_1_camera_a41c32254706d501185bf5358b506006b}\label{class_skm_xml_api_1_1_camera_a41c32254706d501185bf5358b506006b}} 
\index{SkmXmlApi.Camera@{SkmXmlApi.Camera}!RawThumbnailStream@{RawThumbnailStream}}
\index{RawThumbnailStream@{RawThumbnailStream}!SkmXmlApi.Camera@{SkmXmlApi.Camera}}
\doxysubsubsection{\texorpdfstring{RawThumbnailStream}{RawThumbnailStream}}
{\footnotesize\ttfamily Memory\+Stream Skm\+Xml\+Api.\+Camera.\+Raw\+Thumbnail\+Stream\hspace{0.3cm}{\ttfamily [get]}}



Retrieves the thumbnail for a specific device 

\begin{DoxyReturn}{Returns}
Raw bytes of the thumbnail, usually in Jpeg format
\end{DoxyReturn}



\begin{DoxyCode}{0}
\DoxyCodeLine{Bitmap image = \textcolor{keyword}{null};}
\DoxyCodeLine{MemoryStream imageBytes = \textcolor{keyword}{null};}
\DoxyCodeLine{}
\DoxyCodeLine{\textcolor{comment}{/* Download the thumbnail bytes *\&zwj;/}}
\DoxyCodeLine{\textcolor{comment}{imageBytes = SkmCamera.GetRawThumbnail();}}
\DoxyCodeLine{\textcolor{comment}{}}
\DoxyCodeLine{\textcolor{comment}{try}}
\DoxyCodeLine{\textcolor{comment}{\{}}
\DoxyCodeLine{\textcolor{comment}{    /* Load our image bytes into a Bitmap <em>\&zwj;/}}
\DoxyCodeLine{\textcolor{comment}{    image = new Bitmap(imageBytes);}}
\DoxyCodeLine{\textcolor{comment}{\}}}
\DoxyCodeLine{\textcolor{comment}{catch(Exception)}}
\DoxyCodeLine{\textcolor{comment}{\{}}
\DoxyCodeLine{\textcolor{comment}{    /</em> Suppress errors *\&zwj;/}}
\DoxyCodeLine{\textcolor{comment}{\}}}
\end{DoxyCode}
 \mbox{\Hypertarget{class_skm_xml_api_1_1_camera_ab07471dfd1090b349cb6d64b5f068204}\label{class_skm_xml_api_1_1_camera_ab07471dfd1090b349cb6d64b5f068204}} 
\index{SkmXmlApi.Camera@{SkmXmlApi.Camera}!ThumbnailUrl@{ThumbnailUrl}}
\index{ThumbnailUrl@{ThumbnailUrl}!SkmXmlApi.Camera@{SkmXmlApi.Camera}}
\doxysubsubsection{\texorpdfstring{ThumbnailUrl}{ThumbnailUrl}}
{\footnotesize\ttfamily string Skm\+Xml\+Api.\+Camera.\+Thumbnail\+Url\hspace{0.3cm}{\ttfamily [get]}}



Gets the Url for the thumbnail of a Skm camera 

\mbox{\Hypertarget{class_skm_xml_api_1_1_camera_a902ef9095082ed92de7c781f11306d53}\label{class_skm_xml_api_1_1_camera_a902ef9095082ed92de7c781f11306d53}} 
\index{SkmXmlApi.Camera@{SkmXmlApi.Camera}!TimeZone@{TimeZone}}
\index{TimeZone@{TimeZone}!SkmXmlApi.Camera@{SkmXmlApi.Camera}}
\doxysubsubsection{\texorpdfstring{TimeZone}{TimeZone}}
{\footnotesize\ttfamily string Skm\+Xml\+Api.\+Camera.\+Time\+Zone\hspace{0.3cm}{\ttfamily [get]}}



Time zone name in I\+A\+NA format (TZ database name). 



\doxysubsection{Event Documentation}
\mbox{\Hypertarget{class_skm_xml_api_1_1_camera_a53c9feed9b19bd8f7b31d5171ab19b99}\label{class_skm_xml_api_1_1_camera_a53c9feed9b19bd8f7b31d5171ab19b99}} 
\index{SkmXmlApi.Camera@{SkmXmlApi.Camera}!DownloadMediaClipProgress@{DownloadMediaClipProgress}}
\index{DownloadMediaClipProgress@{DownloadMediaClipProgress}!SkmXmlApi.Camera@{SkmXmlApi.Camera}}
\doxysubsubsection{\texorpdfstring{DownloadMediaClipProgress}{DownloadMediaClipProgress}}
{\footnotesize\ttfamily Event\+Handler$<$\mbox{\hyperlink{class_skm_xml_api_1_1_download_progress_event_args}{Download\+Progress\+Event\+Args}}$>$ Skm\+Xml\+Api.\+Camera.\+Download\+Media\+Clip\+Progress}



Download video progress. 



The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
src/\+Skm\+Xml\+Api/Camera.\+cs\end{DoxyCompactItemize}
