Procedimiento para personalizar áreas de trabajo de reunión mediante el servicio web Meetings

Última modificación: miércoles, 07 de julio de 2010

Hace referencia a: SharePoint Foundation 2010

El servicio web Meetings permite crear y administrar sitios de área de trabajo de reuniones. En este tema se describe cómo usar los servicios web para realizar las tareas siguientes:

  • Identificar sitios de área de reuniones existentes.

  • Crear nuevos sitios de área de reuniones y agregar reuniones.

  • Eliminar sitios de área de reuniones.

  • Actualizar la información de la reunión en un sitio de área de reuniones.

Procedimientos

Antes de comenzar, cree una aplicación de Windows Forms en Microsoft Visual Studio. Para obtener información acerca de cómo establecer una referencia web a un servicio web de Microsoft SharePoint Foundation, vea Instrucciones para los servicios web.

Para identificar los sitios de área de reuniones existentes

  • En el siguiente ejemplo de código, se enumeran los sitios de área de trabajo de reuniones que existen en el servidor.

    Nota

    En el ejemplo, se supone que ServerURLTextBox es un elemento de interfaz que se ha agregado a un formulario del proyecto.

    Dim ws As New mywss001.Meetings()
    Dim myCache As New System.Net.CredentialCache()
    
    Private Sub ListMWS_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListMWS.Click
     ws.Credentials = myCache.DefaultCredentials()
     ws.Url = ServerURLTextBox.Text
     If (ws.Url.EndsWith("/")) Then
      ws.Url = ws.Url.Remove(ws.Url.Length - 1, 1)
     End If
     ws.Url = ws.Url + "/_vti_bin/meetings.asmx"
     Dim GetMeetingWorkspacesResponse As System.Xml.XmlNode
     If (ws.Url <> "") Then
      GetMeetingWorkspacesResponse = ws.GetMeetingWorkspaces(True)
     End If
     Dim OuterXml As String
     OuterXml = GetMeetingWorkspacesResponse.OuterXml()
     MsgBox("OuterXml")
    End Sub
    
    mywss001.Meetings ws = new mywss001.Meetings();
    System.Net.CredentialCache myCache = new System.Net.CredentialCache();
    
    private void ListMWS_Click(System.Object sender, System.EventArgs e)
    {
        ws.Credentials = myCache.DefaultCredentials();
        ws.Url = ServerURLTextBox.Text;
        if ((ws.Url.EndsWith("/"))) {
            ws.Url = ws.Url.Remove(ws.Url.Length - 1, 1);
        }
        ws.Url = ws.Url + "/_vti_bin/meetings.asmx";
        System.Xml.XmlNode GetMeetingWorkspacesResponse = default(System.Xml.XmlNode);
        if ((!string.IsNullOrEmpty(ws.Url))) {
            GetMeetingWorkspacesResponse = ws.GetMeetingWorkspaces(true);
        }
        string OuterXml = null;
        OuterXml = GetMeetingWorkspacesResponse.OuterXml();
        Interaction.MsgBox("OuterXml");
    }
    

Para crear un nuevo sitio de área de reuniones y agregar una reunión al sitio

  • En el siguiente ejemplo de código, se crea un sitio de área de trabajo de reuniones y se agrega una reunión a él.

    Nota

    En el ejemplo, se supone que ServerURLTextBox, MeetingSubjectTextBox, MeetingLocationTextBox, DTSTARTTextBox, DTENDTextBox y CreateWorkspaceButton son elementos de la interfaz que se han agregado a un formulario del proyecto.

    Dim ws As New mywss001.Meetings()
    Dim tz As New mywss001.TimeZoneInf()
    Dim myCache As New System.Net.CredentialCache()
    Dim UID As Integer
    Dim Sequence As UInt32
    
    Private Sub CreateWorkspaceButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CreateWorkspaceButton.Click
     ws.Credentials = myCache.DefaultCredentials()
     ws.Url = ServerURLTextBox.Text
     If (ws.Url.EndsWith("/")) Then
      ws.Url = ws.Url.Remove(ws.Url.Length - 1, 1)
     End If
     ws.Url = ws.Url + "/_vti_bin/meetings.asmx"
     Dim CreateWorkspaceResponse As System.Xml.XmlNode
     If (ws.Url <> "") Then
      CreateWorkspaceResponse = ws.CreateWorkspace(MeetingSubjectTextBox.Text, "MPS#0", System.UInt32.Parse("1033"), tz)
     End If
     Dim OuterXml As String
     OuterXml = CreateWorkspaceResponse.OuterXml()
     Dim MWSURL As String
     Dim Start As Integer
     Dim Finish As Integer
     Start = OuterXml.IndexOf("""")
     Finish = OuterXml.IndexOf("""", Start + 1)
     MWSURL = OuterXml.Substring(Start + 1, Finish - Start - 1)
     Dim MyRand As New System.Random()
     UID = MyRand.Next(100, 10000)
     Sequence.ToString("0")
     ws.Url = MWSURL + "/_vti_bin/meetings.asmx"
     ws.AddMeeting("", UID.ToString, Sequence, "2003-03-27T15:00:00-08:00", MeetingSubjectTextBox.Text, MeetingLocationTextBox.Text, DTSTARTTextBox.Text, DTENDTextBox.Text, False)
     MWSURLLink.Text = MWSURL
    End Sub
    
    mywss001.Meetings ws = new mywss001.Meetings();
    mywss001.TimeZoneInf tz = new mywss001.TimeZoneInf();
    System.Net.CredentialCache myCache = new System.Net.CredentialCache();
    int UID;
    UInt32 Sequence;
    
    private void CreateWorkspaceButton_Click(System.Object sender, System.EventArgs e)
    {
        ws.Credentials = myCache.DefaultCredentials();
        ws.Url = ServerURLTextBox.Text;
        if ((ws.Url.EndsWith("/"))) {
            ws.Url = ws.Url.Remove(ws.Url.Length - 1, 1);
        }
        ws.Url = ws.Url + "/_vti_bin/meetings.asmx";
        System.Xml.XmlNode CreateWorkspaceResponse = default(System.Xml.XmlNode);
        if ((!string.IsNullOrEmpty(ws.Url))) {
            CreateWorkspaceResponse = ws.CreateWorkspace(MeetingSubjectTextBox.Text, "MPS#0", System.UInt32.Parse("1033"), tz);
        }
        string OuterXml = null;
        OuterXml = CreateWorkspaceResponse.OuterXml();
        string MWSURL = null;
        int Start = 0;
        int Finish = 0;
        Start = OuterXml.IndexOf("\"");
        Finish = OuterXml.IndexOf("\"", Start + 1);
        MWSURL = OuterXml.Substring(Start + 1, Finish - Start - 1);
        System.Random MyRand = new System.Random();
        UID = MyRand.Next(100, 10000);
        Sequence.ToString("0");
        ws.Url = MWSURL + "/_vti_bin/meetings.asmx";
        ws.AddMeeting("", UID.ToString, Sequence, "2003-03-27T15:00:00-08:00", MeetingSubjectTextBox.Text, MeetingLocationTextBox.Text, DTSTARTTextBox.Text, DTENDTextBox.Text, false);
        MWSURLLink.Text = MWSURL;
    }
    

Para eliminar un sitio de área de reuniones

  • En el siguiente ejemplo de código, se elimina un sitio de área de trabajo de reuniones especificado.

    Nota

    En el ejemplo, se supone que MWSURLLink contiene la dirección URL del sitio de área de trabajo de reuniones.

    Private Sub DeleteWorkspaceButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DeleteWorkspaceButton.Click
     ws.Credentials = myCache.DefaultCredentials()
     ws.Url = MWSURLLink.Text + "/_vti_bin/meetings.asmx"
     ws.DeleteWorkspace()
    End Sub
    
    private void DeleteWorkspaceButton_Click(System.Object sender, System.EventArgs e)
    {
        ws.Credentials = myCache.DefaultCredentials();
        ws.Url = MWSURLLink.Text + "/_vti_bin/meetings.asmx";
        ws.DeleteWorkspace();
    }
    

Para actualizar la información de la reunión en un sitio de área de reuniones

  • En el siguiente ejemplo de código, se actualiza una reunión que existe en un sitio de área de trabajo de reuniones.

    Nota

    En el ejemplo, se supone que MWSURLLink, MeetingSubjectTextBox, MeetingLocationTextBox, DTSTARTTextBox, DTENDTextBox y CreateWorkspaceButton son elementos de la interfaz que se han agregado a un formulario del proyecto.

    Private Sub UpdateMeetingButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles UpdateMeetingButton.Click
     ws.Credentials = myCache.DefaultCredentials()
     ws.Url = MWSURLLink.Text + "/_vti_bin/meetings.asmx"
     Sequence.ToString("0")
     ws.UpdateMeeting(UID, Sequence, "2003-03-27T15:00:00-08:00", MeetingSubjectTextBox.Text, MeetingLocationTextBox.Text, DTSTARTTextBox.Text, DTENDTextBox.Text, False)
    End Sub
    
    private void UpdateMeetingButton_Click(System.Object sender, System.EventArgs e)
    {
        ws.Credentials = myCache.DefaultCredentials();
        ws.Url = MWSURLLink.Text + "/_vti_bin/meetings.asmx";
        Sequence.ToString("0");
        ws.UpdateMeeting(UID, Sequence, "2003-03-27T15:00:00-08:00", MeetingSubjectTextBox.Text, MeetingLocationTextBox.Text, DTSTARTTextBox.Text, DTENDTextBox.Text, false);
    }
    

Vea también

Referencia

[Meetings Web service]

Otros recursos

Servicios web de SharePoint Foundation 2010