Page 1 sur 1

[HELP] Outils pour lire dans le 'names.nsf'

MessagePublié: 14 Jan 2010 à 13:07
par Arkalis
Bonjour,

- Je recherche depuis quelques jours le moyen de consulter le fichier names.nsf.

En effet, je dois dans mon entreprise préparer un script automatisation qui va lancer une requête LDAP sur le serveur Lotus pour savoir sur quel serveur pointe un agent, car on pourra avoir + de 1 serveur dans le futur.
Une fois cette information récupérer, j'ai besoin de la comparer avec l'adresse du serveur sur lequel pointe le names.nsf sur le poste de l'utilisateur. Mais pour cela, je dois trouver le moyen de lire son contenu en ligne de commande sans passer par des outils payants.

Auriez vous une solution ? Il doit surement avoir un outils Lotus qui traine permettant de lancer une requete du style :

NSFViewer.exe [chemin du names.nsf en local] mailserver

Le but étant de juste savoir quelle est la valeur du mailserver dans le fichier names.nsf.

- Connaissez vous aussi un outil permettant d'écrire dans le names.nsf ?

A la limite si il existe un outil gratuit permettant d'écrire dans les champs d'un fichier names.nsf

Je pourrais tout simplement lancer ma requete LDAP puis lancer l'outils pour changer le mailserver du names.nsf sur la nouvelle valeur.

Merci de votre aide

MessagePublié: 14 Jan 2010 à 13:42
par nemrod93
Je regarderais dans le notes.ini du client

MailFile=mail\toto.nsf
MailServer=CN=UNSERVEUR/O=LEDOMAINE

cdlt

Alain

MessagePublié: 14 Jan 2010 à 15:17
par Arkalis
Bonjour, merci de ta réponse, mais est-ce vraiment fiable de vérifier le serveur à partir du notes.ini que par le names.nsf ?

Car si c'est pas fiable et qu'on déploie le paquet sur 1800 postes, on risque de rencontrer de gros soucis...

Le plus sur pour moi étant de lire dans le names.nsf mais n'existe t-il aucun outil pour ?? je suis vraiment étonné que pour produit tel que lotus-notes on n'ait pas de programme pour lire dans le names.nsf

MessagePublié: 14 Jan 2010 à 15:30
par nemrod93
parles-tu du names.nsf en local (le carnet d'adresses personnel du client) ou bien d'une réplique du names.nsf (annuaire du domaine) ?

Personnellement je lis fréquemment les infos du notes.ini et je n'ai pas rencontré de problèmes en prenant garde quand même pour des postes employés par différents utilisateurs avec différents id qui partagent l'ordi

cdlt

Alain

MessagePublié: 14 Jan 2010 à 15:37
par stloje
Ce que tu as besoin est de connaître où se trouve le serveur de courriers de l'utilisateur? Si c'est le cas, tu recherches l'utilisateur en question dans le Names.nsf d'un serveur X et il y a un champ contenant le nom du serveur de courriers pour cet utilisateur.

MessagePublié: 14 Jan 2010 à 21:17
par mclement
ben y a lotus notes, autrement, tu peux aussi l'attaquer avec du java

MessagePublié: 14 Jan 2010 à 21:18
par mclement
C est pour faire quoi au fait? Ca peut pas etre fait en LotusScript?

MessagePublié: 15 Jan 2010 à 13:23
par Arkalis
stloje a écrit:Ce que tu as besoin est de connaître où se trouve le serveur de courriers de l'utilisateur? Si c'est le cas, tu recherches l'utilisateur en question dans le Names.nsf d'un serveur X et il y a un champ contenant le nom du serveur de courriers pour cet utilisateur.


Bonjour,

Pas vraiment, ce que j'ai besoin moi, c'est de changer le serveur de courrier dans le names.nsf par le serveur que me retournera une requête LDAP.

Je ne vois que 2 solutions :

1) Ecraser directement la valeur du champ mailserver du fichier names.nsf, la méthode la plus simple et fiable pour moi, mais je ne connais pas d'outil me permettant de le faire en ligne de commande.

2) Lire la valeur du champ mailserver du fichiers names.nsf, pour ensuite faire un rechercher/remplacer par l'utilitaire ChangeString de Cooperteam. Et pour cela, j'ai besoin de savoir lire le champ mailserver.

Suis-je clair dans la réponse ?

Merci

MessagePublié: 15 Jan 2010 à 15:52
par mclement
ben Lotus est accessoble via les classes OLE s'il est installé sur le poste, donc tu les utilises pour te connecter à l'un des serveurs.
Tu lis l'info dont tu as besoin et tu la rapportes dans le names.nsf local...

MessagePublié: 15 Jan 2010 à 17:24
par amahi
Arkalis a écrit:Bonjour,

Pas vraiment, ce que j'ai besoin moi, c'est de changer le serveur de courrier dans le names.nsf par le serveur que me retournera une requête LDAP.

Je ne vois que 2 solutions :

1) Ecraser directement la valeur du champ mailserver du fichier names.nsf, la méthode la plus simple et fiable pour moi, mais je ne connais pas d'outil me permettant de le faire en ligne de commande.

Tu es dans un forum partie dev, y as ptet des outils qui font, mais ta requete est tellement trivial que avec 10 lignes de code tu peux y arriver.
Tu disposes de bibli java pour le faire. Par contre, ce que tu cherches a faire c'est modifier l'info sur le serveur, n'oublie pas que tu as des clients a gerer aussi.
Arkalis a écrit:2) Lire la valeur du champ mailserver du fichiers names.nsf, pour ensuite faire un rechercher/remplacer par l'utilitaire ChangeString de Cooperteam. Et pour cela, j'ai besoin de savoir lire le champ mailserver.

Suis-je clair dans la réponse ?

Merci

Je ne connait pas cet utilitaire, mais je ne voit vraiment pas comment tu fait pour ne pas "savoir lire le champ mailserver"...

MessagePublié: 15 Jan 2010 à 18:43
par albert.coeffard
Autre solution faire un agent lancé par un serveur notes et incorporé en tant que service web. Une fonction qui sur le nom de l'utilisateur (attention à trouver une clé unique) te retourne le mailserver, voir éventuellement une fonction similaire qui change le nom du mailserver. Personellement c'est ce que je ferai.