环球快车 发表于 2017-1-4 10:47:38

创建一个自定义的CDU界面菜单

ProSim发布1.29版本后,提供了一个新的功能:CDU界面可以从互联网上检索数据。

下面我将提供一个实例,如何从 NOAA 报告中创建一个 CDU 检索信息。

开始之前我们需要明白,我们无法检索HTML数据格式,返回的页面必须为纯文本。

正确格式:This can be used-> http:\\weather.noaa.gov/pub/data/observations/metar/stations/EHAM.TXT

错误格式:This CANNOT be used-> http://aviationweather.gov/adds/metars/ ... n_ids=eham

在 1.29 版本中增加了"http"类型。


这种新类型允许从网络中提取纯文本数据。
要使用新的属性,我们必须添加这样的信息:
<message id="Metar" type="http" response="MetResponse">
      <url>http://weather.noaa.gov/pub/data/observations/metar/stations/${ICAO}.TXT</url>
</message>

这里的${ICAO}是变量。
自定义您的CDU需要先创建一个文件,不要在Prosim中更改任何文件。
相反,创建 ACARS 文件如下:
<?xml version="1.0" encoding="utf-8" ?>
<acars name="myCustom" id="myCustom">

   <include id="default"/>
   <include id="menu"/>
   <include id="weather"/>

</acars>

将它保存为 myCustom.xml
这将包括所需的文件。
<include id="default"/>is the default ACARS file from ProSim
<include id="menu"/>is an extention to the default ACARS main page. We cannot append items to already existing CDU pages, so this file will extend the main ACARS menu adding a second page with our customizations.
<include id="weather"/> 是我们的自定义页面。


这就是文件 menu.xml 的代码:
<?xml version="1.0" encoding="utf-8"?>
<acars id="menu">

<page title="DLNK -APPLICATION MENU" id="menu">

   <subpage>
       <lsk2l link="cpdlc">CPDLC</lsk2l>
       <lsk3l link="message">MESSAGING</lsk3l>
       <lsk2r link="aocstd">AOC STD</lsk2r>
       <lsk3r link="ats">ATS</lsk3r>
       <lsk4r link="technical">TECHNICAL</lsk4r>
   </subpage>

   <subpage>
   <lsk1r link="weather">WEATHER</lsk1r>
   </subpage>

</page>

</acars>
第一个子页面组将覆盖默认(不能添加页面,只能覆盖)
第二个子页面组增加我们我们第二页内容。
最后,weather.xml代码如下:

<?xml version="1.0" encoding="utf-8"?>
<acars id="weather">

    <page title="WEATHER" id="weather">
      <lsk1l send="Metar">REQ METAR</lsk1l>
      <lsk3l input="ICAO" size="4">ICAO</lsk3l>
      <lsk6l link="menu">EXIT</lsk6l>
    </page>

    <page title="WEATHER" id="_genericUplink" uplink="MetResponse">
      <lsk1l output="_rawMessage" lines="2"/>
      <lsk2l output="_rawMessage" lines="2"/>
      <lsk3l output="_rawMessage" lines="2"/>
      <lsk4l output="_rawMessage" lines="2"/>
      <lsk5l output="_rawMessage" lines="2"/>
      <lsk6l link="menu">RETURN</lsk6l>
      <lsk6r action="print">PRINT</lsk6r>
    </page>

    <!--MESSAGE SECTION-->

    <message id="MetResponse" title="weather">
    </message>

    <message id="Metar" type="http" response="MetResponse">
      <url>http://weather.noaa.gov/pub/data/observations/metar/stations/${ICAO}.TXT</url>
    </message>


</acars>
我们已经定义了两个页面。
一个是我们的自定义页面,另外一个是定制的上一级链路页面。
显示结果如下:

选择DLNK

第二页可用了,向下翻页

选择WEATHER

我们的自定义页面显示

进入 AD ICAO,并选择 REQ. METAR。

新的消息可用,在lsk6r选择WEATHER 选项

METAR在CDU中显示出来了!

别忘记在Rrosim配置文件中选择新的ACARS。
附件为此实例的所有代码文件,希望能对大家有所帮助。

zhangzzy121 发表于 2017-1-4 22:39:00

技术强贴。。。。

yzmxncbv 发表于 2017-1-8 19:44:27

这个没有一点基础写不出来啊,支持楼主!

wxa6687 发表于 2017-1-16 08:48:15

支持一下,关键要买prosim

wxa6687 发表于 2017-1-16 08:48:40

支持一下,关键要买prosim

liziqing2381009 发表于 2017-3-7 15:45:16

楼主太牛了,IT大神

yyq123m 发表于 2017-6-14 01:57:49

我没有看懂,楼主的附件要放到哪里去?房子CDU里面吗还是哪里。

DrMundy 发表于 2017-7-9 01:49:22

感谢分享:):):):)

fame 发表于 2017-8-31 09:23:38

感谢分享.............................................................

威尼斯的泪。 发表于 2017-9-1 10:50:31

只有737吗?有没有320的呢?

dv75 发表于 2017-9-19 13:24:30

厉害了我的主,我先去慢慢学

acarakay 发表于 2017-9-19 17:34:12

thanks

fame 发表于 2017-11-27 13:27:40

楼主威武.......................................

Hwinnie 发表于 2018-1-19 18:12:13

支持技术贴!        

binglin 发表于 2018-2-5 06:24:19

如何这些FMC 的界面可以任其设置,那样大家不是没有统一的操作步骤了吗

freestuff 发表于 2018-2-5 13:00:47

支持啦。
页: [1]
查看完整版本: 创建一个自定义的CDU界面菜单