Installation
Code repository for DMP can be found at https://github.com/matijakolaric-com/django-music-publisher.
Installation to a cloud
DMP (Django-Music-Publisher) is based on Django Web Framework (https://djangoproject.org), and requires Python 3 (https://python.org). It can be installed to a PC, but installing it into a cloud is highly recommended.
Digital Ocean is the recommended provider.
Digital Ocean
Minimal monthly cost is $5 for the application, $7 for the database, so $12 in total. Optional $5 for file storage is only required for experimental features.
They usually give free credits that must be used within 60 days.
Click on the button below. (This is an affiliate link, providing you with free credits.)
Wizard
Once you have registered, click on the next button to start the installation wizard.
2.1. In the first step, edit the plan and select Basic, then the cheapest plan, this is enough for publishers with up to several thousand works.
2.2 Edit web environment variables. See settings for details. Click on SAVE!!
2.3 Select region closest to you.
2.4 Review and click on “create resources”.
Installation takes several minutes. Once it is done, click on the
consoletab and enter:
python manage.py migrate
python manage.py createsuperuser
Then enter your user name and password (twice). You can leave e-mail empty, it is not used.
If you forget your login/password, you can use the console for adding a new superuser or change the password with:
python manage.py changepassword
Custom installation
For everything else, basic programming and/or system administration skills are required.
Start with Deploying Django documentation.
If you plan to use Django-Music-Publisher as one of the apps in your Django project, there is nothing special about it:
pip install --upgrade django_music_publisher
Add music_publisher.apps.MusicPublisherConfig to INSTALLED_APPS. Almost everything goes
through the Django Admin. The only exception is royalty calculation, which has to be added to
urls.py
from music_publisher.royalty_calculation import RoyaltyCalculationView
urlpatterns = [
...
path('royalty_calculation/', RoyaltyCalculationView.as_view(), name='royalty_calculation'),
]
Experimental features (involving file system) may require additional work.
Good luck!
Settings
There are several environment variables that need to be set, and several optional ones. Note that if invalid data is entered or required data is not entered, deployment may fail and/or application may break down.
Secret key
Django requires SECRET_KEY to be set. It can be any random string. You can use https://miniwebtool.com/django-secret-key-generator/
to generate one, but do change it somewhat after pasting for complete security.
S3 storage
For Digital Ocean Spaces, you need to set up only four config (environment) variables. AWS and other S3 providers will also work.
S3_REGION(alias forAWS_S3_REGION_NAME) andS3_BUCKET(alias forAWS_STORAGE_BUCKET_NAME), you get them when you set up your Spaces, and
S3_ID(alias forAWS_ACCESS_KEY_ID) andS3_SECRET(alias forAWS_SECRET_ACCESS_KEY), you get them when you generate your Spaces API key.
If you want to use AWS or some other S3 provider, the full list of settings is available here.
Other options
OPTION_FORCE_CASE- available options areupper,titleandsmart, converting nearly all strings to UPPER CASE or Title Case or just UPPERCASE fields to Title Case, respectively. If unset, everything is left as entered.OPTION_FILES- enables support for file uploads (audio files and images), using local file storage (PC & VPS)
Collective management organisations
Following list contains official CWR codes for CMOs, to be entered in PUBLISHER_SOCIETY_PR,
PUBLISHER_SOCIETY_MR and rarely PUBLISHER_SOCIETY_SR environment variables.
1 |
ACUM |
ISRAEL |
2 |
ADDAF |
BRAZIL |
3 |
AEPI |
GREECE |
4 |
AGADU |
URUGUAY |
5 |
AKM |
AUSTRIA |
6 |
BUCADA |
CENTRAL AFRICAN REPUBLIC |
7 |
APDAYC |
PERU |
8 |
APRA |
AUSTRALIA |
9 |
ARTISJUS |
HUNGARY |
10 |
ASCAP |
UNITED STATES |
11 |
AUSTRO-MECHANA (AUME) |
AUSTRIA |
12 |
AMCOS |
AUSTRALIA |
14 |
ARGENTORES |
ARGENTINA |
15 |
APA |
PARAGUAY |
16 |
BUMDA |
MALI |
17 |
AMRA |
UNITED STATES |
18 |
BGDA |
GUINEA |
19 |
BMDA |
MOROCCO |
20 |
SODRAC |
CANADA |
21 |
BMI |
UNITED STATES |
22 |
MCSN |
NIGERIA |
23 |
BUMA |
NETHERLANDS |
24 |
BURIDA |
COTE D’IVOIRE |
25 |
SODAV |
SENEGAL |
26 |
CASH |
HONG KONG |
28 |
LITA |
SLOVAKIA |
29 |
SCD |
CHILE |
30 |
AMAR |
BRAZIL |
31 |
DILIA |
CZECH REPUBLIC |
32 |
FILSCAP |
PHILIPPINES |
33 |
OMDA |
MADAGASCAR |
34 |
HFA |
UNITED STATES |
35 |
GEMA |
GERMANY |
36 |
IPRS |
INDIA |
37 |
BUBEDRA |
BENIN |
38 |
JASRAC |
JAPAN |
39 |
MUSICAUTOR |
BULGARIA |
40 |
KODA |
DENMARK |
41 |
LITERAR-MECHANA |
AUSTRIA |
43 |
MCSK |
KENYA |
44 |
MCPS |
UNITED KINGDOM |
45 |
BBDA |
BURKINA FASO |
47 |
BCDA |
CONGO |
48 |
NCB |
DENMARK |
49 |
ONDA |
ALGERIA |
50 |
OSA |
CZECH REPUBLIC |
51 |
PROLITTERIS |
SWITZERLAND |
52 |
PRS |
UNITED KINGDOM |
54 |
ALCS |
UNITED KINGDOM |
55 |
SABAM |
BELGIUM |
56 |
SACD |
FRANCE |
57 |
SACERAU |
EGYPT |
58 |
SACEM |
FRANCE |
59 |
SACM |
MEXICO |
60 |
SACVEN |
VENEZUELA |
61 |
SADAIC |
ARGENTINA |
62 |
SADEMBRA |
BRAZIL |
63 |
SAMRO |
SOUTH AFRICA |
64 |
SOKOJ |
SERBIA AND MONTENEGRO |
65 |
SAYCE |
ECUADOR |
66 |
SBACEM |
BRAZIL |
67 |
SBAT |
BRAZIL |
68 |
SDRM |
FRANCE |
69 |
SPA |
PORTUGAL |
70 |
SOGEM |
MEXICO |
71 |
SESAC Inc. |
UNITED STATES |
72 |
SGAE |
SPAIN |
73 |
SCAM |
FRANCE |
74 |
SIAE |
ITALY |
75 |
SUISSIMAGE |
SWITZERLAND |
76 |
ACEMLA |
PUERTO RICO |
77 |
STEF |
ICELAND |
78 |
STEMRA |
NETHERLANDS |
79 |
STIM |
SWEDEN |
80 |
SUISA |
SWITZERLAND |
82 |
OTPDA |
TUNISIA |
84 |
SAYCO |
COLOMBIA |
85 |
SOZA |
SLOVAKIA |
86 |
SICAM |
BRAZIL |
87 |
SPACEM |
FRANCE |
88 |
CMRRA |
CANADA |
89 |
TEOSTO |
FINLAND |
90 |
TONO |
NORWAY |
91 |
SSA |
SWITZERLAND |
93 |
UBC |
BRAZIL |
94 |
RAO |
RUSSIAN FEDERATION |
95 |
VG WORT |
GERMANY |
96 |
COTT |
TRINIDAD AND TOBAGO |
97 |
ZAIKS |
POLAND |
98 |
ZIMURA |
ZIMBABWE |
101 |
SOCAN |
CANADA |
102 |
NASCAM |
NAMIBIA |
103 |
ACDAM |
CUBA |
104 |
MACP |
MALAYSIA |
105 |
MASA (RMS) |
MAURITIUS |
106 |
COMPASS |
SINGAPORE |
107 |
ACAM |
COSTA RICA |
108 |
CHA |
TAIWAN, CHINESE TAIPEI |
109 |
KCI |
INDONESIA |
110 |
LATGA-A |
LITHUANIA |
111 |
HDS-ZAMP |
CROATIA |
112 |
SAZAS |
SLOVENIA |
115 |
UCMR-ADA |
ROMANIA |
116 |
EAU |
ESTONIA |
117 |
MESAM |
TURKEY |
118 |
KOMCA |
KOREA, REPUBLIC OF |
119 |
MCSC |
CHINA |
120 |
LIRA |
NETHERLANDS |
121 |
VDFS |
AUSTRIA |
122 |
AKKA-LAA |
LATVIA |
124 |
COSOMA |
MALAWI |
125 |
BNDA |
NIGER |
126 |
MCT |
THAILAND |
127 |
ALBAUTOR |
ALBANIA |
128 |
IMRO |
IRELAND |
129 |
SOBODAYCOM |
BOLIVIA |
130 |
BUTODRA |
TOGO |
131 |
SADA |
GREECE |
132 |
BILD-KUNST |
GERMANY |
133 |
ZAMCOPS |
ZAMBIA |
134 |
SLPRS |
SRI LANKA |
135 |
SADH |
GREECE |
136 |
ZAMP - Macédoine |
MACEDONIA |
137 |
SOFAM |
BELGIUM |
138 |
KOPIOSTO |
FINLAND |
139 |
VISDA |
DENMARK |
140 |
UACRR |
UKRAINE |
141 |
ATN |
CHILE |
142 |
DALRO |
SOUTH AFRICA |
143 |
TEATERAUTOR |
BULGARIA |
144 |
HAA |
CROATIA |
145 |
DIRECTORS UK |
UNITED KINGDOM |
146 |
SPAC |
PANAMA |
147 |
FILMAUTOR |
BULGARIA |
148 |
ADAGP |
FRANCE |
149 |
ARS |
UNITED STATES |
151 |
BONO |
NORWAY |
152 |
Bildupphovsrätt (Visual Copyright Society) |
SWEDEN |
153 |
DACS |
UNITED KINGDOM |
154 |
HUNGART |
HUNGARY |
155 |
SOMAAP |
MEXICO |
156 |
VAGA |
UNITED STATES |
157 |
BILDRECHT GmbH |
AUSTRIA |
158 |
VEGAP |
SPAIN |
159 |
VISCOPY |
AUSTRALIA |
160 |
NCIP |
BELARUS |
161 |
MÜST |
TAIWAN, CHINESE TAIPEI |
162 |
AMPAL |
AUSTRALIA |
163 |
APG-Japan |
JAPAN |
164 |
APSAV |
PERU |
166 |
AUTORARTE |
VENEZUELA |
168 |
CA |
AUSTRALIA |
169 |
COSCAP |
BARBADOS |
170 |
CPSN |
NEPAL |
171 |
CREAIMAGEN |
CHILE |
172 |
DGA |
UNITED STATES |
173 |
DIRECTORES |
MEXICO |
174 |
FILMJUS |
HUNGARY |
175 |
CopyRo |
ROMANIA |
176 |
JACAP |
JAMAICA |
177 |
KazAK |
KAZAKSTAN |
178 |
KOSA |
KOREA, REPUBLIC OF |
179 |
KUVASTO |
FINLAND |
181 |
NMPA |
UNITED STATES |
182 |
PAPPRI |
INDONESIA |
183 |
SACK |
KOREA, REPUBLIC OF |
184 |
SARTEC |
CANADA |
186 |
SGDL |
FRANCE |
187 |
SNAC |
FRANCE |
189 |
SOCINPRO |
BRAZIL |
190 |
SOPE |
GREECE |
191 |
SPACQ |
CANADA |
192 |
SFF |
SWEDEN |
193 |
The Society of Authors (SOA) |
UNITED KINGDOM |
194 |
UFFICIO GIURIDICO |
HOLY SEE (VATICAN CITY STATE) |
195 |
VEVAM |
NETHERLANDS |
196 |
WGA |
UNITED STATES |
197 |
WGJ |
JAPAN |
198 |
ZAMP Association of Slovenia |
SLOVENIA |
199 |
SFP-ZAPA |
POLAND |
200 |
MSG |
TURKEY |
201 |
ABRAMUS |
BRAZIL |
202 |
AsDAC |
MOLDOVA, REPUBLIC OF |
203 |
AWGACS |
AUSTRALIA |
204 |
GCA (former SSA) |
GEORGIA |
206 |
UFW |
FINLAND |
207 |
The Author’s Registry Inc. |
UNITED STATES |
208 |
SGA |
GUINEA-BISSAU |
209 |
ARMAUTHOR NGO |
ARMENIA |
210 |
ACCESS COPYRIGHT |
CANADA |
212 |
CSCS |
CANADA |
213 |
DRCC |
CANADA |
214 |
ECCO |
SAINT LUCIA |
215 |
Kyrgyzpatent |
KYRGYZSTAN |
216 |
SQN |
BOSNIA AND HERZEGOVINA |
217 |
ABRAC |
BRAZIL |
218 |
ANACIM |
BRAZIL |
219 |
ASSIM |
BRAZIL |
220 |
ATIDA |
BRAZIL |
221 |
SABEM |
BRAZIL |
222 |
FONOPERU |
PERU |
223 |
COSOTA |
TANZANIA, UNITED REPUBLIC OF |
224 |
SOMAS |
MOZAMBIQUE |
225 |
SAIF |
FRANCE |
226 |
AACIMH |
HONDURAS |
227 |
SGACEDOM |
DOMINICAN REPUBLIC |
228 |
ROMS |
RUSSIAN FEDERATION |
229 |
ICG |
UNITED STATES |
230 |
ADAVIS |
CUBA |
231 |
AUTVIS |
BRAZIL |
232 |
GESTOR |
CZECH REPUBLIC |
233 |
SACEMLUXEMBOURG |
LUXEMBOURG |
234 |
UPRS |
UGANDA |
235 |
SACENC |
FRANCE |
236 |
ARTEGESTION |
ECUADOR |
237 |
TALI |
ISRAEL |
238 |
BSCAP |
BELIZE |
239 |
CMC |
CAMEROON |
240 |
DAMA |
SPAIN |
241 |
NICAUTOR |
NICARAGUA |
242 |
SACIM |
EL SALVADOR |
243 |
SADIA |
ANGOLA |
244 |
SASUR |
SURINAME |
245 |
SETEM |
TURKEY |
246 |
VCPMC |
VIET NAM |
247 |
IVARO |
IRELAND |
248 |
DAC |
ARGENTINA |
249 |
PAM CG |
MONTENEGRO |
250 |
AEI-GUATEMALA |
GUATEMALA |
251 |
ASDACS |
AUSTRALIA |
252 |
COLCCMA |
TAIWAN, CHINESE TAIPEI |
253 |
AAS |
AZERBAIJAN |
254 |
SOCILADRA |
CAMEROON |
256 |
PICTORIGHT |
NETHERLANDS |
257 |
SAVA |
ARGENTINA |
258 |
MRCSN |
NEPAL |
259 |
SDCSI |
IRELAND |
260 |
ACS |
UNITED KINGDOM |
261 |
GAI Uz |
UZBEKISTAN |
262 |
SINEBIR |
TURKEY |
263 |
SACS |
SEYCHELLES |
264 |
CARCC |
CANADA |
265 |
MACA |
MACAU |
266 |
BeAT |
BRUNEI DARUSSALAM |
267 |
UPRAVIS |
RUSSIAN FEDERATION |
268 |
COSON |
NIGERIA |
269 |
WAMI |
INDONESIA |
270 |
JASPAR |
JAPAN |
271 |
DHFR |
CROATIA |
272 |
MOSCAP |
MONGOLIA |
273 |
AMUS |
BOSNIA AND HERZEGOVINA |
274 |
AuPO CINEMA |
UKRAINE |
275 |
AUTODIAHIRISI |
GREECE |
276 |
DASC |
COLOMBIA |
277 |
RSAU |
RWANDA |
278 |
RUR |
RUSSIA |
279 |
SDADV |
ANDORRA |
280 |
SANASTO |
FINLAND |
281 |
ATHINA- SADA - S.A.D.A. |
GREECE |
282 |
UNAC-SA |
ANGOLA |
283 |
CAPASSO |
SOUTH AFRICA |
284 |
COSOZA |
ZANZIBAR |
285 |
GHAMRO |
GHANA |
286 |
ODDA |
DJIBOUTI |
287 |
KORRA |
KOREA |
288 |
ABYROY |
KAZAKHSTAN |
289 |
AIPA |
SLOVENIA |
290 |
AZDG |
AZERBAIJAN |
291 |
OFA |
SERBIA |
292 |
ZPAP |
POLAND |
293 |
DBCA |
BRAZIL |
294 |
REDES |
COLOMBIA |
295 |
SAGCRYT |
MEXICO |
296 |
DACIN-SARA |
ROMANIA |
297 |
GEDAR |
BRAZIL |
298 |
OOA-S |
CZECH REPUBLIC |
299 |
SCM-COOPERATIVA |
CAPE VERDE |
300 |
WID Centre |
UNITED STATES |
301 |
GESAC |
BELGIUM |
302 |
LATINAUTOR |
URUGUAY |
303 |
NORD-DOC |
SWEDEN |
304 |
SONGCODE |
UNITED STATES |
306 |
ACCS |
TRINIDAD AND TOBAGO |
307 |
SINGAPORE |
|
308 |
ECAD |
BRAZIL |
309 |
LatinNet |
SPAIN |
310 |
DIVA |
HONG KONG |
311 |
MCPS-PRS Alliance |
UNITED KINGDOM |
312 |
CISAC |
FRANCE |
313 |
FastTrack DCN |
FRANCE |
314 |
IDA |
FRANCE |
315 |
CSI |
FRANCE |
316 |
CIS-Net AVI |
FRANCE |
317 |
INTL-REP |
FRANCE |
318 |
SGS |
|
319 |
ICE Services AB |
SWEDEN |
320 |
ARMONIA |
FRANCE |
321 |
PUBLISHERS |
|
322 |
EVA |
BELGIUM |
635 |
GEMA-US |
Additional CIS-Net Node |
658 |
SACEM-US |
Additional CIS-Net Node |
672 |
SGAE-NY |
Additional CIS-Net Node |
707 |
MusicMark |
USA |
758 |
SACEM-LIBAN |
Additional CIS-Net Node |
775 |
Solar EMI |
GERMANY/UK |
776 |
Solar Sony |
GERMANY/UK |
777 |
CELAS |
GERMANY/UK |
778 |
GMR |
|
779 |
Polaris Nordic |
SCANDINAVIA |
780 |
UNISON |
Spain |
781 |
SOUNDREEF |
ENGLAND and WALES |
782 |
NexTone |
JAPAN |
888 |
PAECOL |
Additional CIS-Net Node |