<div class="content" name="FAX_EVENT_EX" uuid="3a9ae7f7-9825-43cd-aa78-1c077fd99bd2"><p>The <b>FAX_EVENT_EX</b> structure defines information about
asynchronous events delivered to applications that have registered to receive
notification of fax events. This structure is passed as a byte array argument
to <b>FAX_ClientEventQueueEx</b> (section <a href="d1ec6615-73e1-4c86-aef9-c738c71f08d1" data-linktype="relative-path">3.2.4.3</a>).</p><p>This data structure is custom marshaled as follows and uses
the custom-marshaling rules defined in section <a href="a660ed3e-062f-4b49-ab5b-0ba19ea7598d" data-linktype="relative-path">2.2.1</a>.</p><table>
 <tbody><tr>
  <th><p><br/>0</p></th>
  <th><p><br/>1</p></th>
  <th><p><br/>2</p></th>
  <th><p><br/>3</p></th>
  <th><p><br/>4</p></th>
  <th><p><br/>5</p></th>
  <th><p><br/>6</p></th>
  <th><p><br/>7</p></th>
  <th><p><br/>8</p></th>
  <th><p><br/>9</p></th>
  <th><p>1<br/>0</p></th>
  <th><p><br/>1</p></th>
  <th><p><br/>2</p></th>
  <th><p><br/>3</p></th>
  <th><p><br/>4</p></th>
  <th><p><br/>5</p></th>
  <th><p><br/>6</p></th>
  <th><p><br/>7</p></th>
  <th><p><br/>8</p></th>
  <th><p><br/>9</p></th>
  <th><p>2<br/>0</p></th>
  <th><p><br/>1</p></th>
  <th><p><br/>2</p></th>
  <th><p><br/>3</p></th>
  <th><p><br/>4</p></th>
  <th><p><br/>5</p></th>
  <th><p><br/>6</p></th>
  <th><p><br/>7</p></th>
  <th><p><br/>8</p></th>
  <th><p><br/>9</p></th>
  <th><p>3<br/>0</p></th>
  <th><p><br/>1</p></th>
 </tr>
 <tr>
  <td colspan="32">Fixed_Portion (56 bytes)</td>
 </tr>
 <tr>
  <td colspan="32">...</td>
 </tr>
 <tr>
  <td colspan="32">...</td>
 </tr>
 <tr>
  <td colspan="32">...</td>
 </tr>
 <tr>
  <td colspan="32">Variable_Data (variable)</td>
 </tr>
 <tr>
  <td colspan="32">...</td>
 </tr>
</tbody></table><p><b>Fixed_Portion (56 bytes):</b></p><dl>
<dd>
<table>
 <tbody><tr>
  <th><p><br/>0</p></th>
  <th><p><br/>1</p></th>
  <th><p><br/>2</p></th>
  <th><p><br/>3</p></th>
  <th><p><br/>4</p></th>
  <th><p><br/>5</p></th>
  <th><p><br/>6</p></th>
  <th><p><br/>7</p></th>
  <th><p><br/>8</p></th>
  <th><p><br/>9</p></th>
  <th><p>1<br/>0</p></th>
  <th><p><br/>1</p></th>
  <th><p><br/>2</p></th>
  <th><p><br/>3</p></th>
  <th><p><br/>4</p></th>
  <th><p><br/>5</p></th>
  <th><p><br/>6</p></th>
  <th><p><br/>7</p></th>
  <th><p><br/>8</p></th>
  <th><p><br/>9</p></th>
  <th><p>2<br/>0</p></th>
  <th><p><br/>1</p></th>
  <th><p><br/>2</p></th>
  <th><p><br/>3</p></th>
  <th><p><br/>4</p></th>
  <th><p><br/>5</p></th>
  <th><p><br/>6</p></th>
  <th><p><br/>7</p></th>
  <th><p><br/>8</p></th>
  <th><p><br/>9</p></th>
  <th><p>3<br/>0</p></th>
  <th><p><br/>1</p></th>
 </tr>
 <tr>
  <td colspan="32">dwSizeOfStruct</td>
 </tr>
 <tr>
  <td colspan="32">TimeStamp</td>
 </tr>
 <tr>
  <td colspan="32">...</td>
 </tr>
 <tr>
  <td colspan="32">EventType</td>
 </tr>
 <tr>
  <td colspan="32">Fixed_Portion_of_EventInfo (40 bytes)</td>
 </tr>
 <tr>
  <td colspan="32">...</td>
 </tr>
 <tr>
  <td colspan="32">...</td>
 </tr>
 <tr>
  <td colspan="32">...</td>
 </tr>
</tbody></table>
</dd>
<dd>
<p><b>dwSizeOfStruct (4 bytes):
</b>A <b>DWORD</b> (<a href="../ms-dtyp/cca27429-5689-4a16-b2b4-9325d93e4ba2" data-linktype="relative-path">[MS-DTYP]</a>
section <a href="../ms-dtyp/262627d8-3418-4627-9218-4ffe110850b2" data-linktype="relative-path">2.2.9</a>)
that contains the size, in bytes, of this structure. MUST be set to 56 bytes.</p>
</dd>
<dd>
<p><b>TimeStamp (8 bytes): </b>A
<b>FILETIME</b> ([MS-DTYP] section <a href="../ms-dtyp/2c57429b-fdd4-488f-b5fc-9e4cf020fcdf" data-linktype="relative-path">2.3.3</a>)
structure that contains the time the fax server generated the event.</p>
</dd>
<dd>
<p><b>EventType (4 bytes): </b>One
of the <b>FAX_ENUM_EVENT_TYPE</b> (section <a href="bc289dcf-1675-403e-9060-bb2743fe0352" data-linktype="relative-path">2.2.63</a>) values that
indicates the type of event. Only a single bit is set in this value, thus there
is notification for only a single event per value. This field defines which
field of the <b>EventInfo</b> union is used. For the
FAX_EVENT_TYPE_FXSSVC_ENDED event, none of the <b>EventInfo</b> union fields
are used. This field MUST NOT be set to FAX_EVENT_TYPE_LEGACY.</p>
</dd>
<dd>
<p><b>Fixed_Portion_of_EventInfo
(40 bytes): </b>The <b>Fixed_Portion</b> of a union containing information
according to the event type.</p>
</dd>
<dd>
<p>For the FAX_EVENT_TYPE_IN_QUEUE,
FAX_EVENT_TYPE_OUT_QUEUE, FAX_EVENT_TYPE_IN_ARCHIVE, and
FAX_EVENT_TYPE_OUT_ARCHIVE events specified in the <b>FAX_ENUM_EVENT_TYPE</b>
enumeration, the union contains a <b>FAX_EVENT_EX_JOB_INFO</b> (section <a href="b6c0a084-7da6-4f47-964d-854ca44b5174" data-linktype="relative-path">2.2.67.1</a>) structure with status
about an existing job in the <a href="46aba9c4-ebb1-4b10-86ac-4bb3025657b9#gt_c1a6400d-703b-4f9a-a74c-40f1487978d9" data-linktype="relative-path">queue</a>
or <a href="46aba9c4-ebb1-4b10-86ac-4bb3025657b9#gt_9394bf31-7db9-433c-8d3d-ee6a37bf0848" data-linktype="relative-path">archives</a>.</p>
</dd>
<dd>
<p>For the FAX_EVENT_TYPE_CONFIG event, the union
contains a <b>FAX_EVENT_EX_CONFIG_TYPE</b> (section <a href="7e1c511e-8f81-4563-b73e-1ac04d4e5f40" data-linktype="relative-path">2.2.67.2</a>) enumeration
value that indicates the type of the configuration that has changed. The
receiver of this notification SHOULD call <b>FAX_GetConfiguration</b> (section <a href="edf51676-d8b6-44e7-859e-95903b19b224" data-linktype="relative-path">3.1.4.1.36</a>) to get the new
configuration.</p>
</dd>
<dd>
<p>For the FAX_EVENT_TYPE_ACTIVITY event, the union
contains a <b>FAX_EVENT_EX_ACTIVITY_INFO</b> (section <a href="a0d7f544-628e-41bf-b3e0-7bce0d3ff7c4" data-linktype="relative-path">2.2.67.3</a>) structure that
contains information about the server activity that has changed.</p>
</dd>
<dd>
<p>For the FAX_EVENT_TYPE_NEW_CALL event, the union
contains a <b>FAX_EVENT_EX_NEW_CALL</b> (section <a href="df54beec-0e7a-4366-8bb9-79d0291efc1d" data-linktype="relative-path">2.2.67.4</a>) structure that
contains information about the new incoming call detected by the fax service. </p>
</dd>
<dd>
<p>For the FAX_EVENT_TYPE_QUEUE_STATE event, the union
contains a <b>FAX_EVENT_EX_QUEUE_STATES</b> (section <a href="5bb1bf48-ae53-4c5b-8b58-54116bb211ab" data-linktype="relative-path">2.2.67.5</a>) structure with
the queue status. </p>
</dd>
<dd>
<p>For the FAX_EVENT_TYPE_DEVICE_STATUS event, the
union contains a <b>FAX_EVENT_EX_DEVICE_STATUS</b> (section <a href="cc296a09-11de-4cd9-a105-d28bb5aa7116" data-linktype="relative-path">2.2.67.6</a>) structure that
indicates the status of the fax device.</p>
</dd>
<dd>
<p>The six possible variants for the <b>Fixed_Portion</b>
blocks of the <b>EventInfo</b> union are described in the next six subsections.
The size of the <b>EventInfo</b> field is always 40 bytes, including padding.
The size of 40 bytes is dictated by the size of the largest <b>Fixed_Portion</b>
field in the union.</p>
</dd></dl><p><b>Variable_Data (variable):</b></p><dl>
<dd>
<table>
 <tbody><tr>
  <th><p><br/>0</p></th>
  <th><p><br/>1</p></th>
  <th><p><br/>2</p></th>
  <th><p><br/>3</p></th>
  <th><p><br/>4</p></th>
  <th><p><br/>5</p></th>
  <th><p><br/>6</p></th>
  <th><p><br/>7</p></th>
  <th><p><br/>8</p></th>
  <th><p><br/>9</p></th>
  <th><p>1<br/>0</p></th>
  <th><p><br/>1</p></th>
  <th><p><br/>2</p></th>
  <th><p><br/>3</p></th>
  <th><p><br/>4</p></th>
  <th><p><br/>5</p></th>
  <th><p><br/>6</p></th>
  <th><p><br/>7</p></th>
  <th><p><br/>8</p></th>
  <th><p><br/>9</p></th>
  <th><p>2<br/>0</p></th>
  <th><p><br/>1</p></th>
  <th><p><br/>2</p></th>
  <th><p><br/>3</p></th>
  <th><p><br/>4</p></th>
  <th><p><br/>5</p></th>
  <th><p><br/>6</p></th>
  <th><p><br/>7</p></th>
  <th><p><br/>8</p></th>
  <th><p><br/>9</p></th>
  <th><p>3<br/>0</p></th>
  <th><p><br/>1</p></th>
 </tr>
 <tr>
  <td colspan="32">Variable_Data of EventInfo (variable)</td>
 </tr>
 <tr>
  <td colspan="32">...</td>
 </tr>
</tbody></table>
</dd>
<dd>
<p><b>Variable_Data of
EventInfo (variable): </b>The <b>Variable_Data</b> of the <b>EventInfo</b>
union. The six possible variants for the <b>Variable_Data</b> blocks of the <b>EventInfo</b>
union are described in the next six sub-sections.</p>
</dd></dl></div>