@@ -76,5 +76,24 @@ public interface WxMpDeviceService { | |||
*/ | |||
WxDeviceBindResult compelUnbind(WxDeviceBind wxDeviceBind) throws WxErrorException; | |||
/** | |||
* <pre> | |||
* 通过device type和device id 获取设备主人的openid | |||
* 详情请见:http://iot.weixin.qq.com/wiki/new/index.html?page=3-4-11 | |||
* </pre> | |||
* @param deviceType 设备类型,目前为"公众账号原始ID" | |||
* @param deviceId 设备ID | |||
* @return WxDeviceOpenIdResult | |||
*/ | |||
WxDeviceOpenIdResult getOpenId(String deviceType,String deviceId) throws WxErrorException; | |||
/** | |||
* <pre> | |||
* 通过openid获取用户在当前devicetype下绑定的deviceid列表` | |||
* 详情请见:http://iot.weixin.qq.com/wiki/new/index.html?page=3-4-12 | |||
* </pre> | |||
* @param openId 要查询的用户的openid | |||
* @return WxDeviceBindDeviceResult | |||
*/ | |||
WxDeviceBindDeviceResult getBindDevice(String openId) throws WxErrorException; | |||
} |
@@ -23,7 +23,7 @@ public class WxMpDeviceServiceImpl implements WxMpDeviceService { | |||
@Override | |||
public TransMsgResp transMsg(WxDeviceMsg msg) throws WxErrorException { | |||
String url = API_URL_PREFIX + "/transmsg"; | |||
String response = this.wxMpService.post(url,msg.toJson()); | |||
String response = this.wxMpService.post(url, msg.toJson()); | |||
return TransMsgResp.fromJson(response); | |||
} | |||
@@ -37,21 +37,21 @@ public class WxMpDeviceServiceImpl implements WxMpDeviceService { | |||
@Override | |||
public WxDeviceAuthorizeResult authorize(WxDeviceAuthorize wxDeviceAuthorize) throws WxErrorException { | |||
String url = API_URL_PREFIX + "/authorize_device"; | |||
String response = this.wxMpService.post(url,wxDeviceAuthorize.toJson()); | |||
String response = this.wxMpService.post(url, wxDeviceAuthorize.toJson()); | |||
return WxDeviceAuthorizeResult.fromJson(response); | |||
} | |||
@Override | |||
public WxDeviceBindResult bind(WxDeviceBind wxDeviceBind) throws WxErrorException { | |||
String url = API_URL_PREFIX + "/bind"; | |||
String response = this.wxMpService.post(url,wxDeviceBind.toJson()); | |||
String response = this.wxMpService.post(url, wxDeviceBind.toJson()); | |||
return WxDeviceBindResult.fromJson(response); | |||
} | |||
@Override | |||
public WxDeviceBindResult compelBind(WxDeviceBind wxDeviceBind) throws WxErrorException { | |||
String url = API_URL_PREFIX + "/compel_bind"; | |||
String response = this.wxMpService.post(url,wxDeviceBind.toJson()); | |||
String response = this.wxMpService.post(url, wxDeviceBind.toJson()); | |||
return WxDeviceBindResult.fromJson(response); | |||
} | |||
@@ -68,5 +68,19 @@ public class WxMpDeviceServiceImpl implements WxMpDeviceService { | |||
String response = this.wxMpService.post(url, wxDeviceBind.toJson()); | |||
return WxDeviceBindResult.fromJson(response); | |||
} | |||
@Override | |||
public WxDeviceOpenIdResult getOpenId(String deviceType, String deviceId) throws WxErrorException { | |||
String url = API_URL_PREFIX + "/get_openid"; | |||
String response = this.wxMpService.get(url, "device_type=" + deviceType + "&device_id=" + deviceId); | |||
return WxDeviceOpenIdResult.fromJson(response); | |||
} | |||
@Override | |||
public WxDeviceBindDeviceResult getBindDevice(String openId) throws WxErrorException { | |||
String url = API_URL_PREFIX+"/get_bind_device"; | |||
String response = this.wxMpService.get(url,"openid="+openId); | |||
return WxDeviceBindDeviceResult.fromJson(response); | |||
} | |||
} | |||
@@ -38,23 +38,25 @@ public class BaseResp extends AbstractDeviceBean{ | |||
} | |||
private class BaseInfo { | |||
private String device_type; | |||
private String device_id; | |||
@SerializedName("device_type") | |||
private String deviceType; | |||
@SerializedName("device_id") | |||
private String deviceId; | |||
public String getDevice_type() { | |||
return device_type; | |||
public String getDeviceType() { | |||
return deviceType; | |||
} | |||
public void setDevice_type(String device_type) { | |||
this.device_type = device_type; | |||
public void setDeviceType(String deviceType) { | |||
this.deviceType = deviceType; | |||
} | |||
public String getDevice_id() { | |||
return device_id; | |||
public String getDeviceId() { | |||
return deviceId; | |||
} | |||
public void setDevice_id(String device_id) { | |||
this.device_id = device_id; | |||
public void setDeviceId(String deviceId) { | |||
this.deviceId = deviceId; | |||
} | |||
} | |||
} |
@@ -0,0 +1,46 @@ | |||
package me.chanjar.weixin.mp.bean.device; | |||
import com.google.gson.annotations.SerializedName; | |||
import me.chanjar.weixin.mp.util.json.WxMpGsonBuilder; | |||
import java.util.List; | |||
/** | |||
* Created by keungtung on 16/12/2016. | |||
*/ | |||
public class WxDeviceBindDeviceResult extends AbstractDeviceBean { | |||
@SerializedName("resp_msg") | |||
private RespMsg respMsg; | |||
@SerializedName("openid") | |||
private String openId; | |||
@SerializedName("device_list") | |||
private List<Device> devices; | |||
public static WxDeviceBindDeviceResult fromJson(String json) { | |||
return WxMpGsonBuilder.create().fromJson(json, WxDeviceBindDeviceResult.class); | |||
} | |||
private class Device { | |||
@SerializedName("device_type") | |||
private String deviceType; | |||
@SerializedName("device_id") | |||
private String deviceId; | |||
public String getDeviceType() { | |||
return deviceType; | |||
} | |||
public void setDeviceType(String deviceType) { | |||
this.deviceType = deviceType; | |||
} | |||
public String getDeviceId() { | |||
return deviceId; | |||
} | |||
public void setDeviceId(String deviceId) { | |||
this.deviceId = deviceId; | |||
} | |||
} | |||
} |
@@ -0,0 +1,56 @@ | |||
package me.chanjar.weixin.mp.bean.device; | |||
import com.google.gson.annotations.SerializedName; | |||
import me.chanjar.weixin.mp.util.json.WxMpGsonBuilder; | |||
import java.util.List; | |||
/** | |||
* Created by keungtung on 16/12/2016. | |||
*/ | |||
public class WxDeviceOpenIdResult extends AbstractDeviceBean { | |||
@SerializedName("errcode") | |||
private Integer errCode; | |||
@SerializedName("errmsg") | |||
private String errMsg; | |||
@SerializedName("open_id") | |||
private List<String> openIds; | |||
@SerializedName("resp_msg") | |||
private RespMsg respMsg; | |||
public static WxDeviceOpenIdResult fromJson(String json) { | |||
return WxMpGsonBuilder.create().fromJson(json, WxDeviceOpenIdResult.class); | |||
} | |||
public Integer getErrCode() { | |||
return errCode; | |||
} | |||
public void setErrCode(Integer errCode) { | |||
this.errCode = errCode; | |||
} | |||
public String getErrMsg() { | |||
return errMsg; | |||
} | |||
public void setErrMsg(String errMsg) { | |||
this.errMsg = errMsg; | |||
} | |||
public List<String> getOpenIds() { | |||
return openIds; | |||
} | |||
public void setOpenIds(List<String> openIds) { | |||
this.openIds = openIds; | |||
} | |||
public RespMsg getRespMsg() { | |||
return respMsg; | |||
} | |||
public void setRespMsg(RespMsg respMsg) { | |||
this.respMsg = respMsg; | |||
} | |||
} |
@@ -6,15 +6,15 @@ import me.chanjar.weixin.mp.util.json.WxMpGsonBuilder; | |||
/** | |||
* Created by keungtung on 10/12/2016. | |||
*/ | |||
public class WxDeviceQrCodeResult extends AbstractDeviceBean{ | |||
public class WxDeviceQrCodeResult extends AbstractDeviceBean { | |||
@SerializedName("deviceid") | |||
private String deviceId; | |||
@SerializedName("qrticket") | |||
private String qrTicket; | |||
@SerializedName("devicelicence") | |||
private String deviceLicence; | |||
@SerializedName("resp_msg") | |||
private RespMsg respMsg; | |||
@SerializedName("base_resp") | |||
private BaseResp baseResp; | |||
public static WxDeviceQrCodeResult fromJson(String json) { | |||
return WxMpGsonBuilder.INSTANCE.create().fromJson(json, WxDeviceQrCodeResult.class); | |||
@@ -28,12 +28,12 @@ public class WxDeviceQrCodeResult extends AbstractDeviceBean{ | |||
this.deviceLicence = deviceLicence; | |||
} | |||
public RespMsg getRespMsg() { | |||
return respMsg; | |||
public BaseResp getBaseResp() { | |||
return baseResp; | |||
} | |||
public void setRespMsg(RespMsg respMsg) { | |||
this.respMsg = respMsg; | |||
public void setBaseResp(BaseResp baseResp) { | |||
this.baseResp = baseResp; | |||
} | |||
public String getDeviceId() { | |||