Материал из for iRidium developers
Перейти к: навигация, поиск
Эта страница является переводом страницы Project Remote Update. Перевод выполнен на 100%.

Other languages:
English • ‎русский

Projects on control panels can be updated without iRidium Transfer even if you did not insert this possibility in advance. Form the НТТР link to the project, add the special URL scheme and make the link available for the control panel: publish on a web site, send via e-mail, make a QR code.

The special URL scheme is a command for starting the iRidium application. It is required for the НТТР link to the project to open in iRidium, not in the browser.

URL schemes for application launch work only on iOS and Android. To update projects on Windows and Mac use the IR.DownLoadProject() method in JavaScript of the project on your control panel.


Create Links and URL Schemes

iRidium can download projects only via HTTP or HTTPs, with the condition that the clickthrough does not require automatic redirecting to another server. That is why it is more convenient to store projects on Google Drive and Amazon S3. You can also use a local server.


1 Prepare your project in iRidium Transfer:

CresteEXEwithTransferGetGUI.png

1. Click the "Create" button

2. Select the license file for the control panel where the project will run:

  • Device License - for each control panel there must be a separate link as they use different licenses in the project
  • Site License - it can be uploaded and used on any control panel
  • The project can be uploaded without a license


3. Copy the main.irpz file from the opened folder.

Only the main.irpz file must be uploaded in the storage!


2 Upload the project on Google Drive or Amazon S3

INSTRUCTIONS for GOOGLE DRIVE


The link to the project from Google Drive must be formed as follows:

https://drive.google.com/uc?export=view&id=<FILE ID>

FILE ID copy it from the settings for public access to the file in the mode "For everybody who has the link":

HTTP Upload GoogleDrive.png

The example of the ready link:

https://drive.google.com/uc?export=view&id=0BxVWN5pVkhJpYkQ4aXcxT3dUNzQ


To upload a new project version use the Manage Revisions function in Google Drive. Then the link to the project will not change

The file size on Google Drive must not be more than 20 Mb

INSTRUCTIONS for AMAZON S3

Upload the file in Amazon S3, make the link to it public: Make Public, copy the link:

HTTP Upload AmazonS3.png

The example of the ready link:

https://s3.amazonaws.com/iRidiumWiki2.0/iRidiumTransfer/HTTP_Upload.irpz

use of other services is not recommended due to their redirecting features. But you can use any HTTP(s) server which can provide a direct link to the file.


3 Create a URL scheme with the received link. It will launch i3 pro and upload the visualization project:

iridium://webupdate:0?https://s3.amazonaws.com/irmarketing/iPhone5_Metro.irpz

iridium:// - to launch i3 pro
webupdate:0? - to update the project (without the Multi-design function)

webupdate:1? - to update the project (with the Multi-design function)
webupdate? - to update the project (without the Multi-design function)

https://website.com/GUI.irpz - the HTTP(s) link to the project


4 Start the URL scheme in iRidium or a third-party application to update the project.


URL Schemes in iRidium Projects

i3 pro can start the project upload on clicking a button, via the script or when reading the QR code in the application. Start the URL update scheme in one of the ways:


Execute in Macros Editor

It is the simplest way to execute the URL scheme by clicking on a button in the project. It works on iOS and Android.

Execute(iridium://webupdate:0?https://s3.amazonaws.com/irmarketing/iPhone5_Metro.irpz)
IRidiumURLexecute.png


IR.Execute() in JavaScript

The IR.Execute() method is executed in JavaScript on any event: an application launch, pressing on a button, command from equipment. It works on iOS and Android.

function update () 
{
    IR.Execute("iridium://webupdate:0?https://s3.amazonaws.com/irmarketing/iPhone5_Metro.irpz");
}

You can start update by calling theupdate function with the ScriptCall command:

JSguide helloFunction.png


The same thing can be done by adding the function call on some event in scripts:

IR.AddListener(IR.EVENT_START, 0, function()
{
    update (); //update project when app starts
});


IR.DownLoadProject() in JavaScript

It is an alternative to the IR.Execute() method in JavaScript. It processes the НТТР link to the project, not the URL scheme!

Advantages of the method:

  • it works on iOS, Android, Windows, Mac
  • you can indicate the Multi-design function and the name with which the project will be saved.


Example:

IR.DownLoadProject()

/** Auto-parsing of the link to the project: */
function parse_url(url) {
    var pattern = RegExp("^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\\?([^#]*))?(#(.*))?");
    var matches =  url.match(pattern);
    return {
        scheme: matches[2],
        authority: matches[4],
        path: matches[5],
        query: matches[7],
        fragment: matches[9]
    };
}
 
function HTTPUpdate(url)
{
   var parsed_url = parse_url(url);
   var downloader = IR.DownLoadProject(
                     {
                        type:parsed_url.scheme,
                        host:parsed_url.authority,
                        path:parsed_url.path + '?' + parsed_url.query,
                        multiproject: 0,   // 0 - Multiprojecting OFF, 1 - Multiprojecting ON
                        name: "New Project"   // Name of Downloaded Project (For multiprojecting: 1)
                     });
 }
 
////////////////// Recall the link by command "ScriptCall (Update_by_press)" ///////////////////////
function Update_by_press()
{
        // your link
        HTTPUpdate('https://s3.amazonaws.com/iRidiumWiki2.0/iRidiumTransfer/HTTP_Upload.irpz');
}

You can start update by calling the Update_by_press function with the ScriptCall command:

JSguide helloFunction.png

The same thing can be done by adding the function call on some event in scripts:

IR.AddListener(IR.EVENT_START, 0, function()
{
    Update_by_press (); // update when app starts
});


QR Code Reader

The reader of QR codes is available when installing i3 pro from AppStore and GooglePlay. You can add it in your visualization project.

The QR code reader recognizes the НТТР(s) link or iRidium URL scheme and uploads the visualization project.


To create a QR code from an НТТР(s) link or URL scheme, use one of the free Internet resources.

To add the QR code reader in the visualization interface, download and merge it with your project:

QR codes can be read only by Apple iOS and Android devices with a built-in camera. Do not add this tool in projects for Windows and Mac.


URL Schemes in Third-party Applications

i3 pro will be launched and start the project upload by clicking on the hyperlink with the iRidium URL update scheme.


URL schemes work only on iOS and Android devices. For Windows and Mac use the IR.DownloadProject() method in the iRidium application.

You can start the iRidium URL scheme as any other link:

  • send the URL scheme by e-mail as a hyperlink
  • place the URL scheme on a web site as a hyperlink
  • copy as text and insert the scheme in the address field in the Internet browser, click "Go to"
  • create a QR code with the URL scheme, place it online and print. Read and start the scheme with the help of any application with the function for recognizing QR codes.


When the URL scheme is started on the control panel in any of the suggested ways, the application will be launched and the project will be uploaded from the remote resource. After the upload i3 pro will reload and open the new visualization project.


Use it on iOS and Android control panels with installed i3 pro

the URL scheme in the QR code (read it with any application)

QRcodeSample.png

the URL scheme in the hyperlink (click the hyperlink)

DOWNLOAD THE PROJECT



Update via iRidium Transfer

It is a classic way to update projects which enables upload of projects from your PC on remote control panels.


1 Set up iRidium Transfer on PC

Add the control panel in the Transfer list - you are required to have its HWID for that. Get the HWID by clicking the "Copy HWID" button in the iRidium application installed from the AppStore or GooglePlay.

Transfer remote update 1.png


2 Set up the router to which the PC with Transfer is connected

Set up forwarding of port 10000. It is a port through which Transfer sends projects on control panels.

You can learn the public IP-address of your router with the help of Internet services, for example [1].


3 Set up i3 pro on the control panel

Нужно указать приложению, откуда загружать проект. Для этого:

WinApp Settings1.png
  1. Launch i3 pro on the control panel and hold a finger(or the mouse cursor) in any area of the project without active buttons for 10 seconds
  2. Enter the password - 2007 to access the settings
  3. Go to the Update tab, tick the "Enable" field
  4. In the "Host" field indicate the public IP-address of the router to which the PC with running Transfer is connected
  5. Click "Update Now" to start the update
  6. Remove the tick in the "Enable" field when the project is updated