国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

XMPP收發消息2

2019-11-14 20:00:36
字體:
來源:轉載
供稿:網友

Message:

接著寫

.h 

 1 /*! 2  *  @Author Dylan. 3  * 4  *  callback Block 5  */ 6 typedef void(^sendSuccess)(); 7 typedef void(^sendFailure)(id); 8  9 /*!10  *  sendMessageBy model11  */12 - (void)sendMessage: (ADMessageModel *)message13         sendSuccess: (sendSuccess)success14         sendFailure: (sendFailure)failure;15 16 /*!17  *  @Author Dylan.18  *19  *  unRead Msg20  */21 @PRoperty (nonatomic, strong) NSMutableDictionary * unReadMsg;22 23 /*!24  *  @Author Dylan.25  *26  *  new Msg27  */28 @property (nonatomic, copy) void (^newMessage) (id);29 30 31 @end

.m

 1 #pragma mark - initData 2 - (void)initData { 3     // 可做數據持久化 4     self.unReadMsg = [NSMutableDictionary dictionary]; 5 } 6  7 #pragma mark Methods 8 - (void)sendMessage: (ADMessageModel *)message 9         sendSuccess: (sendSuccess)success10         sendFailure: (sendFailure)failure {11     12     // set callback block13     self.success = success;14     self.failure = failure;15     16     NSxmlElement * body = [NSXMLElement elementWithName:@"body"];17     [body setStringValue:message.body];18     19     //生成XML消息文檔20     NSXMLElement *mes = [NSXMLElement elementWithName:@"message"];21     //消息類型22     [mes addAttributeWithName:@"type" stringValue:@"chat"];23     //發送給誰24     [mes addAttributeWithName:@"to" stringValue:message.to];25     //由誰發送26     [mes addAttributeWithName:@"from" stringValue:message.from];27     //組合28     [mes addChild:body];29     //發送消息30     [[self xmppStream] sendElement:mes];31 }32 33 #pragma mark - delegeteMethods34 - (void)xmppStream:(XMPPStream *)sender didReceiveMessage:(XMPPMessage *)message {35     36     NSString * body = [[message elementForName:@"body"] stringValue];37     NSString * from = [[message attributeForName:@"from"] stringValue];38     39     if (body != nil) {40         41         NSMutableDictionary * msgDict = [NSMutableDictionary dictionary];42         ADMessageModel * model = [[ADMessageModel alloc] init];43         model.body = body;44         model.from = from;45         [msgDict setValue:model forKey:[ADCurrentTime getCurrentTime]];46         47         if ([from isEqualToString:[[NSUserDefaults standardUserDefaults] stringForKey:CURRENT_CHAT]]) {48             49             self.newMessage(msgDict);50         } else {51             // not current chat52             if ([_unReadMsg.allKeys containsObject:from]) {53                 [_unReadMsg[from] addObject:model];54             } else {55                 [_unReadMsg setValue:[NSMutableArray arrayWithObject:msgDict] forKey:from];56             }57         }58         59     }60 }61 62 @end

 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 噶尔县| 财经| 蕉岭县| 松桃| 独山县| 卢湾区| 饶阳县| 津市市| 宜章县| 潞西市| 南通市| 新蔡县| 镇安县| 腾冲县| 新宾| 蓝田县| 东海县| 青海省| 清流县| 江川县| 绍兴县| 平乡县| 巴青县| 二连浩特市| 驻马店市| 泰和县| 遵化市| 淮阳县| 松溪县| 钟山县| 临汾市| 大足县| 化隆| 梨树县| 定南县| 天柱县| 宿松县| 巢湖市| 互助| 巨野县| 永平县|