2009-05-12 5 views
1

Je suis en train de développer un site de preuve de concept en C# qui va prendre des chaînes de requête URL, faire correspondre à un espace de travail Groove, puis inviter l'utilisateur dans cet espace si elles ne Je l'ai. J'ai la connexion à Groove Data Bridge, trouver l'espace de travail, lire la partie des membres de l'espace de travail fonctionne très bien. J'ai rencontré une pierre d'achoppement sur l'invitation automatique, cependant. Je cours ceci comme un site Web indépendant "pont" ainsi j'essaye d'exécuter ceci purement du serveur de Web. J'ai l'identité Groove pour la personne que je veux inviter de la base de données sous forme de chaîne:Groove Web Services question GrooveMembers.Create

CurrUserIdentity = grooveIdentity: // nzkth68eqzgktrb9sbr ....

Mais, je ne peux pas savoir comment transformer la chaîne en le vrai objet GrooveMember.Member qui sera ensuite invité. Quel est le moyen le plus simple d'inviter, dans ce cas?

+0

je me suis dit comment faire pour les contacts locaux, mais pas à partir du répertoire Groove. Cela devient difficile. –

Répondre

1

Je l'ai trouvé, enfin:

GrooveMembers.GrooveMembers AddMember = new GrooveMembers.GrooveMembers(); 
AddMember.GrooveRequestHeaderValue = new GrooveMembers.GrooveRequestHeader(); 
AddMember.GrooveRequestHeaderValue.GrooveRequestKey = someString; //Whatever used in your envronment 
AddMember.GrooveRequestHeaderValue.GrooveIdentityURL = id.URI; //URI of the local Groove identity or the Groove Data Bridge 
AddMember.Url = someOtherString /*Local web string or remote host*/ + space.Members;//A property of the space you are inviting the tuser into 
GrooveMembers.Member[] Members = AddMember.Read();//actually connects to the service 

GrooveMembers.Member newMember = new GrooveMembers.Member(); 
newMember.URI = userIdentity;//A string stripped from the database and TRIMmed 
newMember.Name = userFullName;//A string also pulled from the database DisplayNeme\GrooveDomain 
string userContact = "/GWS/Groove/2.0/Contacts/" + userIdentity.Replace("://", "/"); 
newMember.Contact = userContact;// A string formatted by replacing :// with/adding "/GWS/Groove/2.0/Contacts/" to the front of the Groove Identity 
newMember.Role = "$Telespace.Member"; 

AddMember.Create(newMember); 

GrooveMembers.GrooveMembers AddMember = new GrooveMembers.GrooveMembers(); 
AddMember.GrooveRequestHeaderValue = new GrooveMembers.GrooveRequestHeader(); 
AddMember.GrooveRequestHeaderValue.GrooveRequestKey = someString; //Whatever used in your envronment 
AddMember.GrooveRequestHeaderValue.GrooveIdentityURL = id.URI; //URI of the local Groove identity or the Groove Data Bridge 
AddMember.Url = someOtherString [Local web string or remote host] + space.Members [A property of the space you are inviting the tuser into]; 
GrooveMembers.Member[] Members = AddMember.Read();//actually connects to the service 

GrooveMembers.Member newMember = new GrooveMembers.Member(); 
newMember.URI = userIdentity;//A string stripped from the database and TRIMmed 
newMember.Name = userFullName;//A string also pulled from the database DisplayNeme\GrooveDomain 
string userContact = "/GWS/Groove/2.0/Contacts/" + userIdentity.Replace("://", "/"); 
newMember.Contact = userContact;// A string formatted by replacing :// with/adding "/GWS/Groove/2.0/Contacts/" to the front of the Groove Identity 
newMember.Role = "$Telespace.Member"; 

AddMember.Create(newMember);