该接口为网络连接(connection)对象的总接口.每一个网络连接对象都要包含一个客户端(Client)对象和域(Scope)对象.这些网络连接可以是持续连接,轮迅连接或者即时性连接.该接口的目的就是要为这些不同类型的连接提供一个基本的网络连接方法.
嵌套类:
IConnection.Encoding
public static enum Encoding {
AMF0,
AMF3
};
主要描述AMF编码的两种类型:AMF0,AMF3
静态域:
static final String PERSISTENT:表示持久连接类型,例如:RTMP等.
static final String POLLING:表示轮询连接类型,例如:RTMPT等.
static final String TRANSIENT:表示即时连接类型,例如:HTTP等.
方法详细介绍:
String getType() : 获得连接类型,用字符串来表示.可以是"persistent","polling"或者"transient".
IConnection.Encoding getEncoding() : 获得编码协议类型(AMF的版本).
void initialize(IClient client) : 通过过一个与连接对象想关联的客户端对象初始化连接对象.
boolean connect(IScope scope) : 尝试与指定的域(Scope)对象连接.成功返回True,失败返回False.
boolean connect(IScope scope,Object[] params) : 尝试与指定的域(Scope)对象连接同时传入一个参数列表.成功返回True,失败返回False.
boolean isConnected() : 判断客户端对象是否与域对象保持连接.返回的结果依赖于连接的类型.True表示连接的类型是持久连接或者轮询连接,False表示是即时性连接.
void close() : 断开客户端与域之间的连接.
Map<String,Object> getConnectParams() : 获得连接时候客户端(Flex/Flash应用程序)传入的参数列表.
IClient getClient() : 返回与网络连接对象相关联的客户端对象.
String getHost() : 返回客户端对象所连接的服务器的名称,如果客户端对象是使用的
IP地址连接的,则以字符串形式直接返回服务器的IP地址.
String getRemoteAddress() : 获得客户端对象的IP地址.
int getRemotePort() : 获得客户端对象的端口号.
String getPath() : 获得连接域的路径.但是请注意,如果你转换了域,这路径并不会更新.
String getSessionId() : 返回会话的ID,在这里很可能放回值为Null.
long getReadBytes() : 返回从网络连接对象所读到的所有字节码总量.
long getWrittenBytes() : 获得写入连接对象的字节码总量.
long getReadMessages() : 获得从连接对象中读出信息总量.
long getWrittenMessages() : 获得写入连接对象的信息总量.
long getDroppedMessages() : 获得丢弃信息总量.
long getPendingMessages() : 获得正在发送到连接对象的信息总量.
void ping() : 检测网络连接响应时间.
int getLastPingTime() : 获得最后一次检测网络连接响应时间的毫秒值.
IScope getScope() : 获得网络连接相关联的域对象.
Iterator<IBasicScope> getBasicScopes() : 返回该连接对象订阅过的基本域对象(BasicScope).该列表将会包含该网络连接对象所连接的共享对象(shared object),广播流对象(broadcast streams).
嵌套类:
IConnection.Encoding
public static enum Encoding {
AMF0,
AMF3
};
主要描述AMF编码的两种类型:AMF0,AMF3
静态域:
static final String PERSISTENT:表示持久连接类型,例如:RTMP等.
static final String POLLING:表示轮询连接类型,例如:RTMPT等.
static final String TRANSIENT:表示即时连接类型,例如:HTTP等.
方法详细介绍:
String getType() : 获得连接类型,用字符串来表示.可以是"persistent","polling"或者"transient".
IConnection.Encoding getEncoding() : 获得编码协议类型(AMF的版本).
void initialize(IClient client) : 通过过一个与连接对象想关联的客户端对象初始化连接对象.
boolean connect(IScope scope) : 尝试与指定的域(Scope)对象连接.成功返回True,失败返回False.
boolean connect(IScope scope,Object[] params) : 尝试与指定的域(Scope)对象连接同时传入一个参数列表.成功返回True,失败返回False.
boolean isConnected() : 判断客户端对象是否与域对象保持连接.返回的结果依赖于连接的类型.True表示连接的类型是持久连接或者轮询连接,False表示是即时性连接.
void close() : 断开客户端与域之间的连接.
Map<String,Object> getConnectParams() : 获得连接时候客户端(Flex/Flash应用程序)传入的参数列表.
IClient getClient() : 返回与网络连接对象相关联的客户端对象.
String getHost() : 返回客户端对象所连接的服务器的名称,如果客户端对象是使用的
IP地址连接的,则以字符串形式直接返回服务器的IP地址.
String getRemoteAddress() : 获得客户端对象的IP地址.
int getRemotePort() : 获得客户端对象的端口号.
String getPath() : 获得连接域的路径.但是请注意,如果你转换了域,这路径并不会更新.
String getSessionId() : 返回会话的ID,在这里很可能放回值为Null.
long getReadBytes() : 返回从网络连接对象所读到的所有字节码总量.
long getWrittenBytes() : 获得写入连接对象的字节码总量.
long getReadMessages() : 获得从连接对象中读出信息总量.
long getWrittenMessages() : 获得写入连接对象的信息总量.
long getDroppedMessages() : 获得丢弃信息总量.
long getPendingMessages() : 获得正在发送到连接对象的信息总量.
void ping() : 检测网络连接响应时间.
int getLastPingTime() : 获得最后一次检测网络连接响应时间的毫秒值.
IScope getScope() : 获得网络连接相关联的域对象.
Iterator<IBasicScope> getBasicScopes() : 返回该连接对象订阅过的基本域对象(BasicScope).该列表将会包含该网络连接对象所连接的共享对象(shared object),广播流对象(broadcast streams).
相关推荐
以下是一些关键的API接口及其在Red5中的功能: 1. **AttributeStoreMBean** 和 **IAttributeStore**: 这些接口定义了存储和操作属性的机制。它们是所有具有属性的API对象的基础,允许开发者添加、删除和检索对象...
5. 在文档的版权信息部分,提醒用户注意文档是通过OCR扫描生成,可能存在识别错误或遗漏,这要求用户在使用时要对文档内容进行核对和理解,以保证API调用的正确性。 总体来说,该文件为开发者提供了关于实时数据库...
import org.red5.server.api.IConnection; import org.red5.server.api.IScope; import org.red5.server.api.service.IServiceInvoker; import org.red5.server.api.service.IServiceable; import org.red5.server....
import org.red5.server.api.IConnection; public class Application extends ApplicationAdapter { public boolean appConnect(IConnection conn, Object[] args) { System.out.println("连接"); return true; ...
import org.red5.server.api.IConnection; import org.red5.server.api.IClient; import org.red5.server.api.IScope; import org.red5.server.api.Red5; import org.red5.server.api.service....
`IStreamPublishSecurity`接口是Red5的核心组件之一,它提供了一种机制,使得在客户端尝试发布流到服务器时,服务器能够执行预定义的安全检查。这个接口通常用于实现对发布者的IP地址、用户名、密码或其他自定义条件...
在开发Red5应用程序时,理解并熟练使用这些核心API至关重要,它们构成了Red5功能的基础,并允许开发者构建复杂的流媒体解决方案。无论是实时视频播放、文件流化还是与其他客户端的交互,Red5都提供了丰富的工具和...
通过这些代码示例,开发者可以更好地理解如何利用Red5进行音视频的录制和播放。 ### 总结 本文详细介绍了基于Red5的录音录像方法和代码实现。通过对Red5的基本概念、录音录像原理以及具体实现细节的讲解,可以帮助...
首先,我们需要了解 RED5 的核心接口和类。在提供的代码中,`ApplicationAdapter` 是 RED5 应用程序的基础适配器,它实现了 RED5 服务器与应用之间的交互。`IClient` 和 `IConnection` 分别代表客户端和客户端连接,...
IConnection myConn = Red5.getConnectionLocal(); if (myConn instanceof IServiceCapableConnection) { IServiceCapableConnection sc = (IServiceCapableConnection) myConn; sc.invoke("myCaller", new ...
Red5流媒体服务器是一款...这些接口和类构成了Red5的核心,让开发者能够构建高度定制化的流媒体解决方案。通过深入理解和熟练运用这些工具,你可以创建自己的流媒体应用,实现视频直播、点播、交互式内容等各种功能。
RED5的核心服务之一是`IConnectionManager`接口,它负责管理所有的连接。在实际实现中,这个接口由`SimpleConnectionManager`类来实现。这个类维护了一个`ConcurrentHashMap`,键是客户端的唯一标识(通常是FMS连接...
import org.red5.server.api.IConnection; public class Application extends ApplicationAdapter { // ... 实现与客户端交互的逻辑 ... } ``` #### 8. Openfire介绍 - **Openfire**: 一款基于Java开发的开源...
在抽象产品部分,我们需要定义`IConnection`和`IDataAdapter`接口,以及对应的SQL Server和Oracle的具体实现: ```asp <!--#include file="IConnection.asp"--> Interface IConnection Property ConnectionString...
5. 关闭资源:完成请求后,记得关闭RHTTPSession和RConnection,释放系统资源。 四、实战技巧与注意事项 1. 错误处理:Symbian系统编程中,错误处理是不可或缺的部分。在使用HTTP API时,要时刻关注返回的错误代码...
而Tuple发送则涉及到IConnection接口以及不同的grouping策略。 TridentTopology是Storm提供的高层次抽象,它简化了Topology的定义。TridentTopology允许开发者以更简单的API进行实时计算任务的构建,同时支持了状态...
例如,我们可以有`IConnection`、`ICommand`、`IDbTransaction`等接口,这些是所有数据库都共有的操作。 4. **具体产品**:实现了抽象产品的接口,代表由具体工厂创建的对象。例如,`MySqlConnection`、`MySql...
接着,通过连接工厂创建一个连接(IConnection)和一个信道(IModel)。信道是与RabbitMQ服务器交互的主要接口,用于发送和接收消息。 ```csharp var factory = new ConnectionFactory() { HostName = "localhost" ...
这些API包括`ConnectionFactory`用于创建到RabbitMQ服务器的连接,`IConnection`接口代表网络连接,`IModel`接口代表通道,这是执行AMQP命令的基本单位。 **3. 连接与通道** 在使用RabbitMQ.Client时,首先需要通过...