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 发送到用户的消息时收到的 API 响应的状态。 | HipchatFromUserResponseStatus |
148.5.3. 配置 Http Client
HipChat 组件允许您自己的 HttpClient
配置。这可以通过在 registry (如 Spring Context)中定义 CloseableHttpClient
的引用,然后在 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 客户端配置的更多信息,请参阅 官方文档。
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 或更高版本)