package com.yeshi.fanli.service.inter.push; import java.util.List; import com.yeshi.fanli.entity.push.DeviceTokenIOS; import com.yeshi.fanli.entity.push.PushQueueRecord; import com.yeshi.fanli.exception.PushException; /** * IOS推送服务 * * @author Administrator * */ public interface IOSPushService extends BasePushService { /** * 添加设备的devicetoken * * @param uid * @param deviceToken * @param device */ public void addDeviceToken(Long uid, int version, String deviceToken, String device); /** * 更新设备的deviceToken * * @param deviceTokenIos */ public void updateDeviceToken(DeviceTokenIOS deviceTokenIos); /** * 通过设备号获取DeviceToken * * @param device * @return */ public DeviceTokenIOS getDeviceTokenByDeviceToken(String deviceToken); /** * 根据用户ID获取DeviceToken * * @param uid * @return */ public List getDeviceTokenListByUid(Long uid); /** * 获取DeviceToken不为空的列表 * * @param page * @param size * @return */ public List getDeviceTokenList(int page, int size); /** * 获取DeviceToken不为空的数量 * * @return */ public long getDeviceTokenCount(); /** * 解绑用户与设备的关系 * * @param device */ public void unBindUidAndDevice(String device); /** * 执行推送-队列 * * @param pushQueueRecord * @throws Exception */ public void executePushIOS(List list, PushQueueRecord pushQueueRecord, long recordCursor) throws Exception; /** * 循环处理 * * @param pushQueueRecord * @throws Exception */ public void readyPushIOS(PushQueueRecord pushQueueRecord) throws Exception; }