This file is indexed.

/usr/share/idl/thunderbird/nsIVoicemailService.idl is in thunderbird-dev 1:38.6.0+build1-0ubuntu1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this file,
 * You can obtain one at http://mozilla.org/MPL/2.0/. */

#include "nsISupports.idl"

interface nsIVoicemailProvider;

[scriptable, uuid(6a8b0133-960d-409d-88cd-583239e45f9f)]
interface nsIVoicemailListener : nsISupports
{
  /**
   * Called when a voicemail status (hasMessages, messageCount, returnNumber,
   * returnMessage) changed.
   */
  void notifyStatusChanged(in nsIVoicemailProvider provider);

  /**
   * Called when a voicemail info (number, displayName) changed.
   */
  void notifyInfoChanged(in nsIVoicemailProvider provider);
};

%{C++
#define NS_VOICEMAIL_SERVICE_CID \
  { 0xcdd8fd72, 0x7d55, 0x496b, \
    { 0xab, 0x1d, 0x74, 0x9f, 0xbc, 0x44, 0x56, 0x32 } }
#define NS_VOICEMAIL_SERVICE_CONTRACTID \
  "@mozilla.org/voicemail/voicemailservice;1"
%}

/**
 * XPCOM component (in the content process) that provides the voicemail
 * information.
 */
[scriptable, uuid(8ffd16c7-a614-4c4a-81f0-2a95e807152d)]
interface nsIVoicemailService : nsISupports
{
  readonly attribute unsigned long numItems;

  nsIVoicemailProvider getItemByServiceId(in unsigned long serviceId);

  nsIVoicemailProvider getDefaultItem();

  /**
   * Called when any one who is interested in receiving unsolicited messages.
   */
  void registerListener(in nsIVoicemailListener listener);
  void unregisterListener(in nsIVoicemailListener listener);
};

%{C++
template<typename T> struct already_AddRefed;

already_AddRefed<nsIVoicemailService>
NS_CreateVoicemailService();
%}

[scriptable, uuid(a0bc19a2-3216-4f3f-89d3-8976a48cb829)]
interface nsIVoicemailProvider : nsISupports
{
  readonly attribute unsigned long serviceId;

  /**
   * Voicemail center number. When changed, |notifyInfoChanged| of registered
   * nsIVoicemailListener instances are called.
   *
   * Default: null
   *
   * @see 3GPP TS 31.102 subclause 4.2.63 "EFmwis (Message Waiting Indication Status)"
   * @see 3GPP TS 51.011 subclause 10.3.45 "EFmwis (Message Waiting Indication Status)"
   */
  readonly attribute DOMString number;

  /**
   * Voicemail center display name. When changed, |notifyInfoChanged| of
   * registered nsIVoicemailListener instances are called.
   *
   * Default: null
   *
   * @see 3GPP TS 31.102 subclause 4.2.63 "EFmwis (Message Waiting Indication Status)"
   * @see 3GPP TS 51.011 subclause 10.3.45 "EFmwis (Message Waiting Indication Status)"
   */
  readonly attribute DOMString displayName;

  /**
   * Whether or not there are messages waiting in the voicemail box. When
   * changed, |notifyStatusChanged| of registered nsIVoicemailListener instances
   * are called.
   *
   * Default: false
   *
   * @see 3GPP TS 23.038 chapter 4 "SMS Data Coding Scheme"
   * @see 3GPP TS 23.040 subclause 9.2.3.24.2 "Special SMS Message Indication"
   */
  readonly attribute boolean hasMessages;

  /**
   * When #hasMessages is true, #messageCount should be a positive number for
   * the messages waiting, or -1 if the exact number is not available. When
   * changed, |notifyStatusChanged| of registered nsIVoicemailListener instances
   * are called.
   *
   * Default: 0
   *
   * @see 3GPP TS 23.040 subclause 9.2.3.24.2 "Special SMS Message Indication"
   */
  readonly attribute long messageCount;

  /**
   * A Return Call Message indicates to the MS to inform the user that a call
   * (e.g. a telephone call) can be established to the address specified within
   * the #returnNumber. The #returnMessage (if present) gives displayable
   * information (e.g. the number of waiting voice messages).
   *
   * When #hasMessages is true this may contain a non-null string as the phone
   * number of a Return Call Message. When changed, |notifyStatusChanged| of
   * registered nsIVoicemailListener instances are called.
   *
   * Default: null
   *
   * @see 3GPP TS 23.040 subclause 9.2.3.9 "TPProtocolIdentifier (TPPID)"
   */
  readonly attribute DOMString returnNumber;

  /**
   * When #hasMessages is true this may contain a non-null string as the
   * notification message of a Return Call Message. When changed,
   * |notifyStatusChanged| of registered nsIVoicemailListener instances are
   * called.
   *
   * Default: null
   *
   * @see 3GPP TS 23.040 subclause 9.2.3.9 "TPProtocolIdentifier (TPPID)"
   */
  readonly attribute DOMString returnMessage;
};