148.5. HipChat Producer
生产者可以同时发送消息到 Room 和 User。交换的正文作为消息发送。示例用法如下所示:需要设置适当的标头。
@Override public void configure() throws Exception { String hipchatEndpointUri = "hipchat://?authToken=XXXX"; from("direct:start") .to(hipchatEndpointUri) .to("mock:result"); }
148.5.1. Hipchat producer 评估的消息标头
标头 | 常数 | 类型 | 描述 |
---|---|---|---|
HipchatToUser | HipchatConstants.TO_USER | 字符串 | 需要发送消息的 Hipchat 用户。 |
HipchatToRoom | HipchatConstants.TO_ROOM | 字符串 | 需要发送消息的 Hipchat 房间。 |
HipchatMessageFormat | HipchatConstants.MESSAGE_FORMAT | 字符串 | 有效格式为 'text' 或 'html'。默认: 'text' |
HipchatMessageBackgroundColor | HipchatConstants.MESSAGE_BACKGROUND_COLOR | 字符串 | 有效颜色值是 'yellow', 'green', 'red', 'purple', 'gray', 'random'。默认: 'yellow'(Room Only) |
HipchatTriggerNotification | HipchatConstants.TRIGGER_NOTIFY | 字符串 | 有效值为 'true' 或 'false'。此消息是否应触发用户通知(更改选项卡颜色、播放声音、通知手机等)。默认: 'false'(仅Room Only) |
148.5.2. Hipchat producer 设置的消息标头
标头 | 常数 | 类型 | 描述 |
---|---|---|---|
HipchatToUserResponseStatus | HipchatConstants.TO_USER_RESPONSE_STATUS | StatusLine 发送到用户时收到的消息的状态。 | HipchatFromUserResponseStatus |
148.5.3. 配置 Http Client
HipChat 组件允许您自己的 HttpClient
配置。这可以通过在 registry 中定义 CloseableHttpClient
的引用(如 Spring Context),然后在 Endpoint 定义中设置参数,例如: hipchat:http://api.hipchat.com?httpClient=#myHttpClient
。
CloseableHttpClient httpclient = HttpClients.custom() .setConnectionManager(connManager) .setDefaultCookieStore(cookieStore) .setDefaultCredentialsProvider(credentialsProvider) .setProxy(new HttpHost("myproxy", 8080)) .setDefaultRequestConfig(defaultRequestConfig) .build();
要查看有关 Http Client 配置的更多信息,请检查 官方文档。
148.5.4. 依赖项
Maven 用户需要将以下依赖项添加到其 pom.xml 中:
pom.xml
<dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-hipchat</artifactId> <version>${camel-version}</version> </dependency>
其中 ${camel-version}
必须替换为 Camel 的实际版本(2.15.0 或更高版本)