Step-by-step guide on using free rebranding of Xeoma
Download the free rebranding utility from our site and unpack the archive. You will get a rebrand_bundle folder. Follow the instructions in the readme.txt file in this folder to customize Xeoma.
Please note that the rebranding utility only works under Windows but you can customize Xeoma for all operating systems Xeoma supports with its help.
Customization process consists of a few simple steps:
1. Download Xeoma you want to customize. Place Xeoma that you’d like to customize into the distrib folder, subfolder with name corresponding to the operating system. For example, place the Xeoma for Windows version into the win subfolder, and so on.
2. If you’d like to change the icon of the program, place the new icons into the icon folder – .ico for Windows and Linux, .png for Android, .icns for Mac OS X.
If you don’t need that, you can leave the original Xeoma icons or leave this folder empty.
3. The oem_info.xml file in the custom folder is where you can change the program’s name, add information and contacts of your company, hide or show some menus, make Xeoma run as client only, and so on. You can open and edit it in a text editor. Then save the changes.
What changes can the customization tool do?
The free rebranding tool can help you
* change the program’s name (with the <ProductName>Your Program Name</ProductName> line)
* change the program’s service name (name shown for the server part in task managers, etc) (with the <ApplicationServiceName>CoreServiceNameHere</ApplicationServiceName> line)
* change the program’s logo (name your new logo “icon” and put it in the “icons” folder).
* add splash screen at start. Use the line <ShowSplashScreen>true</ShowSplashScreen> , place the splash screen picture into folder and set up the <!– Splash –> section in skin.xml)
* change the program’s color scheme (see skin.xml for more)
* change information about your company into the About dialog with these commands
<SupportPhone>Your support phone number</SupportPhone>
* change modules icons. See skin.xml for that.
* change menus icons. See skin.xml for that.
Work with archives:
*lock changing of path to do export to. For example: if a special storage unit has been assigned, and you don’t want users/operators to export videos in system folder). Do it with the <AllowToCreateNewFoldersForExport>false</AllowToCreateNewFoldersForExport> line.
* pre-set a special place to save database to (<ArchiveDataBaseDirPath />)
* set what format should be set as default for export (<DefaultExportFormatId>)
* set custom path for export of archive recordings (<DefaultExportPath />)
* disable reencoding so that only export in the same format will be allowed to not load processor (<DisableExportWithReencoding>true</DisableExportWithReencoding>)
* set limitation of maximum size for all archives (<MaxArchiveSizeMB>5000</MaxArchiveSizeMB>)
* set a custom path to save settings to (<SettingsDirPath />)
* set a custom path to store settings backup to (<SettingsBackupDirPath />)
* set a custom path to temporary folder where the file is temporarily stored during exports (<TempDir />)
* disable saving settings backups (<SettingsBackupEnabled>false</SettingsBackupEnabled>)
* disable offline activation, leave only online activation (<DisableOfflineActivation>true</DisableOfflineActivation>)
* allow just one activation without addition of new licenses – if you want users to buy a new product from you when they want to update (<AllowOnlyOneActivation>true</AllowOnlyOneActivation>)
* disable access to activation completely so that only you with a regular client will be able to activate more licenses (<InformationMenuActivateItemEnabled>false</InformationMenuActivateItemEnabled>)
+you can disable the “Registration” menu altogether (see changes of Main Menu below)
show special error message when camera doesn’t work (<CameraErrorText />)
or when connection to server cannot be established (<ConnectionErrorText />)
or when new folder for export cannot be created (<CreateNewFolderForExportErrorMessage />)
* run only a client, without launching the server part (<RunOnlyClient>true</RunOnlyClient>)
* lock the client to always connect to one specific server (<ServerAddress />)
* lock changing of connection data – server address, port, password (<ConnectionParametersEnabled>)
Disabling windows and panels:
* disable The Advanced settings window (<GraphEnabled>false</GraphEnabled>). Without customization can also be done through Users
* lock the option to hide bottom panel (<BottomPanelMovementEnable>false</BottomPanelMovementEnable>)
* disable the Left panel (<LeftPanelEnabled>false</LeftPanelEnabled>)
* remove Device List option from the Main menu (<MainMenuDevicesByGroupsItemEnabled>false</MainMenuDevicesByGroupsItemEnabled>)
* remove Information option from the Main menu (<MainMenuInformationItemEnabled>false</MainMenuInformationItemEnabled>)
* remove Install option from the Main menu (<MainMenuIstallItemEnabled>false</MainMenuIstallItemEnabled>)
* remove Registration option from the Main menu (<MainMenuRegistrationItemEnabled>false</MainMenuRegistrationItemEnabled>)
* remove Remote Access option from the Main menu (<MainMenuRemoteAccessItemEnabled>false</MainMenuRemoteAccessItemEnabled>)
* remove Turn All Cameras Off option from the Main menu (thus Turn All Cameras On will not be shown either) (<MainMenuTurnAllCamerasOffItemEnabled>false</MainMenuTurnAllCamerasOffItemEnabled>)
* disable one or several bottom panel buttons. They will not be shown and thus can not be accessed (<DisableBottomPanelButtons />) See list of buttons here
* disable one or several modules – they will not be shown in the modules list in the Advanced settings window (<DisableModules />) See list of modules here
* add your own chain samples (<ChainsSamples />)
* disable exit from the program (for example, for DVRs whose sole purpose is to work as video surveillance tool so exit is not preferable) (<ExitEnabled>false</ExitEnabled>)
* disable use of IP cameras leaving only the possibilities to use USB cameras – also for bundles where you want to prohibit use of out-of-bundle equipment (<IpCamsEnabled>false</IpCamsEnabled>)
* disable change of language – you can preset the program to use a language and disable changing of it (<LanguageChangeEnabled>false</LanguageChangeEnabled> )
* for demo purposes, you can choose to make the program will run in trial mode without asking for activation (<RunWithoutActivationRequest>true</RunWithoutActivationRequest>)
* disable FS’s EULA in the About window (<LicenseEnabled>false</LicenseEnabled>)
* add your own SMS sending provider (setup information required) – see <Sms> section
* pre-set the buffering on the client side (smoother playback but bigger delay) (<BufferingOnClient>true</BufferingOnClient>)
* hide cursor after some time of inactivity (<CursorHideInterval> )
* You can scale interface with the <StretchFactor>100</StretchFactor> line
* For ANPR, you can prohibit show of logs for the recognized plates (<LicensePlatesLog>false</LicensePlatesLog>)
or disable search by recognized license plates (<SearchByLicensePlates>false</SearchByLicensePlates>)
* Also, you can disable search in archives for motion in specific area (<SearchByMotion>false</SearchByMotion>)
* For HTTP Marking – you can prohibit search by markings (<SearchByHttpMarking>false</SearchByHttpMarking>)
* Enable sound delay in Microphone module’s settings – helps in some cases of out-of-sync streaming (<MicrophoneSoundDelayEnabled>false</MicrophoneSoundDelayEnabled>)
* change links.
Here are the URLs that can be changed:
Here you should mind the following recommendations:
If you leave the URLs like that, they will not work.
If you remove a URL line completely, FelenaSoft links will stay.
To disable links at all, put a “.” instead of actual URL.
Names of modules
Universal Camera UniversalCamera
Screen Capture ScreenCapture
File Reading FileInput
Another Xeoma WebConnectorReceiver
FTP Receiver FTPReceiver
HTTP Receiver HttpReceiver
Motion Detector MotionDetector
PTZ Tracking PtzTracking
Senstar PTZ Tracking SenstarPtz
Visitors Counter VisitorsCounter
Object Detector ObjectDetector
Privacy Masking AreaCensor
Fisheye Dewarping FisheyeUnwraper
Button Switcher ButtonSwitcher
Day Detector NightBlocker
HTTP Switcher HttpSwitcher
HTTP Marking HttpMarking
Sound Detector AudioDetector
Image Rotate ImageTurn
Problems Detector ProblemsDetector
Face Detector FaceDetector
Image Resize ImageResize
Image Crop ImageCropping
Detector of abandoned objects AbandonedObjectsDetector
Smoke Detector SmokeDetector
Cross-line Detector CrossLineDetector
Loitering Detector LoiteringDetector
Relay Switch RelaySwitch
Preview and Archive Preview%2BArchive
Save to File FileOutput
Sending Email Email
SMS Sending SmsSender
Web Server WebconnectorTransmitter
RTSP Broadcasting RtspTranslator
FTP Upload FtpOutput
HTTP upload to other Xeoma HttpOutput
Sound Alarm AlarmSound
Application Runner AppRunner
HTTP Request Sender HttpRequestSender
Pop-up Window (in Client) ClientWindowPopup
ANPR Sender to FTP AnprFtpUploader
Names of icons in lower panel
MainMenu (opens Main menu),
Add (opens the Add Camera menu),
Archive (opens the Archive viewer window),
PTZ (opens the PTZ control),
Snapshot (makes a still shot of the camera image),
Graph (opens the Advanced settings window),
Clear (deletes this chain),
View (opens Layouts menu)
4. You can change Xeoma’s web browser page icons, text font and color in the web.xml text file in the custom folder. You can open and edit it in a text editor. Then save the changes.
5. You can change background color, modules icons, add splash screen in the skin.xml text file in the custom folder. You can open and edit it in a text editor. Then save the changes.
Please note that icons might have several states: idle, on cursor hover, and sometimes on press. For example, the Ok button (the tag remark says it’s a pair icon, 70×70 PNG). You need a 70х140 icon picture with one image on top of other in s single png file (upper part for idle state, lower for on cursor hover).
Example of a paired icon with highlighting on cursor hover:
6. After you’ve prepared everything, run the customize.bat file. A console will be shown:
7. There will be a log file named customize.log created in the rebrand_bundle folder. Open it to see the information about successfully completed rebranding or customization errors.
8. After the console closes and there’s a message about successful customization in the log, you can find the customized new program based on Xeoma in the distrib folder:
9. Run the new program. In our example, we change the program’s name and logo.
10. If Xeoma was not launched or activated on this computer before, customized version will look like this:
11. If you install your customized Xeoma with a new logo via Main menu > Install > Install, you will get the shortcuts with the new logo as well (except for if you tick the Hidden mode installation, in which case no shortcuts are created at all):
Errors as well as messages about success will be saved to the customize.log log file. It will help you troubleshoot any possible customization issues. Mainly, if you’re getting a customization error, make sure that Xeoma on this computer is turned off. Contact us for more help
Please note that the utility only works under 64-bit Windows.
Customization of the Android app:
If the distro disappers from the folder after customization is run, try making the path to the utility without spaces in folder names.
No hyphens are allowed in the package name (see https://stackoverflow.com/questions/10954030/valid-name-for-android-package-name). Remove the hyphen and try anew.