Introdução ao Adobe Connect Web Services

Aprenda os conceitos-chave e conheça os fundamentos para começar a usar as APIs do Adobe Connect Web Service.

Para começar a usar o Adobe Connect Web Services, você precisa entender três conceitos-chave:

  • Entidades, que são usuários e grupos

  • SCOs, que são Objetos de Conteúdo Compartilhável e representam reuniões, cursos e praticamente qualquer conteúdo que possa ser criado no Adobe Connect. SCOs (pronunciado sko, que rima com estou) são compatíveis com a especificação do Modelo de Referência de Objeto de Conteúdo Compartilhável (SCORM) padrão da indústria e pode ser usado com um Sistema de Gerenciamento de Aprendizado (LMS).

  • Permissões, que definem como as entidades podem atuar nos objetos

Este capítulo descreve as tarefas básicas que você pode realizar com o Web Services, independentemente de quais aplicativos do Adobe Connect você licenciou. Muitas tarefas são descritas como se você as estivesse executando em um navegador. Se você quiser fazer a chamada de um aplicativo, traduza o a solicitação XML para o idioma em que você está trabalhando (para um exemplo de como fazer isso no Java™, consulte Enviar solicitações XML).

Localizar um principal-id

Uma entidade é um usuário ou grupo que tem uma permissão definida para interagir com um SCO no servidor. Você pode criar usuários ou grupos para sua organização e modificar as permissões dessas entidades.

O Adobe Connect também tem grupos internos: administradores, administradores limitados, autores, gerentes de treinamento, gerentes de evento, alunos, hosts de reunião e hosts de seminário. Você pode adicionar usuários e grupos a grupos internos, mas não pode modificar as permissões de grupos internos.

Observação:

Os grupos internos que estão disponíveis dependem da sua conta.

Cada usuário e grupo do Adobe Connect tem um principal-id. Em algumas chamadas de API, o principal-id é chamado de group-id ou user-id para distingui-lo de outros valores. O valor da ID que identifica um usuário ou grupo é sempre o mesmo, independente de seu nome.

Obter principal-id de um usuário ou grupo

  1. Chamar lista de entidades com um filtro:

     https://example.com/api/xml?action=principal-list&filter-name=jazz doe

    É melhor usar filter-name, filter-login ou filter-email para uma correspondência exata. Cuidado com o filter-like-name, pois ele pode afetar o desempenho do servidor.

  2. Analisar os elementos da entidade na resposta para o principal-id:

     <principal principal-id=&quot;2006282569&quot; account-id=&quot;624520&quot; type=&quot;user&quot; 
             has-children=&quot;false&quot; is-primary=&quot;false&quot; is-hidden=&quot;false&quot;> 
         <name>jazz doe</name>  
         <login>jazzdoe@example.com</login>  
         <email>jazzdoe@newcompany.com</email>  
     </principal>

Obter o principal-id do usuário atual

  1. Chamar common-info após o usuário se conectar:

     https://example.com/api/xml?action=common-info
  2. Analisar os elementos do usuário na resposta para o user-id:

     <user user-id=&quot;2007124930&quot; type=&quot;user&quot;> 
             <name>jazz doe</name>  
             <login>jazz@doe.com</login>  
     </user>

    Aqui, o principal-id é chamado de user-id, pois sempre representa um usuário quem está autenticado no Adobe Connect. Um grupo não pode fazer logon no servidor. Você pode aprovar o valor do user-id como um principal-id em outras ações.

Listar entidades e convidados

Uma entidade com um tipo de usuário é um usuário registrado no Adobe Connect, enquanto um usuário com um tipo de convidado pode entrar em um reunião como convidado. O servidor captura informações sobre o convidado e dá a ele um principal-id.

Listar todas as entidades no servidor

  1. Chamar principal-list sem parâmetros:

     https://example.com/api/xml?action=principal-list

    Esta chamada retorna todos os usuários do Adobe Connect, então esteja preparado para uma grande resposta.

  2. Analisar os elementos da entidade na resposta para os valores desejados:

     <principal principal-id=&quot;2006282569&quot; account-id=&quot;624520&quot; type=&quot;user&quot; 
             has-children=&quot;false&quot; is-primary=&quot;false&quot; is-hidden=&quot;false&quot;> 
         <name>jazz doe</name>  
         <login>jazzdoe@example.com</login>  
         <email>jazzdoe@newcompany.com</email>  
     </principal>

Listar todas os convidados no servidor

  1. Chamar report-bulk-users, filtrando para um tipo de convidado:

     https://example.com/api/xml?action=report-bulk-users&filter-type=guest
  2. Analisar os elementos da linha na resposta:

     <row principal-id=&quot;51157227&quot;> 
         <login>joy@acme.com</login>  
         <name>joy@acme.com</name>  
         <email>joy@acme.com</email>  
         <type>guest</type>  
     </row>

Listar todos os usuários que se reportam a um gerente específico

Ao chamar o principal-info com um principal-id, a resposta mostra a entidade. Se a entidade for um usuário que tem um gerente atribuído no Adobe Connect, a resposta também mostra dados sobre o gerente da entidade em um elemento do gerente:

 <manager account-id=&quot;624520&quot; disabled=&quot;&quot; has-children=&quot;false&quot; is-hidden=&quot;false&quot; is-primary=&quot;false&quot; principal-id=&quot;2006282569&quot;        type=&quot;user&quot;> 
     <ext-login>jazzdoe@example.com</ext-login>  
     <login>jazzdoe@example.com</login>  
     <name>jazz doe</name>  
     <email>joy@example.com</email>  
     <first-name>jazz</first-name>  
     <last-name>doe</last-name>  
     <x-2006293620>23456</x-2006293620>  
     <x-2007017651>chicago</x-2007017651>  
 </manager>

Você pode usar o principal-id do gerente com o principal-list para listar todos os usuários que estão atribuídos ao gerente.

  1. Chamar o principal-list, filtrando em manager-id:

     https://example.com/api/xml?action=principal-list    &filter-manager-id=2006282569
  2. Analise as respostas para os elementos do principal-id:

     <principal principal-id=&quot;2006258745&quot; account-id=&quot;624520&quot; type=&quot;user&quot; has-children=&quot;false&quot; is-primary=&quot;false&quot; is-hidden=&quot;false&quot; manager-id=&quot;2006282569&quot;> 
         <name>Pat Lee</name>  
         <login>plee@mycompany.com</login>  
         <email>plee@mycompany.com</email>  
     </principal>

Criar usuários

Para criar um novo usuário, você precisa do privilégio de administrador. A Adobe recomenda que você crie um usuário que pertença ao grupo de administradores para seu aplicativo usar para fazer chamadas de API que requerem privilégio de administrador.

Criar um novo usuário e enviar um e-mail de boas-vindas

  1. Em seu aplicativo, faça logon como um usuário administrador.

    Consulte Fazer logon de um aplicativo para obter várias maneiras de fazer logon.

  2. Chamar o principal-update com pelo menos estes parâmetros:

     https://example.com/api/xml?action=principal-update 
             &first-name=jazz&last-name=doe&login=jazz99@doe.com&password=hello 
             &type=user&send-email=true&has-children=0&email=jazz99@doe.com

    O type deve ser user, has-children deve ser 0 ou false, send-email deve ser true e email deve ser um endereço de e-mail válido.

    O servidor envia um e-mail de boas-vindas com informações de logon para o endereço de e-mail do usuário.

  3. Analisar o elemento principal na resposta para o principal-id do usuário:

     <principal type=&quot;user&quot; principal-id=&quot;2007184341&quot; has-children=&quot;0&quot; 
             account-id=&quot;624520&quot;> 
         <login>jammdoe@example.com</login>  
         <ext-login>jammdoe@example.com</ext-login>  
         <name>jamm doe</name>  
     </principal>

Criar um novo usuário sem usar um endereço de e-mail como ID de logon

  1. No Adobe Connect Central, navegue até Administração > Usuários e grupos > Editar políticas de logon e senha. Certifique-se de que Usar o endereço de e-mail como logon esteja definido como No.

  2. Em seu aplicativo, faça logon como um usuário administrador.

  3. Chamar principal-update para criar o novo usuário, aprovando os parâmetros de logon e e-mail:

     https://example.com/api/xml?action=principal-update&first-name=jazz 
         &last-name=doe&login=jazz&email=jazzdoe@company.com 
         &password=nothing&type=user&has-children=0
  4. Analisar a resposta para o principal-id do novo usuário:

     <principal type=&quot;user&quot; principal-id=&quot;2007184341&quot; has-children=&quot;0&quot; 
                 account-id=&quot;624520&quot;> 
         <login>jazzdoe@example.com</login>  
         <ext-login>jazzdoe@example.com</ext-login>  
         <name>jazz doe</name>  
     </principal>

    Na resposta, ext-login tem o mesmo valor que logon por padrão, até o usuário fazer logon com sucesso usando a autenticação externa (consulte Fazer logon usando a autenticação de cabeçalho HTTP).

Atualizar usuários

Uma vez que você cria usuários, você precisa atualizar suas informações frequentemente. Você pode atualizar os campos padrão que o Adobe Connect define para os usuários chamando principal-update com o principal-id do usuário. Os campos padrão incluem email, login, first-name e last-name.

Se você definiu campos personalizados para a entidade, use acl-field-update para atualizar esses campos.

Você precisa de privilégio de administrador para atualizar os usuários, portanto, seu aplicativo deve primeiro fazer logon como um usuário no grupo de administradores. Você não pode fazer login como o usuário e, em seguida, fazer com que o usuário atualize seu próprio perfil.

Atuaizar informações padrão do usuário

  1. Faça logon como um usuário administrador.

  2. Chamar o principal-list com um filtro para obter o principal-id do usuário (consulte Localizar um principal-id).

  3. Chamar o principal-update para atualizar o usuário:

     https://example.com/api/xml?action=principal-update 
         &principal-id=2006282569&email=jazzdoe@newcompany.com
  4. Analise a resposta para um código de status de ok.

Atualizar valores de campos personalizados para um usuário

  1. Faça logon como um usuário administrador.

  2. Chamar o custom-fields para obter o field-id do campo personalizado:

     https://example.com/api/xml?action=custom-fields
  3. Obtenha o principal-id, sco-id ou account-id que deseja atualizar.

    Este valor é o acl-id que você aprova para o acl-field-update.

  4. Chamar o acl-field-update para atualizar o valor do campo personalizado:

     https://example.com/api/xml?action=acl-field-update&field-id=x-2007396975&acl-id=2006258745&value=44444

Criar campos personalizados

Campos personalizados são campos de dados adicionais que você define. Você pode definir até oito campos personalizados em uma entidade ou SCO usando o custom-field-update.

Depois de definir o campo personalizado, por padrão, você pode definir seu valor editando o valor no Adobe Connect Central ou chamando o custom-field-update.

Para especificar que o valor só pode ser atualizado por meio da API, chame o custom-field-update com o parâmetro object-type=object-type-read-only.

Definir um campo personalizado e defini-lo em um usuário

  1. Primeiro, crie o campo com o custom-field-update:

     https://example.com/api/xml?action=custom-field-update 
         &object-type=object-type-principal&permission-id=manage 
         &account-id=624520&name=Location&comments=adobe%20location 
         &field-type=text&is-required=true&is-primary=false&display-seq=9

    O campo do nome define o nome do campo conforme seu aplicativo o exibe, então use a ortografia e letras maiúsculas adequadamente. O campo personalizado neste exemplo é definido para todas as entidades do Adobe Connect.

  2. Analise o elemento do campo na resposta para o field-id:

     <field field-id=&quot;2007184366&quot; object-type=&quot;object-type-principal&quot; 
             display-seq=&quot;9&quot; account-id=&quot;624520&quot; is-primary=&quot;false&quot;  
             permission-id=&quot;manage&quot; is-required=&quot;true&quot; field-type=&quot;text&quot;> 
     <comments>test</comments>  
     <name>Country</name>  
     </field>
  3. Obtenha o principal-id do usuário (consulte Localizar um principal-id).

  4. Chamar o acl-field-update para definir o valor do campo, aprovando um field-id, o principal-id do usuário como o acl-id e um value:

     https://example.com/api/xml?action=acl-field-update 
         &acl-id=2006258745&field-id=2007017474&value=San%20Francisco
  5. Analise a resposta para um código de status de ok.

Criar grupos

Para adicionar usuários a grupos, você precisa chamar o principal-update como o usuário administrador do seu aplicativo.

Adicionar um usuário a um grupo

  1. Faça logon como um usuário administrador do seu aplicativo.

  2. (Opcional) Se o usuário ainda não existir, crie o usuário com o principal-update.

     https://example.com/api/xml?action=principal-update 
         &first-name=jazzwayjazz&last-name=doe&login=jazz@doe.com 
         &password=nothing&type=user&has-children=0
  3. (Opcional) Analise a resposta para o principal-id do novo usuário.

  4. Se o usuário já existir, chame o principal-list para obter o principal-id do usuário:

     https://example.com/api/xml?action=principal-list&filter-type=user
  5. Analisar a resposta para o principal-id:

     <principal principal-id=&quot;5611980&quot; account-id=&quot;624520&quot; type=&quot;user&quot;  
             has-children=&quot;false&quot; is-primary=&quot;false&quot; is-hidden=&quot;false&quot;> 
         <name>Joy Black</name>  
         <login>joy@acme.com</login>  
         <email>joy@acme.com</email>  
     </principal>
  6. Chamar o principal-list novamente para obter o principal-id do grupo:

     https://example.com/api/xml?action=principal-list&filter-type=group
  7. Chamar o group-membership-update com o is-member=true para adicionar o usuário ao grupo:

     https://example.com/api/xml?action=group-membership-update 
         &group-id=4930296&principal-id=2006258745&is-member=true
    • O principal-id é o principal-id do usuário.

    • O group-id é o principal-id do grupo.

    • O parâmetro is-member deve ser true.

Verificar se um usuário específico está em um grupo

  1. Chamar o principal-list com um group-id, filter-is-member e um filtro que identifica a entidade:

     https://example.com/api/xml?action=principal-list&group-id=624523 
             &filter-is-member=true&filter-like-name=bob
  2. Analise para um elemento da entidade na resposta. Uma resposta bem-sucedida se parece com isso:

     <principal-list> 
         <principal principal-id=&quot;624660&quot; account-id=&quot;624520&quot; type=&quot;user&quot;  
                 has-children=&quot;false&quot; is-primary=&quot;false&quot; is-hidden=&quot;false&quot;> 
             <name>Bill Jones</name>  
             <login>bjones@acme.com</login>  
             <email>bjones@acme.com</email>  
             <is-member>true</is-member>  
         </principal> 
     </principal-list>

    Se o usuário não é membro de um grupo, o elemento do principal-list fica vazio:

     <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?>  
     <results> 
         <status code=&quot;ok&quot; />  
         <principal-list />  
     </results>

Verificar quais usuários estão em um grupo

  1. Para obter o principal-id do grupo, chame o principal-list com filtros:

     https://example.com/api/xml?action=principal-list&filter-type=group 
             &filter-name=developers

    Com o filter-type e o filter-name, o principal-list deve retornar uma correspondência única.

  2. Analisar a resposta para o principal-id:

     <principal principal-id=&quot;2007105030&quot; account-id=&quot;624520&quot;  
             type=&quot;group&quot; has-children=&quot;true&quot; is-primary=&quot;false&quot;  
             is-hidden=&quot;false&quot;> 
         <name>developers</name>  
         <login>developers</login>  
         <is-member>false</is-member>  
     </principal>
  3. Chamar o principal-list novamente, com o principal-id como um group-id e filter-is-member=true:

     https://example.com/api/xml?action=principal-list&group-id=2007105030 
             &filter-is-member=true
  4. Analisar a resposta para os elementos da entidade:

     <principal principal-id=&quot;5698354&quot; account-id=&quot;624520&quot; type=&quot;group&quot;  
                 has-children=&quot;true&quot; is-primary=&quot;false&quot; is-hidden=&quot;false&quot;> 
         <name>Bob Jones</name>  
         <login>bobjones@acme.com</login>  
         <is-member>true</is-member>  
     </principal>

Listar todos os grupos aos quais um usuário pertence

  1. Chamar o principal-list com o principal-id e filter-is-member=true:

     https://example.com/api/xml?action=principal-list 
         &principal-id=2006258745&filter-is-member=true
  2. Analisar a resposta para os elementos da entidade:

     <principal principal-id=&quot;5698354&quot; account-id=&quot;624520&quot; type=&quot;group&quot;  
                 has-children=&quot;true&quot; is-primary=&quot;false&quot; is-hidden=&quot;false&quot;> 
         <name>Bob Jones</name>  
         <login>bobjones@acme.com</login>  
         <is-member>true</is-member>  
     </principal>

Localizar SCOs

Todos os objetos no Adobe Connect são Objetos de Conteúdo Compartilhável ou SCOs. A palavra Compartilhável vem dos sistemas de gerenciamento de aprendizado em que o conteúdo é combinado em cursos ou currículos e compartilhado entre eles.

No servidor, um SCO pode ser qualquer objeto de conteúdo que é combinado com outros objetos de conteúdo em um curso ou currículo. Cursos, currículos, apresentações e outros tipos de conteúdo são SCOs. Reuniões, eventos, pastas, árvores, links, arquivos gráficos ou qualquer outro objeto também são SCOs.

Cada SCO tem um identificador único de número inteiro chamado de sco-id. O sco-id é único em todo o servidor. Em uma conta hospedada no Adobe Connect, o sco-id é único em todas as contas.

Cada SCO também tem um type, como conteúdo, curso, reunião, e assim por diante. Você pode ver o sco-id e os valores de type na resposta do sco-info ou outras ações:

 <sco account-id=&quot;624520&quot; disabled=&quot;&quot; display-seq=&quot;0&quot; folder-id=&quot;2006258747&quot; 
         icon=&quot;producer&quot; lang=&quot;en&quot; max-retries=&quot;&quot; sco-id=&quot;2006334909&quot; 
         source-sco-id=&quot;&quot; type=&quot;content&quot; version=&quot;1&quot;>

Características dos SCOs

Quando você estuda as respostas XML de várias chamadas, você observa mais características dos SCOs:

  • O identificador de um SCO é chamado de sco-id em algumas ações, mas também pode ser chamado de folder-id, acl-id ou um outro nome em outras ações. É a mesma ID única.

  • Cada SCO pode ser acessado por vários diretores, sejam usuários ou groups. As entidades específicas que podem acessar um SCO são definidas nas listas de controle de acesso ou ACLs.

  • Cada SCO possui um URL exclusivo, com duas partes: um nome de domínio (como http://example.com) em um caminho de URL (como /f2006123456/). Você pode concatená-los para formar o URL completo que acessa o SCO.

  • Cada SCO tem um caminho de navegação que descreve onde ele reside na hierarquia de pastas.

  • Cada SCO tem uma permissão definida para cada entidade que pode acessá-lo.

  • Alguns SCOs têm campos de descrição, que são cadeias de texto que fornecem informações sobre o SCO.

Frequentemente, você precisa localizar a ID de um SCO ou alguma informação sobre ele. Os SCOs são organizados em uma hierarquia de pastas específica, onde as pastas têm nomes que indicam se eles estão no nível superior, contêm conteúdo ou modelos compartilhados ou mantêm conteúdo e modelos do usuário.

Quando você chama o sco-shortcuts, ele retorna uma lista de pastas. Observe que as pastas têm tipos diferentes:

 <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?>  
 <results> 
     <status code=&quot;ok&quot; />  
     <shortcuts> 
         <sco tree-id=&quot;624530&quot; sco-id=&quot;2006258751&quot; type=&quot;my-meeting-templates&quot;> 
             <domain-name>http://example.com</domain-name>  
         </sco> 
         <sco tree-id=&quot;624530&quot; sco-id=&quot;2006258750&quot; type=&quot;my-meetings&quot;> 
             <domain-name>http://example.com</domain-name>  
         </sco> 
         <sco tree-id=&quot;624529&quot; sco-id=&quot;624529&quot; type=&quot;meetings&quot;> 
             <domain-name>http://example.com</domain-name>  
         </sco> 
         <sco tree-id=&quot;624530&quot; sco-id=&quot;624530&quot; type=&quot;user-meetings&quot;> 
             <domain-name>http://example.com</domain-name>  
         </sco> 
         ... 
     </shortcuts> 
 </results>

As pastas mostradas neste exemplo são para reuniões, mas as pastas para outros tipos de SCOs seguem um padrão semelhante. Cada tipo de pasta armazena certos tipos de objetos, com certos privilégios de acesso, como os seguintes:

conteúdo, cursos, reuniões, eventos, seminários

Estas são pastas compartilhadas, tais como reuniões compartilhadas, treinamentos compartilhado, e assim por diante. O administrador do Adobe Connect tem acesso a esta pasta. O administrador pode atribuir permissão de gerenciamento para qualquer usuário, mas apenas membros do grupo integrado associado à pasta podem criar novo conteúdo ou reuniões dentro dela.

user-content, user-meetings, user-courses, user-events

Cada uma dessas pastas contém uma pasta para cada usuário que pode criar conteúdo dentro dela (por exemplo, uma pasta para cada host de reunião ou desenvolvedor de treinamento).

my-courses, my-events, my-meetings, my-meeting-templates, my-content

Os usuários criam seu próprio conteúdo nessas pastas e têm permissão de gerenciamento sobre o conteúdo. Por exemplo, organizadores de reuniões criam reuniões em sua pasta my-meetings e têm permissão de gerenciamento nessas reuniões.

shared-meeting-templates

Esta pasta está dentro da pasta Reuniões compartilhadas, contém modelos de reuniões e herda permissões de reuniões compartilhadas.

Você pode listar o conteúdo de qualquer pasta para obter informações sobre um SCO específico. Quando você precisa procurar um SCO, mas não tem um sco-id, mova pelas pastas usando sco-shortcuts e sco-expanded-contents. Não use o sco-search, pois ele retorna apenas certos tipos de SCOs.

Localizar um SCO quando você não conhece o sco-id

  1. Chamar os sco-shortcuts para obter uma lista de pastas raiz no Adobe Connect:

     https://example.com/api/xml?action=sco-shortcuts
  2. Analise a resposta para um type da pasta raiz que logicamente conteria o SCO, por exemplo, my-courses para um curso que o usuário criou.

  3. Analisar o elemento do sco resultante para um sco-id:

     <sco tree-id=&quot;4930295&quot; sco-id=&quot;2006258748&quot; type=&quot;my-courses&quot;> 
         <domain-name>http://example.com</domain-name>  
     </sco>
  4. Criar uma chamada para sco-expanded-contentspara listar o conteúdo da pasta, adicionando um filtro de correspondência exata, se possível:

     https://example.com/api/xml?action=sco-expanded-contents 
         &sco-id=2006258748&filter-name=Tudo sobre comunidades da web

    Você têm várias opções de filtros:

    • Um filtro de correspondência exata em name ou url-path (como filter-name ou filter-url-path), se você souber o nome ou URL do SCO.

    • Um filtro de data maior ou menor (filter-gt-date ou filter-lt-date) em date-begin, date-created ou date-modified, se você conhece uma dessas datas.

    • Um filtro de nome parcial (como filter-like-name), se você não souber o nome exato do SCO. No entanto, usar este filtro pode afetar o desempenho do sistema.

  5. Analisar a resposta para o sco-id:

     <sco depth=&quot;1&quot; sco-id=&quot;2006745671&quot; folder-id=&quot;2006258748&quot; type=&quot;folder&quot; 
             icon=&quot;folder&quot; lang=&quot;en&quot; source-sco-id=&quot;2006745669&quot; display-seq=&quot;0&quot; 
             source-sco-type=&quot;14&quot;> 
         <name>A Day in the Life Resources</name>  
         <url-path>/f28435879/</url-path>  
         <date-created>2006-06-12T14:47:59.903-07:00</date-created>  
         <date-modified>2006-06-12T14:47:59.903-07:00</date-modified>  
     </sco>

Obter informações sobre um SCO

  1. Chamar o sco-info com o sco-id:

     https://example.com/api/xml?action=sco-info&sco-id=2006745669
  2. Analisar a resposta para name, url-path ou qualquer outro valor:

     <sco account-id=&quot;624520&quot; disabled=&quot;&quot; display-seq=&quot;0&quot;  
             folder-id=&quot;2006258748&quot; icon=&quot;curriculum&quot; lang=&quot;en&quot; max-retries=&quot;&quot; 
             sco-id=&quot;2006745669&quot; source-sco-id=&quot;&quot; type=&quot;curriculum&quot; version=&quot;0&quot;> 
         <date-begin>2006-06-12T14:45:00.000-07:00</date-begin>  
         <date-created>2006-06-12T14:47:59.903-07:00</date-created>  
         <date-modified>2006-06-12T14:47:59.903-07:00</date-modified>  
         <name>A Day in the Life</name>  
         <url-path>/day/</url-path>  
     </sco>

Construir o URL para um SCO

  1. Chamar o sco-shortcuts:

     https://example.com/api/xml?action=sco-shortcuts
  2. Analisar a resposta para valor de domain-name em qualquer elemento do sco:

     <sco tree-id=&quot;624530&quot; sco-id=&quot;2006258750&quot; type=&quot;my-meetings&quot;> 
         <domain-name>http://example.com</domain-name>  
     </sco>
  3. Chamar o sco-info com o sco-id:

     https://example.com/api/xml?action=sco-info&sco-id=2006334909
  4. Analisar a resposta para o url-path :

     <sco account-id=&quot;624520&quot; disabled=&quot;&quot; display-seq=&quot;0&quot;  
             folder-id=&quot;2006258747&quot; icon=&quot;producer&quot; lang=&quot;en&quot;  
             max-retries=&quot;&quot; sco-id=&quot;2006334909&quot; source-sco-id=&quot;&quot;  
             type=&quot;content&quot; version=&quot;1&quot;> 
         <date-created>2006-05-11T12:00:02.000-07:00</date-created>  
         <date-modified>2006-05-16T15:22:25.703-07:00</date-modified>  
         <name>Test Quiz</name>  
         <url-path>/quiz/</url-path>  
         <passing-score>10</passing-score>  
         <duration>15100.0</duration>  
         <section-count>6</section-count>  
     </sco>

    O url-path tem barras à esquerda e á direita. Você pode pegar o url-path de report-my-meetings, report-my-training ou qualquer chamada que o retorne.

  5. Concatenar o url-path com o domain-name:

     http://example.com/f2006258748/

Baixar arquivos

Você pode baixar arquivos zip do Adobe Connect para o computador local de um usuário. Um arquivo zip é um SCO. Para fazer o download, você precisa construir um URL de download para o arquivo zip, que se parece com isto:

 http://server-domain/url-path/output/url-path.zip?download=zip

Você provavelmente já conhece o nome de domínio do seu servidor (tal como example.com). Se não, você pode obtê-lo chamando o sco-shortcuts.

Baixar um arquivo zip do servidor

  1. Chamar o sco-shortcuts:

     https://example.com/api/xml?action=sco-shortcuts
  2. Extrair qualquer valor do domain-name da resposta:

     http://example.com
  3. Chamar o sco-info com o sco-id do arquivo zip:

     https://example.com/api/xml?action=sco-info&sco-id=2006258747

    O SCO é todo o arquivo zip.

  4. Analisar a resposta para o elemento do url-path:

     <sco account-id=&quot;624520&quot; disabled=&quot;&quot; display-seq=&quot;0&quot; folder-id=&quot;624522&quot; 
             icon=&quot;folder&quot; lang=&quot;en&quot; max-retries=&quot;&quot; sco-id=&quot;2006258747&quot;  
             source-sco-id=&quot;&quot; type=&quot;folder&quot; version=&quot;1&quot;> 
         <date-created>2006-04-18T10:21:47.020-07:00</date-created>  
         <date-modified>2006-04-18T10:21:47.020-07:00</date-modified>  
         <name>joy@acme.com</name>  
         <url-path>/f124567890/</url-path>  
     </sco>
  5. Construa o URL de download, por exemplo:

     https://example.com/quiz/output/quiz.zip?download=zip

    Certifique-se de remover a barra à direita do valor do url-path antes de adicionar .zip a ela (você tem um valor como /quiz.zip, não /quiz/.zip).

Verificar permissões

As permissões definem as maneiras pelas quais uma entidade pode interagir com um SCO.

Um mapeamento de permissão, indicando quais permissões uma entidade tem para um determinado SCO, é chamado de lista de controle de acesso ou ACL. Uma ACL consiste em três informações:

  • A ID de uma entidade (um principal-id).

  • A ID de um SCO, conta ou entidade que está sendo executada. Em chamadas de permissão, ela é chamada de acl-id. Em outras chamadas, a ID poderá ser chamda de sco-id, account-id ou principal-id.

  • Uma palavra-chave que indica o nível de permissão que a entidade tem, que é um dos valores válidos no permission-id.

Verificar a permissão que uma entidade tem em um SCO

  1. Chamar o permissions-info com um acl-id e um principal-id:

     https://example.com/api/xml?action=permissions-info&acl-id=2006334909 
         &principal-id=2006258745

    Para verificar as permissões em um SCO, o acl-id é um sco-id. O acl-id também pode ser um principal-id ou account-id.

  2. Analisar uma resposta para um permission-id:

     <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?>  
     <results> 
         <status code=&quot;ok&quot; />  
         <permission acl-id=&quot;2007035246&quot; permission-id=&quot;view&quot;  
                 principal-id=&quot;2006258745&quot; />  
     </results>

    Se uma entidade não tem uma permissão explícita para o SCO (em outras palavras, se o permission-id=""), as permissões da entidade no objeto pai do SCO se aplicam.

Verificar todas as permissões da entidade em um SCO

  1. Chamar o permissions-info com um acl-id, mas sem o principal-id:

     https://example.com/api/xml?action=permissions-info&acl-id=2006293572
  2. Aplicar nos elementos da entidade e analisá-los para os valores do permission-id:

     <principal principal-id=&quot;2596608&quot; is-primary=&quot;false&quot; type=&quot;user&quot;  
                     has-children=&quot;false&quot; permission-id=&quot;view&quot;> 
             <name>Jay Arnold</name>  
             <login>jay@example.com</login>  
     </principal>

    Os valores de permissão válidos são listados no permission-id.

 Adobe

Receba ajuda com mais rapidez e facilidade

Novo usuário?

Adobe MAX 2024

Adobe MAX

The Creativity Conference

14 a 16 de outubro, Miami Beach e online

Adobe MAX 2024

Adobe MAX

The Creativity Conference

14 a 16 de outubro, Miami Beach e online