Giter Site home page Giter Site logo

wildfirechat / ios-chat Goto Github PK

View Code? Open in Web Editor NEW
1.1K 26.0 506.0 2.38 GB

即时通讯,聊天,野火IM iOS客户端

Home Page: http://docs.wildfirechat.cn

License: Other

C 1.23% Objective-C 80.80% Objective-C++ 7.32% C++ 10.46% Shell 0.19%
im chat chat-room voip mqtt wechat weixin messaging instant-message

ios-chat's Introduction

野火IM解决方案

野火IM是专业级即时通讯和实时音视频整体解决方案,由北京野火无限网络科技有限公司维护和支持。

主要特性有:私有部署安全可靠,性能强大,功能齐全,全平台支持,开源率高,部署运维简单,二次开发友好,方便与第三方系统对接或者嵌入现有系统中。详细情况请参考在线文档

主要包括一下项目:

GitHub仓库地址(主站) 码云仓库地址(镜像) 说明 备注
im-server im-server IM Server
android-chat android-chat 野火IM Android SDK源码和App源码 可以很方便地进行二次开发,或集成到现有应用当中
ios-chat ios-chat 野火IM iOS SDK源码和App源码 可以很方便地进行二次开发,或集成到现有应用当中
pc-chat pc-chat 基于Electron开发的PC 端
web-chat web-chat 野火IM Web 端, 体验地址
wx-chat wx-chat 小程序平台的Demo(支持微信、百度、阿里、字节、QQ 等小程序平台)
app server app server 应用服务端
robot_server robot_server 机器人服务端
push_server push_server 推送服务器
docs docs 野火IM相关文档,包含设计、概念、开发、使用说明,在线查看

说明

本工程为野火IM iOS App。开发过程中,充分考虑了二次开发和集成需求,可作为SDK集成到其他应用中,或者直接进行二次开发。

开发一套IM系统真的很艰辛,请路过的朋友们给点个star,支持我们坚持下去🙏🙏🙏🙏🙏

联系我们

商务合作请优先采用邮箱和我们联系。技术问题请到野火IM论坛发帖交流。

  1. heavyrain.lee 邮箱: [email protected] 微信:wildfirechat
  2. imndx 邮箱: [email protected] 微信:wfchat

问题交流

  1. 如果大家发现bug,请在GitHub提issue
  2. 其他问题,请到野火IM论坛进行交流学习
  3. 微信公众号

强烈建议关注我们的公众号。我们有新版本发布或者有重大更新会通过公众号通知大家,另外我们也会不定期的发布一些关于野火IM的技术介绍。

体验Demo

我们提供了体验demo,请使用微信扫码下载安装体验

野火IM

应用截图

ios-demo

工程说明

工程中有3个项目,其中1个是应用,另外两个2个是库。chatclient库是IM的通讯能力,是最底层的库,chatuikit是IM的UI控件库,依赖于chatclient。chat是IM的demo,依赖于这两个库,chat需要正确配置服务器地址。

配置

在项目的Config.m文件中,修改IM服务器地址配置。把IM_SERVER_HOSTIM_SERVER_PORT设置成火信的地址和端口。另外需要搭配应用服务器,请按照说明部署好应用服务器,然后把APP_SERVER_HOSTAPP_SERVER_PORT设置为应用服务器的地址和端口。

登陆

使用手机号码及验证码登陆,

在没有短信供应商时,可以使用superCode进行测试验证。

集成

在集成到其他应用中时,如果使用了UIKit库,需要在应用的Info.plist文件中添加属性CFBundleAllowMixedLocalizations值为true。项目下的脚本release_libs.sh可以把chatclient和chatuikit打包成动态库,把生成的库和资源添加到工程依赖中,注意库是动态库,需要"Embed"。此外还可以把chatclient和chatuikit项目直接添加到工程依赖中。

第三方动态库

  1. SDWebImage
  2. ZLPhotoBrowser

UI层使用了它们的动态库,如果需要源码可以去对应地址下载,可以自己编译替换第三方动态库。

推送

当应用在后台几秒钟后就会被冻结和杀掉,此时收到消息需要APNS通知。请部署推送服务,推送服务代码可以在Github码云下载。具体使用方式,请参考推送服务项目上的说明。

升级说明

2022.11.05 iOS SDK修改了kUserInfoUpdatedkGroupInfoUpdated和```kChannelInfoUpdated````通知。把之前的单个通知,改成了批量通知,请注意这个变化。

感谢

本工程使用了mars及其它大量优秀的开源项目,对他们的贡献表示感谢。本工程使用的Icon全部来源于icons8,对他们表示感谢。Gif动态图来源于网络,对网友的制作表示感谢。如果有什么地方侵犯了您的权益,请联系我们删除🙏🙏🙏

License

  1. Under the Creative Commons Attribution-NoDerivs 3.0 Unported license. See the LICENSE file for details.
  2. Under the 996ICU License. See the LICENSE file for details.

ios-chat's People

Contributors

0xabccba avatar heavyrain2012 avatar huayunzhangke avatar imhao183 avatar imndx avatar impyf104 avatar jiangecho avatar manbutianya avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ios-chat's Issues

重大问题,在iOS9设备上无法正常使用

在iOS9设备上,第一次登陆APP后,在第二次打开APP后,无法正常连接IM服务器,返回错误code为-6:秘钥错误。同时再次进入通过登陆进入APP,联系和会话列表无法查询出数据。

通讯录能否添加一个好友来源的字段

这是一个新的需求,通讯录的好友列表,能否增加一个好友来源的字段,一个可以自定义的字符串。(比如:“来自二维码扫描”、“来自手机联系人”、“来自xx群聊”)

表情包崩溃

在显示出底部表情包后,选择第二项或者第三项,然后再点击第一项或者直接点击第一项,出现崩溃。
崩溃处代码:WFUFaceBoard -> [_collectionView scrollToItemAtIndexPath:minOne atScrollPosition:UICollectionViewScrollPositionCenteredHorizontally animated:NO];

searchMessage方法返回空

搜索到同一个联系的多条消息记录,使用

  • (NSArray<WFCCMessage *> *)searchMessage:(WFCCConversation *)conversation
    keyword:(NSString *)keyword;
    继续查询消息内容,一直返回空

安卓应用无后台运行权限

安卓设备再运行的时候,如果切换到后台运行,经常会被系统杀死进程。
发现是安卓权限上,无允许应用后台运行权限。
是否可以增加下后台运行权限。
已便于用户再安卓设备上可以更加及时的接受到信息

专业版咨询

你好。
文档里描述,专业版可分布式部署。 请教下
1:支持本地私有化部署 ?
2:分布式部署,是借助于何种方式呢?
谢谢

群组拉人出错

踢人之后再重新拉人,没有拉成功,拉第二次才会成功,发送了两条通知
image

缺少库文件

你好!
下载的demo没有 WFChatUIKit.framework 跟 WFAVEngineKit.framework 这两个库 能否提供下?谢谢!

ios推送,pro签证有时会收不到

使用pro签证的时候,只能收到第一则讯息
之后的讯息就不会再收到推送。

使用过APNS Online Tester来进行推送是没问题的。
有查过PushServer跟IM Server但还不知道问题在哪

覆盖安装出错

[DB2.cc, RecyclableStatement, 33][prepare db error:26 info:file is not a database sql:replace into t_friend(_friend_uid,_state,_update_dt,_alias) values(?,?,?,?)

重新登录也拉不到数据,,卸载了才可以

删除会话和删除消息无效。删除会话和消息,app已卸载。重装之后,会话和聊天数据仍然可以加载。

调用接口
[[WFCCIMService sharedWFCIMService] removeConversation:ws.conversations[indexPath.row].conversation clearMessage:YES];
删除会话和消息,显示成功。
之后删除app,重新run,
然后调接口[[[WFCCIMService sharedWFCIMService] getConversationInfos:@[@(Single_Type), @(Group_Type), @(Channel_Type)] lines:@[@(0), @(1)]] mutableCopy];
或者调接口[[WFCCIMService sharedWFCIMService] getConversationInfo:self.conversation];
仍然返回之前被删除的会话和消息。

群管理功能异常

1.群管理功能,添加了一个管理员。管理员设置了群禁言,管理员可以发消息。但是群主不能发消息了
2.管理员开启了禁言,群主的群禁言管理界面没有刷新

price

i don`t accept the price

非本群人员进群出错

目前只有一个addMember方法只能通过群成员邀请好友入群,非本群成员通过扫码入群无效。
使用addMembers:方法会报错code=9,此用户不在群组内。

iOS端会话删除问题

最新的iOS端,在会话页面,侧滑删除了会话记录后,再次进入会话界面,又再次拉取出了这条被删除的记录

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.