Home | History | Annotate | Download | only in server
      1 /* Copyright (c) 2014 The Chromium OS Authors. All rights reserved.
      2  * Use of this source code is governed by a BSD-style license that can be
      3  * found in the LICENSE file.
      4  */
      5 
      6 #ifndef CRAS_TELEPHONY_H_
      7 #define CRAS_TELEPHONY_H_
      8 
      9 #include <dbus/dbus.h>
     10 
     11 /* Handle object to hold required info to handle telephony status which
     12  * is required for responsing HFP query commands.
     13  * Args:
     14  *    call - standard call status indicator, where
     15  *        0: no call active
     16  *        1: call is active
     17  *    callsetup - call set up status indicator.
     18  *        0: not currently in call set up
     19  *        1: an incoming call prcess ongoing
     20  *        2: an outgoing call set up is ongoing
     21  *    callhold - call hold status indicator.
     22  *        0: no call hold
     23  *        1: call is placed on hold or active/held calls swapped
     24  *           (The AG has both and active AND a held call)
     25  *        2: call on hold, no active call
     26  *    dial_number - phone number, used on fake memory storage and last phone
     27  *    number storage.
     28  *    dbus_conn - dus connetion which is used in whole telephony module.
     29  */
     30 struct cras_telephony_handle {
     31 	int call;
     32 	int callsetup;
     33 	int callheld;
     34 	char *dial_number;
     35 
     36 	DBusConnection *dbus_conn;
     37 };
     38 
     39 
     40 void cras_telephony_start(DBusConnection *conn);
     41 
     42 void cras_telephony_stop();
     43 
     44 struct cras_telephony_handle* cras_telephony_get();
     45 
     46 /* Stores dial number in telephony module. */
     47 void cras_telephony_store_dial_number(int len, const char* num);
     48 
     49 /* Handles answer call event from dbus or HF */
     50 int cras_telephony_event_answer_call();
     51 
     52 /* Handles answer call event from dbus or HF */
     53 int cras_telephony_event_terminate_call();
     54 
     55 #endif /* CRAS_TELEPHONY_H_ */
     56