nodeskini 1.0.5 → 1.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (164) hide show
  1. package/client/clientListe/clientListe.js +11 -0
  2. package/client/clientListe/clientListebundle.js +1755 -1909
  3. package/client/score/parto1.js +4 -1
  4. package/client/score/parto1bundle.js +45 -23
  5. package/doc/Doc Skini Node english.pdf +0 -0
  6. package/doc/Mode d'emploi Skini Node.pdf +0 -0
  7. package/doc/Tuto Skini.pdf +0 -0
  8. package/doc/quickstart.pdf +0 -0
  9. package/myReact/orchestrationHH.hh.js +27 -12
  10. package/myReact/orchestrationHH.mjs +170 -170
  11. package/myReact/orchestrationHH.mjs.map +1 -1
  12. package/package.json +11 -8
  13. package/pieces/tutos/demoAbleton.csv +21 -0
  14. package/pieces/tutos/demoAbleton.js +100 -0
  15. package/pieces/tutos/demoAbleton.xml +180 -0
  16. package/pieces/tutos/demoHH.js +99 -0
  17. package/pieces/tutos/demoHH.xml +184 -0
  18. package/pieces/tutos/demoHHwait.js +100 -0
  19. package/pieces/tutos/demoHHwait.xml +175 -0
  20. package/pieces/tutos/tuto.csv +10 -0
  21. package/pieces/tutos/tuto.csv.good +1 -0
  22. package/pieces/tutos/tuto1.js +105 -0
  23. package/pieces/tutos/tuto1.xml +147 -0
  24. package/pieces/tutos/tuto10.back.js +106 -0
  25. package/pieces/tutos/tuto10.js +107 -0
  26. package/pieces/tutos/tuto10.xml +199 -0
  27. package/pieces/tutos/tuto11.js +111 -0
  28. package/pieces/tutos/tuto11.xml +124 -0
  29. package/pieces/tutos/tuto12.js +91 -0
  30. package/pieces/tutos/tuto12.xml +258 -0
  31. package/pieces/tutos/tuto2.back.js +106 -0
  32. package/pieces/tutos/tuto2.js +95 -0
  33. package/pieces/tutos/tuto2.xml +94 -0
  34. package/pieces/tutos/tuto3-2.js +105 -0
  35. package/pieces/tutos/tuto3-2.xml +96 -0
  36. package/pieces/tutos/tuto3.js +97 -0
  37. package/pieces/tutos/tuto3.xml +49 -0
  38. package/pieces/tutos/tuto4.js +107 -0
  39. package/pieces/tutos/tuto4.xml +106 -0
  40. package/pieces/tutos/tuto5.js +109 -0
  41. package/pieces/tutos/tuto5.xml +42 -0
  42. package/pieces/tutos/tuto6.js +105 -0
  43. package/pieces/tutos/tuto6.xml +26 -0
  44. package/pieces/tutos/tuto7.js +107 -0
  45. package/pieces/tutos/tuto7.xml +65 -0
  46. package/pieces/tutos/tuto8.js +105 -0
  47. package/pieces/tutos/tuto8.xml +76 -0
  48. package/pieces/tutos/tuto9.js +107 -0
  49. package/pieces/tutos/tuto9.xml +90 -0
  50. package/pieces/tutos/tutoAwait.js +111 -0
  51. package/pieces/tutos/tutoAwait.xml +171 -0
  52. package/pieces/tutos/tutoDoubleEmission.js +93 -0
  53. package/pieces/tutos/tutoDoubleEmission.xml +65 -0
  54. package/pieces/tutos/tutoESP32.js +104 -0
  55. package/pieces/tutos/tutoESP32.xml +246 -0
  56. package/pieces/tutos/tutoGame.js +126 -0
  57. package/pieces/tutos/tutoGame.xml +109 -0
  58. package/pieces/tutos/tutoGroups1.js +111 -0
  59. package/pieces/tutos/tutoGroups1.xml +137 -0
  60. package/pieces/tutos/tutoGroups2.js +97 -0
  61. package/pieces/tutos/tutoGroups2.xml +103 -0
  62. package/pieces/tutos/tutoGroups3.js +111 -0
  63. package/pieces/tutos/tutoGroups3.xml +128 -0
  64. package/pieces/tutos/tutoGroups4.js +111 -0
  65. package/pieces/tutos/tutoGroups4.xml +84 -0
  66. package/pieces/tutos/tutoIZ.js +95 -0
  67. package/pieces/tutos/tutoIZ.xml +135 -0
  68. package/pieces/tutos/tutoIf.js +111 -0
  69. package/pieces/tutos/tutoIf.xml +126 -0
  70. package/pieces/tutos/tutoMidi.js +126 -0
  71. package/pieces/tutos/tutoMidi.xml +62 -0
  72. package/pieces/tutos/tutoOS.js +121 -0
  73. package/pieces/tutos/tutoOSC.js +109 -0
  74. package/pieces/tutos/tutoOSC.xml +223 -0
  75. package/pieces/tutos/tutoOSCJonathan.js +94 -0
  76. package/pieces/tutos/tutoOSCJonathan.xml +312 -0
  77. package/pieces/tutos/tutoPatternInGroup.js +109 -0
  78. package/pieces/tutos/tutoPatternInGroup.xml +116 -0
  79. package/pieces/tutos/tutoRandomBlock.js +129 -0
  80. package/pieces/tutos/tutoRandomBlock.xml +194 -0
  81. package/pieces/tutos/tutoSuspend.js +107 -0
  82. package/pieces/tutos/tutoSuspend.xml +139 -0
  83. package/pieces/tutos/tutoSustain.js +107 -0
  84. package/pieces/tutos/tutoSustain.xml +109 -0
  85. package/pieces/tutos/tutoTank.csv +9 -0
  86. package/pieces/tutos/tutoTank.js +100 -0
  87. package/pieces/tutos/tutoTank.xml +326 -0
  88. package/pieces/tutos/tutoTestAll.csv +11 -0
  89. package/pieces/tutos/tutoTestAll.js +101 -0
  90. package/pieces/tutos/tutoTestAll.xml +859 -0
  91. package/serveur/skiniParametres.js +104 -11
  92. package/blocklySkini/archive/blocklyControleur.js +0 -87
  93. package/blocklySkini/archive/blocklySkini.js +0 -84
  94. package/blocklySkini/archive/blocklyhop.js +0 -75
  95. package/blocklySkini/archive/clientControleurBlocly.js +0 -170
  96. package/blocklySkini/archive/index.html +0 -76
  97. package/blocklySkini/archive/testHHsuspend.txt +0 -89
  98. package/blocklySkini/archive/testHHtrap.txt +0 -262
  99. package/blocklySkini/archive/testOrchestration.txt +0 -177
  100. package/blocklySkini/archive/testOrchestration.xml +0 -447
  101. package/blocklySkini/archive/testOrchestration2.xml +0 -456
  102. package/blocklySkini/scripts/hiphop_blocks.old.js +0 -3010
  103. package/blocklySkini/scripts/hiphop_blocks11-2025.js +0 -6104
  104. package/myReact/archive/Nodeemitvaluedlocal1.hh.js +0 -52
  105. package/myReact/archive/abort-parNode.js +0 -79
  106. package/myReact/archive/abroNode.js +0 -169
  107. package/myReact/archive/abroNode2.js +0 -80
  108. package/myReact/archive/atom.compile.hh.js +0 -52
  109. package/myReact/archive/await-countNode.js +0 -67
  110. package/myReact/archive/await-nowvalNode.js +0 -44
  111. package/myReact/archive/callHH.js +0 -96
  112. package/myReact/archive/emit-if2.hh.compiled.js +0 -113
  113. package/myReact/archive/every1Node.js +0 -35
  114. package/myReact/archive/if-runNode.js +0 -74
  115. package/myReact/archive/if1Node.js +0 -43
  116. package/myReact/archive/makeawait.js +0 -0
  117. package/myReact/archive/myReact.old.js +0 -684
  118. package/myReact/archive/orchestration.js +0 -281
  119. package/myReact/archive/orchestration1.js +0 -132
  120. package/myReact/archive/orchestration1.xml +0 -465
  121. package/myReact/archive/orchestration2.js +0 -161
  122. package/myReact/archive/orchestrationHH.mano.js +0 -280
  123. package/myReact/archive/orchestrationHHTest.js +0 -428
  124. package/myReact/archive/orchestrationHHTest.xml +0 -234
  125. package/myReact/archive/orchestrationHHTestRun.js +0 -104
  126. package/myReact/archive/orchestrationHHTestRun.xml +0 -34
  127. package/myReact/archive/orchestrationTest0.js +0 -178
  128. package/myReact/archive/orchestrationTest1.js +0 -181
  129. package/myReact/archive/orchestrationTest2.js +0 -281
  130. package/myReact/archive/run3pointsNode.js +0 -59
  131. package/myReact/archive/runNode.js +0 -123
  132. package/myReact/archive/runNode2.js +0 -91
  133. package/myReact/archive/testAwait1.js +0 -141
  134. package/myReact/archive/testAwait1.xml +0 -86
  135. package/myReact/archive/testEvery1.js +0 -122
  136. package/myReact/archive/testEvery1.xml +0 -79
  137. package/myReact/archive/testHH1.js +0 -135
  138. package/myReact/archive/testHH1.xml +0 -86
  139. package/myReact/archive/testHH1revu.js +0 -104
  140. package/myReact/archive/testHH2.js +0 -122
  141. package/myReact/archive/testHH2.xml +0 -79
  142. package/myReact/archive/testHH3.js +0 -130
  143. package/myReact/archive/testHH3.xml +0 -86
  144. package/myReact/archive/testHHabort.js +0 -121
  145. package/myReact/archive/testHHabort.xml +0 -83
  146. package/myReact/archive/testMakeawait.js +0 -202
  147. package/myReact/archive/testRun1.js +0 -168
  148. package/myReact/archive/testRun1.xml +0 -142
  149. package/myReact/archive/titi.js +0 -28
  150. package/myReact/archive/titi.xml +0 -110
  151. package/myReact/archive/toto.js +0 -73
  152. package/myReact/archive/toto.xml +0 -198
  153. package/myReact/archive/trap-await-parallelNode.js +0 -123
  154. package/myReact/inutiles/hiver2022.xml +0 -804
  155. package/myReact/inutiles/hopeNode.xml +0 -459
  156. package/myReact/inutiles/mars2022.xml +0 -871
  157. package/myReact/inutiles/mystique1.xml +0 -318
  158. package/myReact/inutiles/mystiqueOSC.xml +0 -277
  159. package/myReact/inutiles/opus5Node.xml +0 -1271
  160. package/myReact/inutiles/opus5NodeLinux.xml +0 -1241
  161. package/myReact/inutiles/orchestrationHH.xml +0 -541
  162. package/myReact/inutiles/orchestrationHH2.xml +0 -547
  163. package/myReact/inutiles/testHH.xml +0 -95
  164. package/myReact/inutiles/trouveLaPercuTenor.xml +0 -349
@@ -1,5 +1,5 @@
1
1
 
2
- // Generated by Skini: Tue Dec 23 2025 18:00:58 GMT+0100 (heure normale d’Europe centrale)
2
+ // Generated by Skini: Wed Jan 07 2026 10:47:37 GMT+0100 (heure normale d’Europe centrale)
3
3
  "use strict"
4
4
 
5
5
  // A utiliser si Processing en passerelle
@@ -19,9 +19,9 @@ exports.english = true;
19
19
  Si ces valeurs ne sont pas données c'est celle qui
20
20
  sont dans le simulateur qui sont utilisées
21
21
  ************************************/
22
- exports.tempoMax = 500; // En ms
23
- exports.tempoMin = 400; // En ms
24
- exports.limiteDureeAttente = 33; // En pulsations
22
+ exports.tempoMax = 2000; // En ms
23
+ exports.tempoMin = 2200; // En ms
24
+ exports.limiteDureeAttente = 2000; // En pulsations
25
25
 
26
26
  /********************************************************
27
27
  AUTOMATE
@@ -36,7 +36,7 @@ exports.pulsationON = false;
36
36
  CHEMIN DES FICHIERS SONS MP3 pour les clients
37
37
  Nom du sous répartoire ./sounds/xxxx
38
38
  *************************************/
39
- exports.soundFilesPath1 = "";
39
+ exports.soundFilesPath1 = "opus4";
40
40
 
41
41
  /***************************************
42
42
  CHEMIN DES PARTITIONS DES PATTERNS ET CONFIG AVEC MUSICIENS
@@ -54,7 +54,7 @@ Si autre ... à créer...
54
54
  ATTENTION: NE JAMAIS UTILISER EN SITUATION D'INTERACTION SI L'ALGORITHME
55
55
  PEUT SUPPRIMER DES PATTERNS DES FIFOs
56
56
  *****************************************/
57
- exports.algoGestionFifo = 0;
57
+ exports.algoGestionFifo = 2;
58
58
  exports.shufflePatterns = false;
59
59
  /*****************************************************************************
60
60
 
@@ -84,12 +84,105 @@ exports.timer = 500;
84
84
  exports.gameOSCSignals = false;
85
85
 
86
86
  exports.sensorOSC = true;
87
- exports.tempoSensorsInit = [100,100,100,100,20,20,20,20,20,20,20,20];
88
- exports.sensorsSensibilities = [200,200,200,200,200,5,5,5,5,5,5,5];
87
+ exports.tempoSensorsInit = [100,100,100,100,100,100,20,20,20,20,20,20];
88
+ exports.sensorsSensibilities = [200,200,200,200,200,200,200,200,200,200,200,199];
89
89
 
90
90
  const groupesDesSons = [
91
- [ "toto",1, "group",100,100,3,"",[],1 ],
92
- [ "titi",2, "group",200,200,3,"",[],1 ],
93
- [ "tutu",2, "group",300,300,3,"",[],1 ],
91
+ [ "saxo",1, "group",401,200,21,"#4CAF50",[],10 ],
92
+ [ "nappeViolons",2, "group",100,500,20,"#4CAF50",[],1 ],
93
+ [ "nappe2Violons",3, "group",100,600,20,"#797bbf",[],1 ],
94
+ [ "Piano1Intro1",10, "tank",100,51,1,"#5F6262",[],1 ],
95
+ [ "Piano1Intro2",11, "tank",,,1,"#5F6262",[], ],
96
+ [ "Piano1Intro3",12, "tank",,,1,"#5F6262",[], ],
97
+ [ "Piano1Intro4",13, "tank",,,1,"#5F6262",[], ],
98
+ [ "Piano1Intro5",14, "tank",,,1,"#5F6262",[], ],
99
+ [ "Piano1Intro6",15, "tank",,,1,"#5F6262",[], ],
100
+ [ "Piano1Intro7",16, "tank",,,1,"#5F6262",[], ],
101
+ [ "Piano1Milieu1",17, "tank",,,1,"#5F6262",[], ],
102
+ [ "Piano1Milieu2",18, "tank",,,1,"#5F6262",[], ],
103
+ [ "Piano1Milieu3",19, "tank",,,1,"#5F6262",[], ],
104
+ [ "Piano1Milieu4",20, "tank",,,1,"#5F6262",[], ],
105
+ [ "Piano1Milieu5",21, "tank",,,1,"#5F6262",[], ],
106
+ [ "Piano1Milieu6",22, "tank",,,1,"#5F6262",[], ],
107
+ [ "Piano1Milieu7",23, "tank",,,1,"#5F6262",[], ],
108
+ [ "Piano1Fin1",24, "tank",,,1,"#5F6262",[], ],
109
+ [ "Piano1Fin2",25, "tank",,,1,"#5F6262",[], ],
110
+ [ "Piano1Fin3",26, "tank",,,1,"#5F6262",[], ],
111
+ [ "Piano1Fin4",27, "tank",,,1,"#5F6262",[], ],
112
+ [ "Piano1Fin5",28, "tank",,,1,"#5F6262",[], ],
113
+ [ "Piano1Fin6",29, "tank",,,1,"#5F6262",[], ],
114
+ [ "Piano1Fin7",30, "tank",,,1,"#5F6262",[], ],
115
+ [ "SaxIntro1",31, "tank",400,51,2,"#5F6262",[],1 ],
116
+ [ "SaxIntro2",32, "tank",,,2,"#5F6262",[], ],
117
+ [ "SaxIntro3",33, "tank",,,2,"#5F6262",[], ],
118
+ [ "SaxIntro4",34, "tank",,,2,"#5F6262",[], ],
119
+ [ "SaxIntro5",35, "tank",,,2,"#5F6262",[], ],
120
+ [ "SaxIntro6",36, "tank",,,2,"#5F6262",[], ],
121
+ [ "SaxIntro7",37, "tank",,,2,"#5F6262",[], ],
122
+ [ "SaxMilieu1",38, "tank",,,2,"#5F6262",[], ],
123
+ [ "SaxMilieu2",39, "tank",,,2,"#5F6262",[], ],
124
+ [ "SaxMilieu3",40, "tank",,,2,"#5F6262",[], ],
125
+ [ "SaxMilieu4",41, "tank",,,2,"#5F6262",[], ],
126
+ [ "SaxMilieu5",42, "tank",,,2,"#5F6262",[], ],
127
+ [ "SaxMilieu6",43, "tank",,,2,"#5F6262",[], ],
128
+ [ "SaxMilieu7",44, "tank",,,2,"#5F6262",[], ],
129
+ [ "SaxFin1",45, "tank",,,2,"#5F6262",[], ],
130
+ [ "SaxFin2",46, "tank",,,2,"#5F6262",[], ],
131
+ [ "SaxFin3",47, "tank",,,2,"#5F6262",[], ],
132
+ [ "SaxFin4",48, "tank",,,2,"#5F6262",[], ],
133
+ [ "SaxFin5",49, "tank",,,2,"#5F6262",[], ],
134
+ [ "SaxFin6",50, "tank",,,2,"#5F6262",[], ],
135
+ [ "SaxFin7",51, "tank",,,2,"#5F6262",[], ],
136
+ [ "BrassIntro1",52, "tank",700,51,3,"#039879",[],1 ],
137
+ [ "BrassIntro2",53, "tank",,,3,"#039879",[], ],
138
+ [ "BrassIntro3",54, "tank",,,3,"#039879",[], ],
139
+ [ "BrassIntro4",55, "tank",,,3,"#039879",[], ],
140
+ [ "BrassIntro5",56, "tank",,,3,"#039879",[], ],
141
+ [ "BrassIntro6",57, "tank",,,3,"#039879",[], ],
142
+ [ "BrassIntro7",58, "tank",,,3,"#039879",[], ],
143
+ [ "BrassMilieu1",59, "tank",,,3,"#039879",[], ],
144
+ [ "BrassMilieu2",60, "tank",,,3,"#039879",[], ],
145
+ [ "BrassMilieu3",61, "tank",,,3,"#039879",[], ],
146
+ [ "BrassMilieu4",62, "tank",,,3,"#039879",[], ],
147
+ [ "BrassMilieu5",63, "tank",,,3,"#039879",[], ],
148
+ [ "BrassMilieu6",64, "tank",,,3,"#039879",[], ],
149
+ [ "BrassMilieu7",65, "tank",,,3,"#039879",[], ],
150
+ [ "BrassFin1",66, "tank",,,3,"#039879",[], ],
151
+ [ "BrassFin2",67, "tank",,,3,"#039879",[], ],
152
+ [ "BrassFin3",68, "tank",,,3,"#039879",[], ],
153
+ [ "BrassFin4",69, "tank",,,3,"#039879",[], ],
154
+ [ "BrassFin5",70, "tank",,,3,"#039879",[], ],
155
+ [ "BrassFin6",71, "tank",,,3,"#039879",[], ],
156
+ [ "BrassFin7",72, "tank",,,3,"#039879",[], ],
157
+ [ "Percu1",73, "tank",800,600,4,"#039879",[],1 ],
158
+ [ "Percu2",74, "tank",,,4,"#039879",[], ],
159
+ [ "Percu3",75, "tank",,,4,"#039879",[], ],
160
+ [ "Percu4",76, "tank",,,4,"#039879",[], ],
161
+ [ "Percu5",77, "tank",,,4,"#039879",[], ],
162
+ [ "Percu6",78, "tank",,,4,"#039879",[], ],
163
+ [ "Percu7",79, "tank",,,4,"#039879",[], ],
164
+ [ "FluteIntro1",80, "tank",400,400,5,"#039879",[],1 ],
165
+ [ "FluteIntro2",81, "tank",,,5,"#039879",[], ],
166
+ [ "FluteIntro3",82, "tank",,,5,"#039879",[], ],
167
+ [ "FluteIntro4",83, "tank",,,5,"#039879",[], ],
168
+ [ "FluteIntro5",84, "tank",,,5,"#039879",[], ],
169
+ [ "FluteIntro6",85, "tank",,,5,"#039879",[], ],
170
+ [ "FluteIntro7",86, "tank",,,5,"#039879",[], ],
171
+ [ "FluteMilieu1",87, "tank",,,5,"#039879",[], ],
172
+ [ "FluteMilieu2",88, "tank",,,5,"#039879",[], ],
173
+ [ "FluteMilieu3",89, "tank",,,5,"#039879",[], ],
174
+ [ "FluteMilieu4",90, "tank",,,5,"#039879",[], ],
175
+ [ "FluteMilieu5",91, "tank",,,5,"#039879",[], ],
176
+ [ "FluteMilieu6",92, "tank",,,5,"#039879",[], ],
177
+ [ "FluteMilieu7",93, "tank",,,5,"#039879",[], ],
178
+ [ "FluteFin1",94, "tank",,,5,"#039879",[], ],
179
+ [ "FluteFin2",95, "tank",,,5,"#039879",[], ],
180
+ [ "FluteFin3",96, "tank",,,5,"#039879",[], ],
181
+ [ "FluteFin4",97, "tank",,,5,"#039879",[], ],
182
+ [ "FluteFin5",98, "tank",,,5,"#039879",[], ],
183
+ [ "FluteFin6",99, "tank",,,5,"#039879",[], ],
184
+ [ "FluteFin7",100, "tank",,,5,"#039879",[], ],
185
+ [ "Flesh",110, "group",100,350,7,"#008CBA",[],1 ],
186
+ [ "Massive",111, "group",100,400,7,"#008CBA",[],1 ],
94
187
  ];
95
188
  exports.groupesDesSons = groupesDesSons;
@@ -1,87 +0,0 @@
1
- "use hiphop"
2
- "use hopscript"
3
-
4
- require.lang = "hopscript";
5
- require("./scripts/surLeServeurSkini.js", "hiphop");
6
- var par = require('../serveur/logosParametres');
7
-
8
- // Services dans d'autres fichiers, il faut aussi les déclarer ici
9
- service printServeurFromBlockly();
10
- service getFileBlockly();
11
- service saveBlocksServer();
12
- service generateHHcode();
13
-
14
- //console.log( "For Blockly, gGo to \"http://localhost:%d/hop/block\"", hop.port );
15
-
16
- service block() {
17
- return <html>
18
- <head>
19
- <link rel="stylesheet" href=${require.resolve("./styles/index.css")}>
20
- <script src="hiphop" lang="hopscript"/>
21
- // Déclarations nécessaires pour faire les requires sur le client.
22
- <script src="./scripts/hiphop_blocks.js" lang="hiphop"/>
23
- <script src="./scripts/main2.js" lang="hiphop"/>
24
- <script src='./clientControleurBlocly.js' lang='hopscript'/>
25
- <script src='../serveur/logosParametres' lang='hopscript'/>
26
- <meta charset="UTF-8" name="viewport" />
27
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
28
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
29
-
30
- <title>Blockly and Hop.js</title>
31
- </head>
32
- ~{
33
- var mainProg, clientControleur, printServeur;
34
- window.onload = function() {
35
- // Require correspondant aux déclarations ci-dessus
36
- require('./scripts/hiphop_blocks.js', "hiphop");
37
- mainProg = require('./scripts/main2.js');
38
- clientControleur = require('./clientControleurBlocly.js');
39
- printServeur = ${printServeurFromBlockly};
40
- console.log("mainprog");
41
- printServeur("-- Blockly for Skini started --").post();
42
- mainProg.init();
43
- clientControleur.init(${hop.port}, ${par});
44
- }
45
- }
46
- <body>
47
- <table>
48
- <thead>
49
- <tr>
50
- <td>
51
- <header class="mdl-color--cyan-500">
52
- <h1 class="mode-maker">Orchestration Skini</h1>
53
- <div id="menubar">
54
- <label for="loadFile" class="small button">Select Blockly File</label>
55
- <input type="file" id="loadFile" onchange=~{mainProg.loadBlocks();} />
56
-
57
- <button class="small button" id="buttonSave" onclick=~{mainProg.saveBlocksAndGenerateHH();} >Save Blocks</button>
58
- <input class="inputText" type="text" id="saveFile" />
59
- <input class="inputText" type="text" id="consoleArea" />
60
-
61
- <button class="small button" id="buttonLoadAbleton1" onclick=~{clientControleur.loadAbleton(1);} >ORCH1</button>
62
- <button class="small button" id="buttonLoadAbleton2" onclick=~{clientControleur.loadAbleton(2);} >ORCH2</button>
63
- <button class="small button" id="buttonLoadAbleton3" onclick=~{clientControleur.loadAbleton(3);} >ORCH3</button>
64
-
65
- <button id="buttonStopAutomate" class="small button" style="display:none" onclick=~{clientControleur.stopAutomate();} >AUT OFF</button>
66
- <button id="buttonStartAutomate" class="small button" onclick=~{clientControleur.startAutomate();} >AUT ON</button>
67
-
68
- </div>
69
- </header>
70
- </td>
71
- </tr>
72
- </thead>
73
- <tbody>
74
- <tr>
75
- <td id="blocklyArea"></td>
76
- </tr>
77
- </tbody>
78
- </table>
79
-
80
- <div id="blocklyDiv" style="position: absolute"></div>
81
- <script src=${block.resource("./blockly/blockly.min.js")}></script>
82
- <script src=${block.resource("./blockly/javascript_compressed.js")}></script>
83
- </body>
84
- </html>
85
- };
86
- exports.block = block;
87
-
@@ -1,84 +0,0 @@
1
- /**************************************************
2
-
3
- Editeur Skini en ligne avec Blockly
4
-
5
- © Copyright 2017-2021, Bertrand Petit-Hédelin
6
-
7
- ****************************************************/
8
-
9
- "use hiphop"
10
- "use hopscript"
11
-
12
- require.lang = "hopscript";
13
- require("./scripts/surLeServeurSkini.js", "hiphop");
14
-
15
- // Services dans d'autres fichiers, il faut aussi les déclarer ici
16
- service printServeurFromBlockly();
17
- service getFileBlockly();
18
- service saveBlocksServer();
19
- service generateHHcode();
20
-
21
- //console.log( "For Blockly, gGo to \"http://localhost:%d/hop/block\"", hop.port );
22
-
23
- service block() {
24
- return <html>
25
- <head>
26
- <link rel="stylesheet" href=${require.resolve("./styles/index.css")}>
27
- <script src="hiphop" lang="hopscript"/>
28
- // Déclarations nécessaires pour faire les requires sur le client.
29
- <script src="./scripts/hiphop_blocks.js" lang="hiphop"/>
30
- <script src="./scripts/main2.js" lang="hiphop"/>
31
- <meta charset="UTF-8" name="viewport" />
32
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
33
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
34
- <title>Blockly and Hop.js</title>
35
- </head>
36
- ~{
37
- var mainProg;
38
- window.onload = function() {
39
- // Require correspondant aux déclarations ci-dessus
40
- require('./scripts/hiphop_blocks.js', "hiphop");
41
- mainProg = require('./scripts/main2.js');
42
- var printServeur = ${printServeurFromBlockly};
43
- console.log("mainprog");
44
- printServeur("-- Blockly for Skini started --").post();
45
- mainProg.init();
46
- }
47
- }
48
- <body>
49
- <table>
50
- <thead>
51
- <tr>
52
- <td>
53
- <header class="mdl-color--cyan-500">
54
- <h1 class="mode-maker">Orchestration Skini</h1>
55
- <div id="menubar">
56
- <!--
57
- <button class="small button" id="buttonGenerate" onclick=~{mainProg.save();} >Generate HipHop</button>
58
- -->
59
- <label for="loadFile" class="small button">Select Blockly File</label>
60
- <input type="file" id="loadFile" onchange=~{mainProg.loadBlocks();} />
61
-
62
- <button class="small button" id="buttonSave" onclick=~{mainProg.saveBlocksAndGenerateHH();} >Save Blocks</button>
63
- <input class="inputText" type="text" id="saveFile" />
64
- <input class="inputText" type="text" id="consoleArea" />
65
- </div>
66
- </header>
67
- </td>
68
- </tr>
69
- </thead>
70
- <tbody>
71
- <tr>
72
- <td id="blocklyArea"></td>
73
- </tr>
74
- </tbody>
75
- </table>
76
-
77
- <div id="blocklyDiv" style="position: absolute"></div>
78
- <script src=${block.resource("./blockly/blockly.min.js")}></script>
79
- <script src=${block.resource("./blockly/javascript_compressed.js")}></script>
80
- </body>
81
- </html>
82
- };
83
- exports.block = block;
84
-
@@ -1,75 +0,0 @@
1
- "use hiphop"
2
- "use hopscript"
3
-
4
- require.lang = "hopscript";
5
- require("./scripts/surLeServeur.js", "hiphop");
6
-
7
-
8
- // Services dans d'autres fichiers, il faut aussi les déclarer ici
9
- service printServeur();
10
- //service executeHHServeur();
11
-
12
- console.log( "Go to \"http://localhost:%d/hop/block\"", hop.port );
13
-
14
- service block() {
15
- return <html>
16
- <head>
17
- <link rel="stylesheet" href=${require.resolve("./styles/index.css")}>
18
- <script src="hiphop" lang="hopscript"/>
19
- // Déclarations nécessaires pour faire les requires sur le client.
20
- <script src="./scripts/hiphop_blocks.js" lang="hiphop"/>
21
- <script src="./scripts/main2.js" lang="hiphop"/>
22
- <meta charset="UTF-8" name="viewport" />
23
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
24
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
25
- <title>Blockly and Hop.js</title>
26
- </head>
27
- ~{
28
- var mainProg;
29
- window.onload = function() {
30
- // Require correspondant aux déclarations ci-dessus
31
- require('./scripts/hiphop_blocks.js', "hiphop");
32
- mainProg = require('./scripts/main2.js');
33
- var printServeur = ${printServeur};
34
- console.log("mainprog");
35
- printServeur("declaration").post();
36
- mainProg.init();
37
- }
38
- }
39
- <body>
40
- <table>
41
- <tbody>
42
- <tr>
43
- <td>
44
- <header class="mdl-color--cyan-500">
45
- <h1 class="mode-maker">HipHop Orchestration</h1>
46
- <div id="menubar">
47
- <button class="small button" id="buttonGenerate" onclick=~{mainProg.save();} >Generate HipHop</button>
48
-
49
- <button class="small button" id="runButton" onclick=~{mainProg.runHH();} >Run HipHop</button>
50
- <input class="inputText" type="text" id="signalsHH" style="max-width:400px" />
51
-
52
- <label for="loadFile" class="small button">Select File</label>
53
- <input type="file" id="loadFile" onchange=~{mainProg.loadBlocks();} />
54
-
55
- <button class="small button" id="buttonSave" onclick=~{mainProg.saveBlocks();} >Save Blocks</button>
56
- <input class="inputText" type="text" id="saveFile" style="max-width:400px" />
57
- </div>
58
- </header>
59
- </td>
60
- </tr>
61
- <tr>
62
- <td id="blocklyArea">
63
- </td>
64
- </tr>
65
- </tbody>
66
- </table>
67
-
68
- <div id="blocklyDiv" style="position: absolute"></div>
69
- <script src=${block.resource("./blockly/blockly.min.js")}></script>
70
- <script src=${block.resource("./blockly/javascript_compressed.js")}></script>
71
- </body>
72
- </html>
73
- };
74
- exports.block = block;
75
-
@@ -1,170 +0,0 @@
1
-
2
- /**************************************************
3
-
4
- Pour compiler et lancer l'orchestration depuis
5
- le client Blockly.
6
- Permet de se passer du contrôleur pendant le
7
- développement.
8
-
9
- © Copyright 2017-2021, Bertrand Petit-Hédelin
10
-
11
- ****************************************************/
12
- "use strict"
13
- "use hopscript"
14
-
15
- var port;
16
- var par;
17
- var ws;
18
- var id = Math.floor((Math.random() * 1000000) + 1 ); // Pour identifier le client;
19
-
20
- var debug = false;
21
- var debug1 = true;
22
-
23
- var abletonTableEnCours = 0;
24
- var automateEncours = false;
25
-
26
- // Autres déclarations
27
-
28
- var msg = { // On met des valeurs pas defaut, mais ce n'est pas nécessaire.
29
- type: "configuration",
30
- };
31
-
32
- service controleur();
33
- service controleurPing();
34
-
35
- function cleanQueues() {
36
- var msg = {
37
- type: "cleanQueues",
38
- };
39
- ws.send(JSON.stringify(msg));
40
- }
41
- exports.cleanQueues = cleanQueues;
42
-
43
- //****** Lancement des opérations et fermeture *********
44
-
45
- function init(port, p) {
46
- par = p;
47
- initWSSocket( port );
48
- }
49
- exports.init = init;
50
-
51
- // Gestion de la fermeture du browser
52
- window.onbeforeunload = function () {
53
- msg.type = "closeSpectateur";
54
- msg.text = "DISCONNECT_SPECTATEUR";
55
- ws.send(JSON.stringify(msg));
56
- ws.close();
57
- }
58
-
59
- function loadAbleton(val) {
60
- if ( !automateEncours) {
61
- console.log("clientControleur:loadAbleton:", val);
62
- msg.type = "loadAbletonTable";
63
- msg.value = val -1; // Pour envoyer un index
64
- abletonTableEnCours = val;
65
- ws.send(JSON.stringify(msg));
66
- } else {
67
- alert("WARNING: Orchestration running, stop before selecting another one.")
68
- }
69
- }
70
- exports.loadAbleton = loadAbleton;
71
-
72
- function startAutomate() {
73
- msg.type = "setAbletonON";
74
- if (abletonTableEnCours !== 0 && !automateEncours) {
75
- msg.value = abletonTableEnCours;
76
- ws.send(JSON.stringify(msg));
77
- document.getElementById( "buttonStartAutomate").style.display = "none";
78
- document.getElementById( "buttonStopAutomate").style.display = "inline";
79
- msg.type = "startAutomate";
80
- ws.send(JSON.stringify(msg));
81
- automateEncours = true;
82
- } else {
83
- alert("WARNING: No orchestration selected or one is running ");
84
- }
85
- }
86
- exports.startAutomate = startAutomate;
87
-
88
- function stopAutomate() {
89
- document.getElementById( "buttonStartAutomate").style.display = "inline";
90
- document.getElementById( "buttonStopAutomate").style.display = "none";
91
- msg.type = "stopAutomate";
92
- ws.send(JSON.stringify(msg));
93
- automateEncours = false;
94
- cleanQueues();
95
- }
96
- exports.stopAutomate = stopAutomate;
97
-
98
- //************ WEBSOCKET HOP et listener BROADCAST ******************************
99
- function initWSSocket(port) {
100
-
101
- ws = new WebSocket( "ws://" + par.serverIPAddress + ":" + port + "/hop/serv", [ "bar", "foo" ] );
102
-
103
- if (debug) console.log("clientcontroleur.js WS: ", "ws://" + par.serverIPAddress + ":" + port + "/hop/serv" );
104
- ws.onopen = function( event ) {
105
- msg.type = "startSpectateur";
106
- msg.text = "controleur";
107
- msg.id = id;
108
- console.log("ID sent to server:", msg.id);
109
- ws.send(JSON.stringify(msg));
110
- };
111
-
112
- //Traitement de la Réception sur le client
113
- ws.onmessage = function( event ) {
114
- //console.log( "Client: received [%s]", event.data );
115
-
116
- var msgRecu = JSON.parse(event.data);
117
-
118
- switch(msgRecu.type) {
119
- case "abletonTableNotReady": // Si la table n'est pas chargée on garde le bouton start
120
- alert("Orchestration not ready");
121
- document.getElementById( "buttonStartAutomate").style.display = "inline";
122
- document.getElementById( "buttonStopAutomate").style.display = "none";
123
- automateEncours = false;
124
- break;
125
-
126
- case "groupesClientLength":
127
- break;
128
-
129
- case "noAutomaton":
130
- //document.getElementById("consoleArea").innerHTML = "No automaton at this position";
131
- console.log("No automaton at this position");
132
- automateEncours = false;
133
- break;
134
-
135
- case "sessionLoaded":
136
- document.getElementById("consoleArea").innerHTML = "Orchestration loaded :" + msgRecu.fileName;
137
- break;
138
-
139
- case "message":
140
- if (debug) console.log(msgRecu.text);
141
- break;
142
-
143
- default: if (debug) console.log("Le Client reçoit un message inconnu", msgRecu );
144
- }
145
- };
146
-
147
- ws.onerror = function (event) {
148
- if (debug) console.log( "clientcontroleur.js : received error on WS", ws.socket, " ", event );
149
- }
150
-
151
- // Mécanisme de reconnexion automatique si le serveur est tombé.
152
- // Le service Ping permet de vérifier le présence du serveur
153
- ws.onclose = function( event ) {
154
- if (debug1) console.log( "clientcontroleur.js : ON CLOSE");
155
-
156
- /* (function loop() {
157
- if (!debug) {
158
- controleurPing()
159
- .post()
160
- .then(function(){ // Si serveur présent
161
- document.location=controleur();
162
- },
163
- function(){ // Si serveur absent
164
- if (debug) console.log( "reconnecting..." );
165
- setTimeout( loop, 2000 );
166
- } );
167
- }
168
- })();*/
169
- }
170
- }
@@ -1,76 +0,0 @@
1
- <!DOCTYPE html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8">
5
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
6
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
7
-
8
- <title>Blockly for the Web Codelab modified for test</title>
9
- <link rel="stylesheet" href="styles/material.css">
10
- <link rel="stylesheet" href="styles/index.css">
11
- </head>
12
-
13
- <body mode="maker">
14
- <header class="mdl-color--cyan-500">
15
- <h1 class="mode-maker">Music Maker</h1>
16
- <h1 class="mode-edit mode-blockly">Music Maker Configuration</h1>
17
- </header>
18
-
19
- <main>
20
- <button class="mode-maker mdl-button" id="edit">Edit</button>
21
- <button class="mode-edit mdl-button mdl-js-button" id="done">Done</button>
22
- <button class="mode-blockly mdl-button mdl-js-button" id="save">Save</button>
23
- <p class="hint mode-edit">Tap any button to edit its code. <br/>When complete, press Done.</p>
24
-
25
- <div class="maker">
26
- <div>
27
- <div class="button mdl-color--amber-500">1</div>
28
- <div class="button mdl-color--yellow-500">2</div>
29
- <div class="button mdl-color--lime-500">3</div>
30
- </div>
31
- <div>
32
- <div class="button mdl-color--pink-500">4</div>
33
- <div class="button mdl-color--red-500">5</div>
34
- <div class="button mdl-color--light-green-500">6</div>
35
- </div>
36
- <div>
37
- <div class="button mdl-color--cyan-500">7</div>
38
- <div class="button mdl-color--teal-500">8</div>
39
- <div class="button mdl-color--green-500">9</div>
40
- </div>
41
- </div>
42
-
43
- <div id="textarea" style="height: 480px; width: 600px;">TATU</div>
44
-
45
- <div class="blockly-editor">
46
- <div id="blocklyDiv" style="height: 480px; width: 400px;"></div>
47
- <xml id="toolbox" style="display: none">
48
- <block type="controls_repeat_ext">
49
- <value name="TIMES">
50
- <shadow type="math_number">
51
- <field name="NUM">5</field>
52
- </shadow>
53
- </value>
54
- </block>
55
-
56
- <block type="play_sound"></block>
57
- <block type="controls_if"></block>
58
- <block type="controls_whileUntil"></block>
59
- <block type="logic_compare"></block>
60
- <block type="math_number"></block>
61
- <block type="math_arithmetic"></block>
62
- <block type="text"></block>
63
- <block type="text_print"></block>
64
- <block type="testblock"></block>
65
- </xml>
66
- </div>
67
- </main>
68
-
69
- <script src="../../node_modules/blockly/blockly.min.js"></script>
70
- <script src="../../node_modules/blockly/javascript_compressed.js"></script>
71
- <script src="scripts/music_maker.js"></script>
72
- <script src="scripts/sound_blocks.js"></script>
73
- <script src="scripts/main.js"></script>
74
-
75
- </body>
76
- </html>