#### **登录方式说明**
#### AnyChat sdk支持两种登录方式,分别如下:
1. 密码登录
密码登录,只需要在AnyChat初始化接口中传入服务器ip,端口号以及用户账号和密码(密码字段为可选),即可登录。
```
AnyChatSDK anychatSDK = AnyChatSDK.getInstance();
AnyChatInitOpt initOpt = new AnyChatInitOpt( nickName, strUserId, password, serverIp, serverPort, loginEvent)
anychatSDK.sdkInit(initOpt);//初始化
```
2. 签名登录
一种更高安全级别的登录方式,只有AnyChat服务集群与云平台才支持签名登录,终端客户登录时,需要向身份验证系统获取签名,签名由应用的私钥生成,AnyChat服务器使用应用公钥认证签名,并根据认证结果决定是否让应用终端接入。
客户如果购买的是AnyChat服务器集群,需在集群控制台配置应用ID和公钥;如果购买的是AnyChat视频云服务,应用ID由购买应用时生成,密钥由应用激活时生成。
```
AnyChatSDK anychatSDK = AnyChatSDK.getInstance();
// anychatSDK is the instance of sdk
AnyChatInitOpt initOpt = new AnyChatInitOpt( nickName, strUserId, password, serverIp, serverPort, loginEvent)
anychatSDK.sdkInit(initOpt);//初始化
```
#### 签名登录具体流程如下:

1. 业务系统需部署身份验证系统,当用户在业务系统的登录页面输入用户账号和密码进行登录时,身份验证系统首先验证用户登录信息的合法性,如验证通过,则根据应用id和用户账号生成签名信息,并将签名信息返回给前端。
2. 前端使用签名信息登录AnyChat服务器,AnyChat服务器返回登录结果.
#### 应用签名的生成请参考以下示例程序:
| 语言| 下载包 |
| --- | --- |
| java| [AnyChatSignDemo.rar](https://static.anychat.cn/code/AnyChatSignDemo.rar)|
| PHP| [AnyChatSignDemoForPHP.rar](https://static.anychat.cn/code/AnyChatSignDemoForPHP.rar)|
| Nodejs|[AnyChatSignDemoForNodejs.rar](https://static.anychat.cn/code/AnyChatSignDemoForNodejs.rar)|
- SDK介绍
- 工程准备
- 下载AnyChat Java SDK
- 导入SDK
- 开发流程
- 初始化SDK
- 初始化及自动登录
- 退出及释放连接
- 版本信息查询
- 登录方式说明
- 服务器连接断开通知事件
- 会话保持注册和销毁事件
- 房间管理
- 注册房间管理事件
- 注销房间管理事件
- 进入房间
- 获取房间中的用户列表
- 房间内的文字交流
- 退出房间
- 音视频操作
- 音视频互动
- 本地麦克风管理
- 打开本地麦克风
- 关闭本地麦克风
- 本地摄像头管理
- 打开本地摄像头
- 关闭本地摄像头
- 切换本地摄像头
- 接收/终止对方音频流
- 接收远程音频流
- 关闭远程音频流
- 接收/终止对方视频流
- 接收远程视频流
- 关闭远程视频流
- 视频呼叫
- 注册视频呼叫事件
- 客户呼叫
- 客户取消呼叫
- 接受视频呼叫
- 拒绝接听
- 挂断通话
- 注销视频呼叫事件
- 录制(录音录像)
- 开始录制
- 在录制文件中添加图片水印
- 在录制文件中添加文字水印
- 在录像中插入图片
- 结束录制
- 视频拍照
- 抓拍
- 智能排队
- 初始化排队模块
- 营业厅操作
- 获取营业厅列表
- 进入营业厅
- 席座服务状态设置
- 离开营业厅
- 排队操作
- 排队
- 取消排队
- 状态查询
- 查询坐席状态
- 查询队列排队人数
- 查询当前排队时间
- 注册智能排队事件的监听
- 注销智能排队事件的监听
- 文件传输
- 初始化文件模块
- 注册文件接收通知事件
- 注销文件接收通知事件
- 创建文件下载任务
- 创建文件传输任务
- 文件上传到服务器
- 初始化文件上传到服务器功能
- 创建上传文件到服务器任务
- 透明通道
- 透明通道发送消息
- 注册接收透明通道通知事件
- 注销接收透明通道通知事件
- 错误码
