【问题标题】:How can I send a message to a SameTime user from another system?如何从另一个系统向 SameTime 用户发送消息?
【发布时间】:2011-04-01 16:30:06
【问题描述】:

我想我要问的是有哪些方法可以向用户发送 SameTime 消息?该版本是集成到 Notes 8.5 中的版本。

是否有命令行、Web 服务、.Net API、Java API、LotusScript 或其他?

【问题讨论】:

    标签: lotus instant-messaging sametime


    【解决方案1】:

    有一个免费的 Java API 可用here。下面的摘录是一个如何发送消息的简单示例。

    final STSession session = new STSession("SameTimeSender");
    session.loadAllComponents();
    session.start();
    
    CommunityService comm = (CommunityService) session.getCompApi(CommunityService.COMP_NAME);
    comm.addLoginListener(new LoginListener() {
    
        public void loggedOut(LoginEvent arg0) {
        }
    
        public void loggedIn(LoginEvent arg0) {
            LookupService lookup = (LookupService) session.getCompApi(LookupService.COMP_NAME);
            Resolver resolver = lookup.createResolver(true, false, true, false);
            resolver.addResolveListener(new ResolveListener() {
    
                public void resolved(ResolveEvent re) {
                    STUser user = (STUser) re.getResolved();
    
                    InstantMessagingService imservice = (InstantMessagingService) session.getCompApi(InstantMessagingService.COMP_NAME);
    
                    final Im im = imservice.createIm(user, EncLevel.ENC_LEVEL_NONE, ImTypes.IM_TYPE_CHAT);
                    im.addImListener(new ImListener() {
    
                        public void textReceived(ImEvent arg0) {
                        }
    
                        public void openImFailed(ImEvent arg0) {
                        }
    
                        public void imOpened(ImEvent arg0) {
                            im.sendText(false, "hello world!");
                        }
    
                        public void imClosed(ImEvent arg0) {
                        }
    
                        public void dataReceived(ImEvent arg0) {
                        }
                    });
                    im.open();
                }
    
                public void resolveFailed(ResolveEvent arg0) {
                }
    
                public void resolveConflict(ResolveEvent arg0) {
                }
            });
    
            resolver.resolve(recipientId);
        }
    });
    
    comm.loginByPassword(hostname, userId, password);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-08-05
      • 1970-01-01
      • 2021-08-02
      • 2016-06-23
      • 2021-03-22
      • 2021-02-23
      • 2018-04-29
      相关资源
      最近更新 更多