我正面临Mirthconnect的问题。 我在这个过程中遇到了麻烦。我喜欢从邮件中读取数据,是否有可能在开源mirthconnect中实现这一点?版本3.3.1,如果是这样可以从直接邮件中读取?除了欢乐邮件之类的商业版本。
答案 0 :(得分:0)
我利用JAVA邮件库并将其插入到mirth connect的自定义库文件夹中,然后在欢乐的连接器部分使用以下代码。效果很好。
//Fetchmail from Gmail
var props = new Packages.java.util.Properties();
props.setProperty("mail.store.protocol", "imaps");
var session = new Packages.javax.mail.Session.getInstance(props, null);
var store = session.getStore();
store.connect("imap.gmail.com", "xxxxxxxx@gmail.com", "xxxxxxxxx");
var inbox = store.getFolder("INBOX");
inbox.open(Packages.javax.mail.Folder.READ_ONLY);
var msgs = inbox.getMessage(inbox.getMessageCount());
var currentMessage = inbox.getMessage(inbox.getMessageCount());
var mp = currentMessage.getContent();
var bp = mp.getBodyPart(0);
var content = "" + bp.getContent();
content = content.replace(/''/g, "");
globalMap.put('gcon', content);
logger.info("SENT DATE:" + msgs.getSentDate());
logger.info("SUBJECT:" + msgs.getSubject());
logger.info("CONTENT:" + content);
//bp.getContent()
var receiveId = UUIDGenerator.getUUID();
logger.info("incomingMailID : "+receiveId);
//Database Connectivity
var time= msgs.getSentDate();
var con = bp.getContent();
var sub = msgs.getSubject();
//global variable declaration
globalMap.put('glcontent',con);
globalMap.put('glsubject',sub);
globalMap.put('gltime',time);
return sub;
然后你可以设置一个聆听者的轮询频率时间间隔,该韵律频道将在该特定时间间隔内轮询。