Объявление

Свернуть
Пока нет объявлений.

PANASONIC VIERA CONNECT

Свернуть
X
 
  • Фильтр
  • Время
  • Показать
Очистить всё
новые сообщения

  • #31
    Re: Panasonic Viera Cast (Viera Connect Update)

    англичане врут наверное меньше чем немцы
    http://www.panasonic.co.uk/html/en_G...370/index.html

    тут стоит что апдейт будет осенью и что не все блюрейплеера 2011, а плеера с 3д поддержкой (явно проц у них получше)
    Обсуждение всех нюансов развода в Германии. www.razvod.net

    Комментарий


    • #32
      Custom Viera Cast

      пока ничего нового не вышло, буду ковырятся в тамошних скриптах.
      наворую всё что есть, чтобы было потом на что смотреть, если сдк задержиться.

      поадаюс сюда без проблем, если подставляю свой юзерагент, который я подглядел с помощью хттп сниффера
      http://bd.vieracast.eu/data/home-screen.js

      цель. стянуть всё что есть, положить к себе на комп, потом подменить хост и послать блюрейплеер вместо инета к себе на комп и посмотреть, что получится.
      если всё срастется, то можно будет писать свои виджеты и работать с ними на других теликах/плеерах при помощи прокси или внешнего днс сервера, который будет слать все запросы не на сервер виеракаст, а туда, где будет лежать мой виджет.

      в подвеске арихв с home-screen.js - стартовый скрипт виерокаста
      и кусок ютубоплагина pkg_yt_right_tab.js
      также юзерагент для работы через браузер

      How to Customize the Home Screen
      если чтото сохраняется локально, то может можно единоразово прописать свою софтину... ну или пароль
      Вложения
      Обсуждение всех нюансов развода в Германии. www.razvod.net

      Комментарий


      • #33
        Re: Custom Viera Cast

        вот это наверное самая важная часть

        Код:
        function start_vieracast_application( app, position ){
         info(">> start application >> " + app );
         http_request({ url: MyHostName+"vcapp/info?app=" + app + "&lang=" + system.locale.language
        		 + "&country=" + system.locale.country + "&pos=" + position,
        		 method: "GET",
        		 sync: false,
        		 onload: NULL_FUNCTION,
        	    });
        }
        нузжно посмотреть, смогу ли я аутифицироваться на сервере картины и получить линк на видео.

        http_request({"url" : path + this.appli_name + "/icon.js",

        case "youtube":
        case "bild":
        case "qtom":
        case "dailymotion":
        case "skype":
        case "acetrax":
        case "meinklub":
        -->
        http://bd.vieracast.eu/data/youtube/icon.js
        Обсуждение всех нюансов развода в Германии. www.razvod.net

        Комментарий


        • #34
          Re: Panasonic Viera Cast (Viera Connect Update)

          мля, купил камеру от логитек, знаю что на сайте панасоник её видел.
          в итоге с блюреями не пашет. умора
          http://logitech-en-amr.custhelp.com/...ail/a_id/23127

          нах вообще тогда в меню скайп висит, если он без оф. камеры не пашет...
          Обсуждение всех нюансов развода в Германии. www.razvod.net

          Комментарий


          • #35
            Re: Panasonic Viera Cast (Viera Connect Update)

            [quote author=nitrogen14 link=topic=6545.msg128779#msg128779 date=1316465570]
            англичане врут наверное меньше чем немцы
            тут стоит что апдейт будет осенью и что не все блюрейплеера 2011, а плеера с 3д поддержкой (явно проц у них получше) [/quote]
            Последний update TXPV20E 2.515 был совсем не update
            Это был настоящий UPGRADE
            потому,что появился VIERA CONNECT MARKET
            http://panasonic.net/avc/viera/global/connect_apps/map/
            в нём и игры и программа для весов которые с телеком по радиопротоколу соеденяются
            http://www.withings.com/ru/bodyscale
            Моя панель не включена в список ожидаемого счастья который они объявили на своей странице и всё таки свершилось.
            Что и требовалось доказать матринская плата и запиханые туда процессоры могут делать гораздо больше

            у нас после америки наверно самые продвинутые APPS
            можно на Панели развернуть все приложения разработчика
            http://panasonic.net/avc/viera/globa...apps/detail/60

            Родная камера меня разочаровала своим качеством, мои респонденты по Skype предложили перейти на PC с Microsoft камерой которой уже не припомню сколько лет. Смущают меня все эти эксперементы своей дороговизной. Не понимаю за что они такую цену на неё поставили в рознице

            Комментарий


            • #36
              Re: Panasonic Viera Cast (Viera Connect Update)

              а столько было слез. уверен что аппс все как и на моделях 2011

              Sent from my MB525 using Tapatalk
              Обсуждение всех нюансов развода в Германии. www.razvod.net

              Комментарий


              • #37
                Re: Panasonic Viera Cast (Viera Connect Update)



                пришло сегодня мыло от VIERA Connect Developers

                Panasonic Blu-ray Devices now support VIERA Connect

                We are glad to announce that VIERA Connect is now available on Panasonic Blu-ray devices*. VIERA Connect capable Blu-ray devices offer you a more flexible platform that you can use to develop your Apps. With millions of Blu-ray devices in the market, you will get additional audience for your Apps in additional to the existing audience using VIERA Connect TVs.

                проапдейтил прошу, появился маркет и тп.
                камера от ложитек так и не пошла.

                2011 Blu-ray Device Models Supporting VIERA Connect

                DMP-BDT 110*, DMP-BDT 210*, DMP-BDT 310*
                http://developer.vieraconnect.com/in...ice-guidelines

                но VIERA Connect Developers Application чтото найто не могу
                Обсуждение всех нюансов развода в Германии. www.razvod.net

                Комментарий


                • #38
                  Re: PANASONIC - VIERA CONNECT (Open Platform for Application Developers для TV 2011)

                  проапдейтил свой бд плеер
                  теперь у меня виера коннект.
                  но на европейсом маркете нет
                  http://panasonic.net/avc/viera/globa.../category/6/0/

                  VIERA Connect Developers Application
                  в категории News & Lifestyle... походу прийдется пытаться чтото мутить чере прокси...
                  да и в плеере нет пиндосии, а только евространы
                  Обсуждение всех нюансов развода в Германии. www.razvod.net

                  Комментарий


                  • #39
                    Re: Panasonic Viera Cast (Viera Connect Update)

                    http://panasonic.jp/support/global/c...t110_euro.html
                    DMP-BDT110/111/210/310 Firmware Download (Europe/UK/CIS)
                    2011/9/29
                    Ver 1.70

                    * VIERA CAST™ services has been upgraded to VIERA Connect™
                    * Network connectivity in a DHCP environment
                    * Playability of MKV file and other improvements

                    http://www.areadvd.de/hardware/2011/...p_bdt310.shtml
                    Обсуждение всех нюансов развода в Германии. www.razvod.net

                    Комментарий


                    • #40
                      Re: PANASONIC - VIERA CONNECT (Open Platform for Application Developers для TV 2011)

                      написал в панасоник суппорт, мол в немецком сторе нет этого виджета.
                      хз может добавили, в ответе написали

                      VIERA Connect Developers Application is posted in the category of "News & Life Style". You can follow the steps below to find the Application.

                      1. Get access to VIERA Connect Market.
                      2. Select "News & Life Style" on the left navigation bar.
                      3. Press Right Arrow button to select the applications in the category.
                      4. Press Down Arrow button to check for more applications.
                      6. Press Arrow buttons to select VIERA Connect Developers Application.
                      5. Press "OK" when the Application is selected.
                      угарно будет если моя модель поддерживается: DMP-BDT 210

                      http://developer.vieraconnect.com/in...ice-guidelines
                      DMP-BDT 110*, DMP-BDT 210*, DMP-BDT 310*
                      платные эпп мне не нужны и они пока не блюрейплеерах не поддерживаются. вечером посмотрим


                      VIERA Global Site Home > VIERA Connect Apps Navigator > Germany > News & Lifestyle
                      http://panasonic.net/avc/viera/globa.../category/6/0/
                      тут типо есть...
                      Обсуждение всех нюансов развода в Германии. www.razvod.net

                      Комментарий


                      • #41
                        Re: PANASONIC VIERA CONNECT (Open Platform for Application Developers)

                        распиздяи сидят у них в саппорте, как небыло виджета, так и не появился

                        Обсуждение всех нюансов развода в Германии. www.razvod.net

                        Комментарий


                        • #42
                          Re: PANASONIC VIERA CONNECT (Open Platform for Application Developers)

                          пока заняться нечем, поизучаю систему

                          Код:
                          GET /test HTTP/1.1
                          User-Agent: U2FsdGVkX19bh1vYnBs3iQb7cqEW/iJRN8sIwkbT3goc8D/r5BqD+LDyhKpUEkdosTTHcVBuZ2zqfOe5OMQSD5zM2x12s+/i+LPVlQICNFgGFN/v8gTwhwYZqsVsjSokEBzxU25oiMWZdkybSyZ1frj5LZ/D1mFRe902YXKjkADVTkae7UQrcqDF/KB4KuT33uAnAKsFaCSVpkQQCTFHHTSLZaSuCA3EB2/k1jD0d9+vrAFAi1o/qO0wN9NuLPWU
                          Host: bd-eu.vieraconnect.eu
                          вся хрень находится на сайте bd-eu.vieraconnect.eu

                          это походу главный файл
                          Код:
                          http://bd-eu.vieraconnect.eu/data/lib/pkg_common_menu.js
                          //
                          // Copyright (C) 2008 Panasonic Corporation. All Rights Reserved.
                          //
                          
                          //console.log ("install menu package");
                          
                          function make_item (name, action_func, symbol, fsize)
                          {
                           var list = new Array ();
                           for (var i = 3; i < arguments.length; i++){
                            list.push (arguments[i]);
                           }
                          
                           var _fsize = fsize || 38;
                          
                           var item = 
                            new actor ({
                             "base_col_width": 0,
                             "bg_image": [
                          	new gtext ({
                          	 "width": 500,
                          	 "text": name,
                          	 "font_size": _fsize,
                          	 "margin": [0,0,24,24],
                          	 "align": LEFT})
                             ]});
                           
                          
                           item.action =
                            function (obj) {
                             action_func();
                             //console.log("in menu pkg: symbol = " + symbol);
                             if (symbol) {
                          	on_stage (symbol);
                             }
                            };
                           item.enter_focus =
                            function (obj) {
                             //	prepare_stage (symbol);
                             for (var i = 0; i < list.length; i++)
                          	prepare_package (list[i]);
                            };
                           item.leave_focus =
                            function (obj) {
                             //	discard_stage (symbol);
                            };
                          
                           return item;
                          }
                          
                          function make_menu()
                          {
                           var list = new Array ();
                           for (var i = 0; i < arguments.length; i++) {
                            arguments[i].translate[1] = 100.0 - 62 * i;
                            list.push (arguments[i]);
                           }
                           return new container ({"components": list});
                          }
                          
                          provide ("common_menu");

                          рекламка
                          Код:
                          http://panasonic.qtom.tv/ads/ads.json
                          {
                          	"flake-data":
                          	{
                          		"tile":[
                          		{
                          			"image":{"@value":"ads/1.jpg"},
                          			"text": {"@value":"Dein persönliches Musikfernsehen."}
                          		},
                                  {
                                      "image":{"@value":"ads/2.jpg"},
                                      "text": {"@value":"NEU: Casper Special"}
                                  },
                          		{
                          			"image":{"@value":"ads/3.jpg"},
                          			"text": {"@value":"Musikvideos nach Deinem Geschmack."}
                          		},
                          		{
                          			"image":{"@value":"ads/4.jpg"},
                          			"text": {"@value":"Du bist Programmdirektor!"}
                          		},
                          		{
                          			"image":{"@value":"ads/5.jpg"},
                          			"text": {"@value":"Entdecke neue Musikvideos und alte Klassiker."}
                          		},
                          		{
                          			"image":{"@value":"ads/6.jpg"},
                          			"text": {"@value":"Gestalte Deinen Musiksender!"}
                          		},
                          		{
                          			"image":{"@value":"ads/7.jpg"},
                          			"text": {"@value":"Musikfernsehen ohne Klingeltöne und Doku Soaps."}
                          		},
                          		{
                          			"image":{"@value":"ads/8.jpg"},
                          			"text": {"@value":"Musik nach Deinen Regeln."}
                          		},
                              ]
                          	}
                          }
                          выбрал приложение acetrax
                          Код:
                          http://bd-eu.vieraconnect.eu/data/acetrax/acetrax_loader.js
                          //
                          // Copyright (C) 2009-2010 Panasonic Corporation. All Rights Reserved.
                          //
                          
                          // ////////////////////////////////////////////////////////////////
                          // LOADER TEXT
                          // ////////////////////////////////////////////////////////////////
                          var TEXT = {
                           "en-GB":{
                            "PLEASE_CONFIRM_CLOCK_SETTING" : "Please confirm clock setting.",
                            "ERROR" : "ERROR",
                            "ERROR___UNABLE_TO_CONNECT_TO_WEB_ADDRESS" : "The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.",
                            "COMMUNICATION_ERROR__STATUS" : "Communication ERROR: Status ",
                            "SPLASH_SCREEN" : "Connecting to Acetrax Movies, please wait ...",
                           },
                           "de-DE":{
                            "PLEASE_CONFIRM_CLOCK_SETTING" : "Bitte überprüfen Sie Datum und Uhrzeit.",
                            "ERROR" : "FEHLER",
                            "ERROR___UNABLE_TO_CONNECT_TO_WEB_ADDRESS" : "Der Server ist derzeit nicht in der Lage die Anfrage zu bearbeiten. Entweder ist der Server derzeit überlastet oder wegen Wartungsarbeiten nicht verfügbar. Bitte versuchen Sie es später wieder.",
                            "COMMUNICATION_ERROR__STATUS" : "Ãœbermittlungsfehler: Status ",  
                            "SPLASH_SCREEN" : "Acetrax Movies wird gestartet, bitte warten ...",
                           },
                           "fr-FR":{
                            "PLEASE_CONFIRM_CLOCK_SETTING" : "S'il vous plaît vérifiez la date et l'heure.",
                            "ERROR" : "ERREUR",
                            "ERROR___UNABLE_TO_CONNECT_TO_WEB_ADDRESS" : "En raison de travaux de maintenance ou de problèmes de capacité le serveur n'est pas en mesure de répondre à votre requête pour l'instant. Veuillez réessayer plus tard.",
                            "COMMUNICATION_ERROR__STATUS" : "ERREUR de communication : Status ",
                            "SPLASH_SCREEN" : "Acetrax Films va commencer. Veuillez, svp, patienter ...",
                           },
                           "it-IT":{
                            "PLEASE_CONFIRM_CLOCK_SETTING" : "Si prega di confermare l'impostazione dell'orologio.",
                            "ERROR" : "ERRORE",
                            "ERROR___UNABLE_TO_CONNECT_TO_WEB_ADDRESS" : "Il server in questo momento non è in grado di soddisfare la richiesta per motivi di manutenzione o di sovraccarico del sistema. Per favore, riprova più tardi.",
                            "COMMUNICATION_ERROR__STATUS" : "Errore di comunicazione: Status ",
                            "SPLASH_SCREEN" : "Connessione ad Acetrax Movies, attendere prego ...",
                           },
                          }
                          
                          var lang = ureg.read("language");
                          if( !TEXT[ lang ]){
                           lang = "en-GB";
                          }
                          ///////////////////////////////////////////////////////////////////////////////
                          // ANIMATION TIMER
                          ///////////////////////////////////////////////////////////////////////////////
                          var AnimationTimer = function () {
                           var observers = [];
                           var startAnimationTimer = function () {
                            append_timer(AnimationTimer, 100, 
                             function (obj, count) {
                              obj.pushObservers(count);
                              force_redraw();
                             });
                           };
                           var stopAnimationTimer = function () {
                            delete_timer(AnimationTimer);
                           };
                           return {
                            pushObservers : function (count) {
                             observers.forEach(
                              function (obj) {
                               obj.updateAnimation(count);
                              }
                             );
                            },
                            addAnimation : function (animationObj) {
                              var exists = observers.some(
                              function (obj) {
                               if (obj === animationObj) {
                                return true;
                               } else {
                               return false;
                              }
                              });
                              if (!exists) {
                              observers.push(animationObj);
                              if (observers.length == 1) {
                               startAnimationTimer();
                              }
                              }
                            },
                            delAnimation : function (animationObj) {
                             observers = observers.filter(
                              function (obj) {
                               if (obj != animationObj) {
                                return true;
                               }
                               return false;
                              }
                             );
                             if (observers.length === 0) {
                              stopAnimationTimer(); 
                             } 
                            }
                           }; 
                          }();
                          ///////////////////////////////////////////////////////////////////
                          // SPLASH SCREEN
                          ///////////////////////////////////////////////////////////////////
                          var splashScreen = new container ({
                           components : [
                            new gimage ({
                             "width" : 664,
                             "height" : 138,
                             "src" : path + "acetrax/splash_screen_logo.png",
                             "translate" : [30, 50 , 0]
                            }),
                            new gtext({
                             "width" : 1000,
                             "translate" : [0, -90, 0],
                             "text" : TEXT[lang].SPLASH_SCREEN,
                             "align" : CENTER
                            })
                           ],
                           visible_p : false
                          });
                          
                          var stripW = 34;
                          var stripH = 26;
                          var splashScreenWidth = 840;
                          var splashScreenInnerHeight = 330;
                          var xtrans = Math.floor(-splashScreenWidth/2) + Math.floor(stripW/2);
                          var xtransStepping = stripW * 2;
                          var ytransUpper = Math.floor(splashScreenInnerHeight/2) + Math.floor(stripH/2);
                          var ytransLower = -ytransUpper;
                          
                          var round_h = 4;
                          var round_w = 4;
                          
                          for (var i = 0; i < 13; ++i) {
                           var tmp = new container ({
                            components : [
                             new container ({
                              translate : [xtrans, ytransUpper, 0],
                              components : [
                               new gbox ({width : stripW, height : stripH, color: [255, 255, 255, 255], round_enable : true, round_width : round_w, round_height : round_h}),
                               new gbox ({width : stripW, height : stripH, color: [230, 25, 58, 255], round_enable : true, round_width : round_w, round_height : round_h, visible_p : false})
                              ]
                             }),
                             new container ({
                              translate : [xtrans, ytransLower, 0],
                              components : [
                               new gbox ({width : stripW, height : stripH, color: [255, 255, 255, 255], round_enable : true, round_width : round_w, round_height : round_h}),
                               new gbox ({width : stripW, height : stripH, color: [230, 25, 58, 255], round_enable : true, round_width : round_w, round_height : round_h, visible_p : false})
                              ]
                             })
                            ]
                           });
                           tmp.off = true;
                           tmp.startAnimation = (function (that) {
                            return function () {
                             that.components[0].components[1].visible_p = true;
                             that.components[0].components[1].color[3] = 255;
                             that.components[1].components[1].visible_p = true;
                             that.components[1].components[1].color[3] = 255;
                             AnimationTimer.addAnimation(that);
                            };
                            })(tmp);
                           tmp.updateAnimation = (function (that) {
                            return function (count) {
                             that.components[0].components[1].color[3] -= 40;
                             that.components[1].components[1].color[3] -= 40;
                             if (that.components[0].components[1].color[3] <= 20) {
                              AnimationTimer.delAnimation(that);
                             that.components[0].components[1].visible_p = false;
                             that.components[1].components[1].visible_p = false;
                             }
                            };
                           })(tmp);
                           tmp.toggle = (function (that) {
                            return function () {
                             if (that.off) {
                              that.components[0].components[0].visible_p = false;
                              that.components[0].components[1].visible_p = true;
                              that.components[1].components[0].visible_p = false;
                              that.components[1].components[1].visible_p = true;
                              that.off = false;
                             } else {
                              that.components[0].components[1].visible_p = false;
                              that.components[0].components[0].visible_p = true;
                              that.components[1].components[1].visible_p = false;
                              that.components[1].components[0].visible_p = true;
                              that.off = true;
                             }
                            };
                            })(tmp);
                           tmp.updateAnimation = (function (that) {
                            return function (count) {
                             that.components[0].components[1].color[3] -= 40;
                             that.components[1].components[1].color[3] -= 40;
                             if (that.components[0].components[1].color[3] <= 20) {
                              AnimationTimer.delAnimation(that);
                             that.components[0].components[1].visible_p = false;
                             that.components[1].components[1].visible_p = false;
                             }
                            };
                           })(tmp);
                           splashScreen.components.push(tmp);
                           xtrans += xtransStepping;
                          };
                          splashScreen.next = 0;
                          splashScreen.prev = -1;
                          splashScreen.strips = splashScreen.components.slice(2);
                          splashScreen.forward = function (current) {
                           return current + 1;
                          };
                          splashScreen.reverse = function (current) {
                           return current - 1;
                          };
                          splashScreen.direction = splashScreen.forward;
                          
                          splashScreen.animate = function () {
                           /*
                           if (splashScreen.prev >= 0) {
                            splashScreen.strips[splashScreen.prev].toggle();
                           }
                           splashScreen.strips[splashScreen.next].toggle();
                           splashScreen.prev = splashScreen.next;
                           */
                           // comment above 5 lines
                           // and uncomment following line to activate knight rider effect ;-) 
                           splashScreen.strips[splashScreen.next].startAnimation();
                           if (splashScreen.next == 12) {
                            splashScreen.direction = splashScreen.reverse;
                           } 
                           if (splashScreen.next == 0) {
                            splashScreen.direction = splashScreen.forward;
                           } 
                           splashScreen.next = splashScreen.direction(splashScreen.next);
                          };
                          
                          splashScreen.updateAnimation = (function (obj) {
                           return function (count) {
                            obj.animate();
                            force_redraw();
                           };
                          })(splashScreen);
                          
                          splashScreen.startAction = function () {
                           splashScreen.next = 0;
                           if (splashScreen.visible_p) {
                            return;
                           }
                           append_timer(this, 500, function(obj) {
                            delete_timer(obj);
                            splashScreen.visible_p = true;
                            AnimationTimer.addAnimation(splashScreen);
                            force_redraw();
                           });
                          };
                          
                          splashScreen.endAction = function () {
                           AnimationTimer.delAnimation(splashScreen);
                           if (splashScreen.visible_p == true) {
                            splashScreen.visible_p = false;
                           }
                           force_redraw();
                          };
                          
                          // ////////////////////////////////////////////////////////////////
                          // LOADER STAGE
                          // ////////////////////////////////////////////////////////////////
                          var sobj = stage ({
                           "symbol": "acetrax_loader",
                           "in": [
                            {
                             "from": ["default"],
                             "hook": function (obj) {
                              appli.start(obj);
                              complete_on_stage(obj);
                              // animation in
                              try {
                               var icon_pos = eval( "(" + ureg.read("acetrax_icon_pos") +")" );
                               if( icon_pos[0] < 0 ) {
                                anim.in_from.far_left (obj, 0, null)
                               } else if ( icon_pos[0] > 0 ){
                                anim.in_from.far_right (obj, 0, null)
                               } else if ( icon_pos[1] < 0 ) {
                                anim.in_from.far_bottom (obj, 0, null);
                               } else if ( icon_pos[1] > 0 ) {
                                anim.in_from.far_top (obj, 0, null);
                               }
                              } catch(e) {
                              }
                             }
                            }
                           ],
                           "out": [
                            {
                             "to": ["default"],
                             "hook": function (obj) {
                              appli.stop();
                              popup.visible_p = false;
                              if (popup.text != "") {
                               setf_text(popup, "");
                               complete_off_stage (obj);
                              } else {
                               // animation out
                               try {
                                  var icon_pos = eval( "(" + ureg.read("acetrax_icon_pos") +")" );
                                if( icon_pos[0] < 0 ) {
                                 anim.out_to.far_left(obj, 0, complete_off_stage);
                                } else if ( icon_pos[0] > 0 ) {
                                 anim.out_to.far_right(obj, 0, complete_off_stage);
                                } else if ( icon_pos[1] < 0 ) {
                                 anim.out_to.far_bottom (obj, 0, complete_off_stage);
                                } else if ( icon_pos[1] > 0 ) {
                                 anim.out_to.far_top (obj, 0, complete_off_stage);
                                } else {
                                    complete_off_stage (obj);
                                   }
                               } catch(e) {
                                complete_off_stage (obj);
                               }
                              }
                             }
                            }
                           ],
                           "bg_image" : [
                            new gbox ({
                             "width": 11520,
                             "height": 6480,
                             "color": [1, 23, 46, 255],
                             "translate": [0.0, 0.0, -3325.5]
                            })
                           ],
                           "components": [
                            new gbox ({
                             "width": 1920,
                             "height": 1080,
                             "color": [0, 0, 0, 255],
                            }),
                            splashScreen,
                           ]
                          });
                          
                          sobj.key_hook = function (up_down, keysym) {
                           
                           if ( up_down == KEY_PRESS
                              && (keysym == TXK_HOME
                            || keysym == TXK_RETURN
                            || popup.text != ""))
                           {
                            appli.stop();
                            discard_appli(appli.name);
                            on_stage ("home_screen");
                            return true;
                           }
                           return false;
                          }
                          
                          //////////////////////////////////////////////////////////////////
                          // LOADER LAUNCHER
                          //////////////////////////////////////////////////////////////////
                          var appli = {};
                          appli.name  = "acetrax";
                          
                          appli.start = function () {
                           splashScreen.startAction();
                           append_timer(appli, 560, appli.watchdog);
                          }
                          
                          appli.stop = function () {
                           splashScreen.endAction();
                           delete_timer(appli);
                          }
                          
                          appli.launch = function () {
                           var ret = launch_appli(appli.name, "home_screen");
                           if (ret != 0) {
                            appli.error(ret);
                           }
                          }
                          
                          //// watchdog
                          appli.watchdog = function (obj, count) {
                          
                           if (count > 128) {
                            appli.stop();
                            appli.popup_unable_to_connect();
                            return;
                           } 
                          
                           var status = get_appli_status (appli.name);
                          
                           switch (status) {
                           case -1: // Error
                            appli.stop();
                            appli.error();
                            break;
                          
                           case 0: // Prepareing
                            /* do nothing */
                            break;
                          
                           case 1: // Ready
                            appli.stop();
                            appli.launch();
                            break;
                          
                           case 2: // Running -> do nothing  
                            appli.stop();
                            break;
                          
                           case 3: // Treminated -> retry
                            prepare_appli(appli.name);
                            break;
                          
                           case 4: // Zombi -> retry
                            prepare_appli(appli.name);
                            break;
                            
                           default:
                            ;
                           }  
                          }
                          
                          //// error process
                          appli.error = function () {
                          
                           var code = get_appli_exit_code (appli.name);
                          
                           switch (code[0]) {
                           case -1: // error
                            appli.popup_unable_to_connect();
                            break;
                          
                           case 0: // alive
                            /* do nothing */
                            break;
                          
                           case 1: // exit by exit code
                            appli.popup_unable_to_connect();
                            break;
                          
                           case 2: // exit by signal
                            appli.popup_unable_to_connect();
                            break;
                          
                           case 3: // invalid url
                            appli.popup_unable_to_connect();
                            break;
                          
                           case 4: // curl error
                            if (appli.check_clock(code[1]) == false)
                             appli.popup_clock_warning();
                            else
                             appli.popup_http_error(-1*code[1]);
                            break;
                            
                           case 5: // http error
                            appli.popup_unable_to_connect();
                            break;
                          
                           case 6: // contents error
                            appli.popup_unable_to_connect();
                            break;
                          
                           case 7: // security error
                            appli.popup_unable_to_connect();
                            break;
                            
                           default:
                            ;
                           }
                           return;
                          }
                          
                          appli.popup_unable_to_connect = function ()
                          {
                           popup.visible_p = true;
                           setf_text(popup, 
                            TEXT[lang]["ERROR___UNABLE_TO_CONNECT_TO_WEB_ADDRESS"]);
                          }
                          
                          appli.popup_http_error = function (http_status)
                          {
                           popup.visible_p = true;
                           setf_text(popup, 
                            TEXT[lang]["ERROR"] + " - "
                            + TEXT[lang]["COMMUNICATION_ERROR__STATUS"]
                            + http_status);
                          }
                          
                          appli.popup_clock_warning = function ()
                          {
                           popup.visible_p = true;
                           setf_text(popup, 
                            TEXT[lang]["ERROR"] + " - "
                            + TEXT[lang]["PLEASE_CONFIRM_CLOCK_SETTING"]);
                          }
                          
                          appli.check_clock = function (argv)
                          {
                           //[60] Peer certificate cannot be authenticated with known CA certificates
                           if (argv == 60)
                           {
                            return false;
                           }
                           return true;
                          }
                          
                          // message
                          var popup = new gtextbox({
                           "visible_p": false,
                           "color": [202,202,202,255],
                           "width" : 1500,
                           "height": 600,
                           "align" : CENTER,
                           "valign": MIDDLE,
                           "font_size": 46,
                           "font_name": "F015T-bold",
                          });
                          
                          sobj.components.push (popup);
                          как мы видим приложение лежит на сайте у панасоника.

                          бильд тупо на стартовой грузит свой рсс лист
                          Код:
                          www.bild.de/rss-17146204,feed=news.bild.html
                          --> /rssfeeds/video/news-17147410,sort=1,n=30,view=rss2.bild.xml
                          после старта грузится
                          bd-eu.vieraconnect.eu/data/bild/bild_loader.js
                          
                          далее это уже с сервака бильда
                          http://nettv.bild.de/panasonic/bild/bildMain.js
                          http://nettv.bild.de/panasonic/bild/pkglangbildde-DE.js
                          http://nettv.bild.de/panasonic/bild/bildPlayer.js
                          
                          видеолинк
                          http://videos.bild.de/BILD/20/29/78/...erty=Video.mp4
                          скорее всего одинаков для всех теликов
                          в подвеске bild_loader.js
                          Вложения
                          Обсуждение всех нюансов развода в Германии. www.razvod.net

                          Комментарий


                          • #43
                            Re: PANASONIC VIERA CONNECT (Open Platform for Application Developers)

                            поснифил еще по пакетам ваще ничего не понял.
                            понял одно система тут другая в отличие от виеракаст и не удивлюсь, если на данный момент видзехты прописаны в прошивке, тк я не увидел заходя в маркет какогото списка вообще.
                            значит список либо грузится шифровано, либо уже прописан в железяке.

                            ну чтож, буду долбить суппорт своим вопросом по поводу виджета для разрабов, почему нет, чё за нах, нах за это деньги берут. итак уже 2 месяца как оплатил и всё бестолку, один прогресс поддержку бдплееров сделали и не пришлось с новым теликом возиться.

                            Обсуждение всех нюансов развода в Германии. www.razvod.net

                            Комментарий


                            • #44
                              Re: PANASONIC VIERA CONNECT (Open Platform for Application Developers)

                              получил конкретный ответ по поводу разработки на блюрейплеере.

                              Sorry to keep you waiting.

                              After an aggressive communication with the related departments, we are sorry that VIERA Connect Developers Application will be available on Blu-ray devices in early November. In the meantime, you can enjoy various applications that are available in VIERA Market on your Blu-ray devices.

                              Besides, the current VIERA Connect Apps Navigator webpage is applicable for TVs only, which will have a different App coverage with Blu-ray devices. We are preparing and will release a navigator website for Blu-ray devices in near future. Please feel free to keep track of latest updates by visiting our website.
                              ждем ноября...
                              Обсуждение всех нюансов развода в Германии. www.razvod.net

                              Комментарий


                              • #45
                                Re: PANASONIC VIERA CONNECT (Open Platform for Application Developers)

                                итак произошло чудо. эпп вроде как должна появится в маркете и для плееров

                                Panasonic Blu-ray Devices support for development


                                VIERA Connect Developers App is now available on Panasonic Blu-ray Devices*. You may now install VIERA Connect Developers Application from Market and test for your apps with your Developers Account. Blu-ray devices offers you another option to setup development environment*. With millions of Blu-ray devices in the market, you will get additional audience for your Apps in additional to the existing audience using VIERA Connect TVs.
                                осталось попробовать, что да как. без сдк и нормальных описаний и примеров будет очень трудно
                                Обсуждение всех нюансов развода в Германии. www.razvod.net

                                Комментарий

                                Обработка...
                                X