Difference between revisions of "SME Server:Documentation:Developers Manual:Chapter0"

From SME Server
Jump to navigationJump to search
(Splitting the SME Server Developers Guide (and relocating))
m (→‎The SME Server Developer's Guide: Remove dead and obsolete links)
 
(5 intermediate revisions by one other user not shown)
Line 37: Line 37:
 
The Mitel Corporation logo is a trademark or registered trademark of Mitel Corporation in the United States and other countries. Linux is a registered trademark of Linus Torvalds. The terms "ssh" and "Secure Shell" are trademarks of SSH Communications Security Corp.
 
The Mitel Corporation logo is a trademark or registered trademark of Mitel Corporation in the United States and other countries. Linux is a registered trademark of Linus Torvalds. The terms "ssh" and "Secure Shell" are trademarks of SSH Communications Security Corp.
  
 +
=I. An overview of the SME Server=
 
</div>
 
</div>
----
 
</div><div class="TOC">
 
 
; '''Table of Contents'''
 
; I. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#SME-OVERVIEW An overview of the SME Server]
 
: ;; 1. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#ABOUT-THIS-MANUAL About this manual]
 
;; 2. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#WHO-SHOULD-READ-IT Who should read this manual?]
 
;; 3. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#SME-CAPABILITIES What is the SME Server?]
 
;; 4. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#DESIGN-PHILOSOPHY Design philosophy]
 
:: ;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN95 Principle 1: Automating best practice]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN99 Principle 2: Simplicity]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN105 Principle 3: Extensibility]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN111 Principle 4: Reliability]
 
;; 5. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#ARCHITECTURE Architecture overview]
 
; II. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#SME-INTERNALS SME Server internals]
 
: ;; 6. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#CONFIG-DATABASE Configuration database]
 
:: ;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN161 Overview]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN336 The configuration databases]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN376 Namespace issues]
 
;; 7. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#ACTIONS-EVENTS Actions and events]
 
:: ;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN384 Actions]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN409 Events]
 
;; 8. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#TEMPLATES Configuration file templates]
 
:: ;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN612 Design of the template system]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN628 The Text::Template module]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN770 Template expansion]
 
;; 9. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#PROCESSES Process startup, supervision and shutdown]
 
:: ;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN832 Process startup]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN844 Process supervision: runit (and supervise)]
 
;; 10. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#WEB-INTERFACE The server-manager web interface]
 
:: ;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN937 The web directory]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN994 Web function scripts]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN1071 Common files]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN1075 Panel definitions]
 
; III. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#STEP-BY-STEP-INSTRUCTIONS How to create an SME Server package - step by step]
 
: ;; 11. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#GETTING-STARTED Getting started]
 
:: ;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN1105 Creating a development environment]
 
;; 12. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#TUTORIAL Getting to know how to customize the SME Server]
 
:: ;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN1119 Exercise 1: Changing a configuration template]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN1158 Exercise 2: The magic of templates]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN1198 Exercise 3: Using events and actions]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN1226 Exercise 4: Adding new configuration database parameters]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#EXERCISE5 Exercise 5: Adding a user interface screen]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN1303 Exercise 6: Adding a new event type]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN1324 Exercise 7: Thought experiment - adding a new server application]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN1344 Customization guidelines]
 
;; 13. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#APPLICATION-PACKAGING Packaging your application]
 
:: ;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN1386 A quick introduction to RPMs]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN1408 Selecting and creating RPMs for your application]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN1435 Setting up your RPM development environment]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN1482 Building an RPM]
 
;; 14. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN1577 The SME Server development environment]
 
:: ;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN1579 Configuring your development environment]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN1613 Modifying an SME Server package]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN1834 SourceForge developer CVS access]
 
; IV. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#SME-ADVANCED Advanced customization of the SME Server]
 
: ;; 15. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#ADVANCED-CUSTOMIZATION Advanced customization principles]
 
:: ;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN1888 Leveraging the provisioning system for users, groups, and i-bays]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN1954 Programmatically creating users, groups, and i-bays]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN1962 Reserving accounts to avoid conflicts with user, group, or i-bay names]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN1971 Adding new account properties]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN2000 Using the LDAP server]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN2004 Data backup]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN2019 Using the MySQL database]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN2066 Sending email messages]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN2072 Managing the firewall]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN2105 Starting up programs automatically upon system boot]
 
; V. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#SME-DOCUMENTATION Documentation and resources]
 
: ;; 16. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#DOCUMENTATION Perl modules]
 
; VI. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#LICENSES License texts]
 
: ;; A. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#GFDL GNU Free Documentation License]
 
:: ;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#GFDL-0 PREAMBLE]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#GFDL-1 APPLICABILITY AND DEFINITIONS]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#GFDL-2 VERBATIM COPYING]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#GFDL-3 COPYING IN QUANTITY]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#GFDL-4 MODIFICATIONS]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#GFDL-5 COMBINING DOCUMENTS]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#GFDL-6 COLLECTIONS OF DOCUMENTS]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#GFDL-7 AGGREGATION WITH INDEPENDENT WORKS]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#GFDL-8 TRANSLATION]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#GFDL-9 TERMINATION]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#GFDL-10 FUTURE REVISIONS OF THIS LICENSE]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#GFDL-ADDENDUM ADDENDUM: How to use this License for your documents]
 
;; B. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#GPL GNU General Public License]
 
:: ;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#GPL-1 Preamble]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#GPL-2 TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION]
 
;;; [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#GPL-3 How to Apply These Terms to Your New Programs]
 
 
</div><div class="LOT">
 
 
; '''List of Tables'''
 
; 3-1. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN54 SME Server software]
 
; 7-1. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN484 SME Server standard events]
 
; 10-1. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN941 Web interface directories]
 
; 14-1. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN1704 SME Server package directory layout]
 
; 15-1. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN1922 SME Server software]
 
 
</div><div class="LOT">
 
 
; '''List of Figures'''
 
; 5-1. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#AEN140 SME Server Architecture]
 
 
</div><div class="PART"><div class="TITLEPAGE">
 
 
=I. An overview of the SME Server=
 
 
<div class="TOC">
 
 
; '''Table of Contents'''
 
; 1. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#ABOUT-THIS-MANUAL About this manual]
 
; 2. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#WHO-SHOULD-READ-IT Who should read this manual?]
 
; 3. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#SME-CAPABILITIES What is the SME Server?]
 
; 4. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#DESIGN-PHILOSOPHY Design philosophy]
 
; 5. [http://wiki.contribs.org/The_SME_Server_Developer%27s_Guide#ARCHITECTURE Architecture overview]
 
 
</div></div>
 

Latest revision as of 07:53, 5 November 2014

The SME Server Developer's Guide

Mitel Corporation

Copyright © 2002-2006 Mitel Corporation

Last updated: $Date: 2006/05/29 09:02:22 $

Revision: $Id: devguide.sgml,v 1.50 2006/05/29 09:02:22 gordonr Exp $

This manual is released under the GNU Free Documentation License:

Copyright (C) 2002-2006 Mitel Corporation

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with the Invariant Sections being "About this manual", the license texts and this page, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".

The software examples and code fragments in this manual are released under the GNU General Public License:

Copyright (C) 2002-2006 Mitel Corporation

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

The Mitel Corporation logo is a trademark or registered trademark of Mitel Corporation in the United States and other countries. Linux is a registered trademark of Linus Torvalds. The terms "ssh" and "Secure Shell" are trademarks of SSH Communications Security Corp.

I. An overview of the SME Server