Page tree
Skip to end of metadata
Go to start of metadata

1. Requirements

Communote

  • Communote Version 2.2.x or higher
  • installed Plugins
    • Sharepoint Plugin
    • Message Queue

SharePoint

  • SharePoint Server 2010 or SharePoint Foundation 2010
  • Menaged Metadata Service and User Profile Service is configured (irrelevant for SharePoint Foundation)
  • PowerShell must be installed
  • App Pool account must have permission to query the Active Directory
  • used the admin account should not “SHAREPOINT\system”

  • admin and the test account must have e-mail addresses, names and surnames

 

You get all the needed plugins upon request. Please send us an e-mail request to support@communote.com

 

1.1 Communote Plugins

Please switch to the administration area of Communote and open the overview of available Extensions: Administration > Extensions > Overview

The list should be included and enabled the following plugins:

  • Integration - Sharepoint
  • Message Queue - ActiveMQ Adapter
  • Message Queue - ActiveMQ Provider
  • Message Queue - Core
  • Message Queue - JMS Adapter
  • Message Queue - Message
  • Message Queue - Service

 

1.2 Content of the delivered package

Please review the contents of the delivered archive with the files listed in the table below.

FileDescription
DeployScript.ps1installation Script for new installations
params.ps1configuration of the installation
Communardo.Common.wspCommunardo solution for common functions
Communardo.Communote.wspCommunote solution for the Web Front End Server
Communardo.Communote.Services.wspCommunote solution for Application Front End Server
CreateTable.sqlSQL script for creating the token Communote database 
Communardo.Communote.EncryptPassword.exeHelper application to create an encrypted password

 

1.3 Availability of SharePoint services

Snap-in: “Microsoft.Sharepoint.Powershell”

Verify in the PowerShell, whether the snap-in “Microsoft.Sharepoint.Powershell” is loaded. Use the PSSnapin command.

PS> PSSnapin


Expected Result


Name        : Microsoft.Sharepoint.Powershell PS Version     : 1.0 Description : Register all administration Cmdlets for Microsoft SharePoint Server


If necessary please use the following command to load the snap-in:


PS> Add-PSSnapin Microsoft.Sharepoint.Powershell

 

Session State Service

Next, verify with the following command if the session state service (Enable-SPSessionStateService) is available.

PS> get-command -Noun SP*

Expected Result

The output will be a list of commands available on your system. If the command Enable-SPSessionStateService displayed in this list, the session state service is enabled on your system. (warning) In case the command has not been activated on your SharePoint Foundation system, please see the instructions in the following blog article: How to enable Session State on SharePoint Foundation 2010

 

Setting up the session state service

The following command shows whether the session state service war already set on your system:

PS> Get-SPSessionStateService


Expected Result


Enabled Timeout  Database Server      Database Catalog     Database Id ------- -------  ---------------      ----------------     ----------- True    01:00:00 MyDBServer           SessionStateServi... 8bd74ba3-7ab1-4116-ae60-686b931ef05c


If the value False is displayed in the output, you need to activate the sesion state service on your SharePoint farm using the following PowerShell command:


PS> Enable-SPSessionStateService -DatabaseName <SessionStateDatabase>

<SessionStateDatabase> –The database name for the session state service. For example: SessionStateServiceDataBase

1.4 Create a Support Database

The Communote solution requires a small database to temporarily save data – e.g. credentials. Create this database before you start the installation.

  1. Enter a name for the database in CreateTable.sql (change at 2 locations in the script: <DATABASE_NAME>).

  2. execute the script CreateTable.sql on the SQL Server

  3. assign the permissions “owner” (dbo) to the database for SharePoint Application Pool account

  4. Activate the token database for “Windows Authentication” mode (if necessary)

 

2. Installation

2.1 Communote System: Configuring the Message Queue provider

Navigate to the administration area of Communote and configure your Message Queue provider. A configuration guide for the Message Queue provider you can find in our support portal: Communote > Plugins > Message Queue

(info)Write down the user name and password to access the provider for the following installation.

2.2 Communote System: Set password for the system user

By default, no password is defined for the system user “sharepoint.system”. Please navigate to the administration area of Communote and set a passwort for this user to increase the security of your system.

  • Open the user management: Administration > User Management
  • The overview shows all user of Communote. Activate the filter “Systemuser”.
  • All users are displayed with the role system user
  • Click once on the entry with the user alias “sharepoint.system” to open the user details
  • Enter a password for this user an save your changes

(info)Write down the passwort of the system user for the following installation.

2.3 SharePoint: Installation of Communote solution

The next step is to install the Communote solution on your SharePoint system. The included file params.ps1 allows an individual configuration of your installation and should be adjusted to your system requirements.

Open the script file (params.ps1) in an suitable editor, e.g. PowerShell ISE and adjust the parameters to your system requirements. Each parameter in this file is explained in the table below. If you have done all adjustments in params.ps1, save it and open the script DeployScript.ps1 to enter the absolute path to the params.ps1.

Finally, run the script DeployScript.ps1

After the installation is done, check if the solution has been installed correctly: Central Administration > System Settings > Farm Solutions

Configuration options

KeyDescriptionExample
solutionPathAbsolute path where the solutions are stored"C:\Deploy\"
communardoCommonSolutionName

Name of Common Solution, Communardo.Common.wsp

You should not change this value.

"Communardo.Common.wsp"
communardoCommunoteSPIntegrationSolutionName

Name of Communardo.Communote.wsp solution

You should not change this value.

"Communardo.Communote.wsp"
communardoCommunoteServiceSolutionName

Name of Communardo.Communote.Timerjobs.wsp solution

You should not change this value.

"Communardo.Communote.Services.wsp"
communotefullPermissionTimerJobSchedule

Schedule for running the syncronisation with Communote

Current values for the timer jobs can be retrieved using the following command: Get-SPTimerJob | sort-object name | format-table-auto

"daily at 04:00:00"
communoteServerUrlURL of the Communote system"http://communote_server:8080"
communoteTokenDbConnectionString to connect to the custom database for Communote

"Data Source=<db_server_name>; Integrated Security=SSPI; Initial Catalog=<db_name_sp_cn>"

<db_server_name> – The name of your SQL Server.<db_name_sp_cn> – The database name that was entered in “CreateTable.sql”.

communoteUserProfileTrackingTimerJobSchedule

interval to check for changes in the user profile (irrelevant for SharePoint Foundation)

How to create a plan fpr a timer job is described here: SPSchedule.FromString(recurrenceValue) - syntax/format for recurrence value

"every 5 minutes"

communoteIncrementalPermissionTimerJobScheduleinterval for the incremental testing of permissions"every 5 minutes"
communoteUser

Communote System User

You should not change this value.

"sharepoint.system"
communotePassword

encrypted password of the system user

Encrypt the password withCommunardo.Communote.EncryptPassword.exe.

"3uyRYippwH6Vae3UcNBCau9ow=="
communoteClientId

Communote ID of your system.

For installations on your own servers use "global" or leave it blank: "".

If you use our online service, please enter your Communote ID that you specified during registration. You also can find the ID in the Communote address: www.communote.com/microblog/communote_id

"global"
Message Queue

You will find your personal configuration data in the administration area of Communote:  Extension > Message Queue Provider

If you are using our online service, please contact our support team and we will share the necessary configuration data.

communoteMqClientUserNameuser name for the Message Queue provider"mp.sharepoint"
communoteMqClientPassword

encrypted passwort of the Message Queue Provider

Encrypt the password withCommunardo.Communote.EncryptPassword.exe.

"3uyRYippwH6Vae3UcNBCau9ow=="
communoteMqPortPort for the Message Queue Provider
  • default
    • TCP = 61616
    •  SSL = 61617
"61616"
communoteMqServerNameserver name of the Message Queue Provider"http://mqServer"
communoteMqBrokerUrlList

URLs of the Message Queue Provider

If this parameter is set, the settings ofcommunoteMqPort andcommunoteMqServerName will be overridden.

"ssl://communoteServer1:61617, ssl://communoteServer2:61617"
communoteMqClientCertFileName

path to the client certificate

Important when using SSL-CERT.

"C:\message-queue\activemq\cert\me\client.pfx"
communoteMqClientCertPasswordpassword of the client certificate 
communoteMqClientCertSubjectsubject of the client certificate"CN=sharepoint.system, OU=global.communote.user, O=Communote, L=Dresden, S=Sachsen, C=DE"
communoteMqCertificateServerNameserver name of the client certificate"communote-mq-provider"
communoteMqClientSecurity

Setting the security level

  • NONE (default)
  • SSL
  • SSL-CERT

(see also “Certificates for Message Queue connections”)

""
Settings for Webpart
communoteWebpartSettingsUsePersonalTopicLinker

If set to true the Web Part properties shows the checkbox “Link to personal topic”. Default value: true

(irrelevant for SharePoint Foundation)

$true
communoteSendProfileChangesActivities

If set to true, changes of the user profile create an activity in Communote. Default value: true

(irrelevant for SharePoint Foundation)

$true

 

Example of a minimal configuration:

params.ps1
$global:solutionPath                                       = "C:\Deploy\"
$global:communardoCommonSolutionName                       = "Communardo.Common.wsp"
$global:communardoCommunoteSPIntegrationSolutionName       = "Communardo.Communote.wsp"
$global:communardoCommunoteServiceSolutionName             = "Communardo.Communote.Services.wsp"
$global:communotefullPermissionTimerJobSchedule            = "daily at 04:00:00"
$global:communoteServerUrl                                 = "http://communoteserverUrl"
$global:communoteTokenDb                                   = "Data Source=DBServer; Integrated Security=SSPI;
                                                              Initial Catalog=CommunoteTokenDB"
$global:communoteUser                                      = "sharepoint.system"
$global:communotePassword                                  = "MlCk+0Wk7Qja+WpMZShLjw=="
$global:communoteClientId                                  = "global"
$global:communoteMqClientUserName                          = "mq"
$global:communoteMqClientPassword                          = "QuyJicppVahea3UjNZauow=="
$global:communoteMqClientSecurity                          = "NONE"
$global:communoteUserProfileChangeTrackingTimerJobSchedule = "every 10 minutes"
$global:communoteIncrementalPermissionTimerJobSchedule     = "every 5 minutes"
$global:communoteSendProfileChangesActivities              = $true

 

3. Update

If you have already installed an older version of our Communote solution, please perform the following steps to install the new verion.

  • At first you have to delete the following solutions (http://CentralAdministration/_admin/Solutions.aspx):
    • Communardo.Communote.wsp
    • Communardo.Communote.Services.wsp
    • Communardo.common.wsp
  • If the table ChangedSite does not exist in your custom database, delete the database an create it with the script: CreateTable.sql
    • create the new database as described in section 1.4
  • Then install the new version of the Communote solution
    • As described in the installation instructions: Customize the values in params.ps1 and execute DeployScript.ps1 in PowerShell

 

4. Configuration

4.1 Communote System: Configuration of Communote

Configure how can Communote reach the SharePoint Server

  1. Login Communote and change to the administration of Communote (follow the link “Administration” in the submenu at your user name).
  2. Select Integration > SharePoint Configuration
  3. In “URL to SharePoint installation” enter the URL of your SharePoint system, e.g. http://portal.ourdomain.com/
  4. Thus Communote can communicate with SharePoint services, you must enter the credentials of a SharePoint administrator account. The input field for “Admin Password” can be enabled by clicking the link below the field: “change or set password”
  5. Select whether Communote to be linked to a “SharePoint server” to or “ SharePoint Foundation”.
  6. If the user images of SharePoint should be used in Communote too, you just have to activate the option “Communote … display the user picture defined in the SharePoint user profile” (irrelevant for SharePoint Foundation)
  7. Enable “Allow external authentication” options. In order to allow the authentication  of users through SharePoint when a SharePoint page loads with embedded WebPart content of Communote.
  8. Save the configuration

 

Configure the user repository for Communote

The Communote Administration Manual provides instructions on how to configure your system to connect external user directories. See section “Integration” of the Administration Manual.

 

Simplify the process for user activation

In order to create and activate a user in Communote several steps are necessary. If a user logs in the first time at Communote, by default he will be created and must be explicitly activated by an administrator before he can see content of Communote.

To simplify this process, select the option for automatic activation of new users in the administration of Communote. You find the settings under Administration > User Management > Settings: “New users are automatically activated”.

 

4.2 Configuration of SharePoint

Activate the Communote Feature

To use the plugin in a SharePoint site or site collection you have to activate the feature “Communote Site Linker”. For that open Site collection features under Site Actions > Site Settings
Now you have to activate the “Site Communote Left” as shown in the figure below.

 

Set Permissions in SharePoint

In order that Communote can use the services of SharePoint, the following permissions have to assigned to a user account in SharePoint.

Set permissions on the User Profile Service

  1. open the Central Administration of SharePoint
  2. open the administration of service applications: Application Management > Manage service applications
  3. Select the entry “User Profile Service Application” by clicking right next to the title. The ribbon button “Administrators” is activated and can now be selected.
  4. click “Administrators”
  5. Assign all permissions (“Full Control”) to the user account that you used for the Communote configuration (see section 4.1)

Set permissions on Site Collection Service

  1. Go to the site collection which you have entered in the Communote configuration (see section 4.1), e.g. http://portal.ourdomain.com/
  2. open permission settings of this site collection: Site Action > Site Permissions
  3. Click “Grant Permissions” button
  4. Assign all permissions (“Full Control”) to the user account that you used for the Communote configuration (see section 4.1)

 

Certificates for Message Queue connections

 If you want to use SSL for communications with the Message Queue Server, you have to set up the SharePoint following things:

Variant 1 – SSL

  1. set the farm property communoteMqClientSecurity to “SSL”
  2. Download the certificate from Communote Message Queue Server 
  3. Open the Management Console (MMC) on the SharePoint Server
  4. Within MMC add a new snap-in “Certificates” and select “Computer account” to manage certificates

  5. Add the downloaded certificate into the “Trusted Root Certification Authorities” (The certificate must be stored on any SharePoint server under "Trusted Root Certification Authorities".)
  6. Open the properties of the certificate and look into the details of the “subject”
    1. “CN” should contain the name of the server Communote
  7. Set the value of “CN” in the farm property communoteMqCertificateServerName

Variant 2 – SSL-CERT

  1. set the farm property communoteMqClientSecurity to “SSL-CERT”

  2. Upload the certificate with a password for the user “sharepoint.system” to  each SharePoint Server

  3. Store the path to the certificate in farm property communoteMqClientCertFileName

  4. The password for the certificate will be stored in farm property communoteMqClientPassword

 

4.3 Logging

 

  • The log entries are written to the Communote Solution SharePoint logs 
  • use log level “verbose” to log more information
  • The log level can be set in the Central Administration of SharePoint

 

4.4 Troubleshooting

The Communote WebPart isn't available for the Share Point System account

You have to define another account for the connection between Share Point and Communote.If the connection between Communote and SharePoint after the configuration does not work, perform the following steps:

  1. Login to Share Point
  2. Open in the same window following URL http://<SP_SERVER>/_vti_bin/communardo.communote/communotemanagement.svc/GetUserInfo
  3. The result should look like in this way:

    {"login":"yourLoginName",
     "firstName":"yourFirstName",
     "lastName":"yourLastName",
     "email":" yourEmailAddress ",
     "lang":"en",
     "userFound":"False"}

  4. The e-mail address must be filled, otherwise the authentication against Communote will not work. If the address does not exist, do the following:
    1. Check whether the email address for those users is available in Active Directory.
    2. Check if the "User Profile Synchronization" runs error-free. Please take a look at: http://technet.microsoft.com/en-us/library/ee721049.aspx

 

5. Using the Web Part

5.1 Add the Communote Web Part

You can add the Communote Web Part to any page in SharePoint to display the message stream of Communote.

  1. open a SharePoint site where you want to insert the Web Part
  2. Edit Page: Click to edit icon at top of the page > insert tab
  3. Click the button “Web Part”
  4. from the category “Custom”, select the “ Communote” 
  5. Click on “Add” button 

 

5.2 Customize the Communote Web Part

The web part can be flexibly configured. The most important parameters can be set via a form (see following figure). Other settings can be configured via the “Additional parameters” in the Web Part.

 

The following table shows the list of all available parameters.

Parameter namePossible valuesDefault valueDescription
Editor (ed)
edShowCreatetrue/falsetrueShow the editor area for creating new notes
edInitLines1 ... 502The initial height of the editor
edShowTopicChoosertrue/falsetrueShow the topic selection, is used for adding new notes
edTopicList A comma separated list of topic aliases, shown in the topic chooser Default: all writeable topics of the user
edPreselectedTopic A preselected topic for writing
edShowTagtrue/falsefalseShow the tagging function for notes
edShowTagFieldtrue/falsefalseShow the tagging text field for notes (Communote Version 2.2)
edAddDefaultTags A comma separated list of tags that are added to the notes by default
edShowUploadtrue/falsefalseShow the file upload function for notes (Communote Version 2.2)
Message Stream (msg)
msgShowMessagestrue/falsetrueShow the message stream
msgShowEdittrue/falsetrueShow the note action link “edit”
msgShowReplytrue/falsetrueShow the note action link “reply”
msgShowDeletetrue/falsetrueShow the note action link “delete”
msgShowLiketrue/falsetrueShow the note action link “like”
msgShowFavortrue/falsetrueShow the note action link “bookmark”
msgShowAuthorImgtrue/falsetrueShow the author images at notes and anwers
msgMaxCount0 ... 5010The count of notes that are loaded at once
msgShowViewsall/following/me/favoritesallThe available views for the message stream (comma seperated list)
msgViewSelectedall/following/me/favoritesallWhen multiple views are provided a special view can be preselected
msgFollowButtontrue/falsetrueShow a button to follow a single topic
msgHomeButtontrue/falsefalseShow a button to open the full application in a new window
Filter (fi)
fiShowFiltertrue/falsetrueShow the note filter area
fiShowSearchtrue/falsetrueShow the keyword search
fiShowTopictrue/falsetrueShow the topic filter
fiShowTagCloudtrue/falsetrueShow the tag cloud
fiShowAuthortrue/falsetrueShow the author filter
fiPreselectedSearch To initialize the text search filter with a predefined string
fiPreselectedTopics To initialize the topic filter with a comma separated list of topic aliases, shown in the topic filter (default: all readable for the user) Default: all readable topics for the user
fiPreselectedTopicIds Like fiPreselectedTopics, but with the database id of topics
fiPreselectedTagIds To initialize the tag filter with a comma separated list with the database id of tags
fiPreselectedAuthors To initialize the author filter with a comma separated list of user aliases
fiPreselectedAuthorIds To initialize the topic filter with a comma separated list of the database id of users
fiPreselectedNoteId To initialize the note filter with the database id of a note
fiTopicPageSize1 ... 5010The count of topics per page the user can filter by (topic filter)
fiAuthorPageSize1 ... 5014The count of authors per page the user can filter by (author filter)
Activities (ac)
acShowtrue/falsetrueShow activities in the message stream (Communote Version 2.2)
acShowFiltertrue/falsetrueShow the activity filter (Communote Version 2.2)
Miscellaneous
utcTimeZoneOffset-720 ... +8400Sets the timezone offset in minutes

 

5.3 Synchronization of SharePoint permissions on a topic in Communote


A single Communote topic can be assigned to a SharePoint site via site settings. The assigned topic gets access permissions from the site, so that permissions for this topic must be maintained only in SharePoint. The assigned topic is by default displayed in a web part, when it is inserted into the site.

 

Communote synchronized existing groups with groups of external systems periodically. Is there a group, which isn't  in Communote, they group will be created. Hence the permissions that are defined in SharePoint, can be transferred during synchronization, you must give this group permissions explicitly.

 

6. Activities

In SharePoint you have the option of activating activities, which are then automatically displayed as a message in Communote. Activities of an user are triggered events which are displayed in Communote by a message. The activity describes the action that the person has performed with or on an object. A user activity can be for example the creation of a calendar entry.

To activate this function, the SharePoint integration have to be installed and be placed in a page. Access the Site Settings about the Site Actions.  Under “Site Administration” you will find the item “Communote activities” . At this point you will find the option to enable or disable the different types of activities.

Following activity types are possible:

  • Update User Profile on SharePoint (irrelevant for SharePoint Foundation)
  • User created in the SPWeb
  • Users deleted from SPWeb
  • Creating a Wiki article
  • Changing a Wiki article
  • Creating a document
  • Publication of a document
  • Create a list item
  • Create a new calendar event
  • Creating a new blog entry
  • Comment on a blog entry

 

 

  • No labels