天天看點

Tigase開發筆記4:Tigase Component元件開發

使用的Tigase Server版本 7.0.2 最新版,網上的資料很多,但都不能清楚明白的說明,自己整理了一下,其實很簡單,希望幫助走繞了路的朋友。

元件開發的快速引導

開發一個元件(Component)需要做如下幾件事兒 1. 定義一個元件 2. 配置這個元件 3. 調用這個元件 4. 處理元件收到的消息

1. 定義一個元件

定義一個最簡單的消息元件,需要繼承 extends AbstractMessageReceiver 類

public class EchoComponent extends AbstractMessageReceiver {
   private static final Logger log = Logger.getLogger(EchoComponent.class.getName());

   //~--- methods --------------------------------------------------------------

   @Override
   public void processPacket(Packet packet) {
      log.log(Level.FINEST, "Received: {0}", packet);

      Packet result = packet.swapStanzaFromTo();

      addOutPacket(result);
      log.log(Level.FINEST, "Sent back: {0}", result);
   }
}      

2. 配置這個元件

在init.properties中配置這個元件

--comp-name-8=echo #自定義名稱即可,這個名字在用戶端發送消息給元件時會用到
--comp-class-8=tigase.server.test.EchoComponent      

這樣這個元件就配置好了,Tigase啟動時就會注冊加載這個元件,用戶端即可調用了 想要将消息發送給這個元件,用戶端的to="xxx"需要設定為 to="xxx" -》 to = "元件名稱@域名" -》 to="[email protected]",否則消息不會傳遞給名為"echo"這個元件

3. 調用這個元件(我用的Spark 用戶端的調試模式中的)

<message from="[email protected]/Spark"

  to="[email protected]" id="8oHyf-314" xmlns="jabber:client">

  <subject>test message</subject>

  <body>this is a test,hi,word1</body>

</message>

完整調用見截圖(我用的是Spark用戶端登入界面的調試模式登入,然後使用發送自定義封包的功能)
Tigase開發筆記4:Tigase Component元件開發
Tigase開發筆記4:Tigase Component元件開發
4. 處理消息
Tigase開發筆記4:Tigase Component元件開發
這就是一個最簡單的元件開發過程!

更多詳細請看下面的介紹

官網開發指導: http://docs.tigase.org/tigase-server/7.0.0/Development_Guide/html_chunk/cil1.html http://docs.tigase.org/tigase-server/7.0.0/Development_Guide/webhelp/cil2.html

繼續閱讀