Connecting MagicMail to Freeside
Through the MagicMail admin interface, configure an API Client with client type FREESIDE, and make note of the Client ID and Password. Configure a system domain for each domain name you will use (freeside does not currently integrate with "hosted" domains in magicmail) and make sure these domains are accessible by the API Client.
In Freeside, go to Configuration->Services->Provisioning exports to add a new export. From the Add Export page, select magicmail for Export then enter...
- Hostname or IP Address - of your MagicMail server
- API Client ID
- API Client Password
- Account Prefix - will be appended with customer numbers to create customer account ids
- Package - the package that will be assigned to the account's master user by this export (should be EMAIL for one svc_acct per customer)
- Port - optional, port for API calls to MagicMail server, default 443
- Auto purge user/account on unprovision - if checked, automatically purges deleted accounts/user upon unprovisioning services, immediately freeing up usernames for re-use but making it impossible to retrieve deleted mailboxes
- Enable debug warnings - if checked, prints debug info to the error log for every API request and response
After adding the export, go to Configuration->Services->Service definitions. The export you just created will be available for selection when adding or editing svc_acct service definitions; check the box to activate it for a given service.
This export runs in real time during provisioning, meaning a service will not be successfully provisioned until the MagicMail export completes.
Every customer with any services provisioned on this export will have an account created for them in MagicMail when the first service is provisioned. The account name will be the Account Prefix plus the customer's number. Each svc_acct provisioned for a customer will be one user/mailbox/emailaddress on the account. There is no way to export more than one emailaddress per user/mailbox.
Multiple Packages Per Customer
Though you should only have one magicmail export per service definition, you can use different export definitions on different services to offer a variety of different packages to your customers. So long as the Account Prefix is the same on all magicmail export definitions, they will all use the same MagicMail account for each customer.
The master user on the account will be the first service provisioned on the account, and it will be assigned the appropriate packages for all services on that account (additional users will be given the ADDITIONAL NOCOST MAILBOX package, and nothing else.) If the master user is unprovisioned before other provisioned services, master user status and assigned packages will be transferred to the oldest remaining provisioned service. Master user packages are synchronized with the freeside customer's currently provisioned services whenever a magicmail export using that Account Prefix provisions or unprovisions a service.
Currently only works with password encoding types Plain text, Unix password (DES encrypted), Unix password (MD5 digest) and LDAP (plain text). In freeside, go to Configuration->Settings and check the value of default-password-encoding.