From: Clément de l'Hamaide Date: Sun, 22 Sep 2013 15:34:51 +0000 (+0200) Subject: Implement IAX callerID feature X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=d948e34af8fabe92d12653bc1f9f8e18089da3f4;p=flightgear.git Implement IAX callerID feature --- diff --git a/src/Network/fgcom.cxx b/src/Network/fgcom.cxx index 2068e0348..adc541a7a 100644 --- a/src/Network/fgcom.cxx +++ b/src/Network/fgcom.cxx @@ -52,6 +52,7 @@ #define IAX_DELAY 300 // delay between calls in milliseconds #define TEST_FREQ 910.00 #define NULL_ICAO "ZZZZ" +#define NUM_ID "0100000000000001" const int special_freq[] = { // Define some freq who need to be used with NULL_ICAO 910000, @@ -134,6 +135,7 @@ void FGCom::bind() _ptt0_node = fgGetNode("/instrumentation/comm[0]/ptt", true); //FIXME: what about /instrumentation/comm[1]/ptt ? _callsign_node = fgGetNode("/sim/multiplay/callsign", true); _text_node = fgGetNode("/sim/messages/atc", true ); + _version_node = fgGetNode("/sim/version/flightgear", true ); // Set default values if not provided if ( !_enabled_node->hasValue() ) @@ -231,6 +233,10 @@ void FGCom::postinit() // FIXME: To be implemented in IAX audio driver //iaxc_mic_boost_set( _micBoost_node->getIntValue() ); + std::string app = "FGFS-"; + app += _version_node->getStringValue(); + + iaxc_set_callerid( _callsign_node->getStringValue(), app.c_str() ); iaxc_set_formats( IAXC_FORMAT_GSM, IAXC_FORMAT_GSM ); iaxc_start_processing_thread (); @@ -351,7 +357,7 @@ void FGCom::updateCall(bool& changed, int& callNo, double freqMHz) if( !isInRange(freqMHz) ) return; if( !num.empty() ) { - callNo = iaxc_call_ex(num.c_str(), _callsign.c_str(), NULL, 0 /* no video */); + callNo = iaxc_call(num.c_str()); if( callNo == -1 ) SG_LOG( SG_IO, SG_DEBUG, "FGCom: cannot call " << num.c_str() ); diff --git a/src/Network/fgcom.hxx b/src/Network/fgcom.hxx index f951aa14b..400d37933 100644 --- a/src/Network/fgcom.hxx +++ b/src/Network/fgcom.hxx @@ -50,6 +50,7 @@ class FGCom : public SGSubsystem, public SGPropertyChangeListener SGPropertyNode_ptr _text_node; // sim/fgcom/text SGPropertyNode_ptr _server_node; // sim/fgcom/server SGPropertyNode_ptr _enabled_node; // sim/fgcom/enabled + SGPropertyNode_ptr _version_node; // sim/version/flightgear SGPropertyNode_ptr _micBoost_node; // sim/fgcom/mic-boost SGPropertyNode_ptr _callsign_node; // sim/multiplay/callsign SGPropertyNode_ptr _register_node; // sim/fgcom/register/enabled