Blue Mind Forum

Forum about Blue Mind Software

You are not logged in.

Announcement

Bonjour, avant de poster, merci de vérifier que vous avez respecté les pré-requis de l'installation et consultez notre documentation : https://forge.bluemind.net/confluence/display/BM35/ !
Vous pouvez en particulier trouver des réponses aux problèmes les plus courants dans notre FAQ ou encore la base de connaissance.

Hi, before posting on the forum, please check that you followed installation prerequisites and get a look to our documentation space : https://forge.bluemind.net/confluence/display/BM35/ !

#1 2012-04-30 09:09:31

guidtz
Member
Registered: 2012-04-03
Posts: 149

Remontées d'informations dans un tableau de bord

Bonjour,

   je continue mes réflexions sur l'intégration de Blue Mind dans le portail applicatif d'un client.

J'aimerais pouvoir remonter les informations suivantes dans le portail :
=> arrivé d'un nouel email
=> email non lus en attente
=> nouveau rendez-vous
et sûrement d'autres informations.

Comment peut on envisager cette possibilité ?

Slts

Offline

#2 2012-04-30 09:44:41

tcataldo
Blue Mind Team
From: Toulouse
Registered: 2012-03-28
Posts: 121
Website

Re: Remontées d'informations dans un tableau de bord

Hello,
alors pour les mails non lus en attente, vous avez l'API suivante :

public interface IMail {

	/**
	 * If the user has a mailbox, returns the unread mails count
	 * 
	 * @param at
	 * @return
	 * @throws ServerFault
	 * @throws AuthFault
	 */
	int getUnreadMailCount(AccessToken at) throws ServerFault, AuthFault;

        [....]
}

Pour les rendez vous en attente vous avez :

public interface ICalendar {

        [...]

	public OccurrenceFactory getWaitingEvents(AccessToken token)
			throws AuthFault, ServerFault;

        [...]
}

Pour être notifié des arrivées d'un nouvel email dans une boîte vous avez :

			ClientSessionFactory csf = HQHelper.newClientSessionFactory();
			this.session = csf.createSession("guest", "guest", false, true,
					true, HornetQClient.DEFAULT_PRE_ACKNOWLEDGE,
					HornetQClient.DEFAULT_ACK_BATCH_SIZE);
			String adr = "bm.newmail.notification";
			String qn = adr + "." + UUID.randomUUID().toString();
			session.createTemporaryQueue(adr, qn);
			this.consumer = session.createConsumer(qn);
			consumer.setMessageHandler(new MyEmailNotifHandler());
			session.start();

MyEmailNotifHandler étant à coder pour faire les opérations voulues lors de l'arrivée du message. Par exemple :

public class MyEmailNotifHandler implements MessageHandler {

	private static final Logger logger = LoggerFactory
			.getLogger(MyEmailNotifHandler.class);

	@Override
	public void onMessage(ClientMessage m) {
		String mbox = m.getStringProperty("mailbox");
		logger.info("newmail notification received for " + mbox);
		try {
			m.acknowledge();
		} catch (HornetQException e) {
		}

                // faire quelque chose d'utile avec la notif
         }
}

Tu trouvera des exemples d'utilisation de tout ça dans nos tests unitaires.

Offline

#3 2012-04-30 11:34:21

guidtz
Member
Registered: 2012-04-03
Posts: 149

Re: Remontées d'informations dans un tableau de bord

ça c'est de l'information précise et bien fournie.

Pour l'instant je suis sur une étape de conseil d'architecture et d'implémentation pour mon client, je vais lui fournir les infos nécessaires. On passera par la suite sur une seconde étape de dev ou la on épluchera l'API pour interfacer tout cela.

Merci beaucoup

Offline

Board footer

Powered by FluxBB