Posts in Category "Administration"

Be Aware of the Closed Captioning Pod Defaults

Last week we found out that Caption Colorado changed their IP address and port number for the Closed Captioning pod downloadable from the Connect Exchange Website. Here is the direct link to the Connect version 9 Closed Captioning Pod

The new Caption Colorado information includes:

If you are experiencing any trouble with the Closed Captioning pod while using it in a Connect Meeting with Caption Colorado, please set your host to “captionedtext.com” and to port 11100 in the adobe pod. Note that the new IP, 54.193.31.11, depending on your infrastructure’s network security settings, may need to be white-listed.

For an updated user’s guide referencing the Closed Caption Pod, see this PDF: http://platinum.adobeconnect.com/cc/

 

 

XML API Tips: Arkadin Profile Creation – Display Numbers

Previously I posted a blog entry on creating audio profiles via the XML API (http://blogs.adobe.com/connectsupport/xml-api-tips-creating-telephony-profiles-via-the-xml-api/).  This is an add-on article describing one additional step for finalizing an Arkadin profile.

Once you complete the Arkadin profile, you may notice the Conference Numbers aren’t showing up at the bottom of the profile (in the UI).  When you build a profile in the UI (without the API) and you save the profile, it will display the Conference Number and Conference Number Toll Free in a datagrid below the credentials.  When you create a profile with the API, it will not (unless you go into the UI and then click Edit and then Save again).

ark1

Notice no Conference Numbers listed in the grid below the Profile Status.

Also, if you create the profile with the API (and you don’t go into the UI and click Edit/Save), you may notice that the conference numbers are not displayed in the Dial In dialogue box in the meeting room for participants.  It will only list the Moderator and Participant codes.

ark3

Notice, no numbers appearing to call into…

To get the numbers to show up in the Profile and in the dial-in dialogue box inside of the meeting room itself, you need to add one additional web service call to your workflow as below:

Once you build your telephony profile from the previous article,  you need to take the profile-id value and make the ‘telephony-profile-dial-in-number-update‘ API call to input the new numbers as such:

/api/xml?action=telephony-profile-dial-in-number-update&profile-id=1379585623&location=Toll%20access%20number&conf-number=+1-8xx-xxx-xxxx&location=Toll%20free%20access%20number&conf-number=+1-xxx-xxx-xxxx

Where you add the profile-id
where you add all the ‘locations’ you want (the string for the conference number description)
where you add the applicable conference numbers for each (toll + toll free for instance)

After completing this step, if you view the profile in the UI again, you see the numbers appear:

ark2

Conference Numbers now listed in the grid below the Profile Status.

 

ark4

Notice now the number(s) appear.

Arkadin Audio Profile Conference Numbers

For Arkadin customers who integrate Arkadin audio profiles into Adobe Connect Meeting rooms, they need to be very careful in what numbers they are inputting into the profile fields when they are creating the telephony profiles.  Also, if these profiles are being provisioned automatically by an application utilizing the API, developers need to make sure the values they are passing in via the web services are also correct.

Arkadin has 3 phone numbers that are required when building an audio profile (UI pictured below).

arkprof

  1. Toll Access Number‘ (in the API this is: ‘x-tel-arkadin-conference-number‘)
  2. Toll Free Access Number‘ (in the API this is ‘x-tel-arkadin-conference-number-free‘)
  3. SIP Access Number‘ (in the API this is ‘x-tel-arkadin-conference-number-uvline‘)

It is crucial that you do NOT inadvertently put the Toll number (a non ’1-8xx’ number) in for the Toll Free value and vice versa.  If you put a toll number in for the toll free number, the audio profile will save correctly, HOWEVER the UV line (Universal Voice) will not be able to connect to your meeting room when you try to start the audio (for Audio Broadcast and for Meeting Recording with Arkadin).  Universal Voice can only call out to a toll FREE number.  So if you are seeing your Arkadin audio conference not connecting correctly in the Adobe Connect Meeting room, please make sure to check your Arkadin profile that is assigned to the meeting, to make sure the toll free number is actually a toll free number, and the toll number is also correct.  The SIP access number should be set to the toll FREE number as well.

 

XML API Tips: Creating Telephony Profiles Via the XML API

UPDATED – 4-11-2014

The workflow for creating telephony profiles for INTEGRATED telephony providers via the XML API has changed over the last year or so.  Here is an update on the supported method for creating telephony profiles for users using the Adobe Connect Web Services (XML API).

First, you need to find the telephony provider id number (provider-id) that you want to create a profile from.

To do this, you can make the ‘telephony-provider-list‘ API call as follows:

https://{connectURL}/api/xml?action=telephony-provider-list

The results will look like this (with obvious real values for the provider-id and acl-id parameters):

<results>
<status code=”ok”/>
<providers-account>
<provider provider-id=”xxxxxxxxx” acl-id=”xxxxxxxxx” provider-type=”integrated”>
<class-name>
com.macromedia.breeze_ext.premiere.gateway.PTekGateway
</class-name>
<adaptor-id>premiere-adaptor</adaptor-id>
<name>PGi NA</name>
<provider-status>enabled</provider-status>
</provider>
<provider provider-id=”xxxxxxxxx” acl-id=”xxxxxxxxx” provider-type=”integrated”>
<class-name>
com.macromedia.breeze_ext.telephony.Intercall.IntercallTelephonyAdaptor
</class-name>
<adaptor-id>intercall-adaptor</adaptor-id>
<name>InterCall</name>
<provider-status>enabled</provider-status>
</provider>
<provider provider-id=”xxxxxxxxx” acl-id=”xxxxxxxxx” provider-type=”integrated”>
<class-name>
com.meetingone.adobeconnect.MeetingOneAdobeConnectAdaptor
</class-name>
<adaptor-id>meetingone-adaptor</adaptor-id>
<name>MeetingOne</name>
<provider-status>enabled</provider-status>
</provider>
<provider provider-id=”xxxxxxxxx” acl-id=”xxxxxxxxx” provider-type=”integrated”>
<class-name>com.macromedia.breeze_ext.arkadin.ArkadinAdaptor</class-name>
<adaptor-id>arkadin-adaptor</adaptor-id>
<name>Arkadin</name>
<provider-status>enabled</provider-status>
</provider>
</providers-account>
</results>

Next, you take the provider-id from the call above, and make the ‘telephony-profile-update‘ call to create the initial telephony profile container.  The formatted call will look like this:

https://{connectURL}/api/xml?action=telephony-profile-update&principal-id=xxxxxxxxx&profile-status=enabled&provider-id=xxxxxxxxx&profile-name=xxxxxxxx

Where:
principal-id = the principal id of the user for whom you are creating the profile (obtained by other APIs).
profile-status=enabled (to enable the profile).
provider-id = the provider-id value from the first API call above, for which you are creating the profile.
 profile-name =the name of the profile you are creating for the user (it’s up to you for naming convention).

The results will look like this:

<results>
<status code=”ok”/>
<telephony-profile profile-status=”enabled” provider-id=”xxxxxxxxx” principal-id=”xxxxxxxxx” profile-id=”xxxxxxxxx”>
<profile-name>xxxxxxxxx</profile-name>
</telephony-profile>
</results>

Next, you take the applicable provider-id value from the result above, and run the telephony-provider-info API call to get the appropriate fields you would need to add to the profile (and hard code them into your app for future):

https://{connectURL}/api/xml?action=telephony-provider-info&provider-id=xxxxxxxxx

Where:
   provider-id = value from the first call.

The results will look like this (using Arkadin as an example).  What you really want to look for are the ‘telephony-provider-fields’ in the results.  The rest of the provider-dial-in-info can be ignored for the purpose of creating integrated profiles in this fashion.

The results in BLUE are the required ‘x-tel’ values for (in this example) Arkadin, to create a profile.

<results>
<status code=”ok”/>
<telephony-provider-fields>
<field provider-id=”xxxxxxxxx” field=”xxxxxxxxx” field-id=”x-tel-arkadin-conference-id” display-in-meeting=”none” required=”true” user-specified=”true” input-type=”text” is-hidden=”false”>
<name>Web login</name>
</field>
<field provider-id=”xxxxxxxxx” field=”xxxxxxxxx” field-id=”x-tel-arkadin-moderator-code” display-in-meeting=”hosts” required=”true” user-specified=”true” input-type=”text” is-hidden=”false”>
<name>Moderator pin code</name>
</field>
<field provider-id=”xxxxxxxxx” field=”xxxxxxxxx” field-id=”x-tel-arkadin-participant-code” display-in-meeting=”participants” required=”true” user-specified=”false” input-type=”text” is-hidden=”false”>
<name>Participant pin code</name>
</field>
<field provider-id=”xxxxxxxxx” field=”xxxxxxxxx” field-id=”x-tel-arkadin-conference-number” display-in-meeting=”none” required=”true” user-specified=”true” input-type=”text” is-hidden=”false”>
<name>Toll access number</name>
</field>
<field provider-id=”xxxxxxxxx” field=”xxxxxxxxx” field-id=”x-tel-arkadin-conference-number-free” display-in-meeting=”none” required=”true” user-specified=”true” input-type=”text” is-hidden=”false”>
<name>Toll free access number</name>
</field>
<field provider-id=”xxxxxxxxx” field=”xxxxxxxxx” field-id=”x-tel-arkadin-company-url” display-in-meeting=”participants” required=”true” user-specified=”false” input-type=”url” is-hidden=”false”>
<name>Other access numbers</name>
</field>
<field provider-id=”xxxxxxxxx” field=”xxxxxxxxx” field-id=”x-tel-arkadin-conference-number-uvline” display-in-meeting=”none” required=”true” user-specified=”true” input-type=”text” is-hidden=”false”>
<name>SIP access number</name>
</field>
</telephony-provider-fields>
</results>

Lastly, now you put everything together.  You take the profile-id that was from the newly created profile as part of the telephony-profile-update API above, and all the applicable ‘x-tel’ values from the telephony-provider-info call directly above, and piece them all together in an acl-field-update call as below (again, this example is for Arkadin):

https://{connectURL}/api/xml?action=acl-field-update&acl-id=xxxxxxxxx&field-id=x-tel-arkadin-conference-id&value=xxxxxxxxx&field-id=x-tel-arkadin-moderator-code&value=xxxxxxxxx&field-id=x-tel-arkadin-participant-code&value=xxxxxxxxx&field-id=x-tel-arkadin-conference-number&value=1-xxx-xxx-xxxx&field-id=x-tel-arkadin-conference-number-free&value=1-xxx-xxx-xxxx&field-id=x-tel-arkadin-conference-number-uvline&value=1-xxx-xxx-xxxx

Where:
 acl-id = the profile id value of the profile you created in the telephony-profile-update call above.
field-id = the x-tel params required by the provider.  As you can see above, for Arkadin, there are 6.
value = the value of the x-tel parameters.  You would get this from your conference provider.

The results will simply be:

<results>
<status code=”ok”/>
</results>

UPDATED – 4-11-2014
For completing an ARKADIN profile, please also add the following to the workflow:
http://blogs.adobe.com/connectsupport/xml-api-tips-arkadin-profile-creation-display-numbers/

For all the main providers on hosted, here are the required ‘x-tel’ values:

Arkadin:

x-tel-arkadin-conference-id
x-tel-arkadin-moderator-code
x-tel-arkadin-participant-code
x-tel-arkadin-conference-number
x-tel-arkadin-conference-number-free
x-tel-arkadin-conference-number-uvline

PGI:

x-tel-premiere-user-id
x-tel-premiere-password
x-tel-premiere-moderator-code

InterCall:

x-tel-intercall-participant-code
x-tel-intercall-leader-pin

MeetingOne:

x-tel-meetingone-conference-id
x-tel-meetingone-host-pin

XML API Tips: Listing Users’ Telephony Profiles

As an Administrator, often times you may want to view other users’ telephony profiles in order to troubleshoot issues or administer additional profiles, etc.  From the UI, there is no way easy way to get at other users’ audio profiles.  From the API perspective, there is one method that often goes unlooked (although it is documented).

The ‘telephony-profile-list‘ API will only show the caller’s telephony profiles unless you actually specify a principal-id in the call.  If you specify the additional ‘principal-id=XXXXXXXX‘ parameter, you will get the list of all that users’ telephony profiles.  You can then obtain the profile-id of a specific profile, and continue to fetch additional information by using the ‘telephony-profile-info’ API call to get all the fields and values you are looking for, for that specific profile.

Here is an example of how to fetch the list of other users’ telephony profiles on the system:

First, log in as an Administrator.

Then find the users’ principal-id you want to search on.

Lastly, run this call to get the list of that users’ telephony profiles:

https://my.adobeconnect.com/api/xml?action=telephony-profile-list&principal-id=12345678

Result:

<results>
<status code=”ok”/>
<telephony-profiles>
<profile profile-id=”123456789″ provider-id=”234567890″ profile-status=”enabled”>
<adaptor-id>arkadin-adaptor</adaptor-id>
<name>Arkadin</name>
<profile-name>My Arkadin Profile</profile-name>
</profile>
<profile profile-id=”987654321″ provider-id=”098765432″ profile-status=”enabled”>
<adaptor-id>intercall-adaptor</adaptor-id>
<name>InterCall</name>
<profile-name>My InterCall Profile</profile-name>
</profile>
</telephony-profiles>
</results>

XML API Tips: Identifying a Sco’s Owner

A common ask from users is how to identify the creator of a content object or meeting, etc. in Adobe Connect.  Sometimes it’s easy to decipher (from an Admin perspective) who ‘owns’ a meeting, by seeing the specific meeting (for example) in a specific user’s ‘User Meeting’ folder.  However that doesn’t necessarily mean that they ‘created’ the meeting.  Also, if a meeting is sitting in the Shared Meetings area, and you want to know who created the meeting initially, it wouldn’t be possible (via the UI).  In order to see who created the object or meeting, you can use the ‘sco-by-url’ API call.  Here’s how:

As an Administrator, log in and find the URL of the meeting or sco in question.

Then, formulate the web service call as such:

https://{connectDomain}/api/xml?action=sco-by-url&url-path=XXXXXXX

Where the url-path = the actual custom (or auto generated) url path of your meeting or content.  The format will look like this: ‘/myMeeting/’.

Here’s an example:

Call:

https://my.adobeconnect.com/api/xml?action=sco-by-url&url-path=/jimssharedmeeting/

Result:

<results>
<status code=”ok”/>
<owner-principal type=”content” principal-id=”12345678″ account-id=”87654321″ has-children=”false” is-hidden=”false” is-primary=”false” tos-status=””>
<ext-login>jimjohnson@mycompany.com</ext-login>
<login>jimjohnson@mycompany.com</login>
<name>Jim Johnson</name>
<email>jimjohnson@mycompany.com</email>
</owner-principal>
<sco sco-id=”123456789″ account-id=”87654321″ display-seq=”0″ folder-id=”12345678″ icon=”meeting” lang=”en” max-retries=”” source-sco-id=”98765432″ type=”meeting” version=”0″>
<url-path>/jimssharedmeeting/</url-path>
<date-begin>2014-03-31T09:00:00.000-04:00</date-begin>
<date-created>2014-03-31T09:10:12.220-04:00</date-created>
<date-end>2014-03-31T10:00:00.000-04:00</date-end>
<date-modified>2014-03-31T09:10:12.220-04:00</date-modified>
<name>Jim’s Shared Meeting</name>
</sco>
</results>

Estimating the Size of Archive Meeting Recordings

I was recently asked if I had any test data showing how big a recording becomes based on the use case during the Connect Meeting being recorded. While plenty of anecdotal information exists,  I thought it prudent to begin a list of use cases and show what the size was after five minutes of each use case. This article will be a work in progress as I add different use cases in order to offer various concrete examples to use as a basis to estimate recording size based on what is being recorded, whether multiple Video pod camera feeds or screen-sharing or VoIP, etc. Among its purposes, this exercise will help meeting hosts to avoid exceeding the 2GB limit on Adobe hosted clusters for recording size.

Most relevant among the variables considered is the notion that recording size is affected by the streams present in the meeting being recorded. Typically a Video pod with VoIP (640X480) shared per hour will result in an FLV of around 200MB. Sharing a screen in a meeting (1680X1050) will result in an FLV size of around 150 MB. PPT/PPTX files uploaded to a meeting room and displayed while recording will not play a significant part in recording size because the recordings link to external content rather than contain that content intrinsically. For example,  a meeting with two Video pod streams could have recording size of around 400MB and a meeting having a single Video pod stream with VoIP and screen-sharing could end up around 350MB. The actual results may differ as the screen resolution of the publisher, the type of sharing and the amount of movement are all variables that can affect recording size: If there is little movement on screen or in the Video pod stream, the recording size will be less than it would be with a lot of movement.

Here are some concrete examples to use for planning; each recording is approximately five minutes in length:

A meeting with a single video feed for the Presenter to display and scroll through an uploaded PowerPoint file while using integrated telephony:Title: Recording Size Test_0
Type: Recording
Duration: 00:05:31
Disk usage: 8335.3 KB

rec-size1.fw

 

A recording of a meeting with six video feeds and an uploaded PowerPoint file
Title: Planning Troubleshooting and Support Meeting Room _15
Type: Recording
Duration: 00:05:48
Disk usage: 13873.8 KB

rec-size2.fw

 

A recording of a meeting with four video feeds and screen sharing an application with normal activity
Title: Planning Troubleshooting and Support Meeting Room _16
Type: Recording
Duration: 00:05:56
Disk usage: 21660.8 KB

rec-size3.fw

More examples to follow.

Where is my Engagement Dashboard?

At some point you may want to use the Engagement Dashboard to track your users’ attentiveness in an Adobe Connect Meeting room, but wonder where oh where it may be…  You glance up at your Pods menu (as a host) and see it is not listed.  You may wonder why.  Well, here’s why…

If you want to use the Engagement Dashboard, one of the following scenarios has to be true:

  • You are a Seminar Host and created a Seminar Room.  Seminar Rooms have the Engagement Dashboard in the Presenter Only Area.
  • You are an Event Manager and created an Event that points to a meeting, seminar room, or virtual classroom, in the Event Management area of Adobe Connect.  If you point an Event to any meeting, virtual classroom, or seminar room, it will have the Engagement Dashboard in the Presenter Only Area.
  • You are a Training Manager AND Meeting Host and you create a Virtual Classroom (you must be both to even create a VC in the first place), it will have the Engagement Dashboard in the Presenter Only Area.
  • You are an Meeting Host AND Event Manager and you create a Meeting (just being a Meeting Host will NOT give you access to the Engagement Dashboard).  Only then will the Meeting have an Engagement Dashboard in the Presenter Only Area.

Situation where you will have a room open and you won’t have the Engagement Dashboard as a Pod option:

  • You are a Meeting Host but NOT an Event Manager as well.  You will not see the Engagement Dashboard in the available pods and it will not be in the Presenter Only Area.

Additional Resources around the Engagement Dashboard…

http://blogs.adobe.com/adobeconnect/2012/06/sneak-peek-the-engagement-dashboard.html

https://www.connectusers.com/tutorials/2013/06/rules_of_engagement/index.php

engage1

engagement2

How to completely delete content from a Meeting room

To completely delete content from any meeting room there are at least two places and possibly a third place in Connect from which you must delete it.

The first place is the most obvious and it is in the Meeting room itself under the Pods menu and Manage Pods option:

del-con.fw

del-con1.fw

The second place is in the Uploaded Content directory under the Meeting Information. To get there from a Meeting room, a host and owner can click Manage Meeting Information under the Meeting tab:

del-con2.fw

Then go to the Uploaded Content tab:

del-con3.fw

The third possible place is the Content Library. If you uploaded or published to the Content Library and pointed the share pod to it, you will need to go to the Content Library to delete it. If you uploaded directly to the Meeting room then you may skip this step:

del-con4.fw

Editing Connect On-premise Email Send Source Options

Adobe Connect hosted customers have long enjoyed the option of having their Connect account administrative email sent out to users on behalf of a specified email source rather than the system email parameter configured during installation of the Connect server.  In order to exploit this option for on-premise Connect deployments, you first need to apply the following SQL update statement.  This will  add a row into the pps_account_features table:

insert into PPS_ACCOUNT_FEATURES
(ACCOUNT_ID, FEATURE_ID, DATE_BEGIN, DATE_END)
values (7, 71, ’2014-02-20 00:00:00.000′,’3000-01-01 00:00:00.000′)

After adding this row, check the system email settings with the SQL statement below to make sure it is correctly configured:

select * from PPS_CONFIG
where name like ‘%email%

The results of the query above should correspond with the settings prescribed on local port 8510 on the Connect server settings page in the Connect server configuration wizard.

SECTION              NAME    VALUE   COMMON_NAME
hosted   validation-emaillist                         NULL
main      config-bcc-email              NULL     NULL
main      config-support-email      admin@connectaccount.com         NULL
main      config-system-email        admin@connectaccount.com        NULL

After making the prescribed database changes, they will either take effect immediately after you cycle the Adobe Connect and Flash Media services or after 10 minutes. You do not need to cycle the services unless the change must be immediate.

With the above settings in place, if you create a user in Connect with the email address  joe@connectaccount.com and then you add  Joe to the Meeting Hosts group, the admin designated in the system-email parameter on the server settings page will send email on Joe’s behalf.

To prove this, simply log in, as Joe, create a meeting and add the user with email admin@connectaccount.com (or anyone you chose) as a meeting participant and send that person a meeting invitation. It should read: admin@connectaccount.com; on behalf of; joe@connectaccount.com:

The meeting invitation will look something like this:

From: admin@connectaccount.com [mailto:admin@connectaccount.com] On Behalf Of Joe
Sent: Sunday, February 23, 2014 5:30 PM
To: WhoeverIChoose@wherever.com; WhoeverIChoose
Subject: Adobe Connect – Meeting Invitation to “My most excellent meeting”
When: February 23, 2014 5:30 PM-6:30 PM (UTC-05:00) Eastern Time (US & Canada).
Where: http://meeting.connectaccount.com/meeting/

Please join me in an Adobe Connect Meeting.

Meeting Name:  The Only Meeting <snip>

Note: This will not affect password reset email messages.