1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/docs/tools/make_docs.sh Mon Apr 15 00:13:49 2019 +0200
1.3 @@ -0,0 +1,30 @@
1.4 +#!/bin/sh
1.5 +
1.6 +THISDIR=`dirname "$0"`
1.7 +INDIR="$THISDIR/../wiki"
1.8 +OUTDIR="$THISDIR/../html"
1.9 +
1.10 +ROOT="imip-agent"
1.11 +
1.12 +MAPPING='--mapping WikiPedia https://en.wikipedia.org/wiki/'
1.13 +THEME='--theme mercurial'
1.14 +
1.15 +if [ "$1" = '--web' ] ; then
1.16 + DOCINDEX=
1.17 + shift 1
1.18 +else
1.19 + DOCINDEX='--document-index index.html'
1.20 +fi
1.21 +
1.22 +FILENAMES=${*:-'--all'}
1.23 +
1.24 +moinconvert --input-dir "$INDIR" \
1.25 + --input-page-sep '--' \
1.26 + --output-dir "$OUTDIR" \
1.27 + --root "$ROOT" \
1.28 + --format html \
1.29 + --macros \
1.30 + $DOCINDEX \
1.31 + $MAPPING \
1.32 + $THEME \
1.33 + $FILENAMES
2.1 --- a/docs/tools/make_pages.sh Fri Nov 24 17:24:23 2017 +0100
2.2 +++ b/docs/tools/make_pages.sh Mon Apr 15 00:13:49 2019 +0200
2.3 @@ -56,7 +56,7 @@
2.4 BASENAME=`basename "$FILENAME"`
2.5 PAGENAME=`echo "$BASENAME" | sed 's/--/\//g'`
2.6 if [ "$PREFIX" ]; then
2.7 - if [ "$PAGENAME" = "FrontPage" ]; then
2.8 + if [ "$PAGENAME" = "imip-agent" ]; then
2.9 PAGENAME="$PREFIX"
2.10 else
2.11 PAGENAME="$PREFIX/$PAGENAME"
3.1 --- a/docs/wiki/FrontPage Fri Nov 24 17:24:23 2017 +0100
3.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
3.3 @@ -1,179 +0,0 @@
3.4 -= imip-agent =
3.5 -
3.6 -{{{#!table
3.7 -[[/Downloads|Downloads]] || [[/GettingStarted|Getting started]] ||
3.8 -[[#Deployment|Deployment]] || [[#Usage|Usage]] ||
3.9 -[[#Development|Development]] ||
3.10 -[[/CalendaringSupport|Support for Standards]]
3.11 -}}}
3.12 -
3.13 -imip-agent is an extension for existing mail systems (such as
3.14 -[[http://exim.org/|Exim]] and [[http://www.postfix.org/|Postfix]])
3.15 -providing extra support for calendaring and scheduling.
3.16 -
3.17 - * It uses the [[https://tools.ietf.org/html/rfc5545|iCalendar]],
3.18 - [[https://tools.ietf.org/html/rfc5546|iTIP]] and
3.19 - [[https://tools.ietf.org/html/rfc6047|iMIP]] Internet standards.
3.20 -
3.21 - * It can inspect messages containing calendar objects and extract
3.22 - availability information for sharing and publication. You and your users
3.23 - decide exactly which kind of messages it will inspect, whose messages it
3.24 - will inspect, and for whom no inspection or sharing will occur at all.
3.25 -
3.26 - * It can provide a [[/CalendarManager|Web-based interface]] to calendar
3.27 - information for users who cannot or choose not to use
3.28 - [[/MailClients|mail software]] with calendaring support. This is optional
3.29 - and your users can choose to adjust, ignore or disable this functionality.
3.30 -
3.31 - * It supports autonomous entities such as meeting rooms and [[/Resources|resources]],
3.32 - automatically accepting or declining invitations according to their schedules.
3.33 - You can adjust this behaviour to implement your own policies.
3.34 -
3.35 - * It is [[https://www.fsf.org/about/what-is-free-software|Free Software]],
3.36 - giving you the freedom to see what the software does, as well as the freedom
3.37 - to modify and share the software with others.
3.38 -
3.39 -{{{#!graphviz
3.40 -//format=svg
3.41 -//transform=notugly
3.42 -digraph architecture {
3.43 - node [shape=box,fontsize="13.0",fontname="Helvetica",tooltip="The imip-agent architecture"];
3.44 - edge [tooltip="The imip-agent architecture"];
3.45 - rankdir=LR;
3.46 -
3.47 - mail [label="Incoming mail",shape=folder,style=filled,fillcolor=cyan];
3.48 - MTA [label="MTA\n(Exim, Postfix, ...)",tooltip="MTA"];
3.49 -
3.50 - subgraph {
3.51 - rank=same;
3.52 - agent [label="imip-agent",style=filled,fillcolor=gold];
3.53 - scheduling [label="Scheduling",shape=ellipse,style=filled,fillcolor=gold];
3.54 - freebusy [label="Free/busy",shape=folder,style=filled,fillcolor=gold];
3.55 - manager [label="imip-manager",style=filled,fillcolor=gold];
3.56 - }
3.57 -
3.58 - mailbox [label="Mailboxes\n(Cyrus, Dovecot, ...)",tooltip="Mailboxes"];
3.59 - webserver [label="Web server\n(Apache, ...)",tooltip="Web server"];
3.60 - client [label="Mail clients"];
3.61 - browser [label="Web browsers"];
3.62 -
3.63 - mail -> MTA -> agent -> mailbox -> client;
3.64 - agent -> scheduling -> freebusy -> webserver -> client;
3.65 - freebusy -> manager;
3.66 - manager -> webserver [penwidth="3.0"];
3.67 - webserver -> browser [penwidth="3.0"];
3.68 - scheduling -> MTA -> mail [style=dashed];
3.69 -}
3.70 -}}}
3.71 -
3.72 -Unlike some monolithic groupware solutions...
3.73 -
3.74 - * It does not require you to change your [[/MailIntegration|mail delivery]]
3.75 - software or your [[/MailboxIntegration|mail storage]] software (subject to
3.76 - existing support provided by imip-agent; support for other software can
3.77 - always be added).
3.78 -
3.79 - * It does not require your users to change their [[/MailClients|mail client]]
3.80 - software.
3.81 -
3.82 - * It does not insist that everybody must store their schedules on a single
3.83 - server in order to collaboratively schedule events.
3.84 -
3.85 - * Instead, imip-agent takes advantage of the decentralized nature of the
3.86 - iCalendar and iMIP Internet standards.
3.87 -
3.88 - * It allows people in your organisation to collaborate with people outside
3.89 - your organisation without insisting that they join your infrastructure or
3.90 - that everybody join some cloud service that keeps everyone's information
3.91 - within a single, typically proprietary, remote service (that may also be
3.92 - potentially vulnerable to intrusion and surveillance).
3.93 -
3.94 -The role of imip-agent is to bridge the gap between plain e-mail and
3.95 -"full-stack" groupware solutions, thus allowing organisations and individuals
3.96 -to augment their existing infrastructure instead of being compelled to perform
3.97 -costly and unnecessary migrations and infrastructure transformations.
3.98 -
3.99 -== Adding Calendaring to E-Mail ==
3.100 -
3.101 -With just an e-mail system, users can already create and schedule calendar
3.102 -events using any mail or groupware client software that supports calendars and
3.103 -that already supports [[http://tools.ietf.org/html/rfc5545|iCalendar]] and
3.104 -[[http://tools.ietf.org/html/rfc6047|iMIP]].
3.105 -
3.106 -Starting with an e-mail system, imip-agent can be used to add further support
3.107 -for calendaring:
3.108 -
3.109 -{{{#!table
3.110 -'''Requirement''' || '''Solution'''
3.111 -==
3.112 -Your users probably want to know when other people are available and when they
3.113 -are busy.
3.114 -||
3.115 -Although [[https://tools.ietf.org/html/rfc6047|iMIP]] supports this, most mail
3.116 -programs do not, so imip-agent will gather information about events and
3.117 -[[/FreeBusyPublishing|publish it for retrieval via HTTP]]. It will also respond
3.118 -to any iMIP requests for free/busy information via mail.
3.119 -==
3.120 -Organisations may want to coordinate access to resources using calendaring.
3.121 -||
3.122 -Here, imip-agent can provide [[/AgentPrograms|autonomous agents]] that can
3.123 -respond to event invitations, allowing users to book resources and to see
3.124 -published availability information for those resources.
3.125 -==
3.126 -Some users may not be using mail programs that understand calendars and
3.127 -events.
3.128 -||
3.129 -Here, imip-agent can provide a [[/CalendarManager|Web interface]] to let
3.130 -them respond to invitations and to create and schedule their own events.
3.131 -}}}
3.132 -
3.133 -According to your requirements, any or all of the above solutions can be
3.134 -implemented, providing as much of a groupware solution as you need.
3.135 -
3.136 -<<Anchor(Deployment)>>
3.137 -== Deploying the Software ==
3.138 -
3.139 -Initial activities:
3.140 -
3.141 - * [[/Downloads|Downloads]]
3.142 - * [[/GettingStarted|Getting Started]]
3.143 -
3.144 -References:
3.145 -
3.146 - * [[/Administration|Administering imip-agent]]
3.147 - * [[/Changelog|Changelog]]
3.148 - * [[/Configuration|Configuration]] and [[/Preferences|Preferences]]
3.149 - * [[/CalendarManager|Calendar Management Interface]]
3.150 - * [[/FreeBusyPublishing|Free/Busy Publishing]]
3.151 -
3.152 -<<Anchor(Usage)>>
3.153 -== Using the Software ==
3.154 -
3.155 - * [[/Usage|Using imip-agent]]
3.156 -
3.157 -<<Anchor(Development)>>
3.158 -== Development ==
3.159 -
3.160 -Some topics related to development:
3.161 -
3.162 - * [[/Developing|Developing imip-agent]]
3.163 - * [[/FuturePlans|Future Plans]]
3.164 -
3.165 -Details of the mechanisms employed by imip-agent are described in the
3.166 -following documents:
3.167 -
3.168 - * [[/AgentPrograms|Agent Programs]]
3.169 - * [[/CalendaringSupport|Calendaring Support]]
3.170 - * [[/CounterProposals|Counter-Proposals and Offers]]
3.171 - * [[/CronIntegration|Cron Task Scheduler Integration]]
3.172 - * [[/DataStore|Data Store]]
3.173 - * [[/EventRecurrences|Event Recurrences]]
3.174 - * [[/FilesystemUsage|Filesystem Usage]]
3.175 - * [[/IncomingMessages|Incoming Messages]]
3.176 - * [[/OutgoingMessages|Outgoing Messages]]
3.177 - * [[/MailIntegration|Mail Integration]]
3.178 - * [[/MailboxIntegration|Mailbox Integration]]
3.179 - * [[/Resources|Resources]]
3.180 - * [[/Testing|Testing]]
3.181 - * [[/UseCases|Use Cases]]
3.182 - * [[/WebServerIntegration|Web Server Integration]]
4.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
4.2 +++ b/docs/wiki/imip-agent Mon Apr 15 00:13:49 2019 +0200
4.3 @@ -0,0 +1,179 @@
4.4 += imip-agent =
4.5 +
4.6 +{{{#!table
4.7 +[[/Downloads|Downloads]] || [[/GettingStarted|Getting started]] ||
4.8 +[[#Deployment|Deployment]] || [[#Usage|Usage]] ||
4.9 +[[#Development|Development]] ||
4.10 +[[/CalendaringSupport|Support for Standards]]
4.11 +}}}
4.12 +
4.13 +imip-agent is an extension for existing mail systems (such as
4.14 +[[http://exim.org/|Exim]] and [[http://www.postfix.org/|Postfix]])
4.15 +providing extra support for calendaring and scheduling.
4.16 +
4.17 + * It uses the [[https://tools.ietf.org/html/rfc5545|iCalendar]],
4.18 + [[https://tools.ietf.org/html/rfc5546|iTIP]] and
4.19 + [[https://tools.ietf.org/html/rfc6047|iMIP]] Internet standards.
4.20 +
4.21 + * It can inspect messages containing calendar objects and extract
4.22 + availability information for sharing and publication. You and your users
4.23 + decide exactly which kind of messages it will inspect, whose messages it
4.24 + will inspect, and for whom no inspection or sharing will occur at all.
4.25 +
4.26 + * It can provide a [[/CalendarManager|Web-based interface]] to calendar
4.27 + information for users who cannot or choose not to use
4.28 + [[/MailClients|mail software]] with calendaring support. This is optional
4.29 + and your users can choose to adjust, ignore or disable this functionality.
4.30 +
4.31 + * It supports autonomous entities such as meeting rooms and [[/Resources|resources]],
4.32 + automatically accepting or declining invitations according to their schedules.
4.33 + You can adjust this behaviour to implement your own policies.
4.34 +
4.35 + * It is [[https://www.fsf.org/about/what-is-free-software|Free Software]],
4.36 + giving you the freedom to see what the software does, as well as the freedom
4.37 + to modify and share the software with others.
4.38 +
4.39 +{{{#!graphviz
4.40 +//format=svg
4.41 +//transform=notugly
4.42 +digraph architecture {
4.43 + node [shape=box,fontsize="13.0",fontname="Helvetica",tooltip="The imip-agent architecture"];
4.44 + edge [tooltip="The imip-agent architecture"];
4.45 + rankdir=LR;
4.46 +
4.47 + mail [label="Incoming mail",shape=folder,style=filled,fillcolor=cyan];
4.48 + MTA [label="MTA\n(Exim, Postfix, ...)",tooltip="MTA"];
4.49 +
4.50 + subgraph {
4.51 + rank=same;
4.52 + agent [label="imip-agent",style=filled,fillcolor=gold];
4.53 + scheduling [label="Scheduling",shape=ellipse,style=filled,fillcolor=gold];
4.54 + freebusy [label="Free/busy",shape=folder,style=filled,fillcolor=gold];
4.55 + manager [label="imip-manager",style=filled,fillcolor=gold];
4.56 + }
4.57 +
4.58 + mailbox [label="Mailboxes\n(Cyrus, Dovecot, ...)",tooltip="Mailboxes"];
4.59 + webserver [label="Web server\n(Apache, ...)",tooltip="Web server"];
4.60 + client [label="Mail clients"];
4.61 + browser [label="Web browsers"];
4.62 +
4.63 + mail -> MTA -> agent -> mailbox -> client;
4.64 + agent -> scheduling -> freebusy -> webserver -> client;
4.65 + freebusy -> manager;
4.66 + manager -> webserver [penwidth="3.0"];
4.67 + webserver -> browser [penwidth="3.0"];
4.68 + scheduling -> MTA -> mail [style=dashed];
4.69 +}
4.70 +}}}
4.71 +
4.72 +Unlike some monolithic groupware solutions...
4.73 +
4.74 + * It does not require you to change your [[/MailIntegration|mail delivery]]
4.75 + software or your [[/MailboxIntegration|mail storage]] software (subject to
4.76 + existing support provided by imip-agent; support for other software can
4.77 + always be added).
4.78 +
4.79 + * It does not require your users to change their [[/MailClients|mail client]]
4.80 + software.
4.81 +
4.82 + * It does not insist that everybody must store their schedules on a single
4.83 + server in order to collaboratively schedule events.
4.84 +
4.85 + * Instead, imip-agent takes advantage of the decentralized nature of the
4.86 + iCalendar and iMIP Internet standards.
4.87 +
4.88 + * It allows people in your organisation to collaborate with people outside
4.89 + your organisation without insisting that they join your infrastructure or
4.90 + that everybody join some cloud service that keeps everyone's information
4.91 + within a single, typically proprietary, remote service (that may also be
4.92 + potentially vulnerable to intrusion and surveillance).
4.93 +
4.94 +The role of imip-agent is to bridge the gap between plain e-mail and
4.95 +"full-stack" groupware solutions, thus allowing organisations and individuals
4.96 +to augment their existing infrastructure instead of being compelled to perform
4.97 +costly and unnecessary migrations and infrastructure transformations.
4.98 +
4.99 +== Adding Calendaring to E-Mail ==
4.100 +
4.101 +With just an e-mail system, users can already create and schedule calendar
4.102 +events using any mail or groupware client software that supports calendars and
4.103 +that already supports [[http://tools.ietf.org/html/rfc5545|iCalendar]] and
4.104 +[[http://tools.ietf.org/html/rfc6047|iMIP]].
4.105 +
4.106 +Starting with an e-mail system, imip-agent can be used to add further support
4.107 +for calendaring:
4.108 +
4.109 +{{{#!table
4.110 +'''Requirement''' || '''Solution'''
4.111 +==
4.112 +Your users probably want to know when other people are available and when they
4.113 +are busy.
4.114 +||
4.115 +Although [[https://tools.ietf.org/html/rfc6047|iMIP]] supports this, most mail
4.116 +programs do not, so imip-agent will gather information about events and
4.117 +[[/FreeBusyPublishing|publish it for retrieval via HTTP]]. It will also respond
4.118 +to any iMIP requests for free/busy information via mail.
4.119 +==
4.120 +Organisations may want to coordinate access to resources using calendaring.
4.121 +||
4.122 +Here, imip-agent can provide [[/AgentPrograms|autonomous agents]] that can
4.123 +respond to event invitations, allowing users to book resources and to see
4.124 +published availability information for those resources.
4.125 +==
4.126 +Some users may not be using mail programs that understand calendars and
4.127 +events.
4.128 +||
4.129 +Here, imip-agent can provide a [[/CalendarManager|Web interface]] to let
4.130 +them respond to invitations and to create and schedule their own events.
4.131 +}}}
4.132 +
4.133 +According to your requirements, any or all of the above solutions can be
4.134 +implemented, providing as much of a groupware solution as you need.
4.135 +
4.136 +<<Anchor(Deployment)>>
4.137 +== Deploying the Software ==
4.138 +
4.139 +Initial activities:
4.140 +
4.141 + * [[/Downloads|Downloads]]
4.142 + * [[/GettingStarted|Getting Started]]
4.143 +
4.144 +References:
4.145 +
4.146 + * [[/Administration|Administering imip-agent]]
4.147 + * [[/Changelog|Changelog]]
4.148 + * [[/Configuration|Configuration]] and [[/Preferences|Preferences]]
4.149 + * [[/CalendarManager|Calendar Management Interface]]
4.150 + * [[/FreeBusyPublishing|Free/Busy Publishing]]
4.151 +
4.152 +<<Anchor(Usage)>>
4.153 +== Using the Software ==
4.154 +
4.155 + * [[/Usage|Using imip-agent]]
4.156 +
4.157 +<<Anchor(Development)>>
4.158 +== Development ==
4.159 +
4.160 +Some topics related to development:
4.161 +
4.162 + * [[/Developing|Developing imip-agent]]
4.163 + * [[/FuturePlans|Future Plans]]
4.164 +
4.165 +Details of the mechanisms employed by imip-agent are described in the
4.166 +following documents:
4.167 +
4.168 + * [[/AgentPrograms|Agent Programs]]
4.169 + * [[/CalendaringSupport|Calendaring Support]]
4.170 + * [[/CounterProposals|Counter-Proposals and Offers]]
4.171 + * [[/CronIntegration|Cron Task Scheduler Integration]]
4.172 + * [[/DataStore|Data Store]]
4.173 + * [[/EventRecurrences|Event Recurrences]]
4.174 + * [[/FilesystemUsage|Filesystem Usage]]
4.175 + * [[/IncomingMessages|Incoming Messages]]
4.176 + * [[/OutgoingMessages|Outgoing Messages]]
4.177 + * [[/MailIntegration|Mail Integration]]
4.178 + * [[/MailboxIntegration|Mailbox Integration]]
4.179 + * [[/Resources|Resources]]
4.180 + * [[/Testing|Testing]]
4.181 + * [[/UseCases|Use Cases]]
4.182 + * [[/WebServerIntegration|Web Server Integration]]