Package org.xmpp.packet

Examples of org.xmpp.packet.Message


   }

   private class MotDSessionEventListener implements SessionEventListener {
      public void sessionCreated(Session session) {        
         if (isEnabled()) {
            final Message message = new Message();
            message.setTo(session.getAddress());
            message.setFrom(serverAddress);
            message.setSubject(getSubject());
            message.setBody(getMessage());

            TimerTask messageTask = new TimerTask() {
               @Override
      public void run() {
                  router.route(message);
View Full Code Here


    private void sendErrorMessage(String body) {
        // Invitation request has failed. Inform inviter
        userRequest.removeRelatedRequest(this);

        Message message = new Message();
        message.setError(PacketError.Condition.recipient_unavailable);
        message.setTo(inviter);
        message.setFrom(workgroup.getJID());
        message.setBody(body);
        Element element = message.addChildElement("transfer", "http://jabber.org/protocol/workgroup");
        element.addAttribute("type", type.toString());
        Element sessionElement = element.addElement("session", "http://jivesoftware.com/protocol/workgroup");
        sessionElement.addAttribute("id", sessionID);
        element.addElement("inviter").setText(inviter.toString());
        element.addElement("invitee").setText(invitee.toString());
View Full Code Here

        Packet statusPacket;
        if (isPolling) {
            statusPacket = new IQ();
        }
        else {
            statusPacket = new Message();
        }
        statusPacket.setFrom(sender);
        statusPacket.setTo(receiver);

        // Add Queue Status Packet to IQ
View Full Code Here

        request.getWorkgroup().send(statusPacket);
    }

    public void notifyQueueDepartued(JID sender, JID receiver, UserRequest request,
            Request.CancelType type) {
        Message message = new Message();
        if (sender != null) {
            message.setFrom(sender);
        }
        message.setTo(receiver);
        Element depart = message.getElement().addElement("depart-queue",
                "http://jabber.org/protocol/workgroup");
        // Add an element that explains the reason why the user is being removed from the queue
        depart.addElement(type.getDescription());
        // Send the notification
        request.getWorkgroup().send(message);
View Full Code Here

        Packet rejectPacket;
        String pfFrom = JiveGlobals.getProperty("pf.From", "packetfilter");


        if (packet instanceof Message) {
            Message in = (Message) packet.createCopy();
            if (clientSession != null && in.getBody() != null) {

                in.setFrom(new JID(pfFrom));
                String rejectMessage = JiveGlobals.getProperty("pf.rejectMessage", "Your message was rejected by the packet filter");
                in.setBody(rejectMessage);
                in.setType(Message.Type.error);
                in.setTo(packet.getFrom());
                String rejectSubject = JiveGlobals.getProperty("pf.rejectSubject", "Rejected");
                in.setSubject(rejectSubject);
                clientSession.process(in);

            }

        } else if (packet instanceof Presence) {
View Full Code Here

    }
    return instance;
  }

  public void updateProgress(JID user, long pBytesRead, long pContentLength, String requestId) {
    Message message = new Message();
    message.setTo(user);
    Element payload = message.addChildElement("upload", "http://onesocialweb.org/spec/1.0/upload");
    payload.addElement("request-id").setText(requestId);
    payload.addElement("status").setText("progress");
    payload.addElement("bytes-read").setText(Long.toString(pBytesRead));
    payload.addElement("size").setText(Long.toString(pContentLength));
    XMPPServer.getInstance().getMessageRouter().route(message);
View Full Code Here

    em.getTransaction().begin();
    em.persist(entry);
    em.getTransaction().commit();
    em.close();
   
    Message message = new Message();
    message.setTo(user);
    Element payload = message.addChildElement("upload", "http://onesocialweb.org/spec/1.0/upload");
    payload.addElement("request-id").setText(requestId);
    payload.addElement("status").setText("completed");
    payload.addElement("file-id").setText(file.getName());
    payload.addElement("size").setText(Long.toString(entry.getSize()));
    payload.addElement("mime-type").setText(entry.getType());
View Full Code Here

      boolean incoming, boolean processed) throws PacketRejectedException {

    // We only care for incoming Messages has not yet been processed
    if (incoming && !processed && packet instanceof Message) {

      final Message message = (Message) packet;
      final JID fromJID = message.getFrom();
      final JID toJID = message.getTo();

      // We are only interested by message to bareJID (we don't touch the one sent to fullJID)
      if (!toJID.toBareJID().equalsIgnoreCase(toJID.toString())) {
        return;
      }

      // We only care for messaes to local users
      if (!server.isLocal(toJID)
          || !server.getUserManager().isRegisteredUser(toJID)) {
        return;
      }

      // We only bother about pubsub events
      Element eventElement = message.getChildElement("event",
          "http://jabber.org/protocol/pubsub#event");
      if (eventElement == null) {
        return;
      }

      // That contains items
      Element itemsElement = eventElement.element("items");
      if (itemsElement == null || itemsElement.attribute("node") == null)
        return;

      // Relating to the microblogging node
      if (itemsElement.attribute("node").getValue().equals(
          PEPActivityHandler.NODE)) {
               
               
        Log.debug("Processing an activity event from " + fromJID
            + " to " + toJID);
        final ActivityDomReader reader = new PersistentActivityDomReader();
        List<Element> items=(List<Element>) itemsElement.elements("item");
        if ((items!=null) && (items.size()!=0)){
          for (Element itemElement :items) {
            ActivityEntry activity = reader
            .readEntry(new ElementAdapter(itemElement
                .element("entry")));
            try {

              ActivityManager.getInstance().handleMessage(
                  fromJID.toBareJID(), toJID.toBareJID(),
                  activity);             
             
            } catch (InvalidActivityException e) {
              throw new PacketRejectedException();
            } catch (AccessDeniedException e) {
              throw new PacketRejectedException();
            }
          }
        } else if (itemsElement.element("retract")!=null)
        {         
          Element retractElement = itemsElement.element("retract");
          String activityId=reader.readActivityId(new ElementAdapter(retractElement));
          ActivityManager.getInstance().deleteMessage(activityId);
        }
        Set<JID> recipientFullJIDs = getFullJIDs(toJID
            .toBareJID());
        Iterator<JID> it = recipientFullJIDs.iterator();
        Message extendedMessage = message.createCopy();
        while (it.hasNext()) {
          String fullJid = it.next().toString();
          extendedMessage.setTo(fullJid);
          server.getMessageRouter().route(extendedMessage);
        }
        throw new PacketRejectedException();
      }
     
View Full Code Here

    // Prepare the message
    final Element entryElement = (Element) domDocument.appendChild(domDocument.createElementNS(Atom.NAMESPACE, Atom.ENTRY_ELEMENT));
    writer.write(entry, entryElement);
    domDocument.removeChild(entryElement);

    final Message message = new Message();
    message.setFrom(fromJID);
    message.setBody("New activity: " + entry.getTitle());
    message.setType(Message.Type.headline);
    org.dom4j.Element eventElement = message.addChildElement("event", "http://jabber.org/protocol/pubsub#event");
    org.dom4j.Element itemsElement = eventElement.addElement("items");
    itemsElement.addAttribute("node", PEPActivityHandler.NODE);
    org.dom4j.Element itemElement = itemsElement.addElement("item");
    itemElement.addAttribute("id", entry.getId());
    itemElement.add((org.dom4j.Element) entryElement);

    // Keep a list of people we sent it to avoid duplicates
    List<String> alreadySent = new ArrayList<String>();
   
    // Send to this user
    alreadySent.add(fromJID);
    message.setTo(fromJID);
    server.getMessageRouter().route(message)
           
    // Send to all subscribers
    for (Subscription activitySubscription : subscriptions) {
      String recipientJID = activitySubscription.getSubscriber();
      if (!canSee(fromJID, entry, recipientJID)) {
        continue;
      }
      alreadySent.add(recipientJID);           
      message.setTo(recipientJID);
      server.getMessageRouter().route(message)
    }

    // Send to recipients, if they can see it and have not already received it
    if (entry.hasRecipients()) {
      for (AtomReplyTo recipient : entry.getRecipients()) {
        //TODO This is dirty, the recipient should be an IRI etc...
        String recipientJID = recipient.getHref()
        if (!alreadySent.contains(recipientJID) && canSee(fromJID, entry, recipientJID)) {
          alreadySent.add(fromJID);
         
          message.setTo(recipientJID);
          server.getMessageRouter().route(message);                       
        }
      }
    }     
  }
View Full Code Here

    final XMPPServer server = XMPPServer.getInstance();
    final List<Subscription> subscriptions = getSubscribers(fromJID);
 
    // Prepare the message
   
    final Message message = new Message();
    message.setFrom(fromJID);
    message.setBody("Delete activity: " + activityId);
    message.setType(Message.Type.headline);
   
    org.dom4j.Element eventElement = message.addChildElement("event", "http://jabber.org/protocol/pubsub#event");
    org.dom4j.Element itemsElement = eventElement.addElement("items");
    itemsElement.addAttribute("node", PEPActivityHandler.NODE);
    org.dom4j.Element retractElement = itemsElement.addElement("retract");
    retractElement.addAttribute("id", activityId);
   

    // Keep a list of people we sent it to avoid duplicates
    List<String> alreadySent = new ArrayList<String>();
   
    // Send to this user
    alreadySent.add(fromJID);
    message.setTo(fromJID);
    server.getMessageRouter().route(message)
           
    // Send to all subscribers
    for (Subscription activitySubscription : subscriptions) {
      String recipientJID = activitySubscription.getSubscriber();     
      alreadySent.add(recipientJID);           
      message.setTo(recipientJID);
      server.getMessageRouter().route(message)
    }     
   
  }
View Full Code Here

TOP

Related Classes of org.xmpp.packet.Message

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.