<docbook><section><title>OdsConfig</title><para> </para>
<title> A Quick Start to OpenLink Data Spaces (ODS)</title> A Quick Start to <ulink url="OpenLink">OpenLink</ulink> Data Spaces (ODS)
<para>ODS is included as part of Virtuoso Open Source (VOS) version 6.0 and higher.
 This page provides instructions on installation of the ODS suite of Data Space applications.</para>
<para>Please note that ODS is automatically installed in the Virtuoso Demo Database.
 Thus, you do not need to perform the installation steps below if working with a Virtuoso 6.0 (or higher) demonstration database.</para>
<para> </para>
<bridgehead class="http://www.w3.org/1999/xhtml:h2"> Configuring ODS</bridgehead>
<bridgehead class="http://www.w3.org/1999/xhtml:h3"> Configuration Parameters</bridgehead>
<para>ODS depends on certain parameters in the Virtuoso Database Initialization File (INI file, e.g., demo.ini for the demonstration database).
 The default settings in this file are appropriate for most installations.
 However, before starting the Virtuoso server for ODS use, you should verify that the following parameters are set in the INI file:</para>
<itemizedlist mark="bullet" spacing="compact"><listitem>HTTP Server must be enabled (HTTPServer section), e.g.
 -- <programlisting>;Virtuoso ini
...
[HTTPServer]
ServerPort                  = 8890
...
</programlisting></listitem>
<listitem>A default mail server must be specified in DefaultMailServer INI option of the HTTPServer section.
 This must point to a valid SMTP server for outgoing mail, e.g.
 -- <programlisting>;Virtuoso ini
...
[HTTPServer]
DefaultMailServer           = smtp-submit.example.com:587
...
</programlisting></listitem>
<listitem>The URIQA section must have a proper &#39;DefaultHost&#39; setting, which must contain the name and http port of the Virtuoso instance&#39;s HTTP listener (as set above).
 This name must be valid across the network where ODS will be used.
 This may require you to have a CNAME or similar entry in DNS for the service.
 (See the <ulink url="http://docs.openlinksw.com/virtuoso/dbadm.html#ini_URIQA">URIQA section</ulink> in the documentation for more details.) <programlisting>;Virtuoso ini
...
[URIQA]
DefaultHost = demo.mydomain.com:1112
...
</programlisting></listitem>
<listitem>The ImageMagick, Wikiv, CreoleWiki, MediaWiki plugins are enabled via the following entries in the &quot;[Plugins]&quot; section, for ex: <programlisting>;Virtuoso ini
...

[Plugins]
... other plugins..
LoadPath = /usr/local/lib
Load1    = plain,im
Load2    = plain,wikiv
Load3    = plain,mediawiki
Load5    = plain,creolewiki
... other plugins ...
</programlisting> </listitem>
</itemizedlist><bridgehead class="http://www.w3.org/1999/xhtml:h2"> Locate and install the VAD packages</bridgehead>
<bridgehead class="http://www.w3.org/1999/xhtml:h3">VAD Packages</bridgehead>
<para>Once you have verified the server settings, the next step is to install the VAD packages.</para>
<para>For binary distributions and the tree made by make install, they are located in the share/virtuoso/vad directory under the installation root.
 If you are using the demo database, the packages are pre-installed.</para>
<para>The ODS VAD packages for this release include:</para>
<orderedlist spacing="compact"><listitem><ulink url="OdsFramework">OpenLink Data Space (ODS) Framework</ulink> (<ulink url="https://shop.openlinksw.com/license_generator/vad/">ods_framework_dav.vad</ulink>) </listitem>
<listitem><ulink url="OdsBlog">ODS-WebBlog</ulink> (<ulink url="https://shop.openlinksw.com/license_generator/vad/">ods_blog_dav.vad</ulink>) </listitem>
<listitem><ulink url="OdsBriefcase">ODS-Briefcase</ulink> (<ulink url="https://shop.openlinksw.com/license_generator/vad/">ods_briefcase_dav.vad</ulink>) </listitem>
<listitem><ulink url="OdsFeedManager">ODS-Feed Manager</ulink> (<ulink url="https://shop.openlinksw.com/license_generator/vad/">ods_feedmanager_dav.vad</ulink>) </listitem>
<listitem><ulink url="OdsWiki">ODS-Wiki</ulink> (<ulink url="https://shop.openlinksw.com/license_generator/vad/">ods_wiki_dav.vad</ulink>) </listitem>
<listitem><ulink url="OdsMail">ODS-Mail</ulink> (<ulink url="https://shop.openlinksw.com/license_generator/vad/">ods_webmail_dav.vad</ulink>) </listitem>
<listitem><ulink url="OdsBookmarkManager">ODS-Bookmark Manager</ulink> (<ulink url="https://shop.openlinksw.com/license_generator/vad/">ods_bookmark_dav.vad</ulink>) </listitem>
<listitem><ulink url="OdsGallery">ODS-Gallery</ulink> (<ulink url="HttpsShopOpenlinkswComLicense_generatorVad">https://shop.openlinksw.com/license_generator/vad/</ulink>) </listitem>
<listitem><ulink url="OdsCommunity">ODS-Community</ulink> (<ulink url="https://shop.openlinksw.com/license_generator/vad/">ods_community_dav.vad</ulink>) </listitem>
<listitem><ulink url="OdsPolls">ODS-Polls</ulink> (<ulink url="https://shop.openlinksw.com/license_generator/vad/">ods_polls_dav.vad</ulink>) </listitem>
<listitem><ulink url="OdsAddressbook">ODS-Addressbook</ulink> (<ulink url="https://shop.openlinksw.com/license_generator/vad/">ods_addressbook_dav.vad</ulink>) </listitem>
<listitem><ulink url="OdsDiscussions">ODS-Discussions</ulink> (<ulink url="https://shop.openlinksw.com/license_generator/vad/">ods_discussion_dav.vad</ulink>)</listitem>
</orderedlist><bridgehead class="http://www.w3.org/1999/xhtml:h4">VAD Installation</bridgehead>
<para>The next step is to install the VAD packages: </para>
<orderedlist spacing="compact"><listitem>With ISQL, run the following command: <programlisting>SQL&gt; VAD_INSTALL(&#39;&lt;path of the VAD file&gt;&#39;,0);
</programlisting></listitem>
<listitem>Install the files in the order of the above listing.
 The web pages of the packages will go into the server&#39;s <ulink url="WebDAV">WebDAV</ulink> repository.</listitem>
</orderedlist><bridgehead class="http://www.w3.org/1999/xhtml:h2"> DNS Settings</bridgehead>
<para>If you wish to offer virtual host names for applications, as in myblog.example.com, then the DNS has to be set up to direct *.example.com to the host where Virtuoso is running.
 If users will not choose Virtual Host names for their applications, this step can be skipped.</para>
<bridgehead class="http://www.w3.org/1999/xhtml:h2"> Configure ODS</bridgehead>
<para>The larger part of configuration is performed through the browser:</para>
<orderedlist spacing="compact"><listitem>Enter the URL http://[host]:[port]/ods where the host and port are the server and port your Virtuoso instance is running on.
 (e.g.
 <ulink url="http://localhost:8890/ods/)">http://localhost:8890/ods/)</ulink> : <ulink url="OdsConfig/c1.png"><figure><graphic fileref="OdsConfig/c1.png" /></figure></ulink> </listitem>
<listitem>Login as &quot;dav&quot;, the default password is &quot;dav&quot;.
<ulink url="OdsConfig/c2.png"><figure><graphic fileref="OdsConfig/c2.png" /></figure></ulink> </listitem>
<listitem>Click on &quot;Site Settings&quot;: <ulink url="OdsConfig/c3.png"><figure><graphic fileref="OdsConfig/c3.png" /></figure></ulink> </listitem>
<listitem>Open the &quot;Web Application Configuration&quot; page and enter a Google API key.
 You can obtain a key by from <ulink url="http://www.google.com/apis/maps/signup.html,">http://www.google.com/apis/maps/signup.html,</ulink> and choosing the appropriate Geocoder service.
 Note that not all Geocoder services return addresses for non-US countries: <ulink url="OdsConfig/c4.png"><figure><graphic fileref="OdsConfig/c4.png" /></figure></ulink> <ulink url="OdsConfig/c5.png"><figure><graphic fileref="OdsConfig/c5.png" /></figure></ulink> </listitem>
<listitem>Save the changes and return to the &quot;Site Settings&quot; via the link at the top.</listitem>
</orderedlist><para>You can skip these steps but then the map-related features will be disabled.</para>
<orderedlist spacing="compact"><listitem>Click on &quot;Site Settings&quot; -&gt; &quot;Mail&quot; settings page: <ulink url="OdsConfig/c6.png"><figure><graphic fileref="OdsConfig/c6.png" /></figure></ulink> </listitem>
<listitem>Specify the proper default mail domain, whether to use the default mail server (from the INI) or enter another: <ulink url="OdsConfig/c7.png"><figure><graphic fileref="OdsConfig/c7.png" /></figure></ulink> </listitem>
<listitem>Specify the proper ODS admin mail address and save the settings: <ulink url="OdsConfig/c8.png"><figure><graphic fileref="OdsConfig/c8.png" /></figure></ulink> </listitem>
<listitem>Press the &quot;Test&quot; button to verify that the mail settings actually work and click &quot;Update.
</listitem>
<listitem>Return to the &quot;Site Settings&quot; page.
</listitem>
<listitem>Click on the &quot;Member Registration&quot; settings page: <ulink url="OdsConfig/c9.png"><figure><graphic fileref="OdsConfig/c9.png" /></figure></ulink> </listitem>
<listitem>Select the desired registration scheme from the options, or if you are not sure what to use, just leave as it is.
Here are the options that change the behavior of the ODS site registration: <itemizedlist mark="bullet" spacing="compact"><listitem>&quot;Allow Digest: Logins/Registrations&quot; - allow regular users logins and registrations; </listitem>
<listitem>&quot;Allow <ulink url="OpenID">OpenID</ulink>: Logins/Registrations&quot; - allow <ulink url="OpenID">OpenID</ulink> user logins and registrations; </listitem>
<listitem>&quot;Allow Facebook: Logins/Registrations&quot; - allow Facebook user logins and registrations; </listitem>
<listitem>&quot;Allow Twitter: Logins/Registrations&quot;; - allow Twitter user logins and registrations; </listitem>
<listitem>&quot;Allow <ulink url="LinkedIn">LinkedIn</ulink>: Logins/Registrations&quot;; - allow <ulink url="LinkedIn">LinkedIn</ulink> user logins and registrations; </listitem>
<listitem>&quot;Allow <ulink url="WebID">WebID</ulink> Based: Logins/Registrations&quot;; - allow <ulink url="WebID">WebID</ulink> based user logins and registrations; </listitem>
<listitem>&quot;<ulink url="WebID">WebID</ulink> based Login &amp; Registration Rules&quot;; - allow <ulink url="WebID">WebID</ulink> based Login &amp; Registration Rules; </listitem>
<listitem>&quot;Automatic <ulink url="WebID">WebID</ulink> Registration &amp; Login&quot;; - allow Automatic <ulink url="WebID">WebID</ulink> Registration &amp; Login; </listitem>
<listitem>&quot;Verify registration by email&quot; - whether to send a mail to the new users with confirmation or create the account immediately.
</listitem>
<listitem>&quot;Require unique email&quot; - if not checked a single mail can be used multiple times for registering new users.
</listitem>
<listitem>&quot;Verify registration with formula&quot; - formula is presented so the registration to be verified.
</listitem>
<listitem>&quot;Registration expiry time&quot; - time in hours after which registration confirmation is not possible.
</listitem>
<listitem>&quot;Membership (Join) expiry time&quot; - time in hours for which membership invitation is valid.</listitem>
</itemizedlist></listitem>
</orderedlist><para>ODS is now ready for use.</para>
<para>Note: if you disable the default site registration, then in addition to the above the ODS admin will need to create user accounts for the site members.</para>
<bridgehead class="http://www.w3.org/1999/xhtml:h2"> Configuring the ODS domain(s)</bridgehead>
<para>In order to allow ODS users to create their own sub-domains (e.g.
 user.sample.domain, where ODS domain is sample.domain) the ODS should be configured via Conductor UI.</para>
<para>The following describes how to enable an ODS domain :</para>
<orderedlist spacing="compact"><listitem>Go to <ulink url="http://host:port/conductor">http://host:port/conductor</ulink> <ulink url="OdsConfig/c10.png"><figure><graphic fileref="OdsConfig/c10.png" /></figure></ulink> </listitem>
<listitem>Login as &#39;dba&#39; and open &quot;Web Application Server&quot; -&gt; &quot;Virtual Domains &amp; Directories&quot; <ulink url="OdsConfig/c11.png"><figure><graphic fileref="OdsConfig/c11.png" /></figure></ulink> </listitem>
<listitem>Specify the interface address, port to listen and domain like &#39;0.0.0.0&#39; (all interfaces), 8888 and &#39;sample.domain&#39; in the form below the list and click &#39;Add&#39;: <ulink url="OdsConfig/c13.png"><figure><graphic fileref="OdsConfig/c13.png" /></figure></ulink> <ulink url="OdsConfig/c14.png"><figure><graphic fileref="OdsConfig/c14.png" /></figure></ulink> </listitem>
<listitem>Open &quot;System Admin&quot; then &quot;Packages&quot;, open the Configure page for &quot;Framework&quot; package: <ulink url="OdsConfig/c12.png"><figure><graphic fileref="OdsConfig/c12.png" /></figure></ulink> </listitem>
<listitem>Select &quot;Create New Endpoint&quot; link; the new ODS endpoint form should be shown: <orderedlist spacing="compact"><listitem>You can specify either &quot;Endpoint prefix&quot; or &quot;Virtual directory&quot; or both to enable the domain from selection list to be used as ODS domain.
</listitem>
<listitem>Leave the &quot;Domain registration&quot; option enabled </listitem>
<listitem>Confirm the changes; the new ODS endpoint will be listed.
<ulink url="OdsConfig/c15.png"><figure><graphic fileref="OdsConfig/c15.png" /></figure></ulink></listitem>
</orderedlist></listitem>
</orderedlist><para>After performing the above steps, when creating a new application instance, the new domain will be selectable when choosing a virtual host name for the application.</para>
<bridgehead class="http://www.w3.org/1999/xhtml:h2"> Configuring ODS instance as an X.509 Certificate Authority and HTTPS listener</bridgehead>
<para>See our <ulink url="ODSPkiSetup">Certificate Authority and Issuer Setup Guide</ulink>.</para>
<para> </para>
<bridgehead class="http://www.w3.org/1999/xhtml:h2"> Configuring ODS Dataspace Objects <ulink url="WebID">WebID</ulink> Access Control Lists (ACLs)</bridgehead>
<orderedlist spacing="compact"><listitem><itemizedlist mark="bullet" spacing="compact"><listitem><ulink url="ODSBriefcaseWebID">ODS Briefcase WebID based ACL Guide</ulink> <itemizedlist mark="bullet" spacing="compact"><listitem><ulink url="ODSBriefcaseWebIDPerson">Person Entity WebID based ACL Guide</ulink> </listitem>
<listitem><ulink url="ODSBriefcaseWebIDGroup">Group Entity WebID based ACL Guide</ulink> </listitem>
<listitem><ulink url="ODSBriefcaseWebIDPublic">Public WebID based ACL Guide</ulink> </listitem>
</itemizedlist></listitem>
<listitem><ulink url="ODSFeedManagerWebIDACL">ODS Feed Manager WebID based ACL Guide</ulink> <itemizedlist mark="bullet" spacing="compact"><listitem><ulink url="ODSFeedManagerWebIDACLPerson">Person Entity Specific ACL</ulink> </listitem>
<listitem><ulink url="ODSFeedManagerWebIDACLGroup">Group Entity Specific ACL</ulink> </listitem>
<listitem><ulink url="ODSFeedManagerWebIDACLPublic">Public Specific ACL for anyone with a WebID</ulink> </listitem>
</itemizedlist></listitem>
<listitem><ulink url="ODSCalendarWebIDACL">ODS Calendar WebID based ACL Guide</ulink> <itemizedlist mark="bullet" spacing="compact"><listitem><ulink url="ODSCalendarWebIDACLPerson">Person Entity Specific ACL</ulink> </listitem>
<listitem><ulink url="ODSCalendarWebIDACLGroup">Group Entity Specific ACL</ulink> </listitem>
<listitem><ulink url="ODSCalendarWebIDACLPublic">Public Specific ACL for anyone with a WebID</ulink> </listitem>
</itemizedlist></listitem>
<listitem><ulink url="ODSBookmarksWebIDACL">ODS Bookmark Manager WebID based ACL Guide</ulink> <itemizedlist mark="bullet" spacing="compact"><listitem><ulink url="ODSBookmarksWebIDACLPerson">Person Entity Specific ACL</ulink> </listitem>
<listitem><ulink url="ODSBookmarksWebIDACLGroup">Group Entity Specific ACL</ulink> </listitem>
<listitem><ulink url="ODSBookmarksWebIDACLPublic">Public Specific ACL for anyone with a WebID</ulink> </listitem>
</itemizedlist></listitem>
<listitem><ulink url="ODSAddressBookWebIDACL">ODS Addressbook  WebID based ACL Guide</ulink> <itemizedlist mark="bullet" spacing="compact"><listitem><ulink url="ODSAddressBookWebIDACLPerson">Person Entity Specific ACL</ulink> </listitem>
<listitem><ulink url="ODSAddressBookWebIDACLGroup">Group Entity Specific ACL</ulink> </listitem>
<listitem><ulink url="ODSAddressBookWebIDACLPublic">Public Specific ACL for anyone with a WebID</ulink></listitem>
</itemizedlist></listitem>
</itemizedlist></listitem>
</orderedlist><para> </para>
<bridgehead class="http://www.w3.org/1999/xhtml:h2"> Configuring PSH in ODS Dataspace</bridgehead>
<para><ulink url="PubSubHub">PubSubHub</ulink> (PSH) setup consists of two steps:</para>
<orderedlist spacing="compact"><listitem>Set up the ODS server.
</listitem>
<listitem>Configure applications to publish to hub.</listitem>
</orderedlist><para>See <ulink url="VirtODSPubSubHub">detailed steps here</ulink>.</para>
<para> </para>
<bridgehead class="http://www.w3.org/1999/xhtml:h2"> Customization</bridgehead>
<itemizedlist mark="bullet" spacing="compact"><listitem>ODS pages</listitem>
</itemizedlist><para>The ODS pages can be modified by editing the <emphasis>.vspx and</emphasis>.css files in &lt;Virtuoso <ulink url="OpenSource">OpenSource</ulink>&gt;/appsrc/ODS-Framework/ and then re-build the ods_framework_dav.vad and re-install it.
 Alternately, you can install the ods_framework_filesystem.vad package which will put the dynamic web pages in the filesystem and you can edit them as the server is running, as you would edit any dynamic web pages under PHP or similar.</para>
<itemizedlist mark="bullet" spacing="compact"><listitem>User&#39;s home</listitem>
</itemizedlist><para>The users in ODS may wish to change the look and feel of their own home pages in the ODS.
 To do so, the user should go to &#39;Application Settings&#39; -&gt; &#39;Home Page Template Selection&#39; settings page.
 In the presented text area he/she can edit the home page without any special permissions by ODS administrator.</para>
<para>Note: The current ODS version of the ODS contains one &#39;default&#39; home page template, which can serve as a basis for customization.</para>
<ulink url="OdsConfig/c16.png"><figure><graphic fileref="OdsConfig/c16.png" /></figure></ulink><bridgehead class="http://www.w3.org/1999/xhtml:h2"> Adding users with Conductor</bridgehead>
<para> IMPORTANT: Below are instructions for adding new user accounts if registrations are disabled.</para>
<para>This can be performed in the Conductor (pre-installed on the Demo Database):</para>
<orderedlist spacing="compact"><listitem>Open Conductor via browser at <ulink url="http://host:port/conductor">http://host:port/conductor</ulink> (e.g.
 <ulink url="http://localhost:8890/conductor/)">http://localhost:8890/conductor/)</ulink> </listitem>
<listitem>Login as &#39;dba&#39; </listitem>
<listitem>Go to &quot;System Admin&quot; and the &quot;User Accounts&quot; tab: <ulink url="OdsConfig/c17.png"><figure><graphic fileref="OdsConfig/c17.png" /></figure></ulink> </listitem>
<listitem>Open the &quot;Create New Account&quot; page: <ulink url="OdsConfig/c18.png"><figure><graphic fileref="OdsConfig/c18.png" /></figure></ulink> </listitem>
<listitem>Enter the requested information and specify <emphasis>User type</emphasis> as &quot;<ulink url="WebDAV">WebDAV</ulink>&quot;: <ulink url="OdsConfig/c19.png"><figure><graphic fileref="OdsConfig/c19.png" /></figure></ulink> </listitem>
<listitem>Click &quot;Save&quot; to finish the user creation.</listitem>
</orderedlist><bridgehead class="http://www.w3.org/1999/xhtml:h2"> Configuring the Virtuoso mail handler on UNIX</bridgehead>
<para>Virtuoso provides a local mail delivery program (virt_mail) for SMTP servers.
 This program is used to store the received mail into the Virtuoso database.</para>
<para>The following instructions are applicable to UNIX systems using sendmail as a mail server.</para>
<para> Note: for more detailed information view a <ulink url="OdsMailInstallGuideUnix">detailed guide for settings VOS SMTP Mail handler on Win32 platforms</ulink>.</para>
<para> </para>
<bridgehead class="http://www.w3.org/1999/xhtml:h3"> Virtuoso Mail Handler Configuration</bridgehead>
<para> </para>
<orderedlist spacing="compact"><listitem>Copy virt_mail to /usr/bin/virt_mail </listitem>
<listitem>Copy <span style="color: red">
      UNKNOWN tag:
      http://www.w3.org/1999/xhtml:virtuoso/binsrc/maildrop/odbc_mail.default.ini to /etc/odbc_mail.ini </span></listitem>
<listitem>Edit /etc/odbc_mail.ini and change the login settings to match your current database installation:</listitem>
</orderedlist><programlisting>[Options]
DSN = DSN=Virtuoso; HOST=localhost:1111;UID=dba;PWD=dba
;MaxMessageSize = 2097152
Verify = DB.DBA.WA_MAIL_VALIDATE (&#39;$local&#39;)
Deliver = DB.DBA.WA_NEW_MAIL(&#39;$1&#39;, $message)
</programlisting><para> (You can probably leave the rest of the odbc_mail.ini alone.)</para>
<para>Note that DSN contains reference to the VOS server SQL port, so this should be replaced if non-default SQL port (1111) is used.</para>
<bridgehead class="http://www.w3.org/1999/xhtml:h3"> Sendmail program configuration</bridgehead>
<para>Replace the default local mailer in your sendmail.cf</para>
<programlisting>...
#Mlocal,        P=/usr/bin/procmail, F=lsDFMAw5:/|@qSPfhn9, S=EnvFromL/HdrFromL, R=EnvToL/HdrToL,
#               T=DNS/RFC822/X-Unix,
#               A=procmail -t -Y -a $h -d $u
Mlocal,         P=/usr/bin/virt_mail, F=lsDFMA5:/|@qSPhn9, S=10/30, R=20/40,
                T=DNS/RFC822/X-Unix,
                A=virt_mail -c /etc/odbc_mail.ini -l $u -h $h -s $g
...
</programlisting><para> IMPORTANT: make sure that ODS packages are installed prior to making the changes above.</para>
<bridgehead class="http://www.w3.org/1999/xhtml:h3"> Verify Mail Settings</bridgehead>
<para>Send an e-mail to the &#39;dav&#39; user account:</para>
<programlisting>bash$ mail dav@&lt;domain&gt;
Subject: virt-mail-test
.
Cc:
</programlisting><para> Using the ISQL tool check the mailbox of the &#39;dav&#39; user account:</para>
<programlisting>SQL&gt; select mm_subj from mail_message where mm_own = &#39;dav&#39;;
MM_SUBJ
VARCHAR
_______________________________________________________________________________

virt-mail-test

</programlisting><para> If you see the subject of the mail which was sent in previous step, then the handler works correctly.
 Otherwise you should check the log of the sendmail program.</para>
<para> </para>
<bridgehead class="http://www.w3.org/1999/xhtml:h2"> Other SMTP Servers</bridgehead>
<para>For the other mail server programs please consult INSTALL document in the &lt;Virtuoso Open Source&gt;/binsrc/maildrop/ directory.</para>
<bridgehead class="http://www.w3.org/1999/xhtml:h3"> Setting the VOS SMTP Mail handler on Win32 platforms</bridgehead>
<para>Before to start you make sure that STMP services for Internet Information Services (IIS) are installed on your Windows box.</para>
<para>To check that open Control Panel, Add or Remove Programs, Add/Remove Windows Components.
 In the &quot;Internet Information Services&quot; see Details there you must have &quot;SMTP Service&quot; installed, if not check and proceed with Windows installation update.
 Please note that Windows installation disk may be asked.</para>
<para> Note: for more detailed information view a <ulink url="OdsMailInstallGuideWindows">detailed guide for settings VOS SMTP Mail handler on Win32 platforms</ulink>.</para>
<para>If SMTP Service is installed then proceed with following steps: </para>
<orderedlist spacing="compact"><listitem>Open IIS configuration via Control Panel -&gt; Administrative Tools -&gt; Internet Information Services: <ulink url="OdsConfig/c20.png"><figure><graphic fileref="OdsConfig/c20.png" /></figure></ulink> </listitem>
<listitem>Check the default SMTP Virtual server is running , and if needed add alias or domain.
 Note the domain name, this will be used in the next steps: <ulink url="OdsConfig/c21.png"><figure><graphic fileref="OdsConfig/c21.png" /></figure></ulink> </listitem>
<listitem>Open a command prompt (CMD) </listitem>
<listitem>Go to the VOS binary distribution (c:\vos for example), in the c:\vos\bin directory </listitem>
<listitem>Make sure <ulink url="http://ods.openlinksw.com/wiki/ODS/OdsMailInstallGuideWindows/register.bat">register.bat</ulink>, <ulink url="http://ods.openlinksw.com/wiki/ODS/OdsMailInstallGuideWindows/smtpreg.vbs">smtpreg.vbs</ulink> and <ulink url="http://ods.openlinksw.com/wiki/ODS/OdsMailInstallGuideWindows/odbc_mail.ini">odbc_mail.ini</ulink> are in place, if not download the ZIP (attached) and unpack in this directory </listitem>
<listitem>Run <programlisting>   register.bat /register &quot;domain-name&quot;
</programlisting>   where the domain-name is domain that you wish to be served for the purpose (the one from second step) </listitem>
<listitem>If no error, you should see message like: <programlisting>   assigning priority (0 of 32767)
   registered OpenLink MailDrop
   set priority Command to c:\vos\bin\odbc_mail.exe
</programlisting></listitem>
<listitem>Edit the c:\vos\bin\virt_mail.ini and edit HOST address and port to match your Virtuoso <ulink url="OpenSource">OpenSource</ulink> server in following line: <programlisting>   DSN = DSN=Virtuoso; HOST=localhost:1112;UID=dba;PWD=dba
</programlisting></listitem>
<listitem>Make sure Virtuoso <ulink url="OpenSource">OpenSource</ulink> server is running and test the SMTP handler installation as follows: <orderedlist spacing="compact"><listitem>Connect with ISQL tool to the VOS database and execute following commands: <programlisting>SQL&gt; smtp_send (&#39;localhost:25&#39;, &#39;dba@testdomain&#39;, &#39;dba@testdomain&#39;, &#39;Subject: test\r\n\r\ntest&#39;);

Done. -- 26 msec.
SQL&gt; select MM_SUBJ from mail_message;
MM_SUBJ
VARCHAR
_______________________________________________________________________________

test

1 Rows. -- 0 msec.
SQL&gt;
</programlisting><orderedlist spacing="compact"><listitem>You should see a row with text &quot;test&quot; in the result.
 Please note that &quot;testdomain&quot; should be replaced by your domain (see above).
</listitem>
<listitem>If something is broken, you can turn on logging in virt-mail.ini with uncommenting <ulink url="MailDebug">MailDebug</ulink> setting </listitem>
<listitem>If all is ok, then change the Verify and Deliver options in odbc_mail.ini to: <programlisting>Verify = DB.DBA.WA_MAIL_VALIDATE (&#39;$local&#39;)
Deliver = DB.DBA.WA_NEW_MAIL(&#39;$1&#39;, $message)
</programlisting></listitem>
</orderedlist></listitem>
</orderedlist></listitem>
<listitem>The STMP mail handler is ready for use with VOS ODS applications.</listitem>
</orderedlist><para> </para>
<bridgehead class="http://www.w3.org/1999/xhtml:h2">ODS Tutorials</bridgehead>
 <itemizedlist mark="bullet" spacing="compact"><listitem><ulink url="ODSProfileManagerGuide">ODS-Profile Manger Usage Guide</ulink> </listitem>
<listitem><ulink url="VOSODSSparqlSamples">ODS SIOC Query Tutorial</ulink> </listitem>
<listitem><ulink url="VirtuosoOdsUbiquityTutorials">ODS Ubiquity Commands Tutorials</ulink> </listitem>
<listitem><ulink url="VirtuosoOdsUbiquityTutorialsOAuth">OAuth Ubiquity Tutorial</ulink> </listitem>
<listitem><ulink url="http://virtuoso.openlinksw.com/wiki/main/Main/VirtOAuthSPARQL">SPARQL OAuth Tutorial</ulink> </listitem>
<listitem><ulink url="http://virtuoso.openlinksw.com/wiki/main/Main/VirtAuthFOAFSSLACL">WebID Protocol &amp; SPARQL Endpoint ACLs Tutorial</ulink> </listitem>
<listitem><ulink url="OdsOpenIDRegister">Register ODS User with OpenID2 Tutorial</ulink> </listitem>
<listitem><ulink url="ODSSWATOTutorial">SWATO Tutorial</ulink></listitem>
</itemizedlist><bridgehead class="http://www.w3.org/1999/xhtml:h2">Reference Guides</bridgehead>
<itemizedlist mark="bullet" spacing="compact"><listitem><ulink url="http://virtuoso.openlinksw.com/presentations/SPARQL_Tutorials/SPARQL_Tutorials_Part_1/SPARQL_Tutorials_Part_1.html">SPARQL Tutorials Part 1: Using SIOC to Model the Linked Data Web</ulink> </listitem>
<listitem><ulink url="http://virtuoso.openlinksw.com/presentations/SPARQL_Tutorials/SPARQL_Tutorials_Part_2/SPARQL_Tutorials_Part_2.html">SPARQL Tutorials Part 2: SPARQL Extensions in the Virtuoso Universal Server</ulink> </listitem>
<listitem><ulink url="http://virtuoso.openlinksw.com/presentations/SPARQL_Tutorials/SPARQL_Tutorials_Part_3/SPARQL_Tutorials_Part_3.html">SPARQL Tutorials Part 3: SPARQL and Analytics</ulink> </listitem>
<listitem><ulink url="http://virtuoso.openlinksw.com/presentations/SPARQL_Tutorials/SPARQL_Tutorials_Part_4/SPARQL_Tutorials_Part_4.html">SPARQL Tutorials Part 4: Exploring FOAF-, Atom OWL-, Annotea-, and SKOS-based Data Spaces on the Linked Data Web</ulink> </listitem>
<listitem><ulink url="ODSProgrammersGuide">ODS Programmers&#39; Guide</ulink> </listitem>
<listitem><ulink url="ODSSIOCRef">ODS SIOC Reference</ulink> </listitem>
<listitem><ulink url="http://virtuoso.openlinksw.com/wiki/main/Main/VirtuosoOAuthProgrammersGuide">Virtuoso OAuth Programmers&#39; Guide</ulink>.</listitem>
</itemizedlist><para> </para>
<bridgehead class="http://www.w3.org/1999/xhtml:h2">Related</bridgehead>
<para> </para>
<itemizedlist mark="bullet" spacing="compact"><listitem><ulink url="ODSIndex">OpenLink Data Spaces</ulink> </listitem>
<listitem><ulink url="OdsMailInstallGuide">Virtuoso ODS-Mail Installation Guide</ulink> </listitem>
<listitem><ulink url="OdsGettingStarted">General Intranet Quick Start Guides</ulink>  by functionality realm </listitem>
<listitem><ulink url="OdsKeyImport">CA Keys Import using Conductor</ulink> </listitem>
<listitem><ulink url="ODSGenerateX509Certificate">Generate an X.509 Certificate hosted WebID Guide</ulink> </listitem>
<listitem><ulink url="ODSGenerateWebIDX509CertOSKeystore">Generate an X.509 Certificate (with a WebID watermark) to be managed by host operating system keystore</ulink> </listitem>
<listitem><ulink url="ODSGenerateWebIDX509CertBrsKeystore">Generate an X.509 Certificate (with a WebID watermark) to be managed by a browser-based keystore</ulink> </listitem>
<listitem><ulink url="ODSWebIDIdP">Using Virtuoso&#39;s WebID Verification Proxy Service with a WebID-bearing X.509 certificate</ulink> </listitem>
<listitem><ulink url="ODSWebIDIdpProxy">Using Virtuoso&#39;s WebID Identity Provider (IdP) Proxy Service with an X.509 certificate</ulink> </listitem>
<listitem><ulink url="VirtPubSubHub">PubSubHubBub Demo Client Example</ulink> </listitem>
<listitem><ulink url="VirtFeedPubSubHub">Feed subscription via PubSubHub protocol Example</ulink> </listitem>
<listitem><ulink url="VirtPubSubHubACL">Setting Up PubSubHub to use WebID Protocol or IP based control lists</ulink></listitem>
</itemizedlist><para> </para>
<bridgehead class="http://www.w3.org/1999/xhtml:h2">Additional Information</bridgehead>
 <itemizedlist mark="bullet" spacing="compact"><listitem><ulink url="ODSTipsAndTricksGuide">ODS Tips and Tricks Collection</ulink> </listitem>
<listitem><ulink url="http://goo.gl/pdkRI">Understanding Data</ulink> </listitem>
</itemizedlist></section></docbook>