JXChatViewController.h 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147
  1. //
  2. // JXChatViewController.h
  3. //
  4. // Created by Reese on 13-8-11.
  5. // Copyright (c) 2013年 Reese. All rights reserved.
  6. //
  7. #import <UIKit/UIKit.h>
  8. #import <CoreData/CoreData.h>
  9. #import <AVFoundation/AVFoundation.h>
  10. #import "JXTableViewController.h"
  11. #import "JXTableMsgChatVC.h"
  12. #import "JXLocationVC.h"
  13. #import "SimpleAudioPlayer.h"
  14. @class JXEmoji;
  15. @class JXSelectImageView;
  16. @class JXVolumeView;
  17. @class JXRoomObject;
  18. @class JXBaseChatCell;
  19. @class JXVideoPlayer;
  20. typedef void(^PerBlockBtn)(memberData *personData);
  21. @interface JXChatViewController : JXTableMsgChatVC<UIImagePickerControllerDelegate,UITextViewDelegate,AVAudioPlayerDelegate,UIImagePickerControllerDelegate,AVAudioRecorderDelegate,UINavigationControllerDelegate,LXActionSheetDelegate>
  22. {
  23. NSMutableArray *_pool;
  24. UITextView *_messageText;
  25. // UIImageView *inputBar;
  26. UIButton* _recordBtn;
  27. UIButton* _recordBtnLeft;
  28. UIImage *_myHeadImage,*_userHeadImage;
  29. JXSelectImageView *_moreView;
  30. UIButton* _btnFace;
  31. emojiViewController* _faceView;
  32. JXEmoji* _messageConent;
  33. BOOL recording;
  34. NSTimer *peakTimer;
  35. AVAudioRecorder *audioRecorder;
  36. AVAudioPlayer *audioPlayer;
  37. NSURL *pathURL;
  38. UIView* talkView;
  39. NSString* _lastRecordFile;
  40. NSString* _lastPlayerFile;
  41. NSTimeInterval _lastPlayerTime;
  42. long _lastIndex;
  43. double lowPassResults;
  44. NSTimeInterval _timeLen;
  45. int _refreshCount;
  46. JXVolumeView* _voice;
  47. NSTimeInterval _disableSay;
  48. NSString * _audioMeetingNo;
  49. NSString * _videoMeetingNo;
  50. NSMutableArray * _orderRedPacketArray ;
  51. }
  52. - (IBAction)sendIt:(id)sender;
  53. - (IBAction)shareMore:(id)sender;
  54. //- (void)refresh;
  55. //- (void)createPerson:(^PerBlockBtn)(memberData *personData);
  56. -(void)createPerson:(memberData *)url success:(void(^)(memberData *responseObject))success;
  57. @property (nonatomic,strong) AVPlayer *palyer;
  58. @property (nonatomic,weak) UIImageView *inputBar;
  59. @property (nonatomic,copy) NSString *backUserId;
  60. @property (nonatomic,strong) memberData *memberDataXX;
  61. @property (nonatomic,strong) NSArray *groupLevelNameArray;// 群头衔数组
  62. @property (nonatomic,strong) JXRoomObject* chatRoom;
  63. @property (nonatomic,strong) roomData * room;
  64. @property (nonatomic,strong) NSDictionary * lotterDict;
  65. @property (nonatomic,strong) NSMutableArray * oneAtttenPersonArr;
  66. @property (nonatomic,assign) NSInteger selectIndexAaaa;
  67. @property (nonatomic,strong) JXUserObject *chatPerson;//必须要赋值
  68. @property (nonatomic, strong) JXMessageObject *lastMsg;
  69. @property (nonatomic,strong) NSString* roomJid;//相当于RoomJid
  70. @property (nonatomic,strong) NSString* fromUserID;//相当于RoomJid
  71. @property (nonatomic,assign) int tempChat;//相当于RoomJid
  72. @property (nonatomic,assign) int biaotishifoBC;//相当于RoomJid
  73. @property (nonatomic,assign) BOOL isAttritionRecall;
  74. @property (nonatomic,assign) BOOL isOpenIntegral;
  75. @property (nonatomic,strong) NSString* gongzonghaoID;
  76. @property (nonatomic,assign) int isShowRedPackage;
  77. @property (nonatomic,assign) int intAAA;
  78. @property (nonatomic,strong) NSString* roomId;
  79. @property (nonatomic,strong) JXBaseChatCell* selCell;
  80. @property (nonatomic,strong) JXLocationVC * locationVC;
  81. @property (nonatomic, strong) NSMutableArray *array;
  82. //@property (nonatomic, strong) JXMessageObject *relayMsg;
  83. @property (nonatomic, strong) NSMutableArray *relayMsgArray;
  84. @property (nonatomic, assign) int scrollLine;
  85. @property (nonatomic, strong) NSMutableArray *courseArray;
  86. @property (nonatomic, copy) NSString *courseId;
  87. @property (nonatomic, strong) NSNumber *groupStatus;
  88. @property (nonatomic, assign) BOOL isCYMSGgroupANDFriendy;
  89. @property (nonatomic, strong) NSMutableArray *userNamesWithGroup;
  90. @property (nonatomic, strong) NSMutableArray *userNmaesWithFriend;
  91. @property (nonatomic, assign) BOOL isGroupMessages;
  92. @property (nonatomic, strong) NSMutableArray *userIds;
  93. @property (nonatomic, strong) NSMutableArray *userNames;
  94. @property (nonatomic, assign) BOOL isHiddenFooter;
  95. @property (nonatomic, strong) NSMutableArray *chatLogArray;
  96. @property (nonatomic, assign) NSInteger rowIndex;
  97. @property (nonatomic, assign) int newMsgCount;
  98. @property (nonatomic, strong) JXVideoPlayer *player;
  99. @property (nonatomic, strong) UIView *playerView;
  100. @property (nonatomic, assign) BOOL isShare;
  101. @property (nonatomic, copy) NSString *shareSchemes;
  102. @property (nonatomic, copy) NSString *pushType;
  103. @property (nonatomic, assign) int useInfoTempChat;
  104. @property (nonatomic, assign) int enterFirst;
  105. @property (nonatomic, copy) NSString *customerPush;
  106. -(void)sendRedPacket:(NSDictionary*)redPacketDict withGreet:(NSString *)greet;
  107. //-(void)onPlay;
  108. //-(void)recordPlay:(long)index;
  109. -(void)resend:(JXMessageObject*)p;
  110. -(void)deleteMsg:(JXMessageObject*)p;
  111. -(void)showOneMsg:(JXMessageObject*)msg;
  112. -(void)showBack:(memberData*)msguser;
  113. @end