omkar
Well-known member
How cool would that be?
Carwings data integrated into our MyNissanLeaf.com profiles?
I can dream, can't I?
Carwings data integrated into our MyNissanLeaf.com profiles?
I can dream, can't I?
UhClem said:The iPhone app uses a simple RESTful web service, so there's hope
Might have to get the packet sniffer out.richard said:UhClem said:The iPhone app uses a simple RESTful web service, so there's hope
Do you have any details on this?
drees said:Might have to get the packet sniffer out.richard said:UhClem said:The iPhone app uses a simple RESTful web service, so there's hope
Do you have any details on this?
sdbonez said:I'm willing to bet it looks like this:
iPhone App->Carwings REST web service->AT&T SMSC Integration (or aggregator??)->AT&T Network->Leaf
So http between the app and Carwings but sms messages between Carwings and the Leaf. (we know it's 'messaging-based', just not sure what protocol)
The Leaf iPhone app uses https://nissan-na-smartphone-biz.viaaq.com:443/aqPortal/smartphoneProxy/userServicerichard said:So does anyone know the URL of the web service?
Way freaking cool! I would put Carwings on my Slim Devices/Logitech Squeezeboxes!omkar said:How cool would that be?
UhClem said:The Leaf iPhone app uses https://nissan-na-smartphone-biz.viaaq.com:443/aqPortal/smartphoneProxy/userServicerichard said:So does anyone know the URL of the web service?
httpfox won't help with that web service because the client is an iOS apprichard said:Someone with httpfox want to analyze what goes on in an exchange?
POST https://nissan-na-smartphone-biz.viaaq.com:443/aqPortal/smartphoneProxy/userService HTTP/1.1
Host: nissan-na-smartphone-biz.viaaq.com
User-Agent: NissanLEAF/1.16 CFNetwork/485.12.7 Darwin/10.4.0
Content-Length: 1192
Content-Type: text/xml; charset=utf-8
Accept: */*
Accept-Language: en-us
Accept-Encoding: gzip, deflate
Connection: keep-alive
Proxy-Connection: keep-alive
X-Forwarded-For: *redacted*
<?xml version="1.0"?>
<ns2:SmartphoneLoginWithAdditionalOperationRequest xmlns:ns4="urn:com:hitachi:gdc:type:report:v1" xmlns:ns7="urn:com:airbiquity:smartphone.vehicleservice:v1" xmlns:ns3="http://www.nissanusa.com/owners/schemas/api/0" xmlns:ns5="urn:com:airbiquity:smartphone.reportservice:v1" xmlns:ns2="urn:com:airbiquity:smartphone.userservices:v1" xmlns:ns6="urn:com:hitachi:gdc:type:vehicle:v1">
<SmartphoneLoginInfo>
<UserLoginInfo>
<userId>*redacted*</userId>
<userPassword>*redacted*</userPassword>
</UserLoginInfo>
<DeviceToken>DUMMY1294273215.34918690</DeviceToken>
<UUID>*redacted - phone's UDID*</UUID>
<Locale>US</Locale>
<AppVersion>1.16</AppVersion>
<SmartphoneType>IPHONE</SmartphoneType>
</SmartphoneLoginInfo>
<SmartphoneOperationType>SmartphoneGetPreferencesRequest</SmartphoneOperationType>
<SmartphoneOperationType>SmartphoneLatestBatteryStatusRequest</SmartphoneOperationType>
<SmartphoneOperationType>SmartphoneLatestACStatusRequest</SmartphoneOperationType>
<SmartphoneOperationType>SmartphoneGetScheduledACRemoteRequest</SmartphoneOperationType>
</ns2:SmartphoneLoginWithAdditionalOperationRequest>
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
X-Powered-By: Servlet 2.4; JBoss-4.3.0.GA (build: SVNTag=JBPAPP_4_3_0_GA date=200801031548)/Tomcat-5.5
Content-Type: text/xml, charset=UTF-8
Content-Length: 465
Date: Fri, 14 Jan 2011 16:55:33 GMT
Set-Cookie: BIGipServernissan-na-smartphone-biz-POOL=1192559882.20480.0000; path=/
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns7:SmartphoneErrorType xmlns:ns4="urn:com:airbiquity:smartphone.reportservice:v1" xmlns:ns7="urn:com:airbiquity:smartphone.common:v1" xmlns:ns3="urn:com:hitachi:gdc:type:report:v1" xmlns:ns5="urn:com:hitachi:gdc:type:vehicle:v1" xmlns:ns2="urn:com:airbiquity:smartphone.userservices:v1" xmlns:ns6="urn:com:airbiquity:smartphone.vehicleservice:v1">
<ErrorCode>9002</ErrorCode>
</ns7:SmartphoneErrorType>
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:SmartphoneLoginWithAdditionalOperationResponse xmlns:ns4="urn:com:airbiquity:smartphone.reportservice:v1" xmlns:ns7="urn:com:airbiquity:smartphone.common:v1" xmlns:ns3="urn:com:hitachi:gdc:type:report:v1" xmlns:ns5="urn:com:hitachi:gdc:type:vehicle:v1" xmlns:ns2="urn:com:airbiquity:smartphone.userservices:v1" xmlns:ns6="urn:com:airbiquity:smartphone.vehicleservice:v1">
<SmartphoneUserInfoType>
<VehicleInfo>
<Vin>**redacted**</Vin>
</VehicleInfo>
<Nickname>leaf</Nickname>
</SmartphoneUserInfoType>
<ns4:SmartphoneLatestBatteryStatusResponse>
<SmartphoneBatteryStatusResponseType>
<ns3:BatteryStatusRecords>
<ns3:OperationResult>START</ns3:OperationResult>
<ns3:OperationDateAndTime>2011-08-20T04:20:59.0</ns3:OperationDateAndTime>
<ns3:BatteryStatus>
<ns3:BatteryChargingStatus>NORMAL_CHARGING</ns3:BatteryChargingStatus>
<ns3:BatteryCapacity>12</ns3:BatteryCapacity>
<ns3:BatteryRemainingAmount>8</ns3:BatteryRemainingAmount>
</ns3:BatteryStatus>
<ns3:PluginState>CONNECTED</ns3:PluginState>
<ns3:CruisingRangeAcOn>90624</ns3:CruisingRangeAcOn>
<ns3:CruisingRangeAcOff>104448</ns3:CruisingRangeAcOff>
<ns3:TimeRequiredToFull>
<ns3:HourRequiredToFull>6</ns3:HourRequiredToFull>
<ns3:MinutesRequiredToFull>0</ns3:MinutesRequiredToFull>
</ns3:TimeRequiredToFull>
<ns3:NotificationDateAndTime>2011-08-20T04:21:15.0</ns3:NotificationDateAndTime>
</ns3:BatteryStatusRecords>
<VehicleInfo>
<Vin>**redacted**</Vin>
</VehicleInfo>
<lastBatteryStatusCheckExecutionTime>2011-08-20T04:20:59.000Z</lastBatteryStatusCheckExecutionTime>
</SmartphoneBatteryStatusResponseType>
</ns4:SmartphoneLatestBatteryStatusResponse>
<ns4:SmartphoneLatestACStatusResponse>
<SmartphoneACStatusResponseType>
<ns3:RemoteACRecords>
<ns3:OperationResult>FINISH</ns3:OperationResult>
<ns3:OperationDateAndTime>2011-08-18T16:45:32.0</ns3:OperationDateAndTime>
<ns3:RemoteACOperation>START</ns3:RemoteACOperation>
<ns3:ACStartStopDateAndTime>2011-08-18T16:45:32.0</ns3:ACStartStopDateAndTime>
<ns3:CruisingRangeAcOn>139608</ns3:CruisingRangeAcOn>
<ns3:CruisingRangeAcOff>166200</ns3:CruisingRangeAcOff>
<ns3:ACStartStopURL></ns3:ACStartStopURL>
<ns3:PluginState>NOT_CONNECTED</ns3:PluginState>
<ns3:ACDurationBatterySec>7200</ns3:ACDurationBatterySec>
<ns3:ACDurationPluggedSec>900</ns3:ACDurationPluggedSec>
</ns3:RemoteACRecords>
<VehicleInfo>
<Vin>**redacted**</Vin>
</VehicleInfo>
</SmartphoneACStatusResponseType>
</ns4:SmartphoneLatestACStatusResponse>
<ns2:SmartphoneGetPreferencesResponse>
<NotificationPreferencesType>
<vin>**redacted**</vin>
<chargeStatusApple>false</chargeStatusApple>
<chargeStatusEmail>false</chargeStatusEmail>
<chargeStatusSms>false</chargeStatusSms>
<plugInReminderApple>false</plugInReminderApple>
<plugInReminderEmail>false</plugInReminderEmail>
<plugInReminderSms>false</plugInReminderSms>
<chargeCompleteApple>false</chargeCompleteApple>
<chargeCompleteEmail>false</chargeCompleteEmail>
<chargeCompleteSms>false</chargeCompleteSms>
<hvacOnApple>false</hvacOnApple>
<hvacOnEmail>false</hvacOnEmail>
<hvacOnSms>false</hvacOnSms>
<vehicleChargeApple>false</vehicleChargeApple>
<vehicleChargeEmail>false</vehicleChargeEmail>
<vehicleChargeSms>false</vehicleChargeSms>
</NotificationPreferencesType>
</ns2:SmartphoneGetPreferencesResponse>
<ns6:SmartphoneRemoteGetScheduledACResponse>
<SmartphoneRemoteGetScheduledACResponseType>
<ns5:GetScheduledACRemoteResponse/>
<VehicleInfo>
<Vin>**redacted**</Vin>
</VehicleInfo>
</SmartphoneRemoteGetScheduledACResponseType>
</ns6:SmartphoneRemoteGetScheduledACResponse>
</ns2:SmartphoneLoginWithAdditionalOperationResponse>
<?xml version="1.0"?>
<ns4:SmartphoneRemoteBatteryStatusCheckRequest xmlns:ns4="urn:com:airbiquity:smartphone.vehicleservice:v1" xmlns:ns3="urn:com:hitachi:gdc:type:vehicle:v1" xmlns:ns2="urn:com:hitachi:gdc:type:portalcommon:v1">
<ns3:BatteryStatusCheckRequest>
<ns3:VehicleServiceRequestHeader>
<ns2:VIN>**redacted**</ns2:VIN>
</ns3:VehicleServiceRequestHeader>
</ns3:BatteryStatusCheckRequest>
</ns4:SmartphoneRemoteBatteryStatusCheckRequest>
<?xml version="1.0"?>
<ns2:SmartphoneGetVehicleInfoRequest xmlns:ns2="urn:com:airbiquity:smartphone.userservices:v1" xmlns:ns3="http://www.nissanusa.com/owners/schemas/api/0" xmlns:ns4="urn:com:hitachi:gdc:type:report:v1" xmlns:ns5="urn:com:airbiquity:smartphone.reportservice:v1" xmlns:ns6="urn:com:hitachi:gdc:type:vehicle:v1" xmlns:ns7="urn:com:airbiquity:smartphone.vehicleservice:v1">
<VehicleInfo>
<Vin>**redacted**</Vin>
</VehicleInfo>
<SmartphoneOperationType>SmartphoneGetPreferencesRequest</SmartphoneOperationType>
<SmartphoneOperationType>SmartphoneLatestBatteryStatusRequest</SmartphoneOperationType>
<SmartphoneOperationType>SmartphoneLatestACStatusRequest</SmartphoneOperationType>
<SmartphoneOperationType>SmartphoneGetScheduledACRemoteRequest</SmartphoneOperationType>
<changeVehicle>false</changeVehicle>
</ns2:SmartphoneGetVehicleInfoRequest>
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:SmartphoneGetVehicleInfoResponse xmlns:ns4="urn:com:airbiquity:smartphone.reportservice:v1" xmlns:ns7="urn:com:airbiquity:smartphone.common:v1" xmlns:ns3="urn:com:hitachi:gdc:type:report:v1" xmlns:ns5="urn:com:hitachi:gdc:type:vehicle:v1" xmlns:ns2="urn:com:airbiquity:smartphone.userservices:v1" xmlns:ns6="urn:com:airbiquity:smartphone.vehicleservice:v1">
<ns4:SmartphoneLatestBatteryStatusResponse>
<SmartphoneBatteryStatusResponseType>
<ns3:BatteryStatusRecords>
<ns3:OperationResult>START</ns3:OperationResult>
<ns3:OperationDateAndTime>2011-08-20T06:08:35.0</ns3:OperationDateAndTime>
<ns3:BatteryStatus>
<ns3:BatteryChargingStatus>NORMAL_CHARGING</ns3:BatteryChargingStatus>
<ns3:BatteryCapacity>12</ns3:BatteryCapacity>
<ns3:BatteryRemainingAmount>10</ns3:BatteryRemainingAmount>
</ns3:BatteryStatus>
<ns3:PluginState>CONNECTED</ns3:PluginState>
<ns3:CruisingRangeAcOn>107616</ns3:CruisingRangeAcOn>
<ns3:CruisingRangeAcOff>124032</ns3:CruisingRangeAcOff>
<ns3:TimeRequiredToFull>
<ns3:HourRequiredToFull>3</ns3:HourRequiredToFull>
<ns3:MinutesRequiredToFull>30</ns3:MinutesRequiredToFull>
</ns3:TimeRequiredToFull>
<ns3:NotificationDateAndTime>2011-08-20T06:08:51.0</ns3:NotificationDateAndTime>
</ns3:BatteryStatusRecords>
<VehicleInfo>
<Vin>**redacted**</Vin>
</VehicleInfo>
<lastBatteryStatusCheckExecutionTime>2011-08-20T06:08:35.000Z</lastBatteryStatusCheckExecutionTime>
</SmartphoneBatteryStatusResponseType>
</ns4:SmartphoneLatestBatteryStatusResponse>
<ns4:SmartphoneLatestACStatusResponse>
<SmartphoneACStatusResponseType>
<ns3:RemoteACRecords>
<ns3:OperationResult>FINISH</ns3:OperationResult>
<ns3:OperationDateAndTime>2011-08-18T16:45:32.0</ns3:OperationDateAndTime>
<ns3:RemoteACOperation>START</ns3:RemoteACOperation>
<ns3:ACStartStopDateAndTime>2011-08-18T16:45:32.0</ns3:ACStartStopDateAndTime>
<ns3:CruisingRangeAcOn>139608</ns3:CruisingRangeAcOn>
<ns3:CruisingRangeAcOff>166200</ns3:CruisingRangeAcOff>
<ns3:ACStartStopURL></ns3:ACStartStopURL>
<ns3:PluginState>NOT_CONNECTED</ns3:PluginState>
<ns3:ACDurationBatterySec>7200</ns3:ACDurationBatterySec>
<ns3:ACDurationPluggedSec>900</ns3:ACDurationPluggedSec>
</ns3:RemoteACRecords>
<VehicleInfo>
<Vin>**redacted**</Vin>
</VehicleInfo>
</SmartphoneACStatusResponseType>
</ns4:SmartphoneLatestACStatusResponse>
<ns2:SmartphoneGetPreferencesResponse>
<NotificationPreferencesType>
<vin>**redacted**</vin>
<chargeStatusApple>false</chargeStatusApple>
<chargeStatusEmail>false</chargeStatusEmail>
<chargeStatusSms>false</chargeStatusSms>
<plugInReminderApple>false</plugInReminderApple>
<plugInReminderEmail>false</plugInReminderEmail>
<plugInReminderSms>false</plugInReminderSms>
<chargeCompleteApple>false</chargeCompleteApple>
<chargeCompleteEmail>false</chargeCompleteEmail>
<chargeCompleteSms>false</chargeCompleteSms>
<hvacOnApple>false</hvacOnApple>
<hvacOnEmail>false</hvacOnEmail>
<hvacOnSms>false</hvacOnSms>
<vehicleChargeApple>false</vehicleChargeApple>
<vehicleChargeEmail>false</vehicleChargeEmail>
<vehicleChargeSms>false</vehicleChargeSms>
</NotificationPreferencesType>
</ns2:SmartphoneGetPreferencesResponse>
<ns6:SmartphoneRemoteGetScheduledACResponse>
<SmartphoneRemoteGetScheduledACResponseType>
<ns5:GetScheduledACRemoteResponse/>
<VehicleInfo>
<Vin>**redacted**</Vin>
</VehicleInfo>
</SmartphoneRemoteGetScheduledACResponseType>
</ns6:SmartphoneRemoteGetScheduledACResponse>
</ns2:SmartphoneGetVehicleInfoResponse>
I'm hoping to use some of this stuff to build a web tool to let folks check charge state via SMS, or auto-post to twitter every so often etc.
turbo2ltr said:I'm hoping to use some of this stuff to build a web tool to let folks check charge state via SMS, or auto-post to twitter every so often etc.
Hmm, like this?
http://www.mynissanleaf.com/viewtopic.php?f=34&t=3326&start=23
SmartphoneRemoteBatteryStopRequest
SmartphoneRemoteBatteryChargeStopRequest
Yeah, I agree. I'll be willing to submit a request to them.TimeHorse said:But most likely, like I said before, we need to pester the hell out of Nissan to request this feature!
Enter your email address to join: