3

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

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

4

1 回答 1

4

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

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);
于 2011-04-07T13:57:37.277 回答