Simple Groupware Data Handlers / Data Import

Data import with comma / tab separated values (CSV / TSV files)


Navigate to the target folder where the data should be imported. In the menu at the top of the page click "Im-/Export" and choose "Simple Spreadsheet Import (CSV,TSV)". The Simple Spreadsheet editor comes up. Here you can manually type in the data or import from a CSV/TSV file (= comma/tab separated values). To load data into Simple Spreadsheet, open the CSV/TSV file with your favorite text editor, then click "Load" in Simple Spreadsheet window and copy/paste the CSV/TSV data into the text area. Then click "Load" and you'll see the new data in the editor. To start the import process, click "Save" in the top menu.

Note: If your CSV/TSV content does not have the right column names in the first line, you can click "Export to CSV/TSV" at the bottom menu instead of "Load" at the top menu. This gives you the first line with right database fieldnames and you only need to append the CSV/TSV data records.

Note: When you copy/paste data from Microsoft Excel or OpenOffice Calc, the data is automatically converted to tab separated values (TSV). So you can directly copy/paste data from Excel to the text area of the Simple Spreadsheet load window.

Note: The Simple Spreadsheet editor will automatically setect the right format for you. Besides CSV and TSV, there is also the internal Javascript format from Simple Spreadsheet, which can also be used for the import.


Direct access with a mountpoint


Simple Groupware can get data form several data sources. Among those are IMAP, SMTP, POP3, iCalendar, RSS, vCard, XML, CSV, LDIF, CIFS, etc.
To read data that is stored outside the database, you need to create a new folder and set a mountpoint to the data source.

In order to import data, you can upload files to the "<sgs-dir>/import/" folder and set a mountpoint to that file. For a user-defined import, upload files to "<sgs-dir>/simple_store/home/<username>/".

With a mountpoint, external data sources easily get integrated into the Simple Groupware folder tree (similar to the Linux file system). Inside a folder, you can use copy / paste to copy data from external data sources to the Simple Groupware database. In the Simple Groupware database, all data is indexed and can be searched quickly for all users. With the right folder permissions, you can automatically share external data sources with other users. That way, you can create public mail folders, share the latest news, integrate several file servers, etc.

Create a new mountpoint:

  • Click Options
  • Enter a new folder name
  • Set module to blank
  • Click OK
  • Click Mountpoint
  • Define the mountpoint (see below)
  • Click OK



Mountpoint syntax for IMAP (e-mail client)


Type: IMAP, Username, Password, Port, Security, Hostname, Path

(folder, port and tls are optional)

Example:

  • Type: IMAP
  • Username: johndoe
  • Password: secret
  • Port: 993
  • Security: tls
  • Host: mailserver.example.com
  • Path:

or if you have all your mail folders under inbox and your port is 143 without tls/ssl:

Path: /INBOX/

To use the credentials of the current user, you can specify "" and "" as username/password.

Limitation: In the current version, IMAP has no support for creating, moving and deleting folders. Also when you create a new mail in an IMAP folder, the mail gets sent immediately (even if the folder is named Drafts).

Note: When deleting a mail, the mail gets copied to the folder "INBOX/Trash" or "Trash" before deleting it. If the folder does not exist, it will be created automatically. In older versions (before 0.407), you might need to create it with a separate mail client.

Note: When sending a mail from an IMAP folder, the mail gets saved to the current folder (not to a predefined "sent" folder).

Note: If you use UW-IMAP as server and see folders that belong to the file system, you may need to specify "subscribed=true" in the options field in order to show only the folders that are subscribed.

Note: (only applies to 0.298, 0.297) If you use an IMAP server that does not support server-based sorting, you need to specify "getall=true" in the options field in order to list mails in a folder. This method will be slower in big folders.


Mountpoint syntax for POP3 (e-mail client)


Type: POP3, Username, Password, Port, Security, Hostname

(folder, port and tls are optional)

Example:

  • Type: POP3
  • Username: johndoe
  • Password: secret
  • Port: 995
  • Security: tls
  • Hostname: mailserver.example.com

or if your port is 110 without tls/ssl:

  • Port:
  • Security:

Warning: POP3 doesn't support server based structure summaries. Every e-mail has to be downloaded and completely parsed by the webserver. This takes a lot of memory and cpu resources and is very slow. Therefore you should use IMAP whenever possible.


Mountpoint syntax for SMTP (e-mail client)


Type: SMTP, Username, Password, Port, Security, Hostname

(port, tls, username and password are optional)

Example:

  • Type: SMTP
  • Username: johndoe
  • Password: secret
  • Port: 465
  • Security: tls
  • Hostname: smtp.example.com
  • Options: johndoe@example.com|John Doe

or if your port is 25 without tls/ssl:

  • Port:
  • Security:

Note: In the current version, mails are sent as a blind carbon copy (bcc) to the sender. If the sender mail address is not given in the options field, it gets determined by username@hostname.

Note: A SMTP mountpoint will only be used under the directory it is created. When sending mails from an email folder or an IMAP/POP3 mountpoint, the default SMTP connection specified for the user will be used, see Administrate Users.

Note: Beginning with version 0.311, you can define a name which is included in the from header of the mails being sent out. This name is defined next to the mail address in the options field, separated with a "|".


Mountpoint syntax for PmWiki page stores


Type: PmWiki, Path: path/ (e.g. a wiki.d/ directory)

Example:

  • Type: PmWiki
  • Path: ../import/pmwiki_cms/

("../import/" references to "sgs/import/", "../simple_store/home/username/" references to the user's directory at "sgs/simple_store/home/username/")

Note: To include uploaded files from PmWiki, you can create a directory named "uploads" in the mountpoint path (e.g. pmwiki_cms/uploads/). Also make sure that there is no ".htaccess" file inside the path that forbids accessing the upload directory.


Mountpoint syntax for Outlook CSV contacts / Google mail contacts


Type: CSV_Contacts, Path: path/filename.csv

Example:

  • Type: CSV_Contacts
  • Path: ../import/example_contacts.csv

("../import/" references to "sgs/import/", "../simple_store/home/username/" references to the user's directory at "sgs/simple_store/home/username/")

Note: If your csv file is not encoded in UTF-8, make sure that the filename contains "iso", so it gets converted to unicode (e.g. contacts_iso.csv).


Mountpoint syntax for LDIF contacts (LDAP Data Interchange Format)


Type: LDIF_Contacts, Path: path/filename.ldif

Example:

  • Type: LDIF_Contacts
  • Path: ../import/example_contacts.ldif

("../import/" references to "sgs/import/", "../simple_store/home/username/" references to the user's directory at "sgs/simple_store/home/username/")


Mountpoint syntax for LDAP (contacts)


Type: LDAP, Username, Password, Port, Security, Options (base DN), Hostname, Path

(folder, port, tls and base DN are optional)

Example:

  • Type: LDAP
  • Username: Johndoe
  • Password: secret
  • Port: 389
  • Security:
  • Options: dc=example,dc=com
  • Host: ldap.example.com
  • Path:

or if you have all your contacts under a special dn:

Path: /ou=Contacts/

Note: Simple Groupware tries to detect the base DN automatically using namingContexts. If the detection fails, you can specify the base DN manually inside the options field.


Mountpoint syntax for XML contacts


Type: XML, Path: path/filename.xml

Example:

  • Type: XML
  • Path: ../import/example.xml

("../import/" references to "sgs/import/", "../simple_store/home/username/" references to the user's directory at "sgs/simple_store/home/username/")

Note: See "<sgs-dir>/import/example.xml" for an example of a valid XML structure for contacts.


Mountpoint syntax for vCard (contacts)


Type: vCard, Path: path/filename.vcf

Example:

  • Type: vCard
  • Path: ../import/example_contacts.vcf

("../import/" references to "sgs/import/", "../simple_store/home/username/" references to the user's directory at "sgs/simple_store/home/username/")


Mountpoint syntax for iCalendar (appointments)


Type: iCalendar, Path: path/filename.ics

Example:

  • Type: iCalendar
  • Path: ../import/WM2006.ics

("../import/" references to "sgs/import/", "../simple_store/home/username/" references to the user's directory at "sgs/simple_store/home/username/")

Limitation: In the current version, special recurrences are not supported. Those are recurrences that are not in a regular repeating order. E.g. the recurrence "last Monday of the month". Others are events repeated on more than one day of the week (only the first will be chosen).


Mountpoint syntax for Outlook CSV appointments


Type: CSV_Calendar, Path: path/filename.csv

Example:

  • Type: CSV_Calendar
  • Path: ../import/example_outlook_calendar.csv

("../import/" references to "sgs/import/", "../simple_store/home/username/" references to the user's directory at "sgs/simple_store/home/username/")

Note: If your csv file is not encoded in UTF-8, make sure that the filename contains "iso", so it gets converted to unicode (e.g. contacts_iso.csv).


Mountpoint syntax for RSS (news feeds)


Type: RSS, Path: http://hostname/path/filename.xml

Example:

  • Type: RSS
  • Path: http://www.nytimes.com/services/xml/rss/nyt/HomePage.xml


Mountpoint syntax for CIFS (file server, e.g. Samba, Windows, NetApp)


Type: CIFS, Username, Password, Hostname, Path

(path is optional)

Example:

  • Type: CIFS
  • Username: johndoe
  • Password: secret
  • Host: fileserver.example.com
  • Path:

or if you want to start in a subdirectory:

Path: /share1/anyfolder/

If your users are inside a domain, use:

Options: domain=my_domain

Note: This extension uses the PHP/Java Bridge. For more information about installing the Java Bridge, see Installation. In order to achieve the best performance, please use the DNS name or the IP address of the server (not "localhost").

Note: Since version 0.294, Simple Groupware can also store metadata for every file on a CIFS server (e.g. approval status, description, history). For a file named "myfile.txt", the metadata will be stored in a separate file called "myfile.txt.meta". So when you rename, remove or delete "myfile.txt" outside Simple Groupware, please make sure to do the same with "myfile.txt.meta".


Mountpoint syntax for local files


Type: files, Path: ../import/

Example:

  • Type: files
  • Path: ../import/

("../import/" references to "sgs/import/", "../simple_store/home/username/" references to the user's directory at "sgs/simple_store/home/username/")

Note: Normal users are only allowed to access "sgs/import/" and their individual user directory "sgs/simple_store/home/username/".

Note: Since version 0.294, Simple Groupware can also store metadata for every file in a local directory (e.g. approval status, description, history). For a file named "myfile.txt", the metadata will be stored in a separate file called "myfile.txt.meta". So when you rename, remove or delete "myfile.txt" outside Simple Groupware, please make sure to do the same with "myfile.txt.meta".


Mountpoint syntax for Firefox bookmarks


Type: bookmarks, Path: path/bookmarks.html

Example:

  • Type: bookmarks
  • Path: ../import/bookmarks.html

("../import/" references to "sgs/import/", "../simple_store/home/username/" references to the user's directory at "sgs/simple_store/home/username/")

Tip: Automatically view your Firefox bookmarks in Simple Groupware.

Place your bookmarks.html directly on a server:

  • In Firefox navigate to about:config
  • Create the preference name "browser.bookmarks.file" and specify your server location (e.g. "\\myserver\myshare\bookmarks.html")