Основной сайт хуманэмулятор.рф  |  Демо  |  Купить  |  API  |  Wiki



Web / outlook



get_message_as_msg_file_by_id

get_message_as_msg_file_by_id($folder,$folder_to_save,$id,$timeout=300); - Получить письмо с заданным ID как файл .msg

Функция на вход принимает параметры:

  • $folder – Путь к папке почты
  • $folder_to_save – Папка для сохранения
  • $id – ID письма
  • $timeout – Таймаут на исполнение операции, сек

    После выполнения функции возвращаемое значение будет равно одному из двух :
  • результат – Путь к файлу сообщения в формате .msg или пустое значение если произошла ошибка
  • пусто / null – ошибка

    Пример использования
    <?php
    // Scenario: Get and save a message as .msg file from Outlook by folder and message ID
    
    $xhe_host = getenv("RPABOT_HOST_URL");
    if (!isset($path)){
        // Path to the init.php file for connecting to the XHE API
        $path = "../../../Templates/init.php";
        // Including init.php grants access to all classes and functionality for working with the XHE API
        require($path);
    }
    
    echo "\n<span>outlook->" . basename (__FILE__) . "</span>\n";
    
    // Step 1. Open Outlook app
    echo("Open Outlook app: ");
    $openResult = WEB::$outlook->open(false);
    if ($openResult)
        echo("\n Open Outlook app is success");
    else
        echo("\n Open Outlook app is fail");
    
    // Step 2. Get a message to obtain its ID
    $folder = "\\\\test@mail.ru\\Inbox";
    $messageNumber = 0;
    echo("\nStep 2. Get a message to obtain its ID: ");
    $message = WEB::$outlook->get_message_by_number($folder, $messageNumber);
    if ($message && $message->message_id) {
        echo("\n Message ID: " . $message->message_id);
        
        // Example 1. Get and save a message as .msg file from Outlook by folder and message ID
        $filePath = "test";
        echo("\n\nExample 1. Get and save a message as .msg file from Outlook by folder 'Inbox' and message ID: ");
        $getResult = WEB::$outlook->get_message_as_msg_file_by_id($folder, $filePath, $message->message_id);
        if ($getResult)
            echo("\n Get message success. File can find at path: $getResult");
        else
            echo("\n Get message fail");
    } else {
        echo("\n Failed to get message ID");
    }
    
    echo "\n";
    
    // Quit
    WINDOW::$app->quit();
    ?>
    # Additional paths
    import sys
    sys.path.insert(0, '../../../Templates PY/')
    
    xhe_host = "127.0.0.1:7026"
    from xweb_human_emulator import *
    
    # начало
    echo("<hr><font color=blue>outlook.get_message_as_msg_file_by_id</font><hr>")
    
    # 1. Открыть outlook
    echo("1. Открыть outlook: ")
    echo(outlook.open(False))
    
    # 2. Получить сообщение для получения его ID
    folder = "\\test@mail.ru\\Inbox"
    messageNumber = 0
    echo("\n2. Получить сообщение для получения его ID: ")
    message = outlook.get_message_by_number(folder, messageNumber)
    if message and message.message_id:
        echo("\n ID сообщения: " + message.message_id)
        
        # 3. Пример 1. Получить и сохранить сообщение как .msg файл из Outlook по папке и ID сообщения
        filePath = "test"
        echo("\n\n3. Пример 1. Получить и сохранить сообщение как .msg файл из Outlook по папке 'Inbox' и ID сообщения: ")
        getResult = outlook.get_message_as_msg_file_by_id(folder, filePath, message.message_id)
        if getResult:
            echo("\n Получить сообщение успешно. Файл можно найти по пути: " + getResult)
        else:
            echo("\n Получить сообщение не удалось")
    else:
        echo("\n Не удалось получить ID сообщения")
    
    echo("\n")
    
    # Quit
    app.quit()
    #region using
    
    using System;
    using System.Diagnostics;
    using System.Collections.Generic;
    using System.Linq;
    using System.IO;
    using System.Text;
    using System.Threading;
    
    using XHE;
    using XHE.XHE_DOM;
    using XHE.XHE_System;
    using XHE.XHE_Window;
    using XHE.XHE_Web;
    
    #endregion
    
     class Program:XHEScript
     {
    	  static void Main(string[] args)
    	  {
    			// init XHE
    			server = Environment.GetEnvironmentVariable("RPABOT_HOST_URL");
    			InitXHE();
    
                // начало
                echo("<hr><font color=blue>outlook->get_message_as_msg_file_by_id</font><hr>");
    
    			// 1
    			echo("1. Get a message to obtain its ID: ");
    			XHE.XHE_Web.XHEOutlookMessage message = outlook.get_message_by_number("\\\\test@mail.ru\\Inbox", 0);
    			if (message != null && !string.IsNullOrEmpty(message.message_id))
    			{
    				echo("\n Message ID: " + message.message_id);
    
    				// 2
    				echo("\n2. Get and save a message as .msg file from Outlook by folder 'Inbox' and message ID: ");
    				string result = outlook.get_message_as_msg_file_by_id("\\\\test@mail.ru\\Inbox", "test", message.message_id);
    				if (!string.IsNullOrEmpty(result))
    					echo("\n Get message success. File can find at path: " + result);
    				else
    					echo("\n Get message fail");
    			}
    			else
    			{
    				echo("\n Failed to get message ID");
    			}
    
                // конец
                echo("\n");
    
                // Quit
                app.quit();
          }
    }
    xhe_host = "127.0.0.1:3039";
    echo=require("../../../Templates JS/init.js");
    
    // начало
    echo("<hr><font color=blue>outlook->get_message_as_msg_file_by_id</font><hr>");
    
    // 1 шаг
    echo("1. Откроем приложение Outlook : ");
    echo(outlook.open(false));
    
    // 2 шаг. Получим сообщение для получения его ID
    outlookFolder = "\\\\test@mail.ru\\Inbox";
    messageNumber = 0;
    echo("\n2. Получим сообщение для получения его ID: ");
    message = outlook.get_message_by_number(outlookFolder, messageNumber);
    if (message && message.message_id) {
        echo("\n ID сообщения: " + message.message_id);
        
        // Пример 1. Получим и сохраним сообщение как .msg файл из Outlook по папке и ID сообщения
        filePath = "test";
        echo("\n\n3. Получим и сохраним сообщение как .msg файл из Outlook по папке 'Inbox' и ID сообщения: ");
        getResult = outlook.get_message_as_msg_file_by_id(outlookFolder, filePath, message.message_id);
        if (getResult)
            echo("\n Получение сообщения успешно. Файл можно найти по пути: " + getResult);
        else
            echo("\n Получение сообщения не удалось");
    } else {
        echo("\n Не удалось получить ID сообщения");
    }
    
    // конец
    echo("\n");
    
    // Quit
    app.quit();

    =============================================
    outlook    Объекты    DOM  System  Vision  Web  Window        
    =============================================
    если что-то непонятно или необходимо узнать или считаете что надо добавить по работе этой функции, пишите в комментарии или на наш форум
    .