Lotus Notes JavaScript获取用户信息

时间:2017-02-01 09:05:04

标签: javascript lotus-notes lotus-domino

用户访问网站上自己的PC和javaScript创建NotesSession。

var ns = new ActiveXObject("Lotus.NotesSession");
ns.Initialize(pass); // user password 

我想在会话初始化成功后获取姓名和公司电话号码等用户信息。对于"您好%username%之类的消息,您的手机为%number%"我知道从Domino服务器获取有关特定用户的信息,如果我知道名字或其他东西,但在这种情况下,我有点卡住了。 如果我尝试使用GetDatabase InternetExplorer挂起。

var db = ns.GetDatabase("", "names.nsf");

获取网址也会很好

1 个答案:

答案 0 :(得分:2)

我想知道为什么你在浏览器端使用JavaScript而不是在服务器端执行此操作,因为这只适用于已正确安装和配置Notes客户端的用户。但是,如果这真的是你想要的方式......

您自动获得会话的唯一信息是用户名(以几种不同的格式)。如果您还需要其他任何内容,则必须在服务器上查找用户信息。

您可以使用

var nd = ns.getDirectory()
var userinfo = NotesDirectory.LookupNames("$Users",ns.UserName, fieldsArray) 

获取更多信息。

请注意,Domino目录中有多个电话号码字段,根据您组织的政策和程序,可能无法全部填写。您需要查找项目名称(例如,“OfficePhoneNumber”,“PhoneNumber” “,”CellPhoneNumber“......还有其他内容)并将您要检索的内容放入您传递给LookupNames的fieldsArray中。您将把结果作为NotesDirectoryNavigator对象返回,并且可以使用该对象的方法和属性来获取值。