Skip to content

Commit 7756eec

Browse files
committed
added offline media-player "service" for testing + settings entry; cosmetics;
1 parent e34bc13 commit 7756eec

19 files changed

+667
-75
lines changed

www/css/sepiaFW-cards.css

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,13 @@
2121
margin: 0px 0px;
2222
padding: 0px 0px;
2323
}
24+
article + .sepiaFW-cards-flexSize-container.oneElement,
2425
.sepiaFW-cards-flexSize-container.oneElement.addSpacer {
2526
margin-top: 5px;
2627
}
28+
.sepiaFW-results-container > .addSpacer {
29+
margin-bottom: 5px;
30+
}
2731
.sepiaFW-my-view-section .sepiaFW-cards-flexSize-container {
2832
margin: 5px 5px 0px 5px;
2933
/*flex: 1 0 auto;*/ /*256px*/
@@ -361,6 +365,10 @@
361365
background: #212327;
362366
color: #eee;
363367
}
368+
.sepiaFW-cards-list-body .fullWidthItem .cardItemBlock.cardDisabledMessage {
369+
padding: 5px;
370+
opacity: 0.75;
371+
}
364372
.sepiaFW-cards-flexSize-container .cardBodyItem.fullWidthItem .cardItemOverlay {
365373
position: absolute;
366374
border-radius: 2px;
@@ -734,6 +742,7 @@
734742
justify-content: center;
735743
flex-direction: column;
736744
/*width: calc(100% - 80px);*/
745+
min-height: 48px;
737746
flex: 1 1 auto;
738747
/*max-width: 120px;*/
739748
margin: 5px 0px 0px 0px;

www/css/sepiaFW-frames.css

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -300,16 +300,16 @@
300300
/* mic animations (idle, loading, speaking, listening, awaitDialog) */
301301

302302
#sepiaFW-frames-view #sepiaFW-frames-mic.state-loading {
303-
color: #8e8e8e;
303+
color: #8e8e8e !important;
304304
}
305305
#sepiaFW-frames-view #sepiaFW-frames-mic.state-speaking {
306-
color: #16ABC3;
306+
color: #16ABC3 !important;
307307
}
308308
#sepiaFW-frames-view #sepiaFW-frames-mic.state-listening {
309-
color: #ba2a2a;
309+
color: #ba2a2a !important;
310310
}
311311
#sepiaFW-frames-view #sepiaFW-frames-mic.state-awaitDialog {
312-
color: #ffeb3b;
312+
color: #ffeb3b !important;
313313
}
314314

315315
/* Small Landscape Modes */

www/css/sepiaFW-skin-history-of-future.css

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -441,6 +441,12 @@ html.landscape-small #sepiaFW-assist-btn-area {
441441
.sepiaFW-cards-list-body .weatherNowSmall > div:last-of-type {
442442
border-radius: 0 28px 28px 0;
443443
}
444+
.sepiaFW-cards-list-body .cardBodyItem .itemLeft:not(.listLeft) .material-icons {
445+
padding-left: 4px;
446+
}
447+
.sepiaFW-cards-list-body .cardBodyItem .itemRight:not(.listRight) .material-icons {
448+
padding-right: 4px;
449+
}
444450

445451
.sepiaFW-cards-list-body .timeEvent div {
446452
background: #fb9e37;

www/css/sepiaFW-skin-neo-sepia.css

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -211,7 +211,8 @@ html.landscape-small #sepiaFW-chat-controls {
211211
.sepiaFW-cards-button,
212212
.sepiaFW-notouch-device .sepiaFW-cards-button:hover {
213213
background: #CEFF1A;
214-
color: #121212;
214+
color: #121212;
215+
border: 1px solid #dadada;
215216
}
216217

217218
.sepiaFW-cards-list-title {

www/css/sepiaFW-skin-os2.css

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -206,7 +206,8 @@ html.landscape-small #sepiaFW-chat-controls {
206206
.sepiaFW-cards-flexSize-container.oneElement {
207207
padding-bottom: 5px;
208208
}
209-
.chatMsg > .sepiaFW-cards-flexSize-container.oneElement:only-of-type {
209+
.chatMsg > .sepiaFW-cards-flexSize-container.oneElement:only-of-type,
210+
.sepiaFW-results-container > .sepiaFW-cards-flexSize-container.oneElement {
210211
padding-bottom: 0px;
211212
}
212213
.chatMsg > .sepiaFW-cards-flexSize-container.oneElement {

www/scripts/sepiaFW.audio.js

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -865,12 +865,10 @@ function sepiaFW_build_audio(){
865865
broadcastAudioRequested();
866866

867867
//stop all other audio sources
868-
if (SepiaFW.client.controls){
869-
SepiaFW.client.controls.media({
870-
action: "stop",
871-
skipFollowUp: true
872-
});
873-
}
868+
SepiaFW.client.controls.media({
869+
action: "stop",
870+
skipFollowUp: true
871+
});
874872
Stream.isLoading = true;
875873

876874
}else if (audioPlayer == player2){

www/scripts/sepiaFW.embedded.nlu.js

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,14 +44,22 @@ function sepiaFW_build_embedded_nlu(){
4444
}else if (dataType == "openText"){
4545
//Mixed languages:
4646

47+
//URLs
48+
if (text.match(/(^http(s|):)/i)){
49+
getOpenLinkCmd(nluResult, text);
50+
4751
//Lists
48-
if (text.match(/(list|todo)/i)){
52+
}else if (text.match(/(list|todo)/i)){
4953
getListCmd(nluResult, text);
5054

5155
//News
5256
}else if (text.match(/(news|nachrichten)/i)){
5357
getNewsCmd(nluResult, text);
5458

59+
//Media Player (music)
60+
}else if (text.match(/(music (by|of|from)|musik von)/i)){
61+
getMusicCmd(nluResult, text);
62+
5563
//Radio
5664
}else if (text.match(/(radio|music|musik)/i)){
5765
getRadioCmd(nluResult, text);
@@ -65,7 +73,7 @@ function sepiaFW_build_embedded_nlu(){
6573
getWeatherCmd(nluResult, text);
6674

6775
//Websearch
68-
}else if (text.match(/(search|find|such(e|)|finde|link|^http(s|):.*)\b/i)){
76+
}else if (text.match(/(search|find|such(e|)|finde|link)\b/i)){
6977
getOpenLinkCmd(nluResult, text);
7078

7179
//Chat with custom action or card
@@ -153,6 +161,18 @@ function sepiaFW_build_embedded_nlu(){
153161
return nluResult;
154162
}
155163

164+
//Music
165+
function getMusicCmd(nluResult, inputText){
166+
nluResult.result = "success";
167+
nluResult.context = "music";
168+
nluResult.parameters = {
169+
"music_service": "embedded",
170+
"artist": "Ed"
171+
};
172+
nluResult.command = "music";
173+
return nluResult;
174+
}
175+
156176
//Radio
157177
function getRadioCmd(nluResult, inputText){
158178
nluResult.result = "success";

www/scripts/sepiaFW.embedded.services.js

Lines changed: 34 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,10 @@ function sepiaFW_build_embedded_services(){
4949
}else if (nluResult.command == "news"){
5050
serviceResult = Services.news(nluInput, nluResult);
5151

52+
//Music (media player)
53+
}else if (nluResult.command == "music"){
54+
serviceResult = Services.music(nluInput, nluResult);
55+
5256
//Radio
5357
}else if (nluResult.command == "music_radio"){
5458
serviceResult = Services.radio(nluInput, nluResult);
@@ -166,12 +170,31 @@ function sepiaFW_build_embedded_services(){
166170
return serviceResult;
167171
}
168172

173+
//Embedded music service
174+
Services.music = function(nluInput, nluResult){
175+
//Get dummy answer
176+
var answerText = "Ok";
177+
178+
//Get dummy media player card
179+
var serviceResult;
180+
if (SepiaFW.offline && nluResult.parameters && nluResult.parameters.music_service == "embedded"){
181+
var cardInfo = dummyCards["embedded_player"]();
182+
var actionInfo = "";
183+
var htmlInfo = "";
184+
serviceResult = Services.buildServiceResult(
185+
nluInput.user, nluInput.language,
186+
nluResult.command, answerText, cardInfo, actionInfo, htmlInfo
187+
);
188+
}
189+
return serviceResult;
190+
}
191+
169192
//Embedded radio service
170193
Services.radio = function(nluInput, nluResult){
171194
//Get dummy answer
172195
var answerText = "Ok";
173196

174-
//Get dummy weather service-result
197+
//Get dummy radio service-result
175198
var serviceResult;
176199
if (SepiaFW.offline){
177200
var cardInfo = Services.buildRadioCardInfoDummy(nluResult.language);
@@ -377,6 +400,15 @@ function sepiaFW_build_embedded_services(){
377400
artist: "Ed",
378401
song: "Twister"
379402
}, service, serviceResult);
403+
},
404+
"embedded_player_youtube": function(){
405+
var url = "https://www.youtube.com/embed?listType=playlist&list=OLAK5uy_nMLnwHRhSOAO6sO7LmFRkp21RATGG6mT8";
406+
var service = "youtube_embedded";
407+
var serviceResult = {};
408+
return Services.buildEmbeddedPlayerCardInfoDummy(url, {
409+
playlist: "Metallica",
410+
uri: url
411+
}, service, serviceResult);
380412
}
381413
}
382414

@@ -583,6 +615,7 @@ function sepiaFW_build_embedded_services(){
583615
SepiaFW.offline.getLinkCard(url, undefined, undefined, image, imageBackground, {})
584616
];
585617
if (!searchObj) searchObj = {};
618+
cardInfo[0].info[0].url = url;
586619
cardInfo[0].info[0].data = {
587620
"title": "Embedded Player",
588621
"desc": "Test Card",

www/scripts/sepiaFW.local.js

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,8 @@ function sepiaFW_build_strings(){
7878
StringsDE.copy = 'Kopieren';
7979
StringsDE.show = 'Anzeigen';
8080
StringsDE.open = 'Öffnen';
81+
StringsDE.close = 'Schließen';
82+
StringsDE.closed = 'geschlossen';
8183
StringsDE.new = 'Neu';
8284
StringsDE.unknown = 'Unbekannt';
8385
StringsDE.not_defined = 'Nicht definiert';
@@ -109,6 +111,7 @@ function sepiaFW_build_strings(){
109111
StringsDE.exportToUrl = '<i class="material-icons md-inherit">share</i><span>&nbsp;Link</span>';
110112
StringsDE.copyUrl = '<i class="material-icons md-inherit">link</i><span>&nbsp;Kopieren</span>';
111113
StringsDE.playOn = '<i class="material-icons md-inherit">airplay</i><span>&nbsp;Play On</span>';
114+
StringsDE.closeCard = '<i class="material-icons md-inherit">cancel_presentation</i><span>&nbsp;Beenden</span>';
112115
StringsDE.readNewsArticle = '<i class="material-icons md-inherit">local_library</i><span>&nbsp;Artikel lesen</span>';
113116
StringsDE.alarm = 'Wecker';
114117
StringsDE.alarmClock = 'Wecker'; //name is title of UserDataList
@@ -172,6 +175,7 @@ function sepiaFW_build_strings(){
172175
StringsDE.no_media_found = "Es wurde nichts zum Abspielen gefunden.";
173176
StringsDE.remote_action = "Remote-Zugriff";
174177
StringsDE.remote_action_audio_stream = "ich habe einen Audio Stream via Remote-Zugriff empfangen. Stream wird gestartet.";
178+
StringsDE.remote_action_media_player = "habe Daten via Remote-Zugriff empfangen. Media player wird gestartet.";
175179
StringsDE.remote_action_notify = "ich habe eine Benachrichtigung für dich.";
176180
StringsDE.read_article = "Artikel lesen";
177181
StringsDE.choose_device_for_music = "Wähle ein Gerät auf dem du die Musik abspielen willst";
@@ -191,6 +195,7 @@ function sepiaFW_build_strings(){
191195
StringsDE.myNewsDemoBtn = 'Öffne meine persönlichen News';
192196
StringsDE.myRadioDemoBtn = 'Starte mein Lieblingsradio';
193197
StringsDE.myToDoDemoBtn = 'Öffne meine To-Do Liste';
198+
StringsDE.myMusicPlayerDemoBtn = 'Spiele Musik von Ed';
194199
//Connection status
195200
StringsDE.status_connecting = "Wird verbunden...";
196201
StringsDE.status_opened = "Online";
@@ -291,6 +296,8 @@ function sepiaFW_build_strings(){
291296
StringsEN.copy = 'Copy';
292297
StringsEN.show = 'Show';
293298
StringsEN.open = 'Open';
299+
StringsEN.close = 'Close';
300+
StringsEN.closed = 'closed';
294301
StringsEN.new = 'New';
295302
StringsEN.unknown = 'Unknown';
296303
StringsEN.not_defined = 'Not defined';
@@ -322,6 +329,7 @@ function sepiaFW_build_strings(){
322329
StringsEN.exportToUrl = '<i class="material-icons md-inherit">share</i><span>&nbsp;Link</span>';
323330
StringsEN.copyUrl = '<i class="material-icons md-inherit">link</i><span>&nbsp;Copy</span>';
324331
StringsEN.playOn = '<i class="material-icons md-inherit">airplay</i><span>&nbsp;Play On</span>';
332+
StringsEN.closeCard = '<i class="material-icons md-inherit">cancel_presentation</i><span>&nbsp;Close</span>';
325333
StringsEN.readNewsArticle = '<i class="material-icons md-inherit">local_library</i><span>&nbsp;Read article</span>';
326334
StringsEN.alarm = 'Alarm';
327335
StringsEN.alarmClock = 'Alarm'; //name is title of UserDataList
@@ -385,6 +393,7 @@ function sepiaFW_build_strings(){
385393
StringsEN.no_media_found = "Found no media to play.";
386394
StringsEN.remote_action = "Remote access";
387395
StringsEN.remote_action_audio_stream = "I've received an audio stream via remote access. Starting now.";
396+
StringsEN.remote_action_media_player = "I've received media via remote access. Starting player.";
388397
StringsEN.remote_action_notify = "I have a message for you.";
389398
StringsEN.read_article = "Read article";
390399
StringsEN.choose_device_for_music = "Choose a device to play your music on";
@@ -404,6 +413,7 @@ function sepiaFW_build_strings(){
404413
StringsEN.myNewsDemoBtn = 'Open my personal news';
405414
StringsEN.myRadioDemoBtn = 'Start my favorite radio station';
406415
StringsEN.myToDoDemoBtn = 'Open my to-do list';
416+
StringsEN.myMusicPlayerDemoBtn = 'Play music from Ed';
407417
//Connection status
408418
StringsEN.status_connecting = "Connecting...";
409419
StringsEN.status_opened = "Online";

www/scripts/sepiaFW.ui.actions.js

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -409,13 +409,9 @@ function sepiaFW_build_ui_actions(){
409409
//STOP AUDIO STREAM
410410
Actions.stopAudio = function(action){
411411
//SepiaFW.debug.info("Action: type 'stop_audio_stream'.");
412-
if (SepiaFW.client.controls){
413-
SepiaFW.client.controls.media({
414-
action: "stop"
415-
});
416-
}else{
417-
SepiaFW.audio.stop();
418-
}
412+
SepiaFW.client.controls.media({
413+
action: "stop"
414+
});
419415
}
420416

421417
//SCHEDULE Messages

0 commit comments

Comments
 (0)