I'm developing apps on iOS.
I try to connect Sony Camera Remote API and I can't find the right device description file. So I can't use the API.
I try to connect with follow steps:
Connect mac to camera over WiFi:
Open my camera menu ——> Wifi ——> Send to Smartphone ——>
Select on Smartphone ——> connect mac to camera over access point
Use SSDP to discover the camera
Use the UdpRequest provided by sony to send ssdp-discovery message.
Then the message send successfully.
Then I received the follow message:
CFSocket receiveData response = NOTIFY * HTTP/1.1
HOST: 239.255.255.250:1900
CACHE-CONTROL: max-age=1800
LOCATION: http://192.168.122.1:64321/DmsDesc.xml
NT: upnp:rootdevice
NTS: ssdp:alive
SERVER: UPnP/1.0 SonyImagingDevice/1.0
USN: uuid:00000000-0000-0010-8000-a408ea87692a::upnp:rootdevice
X-AV-Physical-Unit-Info: pa=""; pl=;
X-AV-Server-Info: av=5.0; hn=""; cn="Sony Corporation";
mn="SonyImagingDevice"; mv="1.0";
In the Development Guide, the response should seems like this:
HTTP/1.1 200 OK
LOCATION: http://192.168.122.1:64321/dd.xml
CACHE-CONTROL: max-age=1800
EXT:
SERVER: OS/version UPnP/1.0 product/version ST: urn:schemas-sony-com:service:ScalarWebAPI:1
I campared DmsDesc.xml with dd.xml
Main part of DmsDesc.xml:
DMS-1.50
urn:schemas-upnp-org:device:MediaServer:1
ILCE-7M2
Sony Corporation
http://www.sony.com/
SonyDigitalMediaServer
SonyImagingDevice
http://www.sony.net/
uuid:00000000-0000-0010-8000-a408ea87692a
urn:schemas-upnp-org:service:ContentDirectory:1
urn:upnp-org:serviceId:ContentDirectory
/CdsDesc.xml
/upnp/control/ContentDirectory
/upnp/event/ContentDirectory
urn:schemas-upnp-org:service:ConnectionManager:1
urn:upnp-org:serviceId:ConnectionManager
/CmsDesc.xml
/upnp/control/ConnectionManager
/upnp/event/ConnectionManager
urn:schemas-sony-com:service:DigitalImaging:1
urn:schemas-sony-com:serviceId:DigitalImaging
/DigitalImagingDesc.xml
/upnp/control/DigitalImaging
dd.xml in the Development Guide should like this:
<av:X_ScalarWebAPI_DeviceInfo xmlns:av="urn:schemas-sony-com:av">
<av:X_ScalarWebAPI_Version>1.0</av:X_ScalarWebAPI_Version>
<av:X_ScalarWebAPI_ServiceList>
<av:X_ScalarWebAPI_Service>
<av:X_ScalarWebAPI_ServiceType>guide</av:X_ScalarWebAPI_ServiceType>
<av:X_ScalarWebAPI_ActionList_URL>http://192.168.122.1:8080/sony</av:X_ScalarWebAPI_ActionList_URL>
</av:X_ScalarWebAPI_Service> <av:X_ScalarWebAPI_Service>
<av:X_ScalarWebAPI_ServiceType>camera</av:X_ScalarWebAPI_ServiceType>
<av:X_ScalarWebAPI_ActionList_URL>http://192.168.122.1:8080/sony</av:X_ScalarWebAPI_ActionList_URL> </av:X_ScalarWebAPI_Service>
</av:X_ScalarWebAPI_ServiceList></av:X_ScalarWebAPI_DeviceInfo>
My Question is:
How to get the right device description file.
How to connect Sony Camera Remote API, demo will be perfect.
if sony engineer can see my question, renew the official demo please.It's too old.
I found the answer by myself.
To connect sony camera remote API, we must set the camera as an caccess point.
There are two way to do this.
When smartphone connect to camera by the first way, the response is like what mentioned in my question.
When smartphone connect to camera by the second way, the response main part is below. It's the same as development guide:
<av:X_ScalarWebAPI_DeviceInfo xmlns:av="urn:schemas-sony-com:av">
<av:X_ScalarWebAPI_Version>1.0</av:X_ScalarWebAPI_Version>
<av:X_ScalarWebAPI_ServiceList>
<av:X_ScalarWebAPI_Service>
<av:X_ScalarWebAPI_ServiceType>guide</av:X_ScalarWebAPI_ServiceType>
<av:X_ScalarWebAPI_ActionList_URL>http://192.168.122.1:8080/sony</av:X_ScalarWebAPI_ActionList_URL>
<av:X_ScalarWebAPI_AccessType/>
</av:X_ScalarWebAPI_Service>
<av:X_ScalarWebAPI_Service>
<av:X_ScalarWebAPI_ServiceType>accessControl</av:X_ScalarWebAPI_ServiceType>
<av:X_ScalarWebAPI_ActionList_URL>http://192.168.122.1:8080/sony</av:X_ScalarWebAPI_ActionList_URL>
<av:X_ScalarWebAPI_AccessType/>
</av:X_ScalarWebAPI_Service>
<av:X_ScalarWebAPI_Service>
<av:X_ScalarWebAPI_ServiceType>camera</av:X_ScalarWebAPI_ServiceType>
<av:X_ScalarWebAPI_ActionList_URL>http://192.168.122.1:8080/sony</av:X_ScalarWebAPI_ActionList_URL>
<av:X_ScalarWebAPI_AccessType/>
</av:X_ScalarWebAPI_Service>
</av:X_ScalarWebAPI_ServiceList>
</av:X_ScalarWebAPI_DeviceInfo>