ejabberd 16.01 muc and mam mode - xmpp

On ejabberd 16.01, is it possible to store entire group messages history (muc mode) in odbc using mam mode?
I can see that created room are stored in persistent database but I am wondering can message history be stored as well...

Yes it is possible to archive group messages using mod_mam
you can simple install mod_mam and configure ejabberd like this:
mod_mam:
default: always
with setting default to always it will archive all messages including MUC messages.

Related

Mirth Connect send old messages when changing server

I have a Mirth application installed in Ubuntu server. I try to move the application from one server to another server (DRC server). When I moved the application, somehow the Mirth keep sending old messages to the channel.
The source of sending channel is using Database Reader and connecter type for destinations is using TCP Sender. Im using Mirth Connect version 3.5.2
Does anyone know why this is happening. Is there any log files that I need to clear when moving the application from one server to another?
This can happen for several reasons. Application logic, queued messages. My guess is you moved appdata directory along with installation, if so you must be seeing similar stats from where you moved.
Mirth stores all channels information, transactions etc. by default under appdata folder. If you are using default settings it'll use derby db. You can connect to that DB with any DB client support JDBC. i.e.
SQuirelL or DB Visualizer and that can give you an idea what's happening.
I recommend you to make a clear setup. Then, you can export/import your channels into your new environment. You can also consider using any other DB, oracle/sqlserver/mysql.. for Mirth. Current version is 3.9.10 and it has better support for DBs other than derby.
As mentioned in the comments your application logic also matters.

ejabberd not storing unacknowledged messages to offline storage

I'm running Ejabberd 15.07.33 on Ubuntu Server 14.04. I'm using the basic configuration, just added mod_offline_post (from mod_interact). I've read about dead connections problem and how to overcome it, but this post on ejabberd website (https://www.ejabberd.im/faq/tcp) says that unacknowledged messages should end up in offline storage, which is not the case in my situation. is there any special config that I should set to let this happen? I've tried to set `resend_on_timeout but didn't change anything.
Thanks for your help.
Sorry, I figured out that I should enable Stream Management XEP-0198 from client side too. I'm using Smack 4.1 and I enabled it by adding these line to my code.
static {
XMPPTCPConnection.setUseStreamManagementDefault(true);
XMPPTCPConnection.setUseStreamManagementResumptiodDefault(true);
}

Use Cygnus to store historical data from Orion ContextBroker in a local Hadoop database

We are currently working in a project where we use Orion ContextBroker to store information from different sensors and Wirecloud to show them in a web page.
We want to store historical data from these sensors in order to show them in a graph. I have looked around the Fiware documentation and they recommend to store the data in a Cosmos instance of Fi-lab, through Cygnus.
The thing is that we would like to store that historical data in a local Hadoop based server we have in our company, not in Cosmos, because we are running this project in a local net where we don't have internet access, and also to have that information stored in our local server.
Is it possible to configure Cygnus to redirect the output data to my file system? If so, which files must be configured in order to achieve this?
Thank you
The answer is yes. Cygnus is meant to persist context data in whatever HDFS-based filesystem (as the one used by Cosmos), thus nothing special has to be done when configuring Cygnus.
If you download the lastest version (0.7.0 at the moment of writting this), you will need to configure:
A cygnus_instance_default.conf file from cygnus_instance.conf.template. This is the instance configuration. From 0.7.1 is possible to have multiple instance configurations that are run in a parallel way, and they all have to called cygnus_instance_<whatever>.conf.
A agent.conf file from agent.conf.template. This is the Flume specific configuration that you will find in the README.md.

MSMQ Message Viewer?

I have messages in a MSMQ queue and I would like to view the full message.
I know I can write code to peek the queue, but was wondering if there is a viewer that already exists that will let me read the entire message?
If you are using Visual Studio - Open Server Explorer under Servers/[Server Name] there is Message Queues folder that gives you view as well.
There are a few options - all I found are commercial (not terribly expensive, but not free, either):
Mqueue Viewer (free)
Mulholland Q Set
QueueExplorer
MSMQ QXplorer
Free. Open source.
https://sourceforge.net/projects/msmqqxplorer/
You can get to a snap-in here:
Computer Management > Services and Applications > Message Queuing
According to:
http://stevesmithblog.com/blog/how-can-i-view-msmq-messages-and-queues/
Service Bus MQ Manager is a free open-source tool I wrote to monitor the MSMQ in real-time for any incoming messages, it supports coloring and formatting of XML and JSON messages.
http://blog.halan.se/page/Service-Bus-MQ-Manager.aspx
MSMQ Studio is an MSMQ management tool that allows you to view and send messages and manage your local and remote queues.
https://msmq-studio.com

MSMQ - Create and Send Message

I have a public queue created in a remote machine. I am able to access the queue, create a message and send it from my workstation. However, when I access the remote machine that hosts the message queue, I do not see any messages. Any ideas on what I am missing? Is there anything that need to be configured to receive messages?
You should check the security settings on the remote queue - the default setting for any account is "allow sending only".
I got it to work by removing MessageQueueTransactionType.Single from MessageQueue.Send(message,MessageQueueTransactionType.Single) method.
It Seems like there was a mismatch between the Transaction types. I am still not familiar how the transaction types work.