@@ -286,6 +286,9 @@ def cli():
286286 parser .add_argument ('--xmlPath' , type = FileType ('r' ))
287287 parser .add_argument ('--modemDevice' , type = str )
288288 parser .add_argument ('--profileName' , type = str )
289+ parser .add_argument ('--countryCode' , type = str , help = 'Country code (non-interactive mode)' )
290+ parser .add_argument ('--provider' , type = str , help = 'Provider name (non-interactive mode)' )
291+ parser .add_argument ('--apn' , type = str , help = 'APN name (non-interactive mode)' )
289292 args = parser .parse_args ()
290293
291294 opts = {}
@@ -302,11 +305,19 @@ def cli():
302305
303306 mkwvconf = Mkwvconf (opts )
304307
305- mkwvconf .displayIntro ()
306- countryCode = mkwvconf .selectCountryCode ()
307- provider = mkwvconf .selectProvider (countryCode )
308- apnname = mkwvconf .selectApn (countryCode , provider )
309- mkwvconf .makeConfig (countryCode , provider , apnname )
308+ # Non-interactive mode: all parameters provided via command-line
309+ if args .countryCode and args .provider and args .apn :
310+ countryCode = args .countryCode
311+ provider = args .provider
312+ apnname = args .apn
313+ mkwvconf .makeConfig (countryCode , provider , apnname )
314+ else :
315+ # Interactive mode
316+ mkwvconf .displayIntro ()
317+ countryCode = mkwvconf .selectCountryCode ()
318+ provider = mkwvconf .selectProvider (countryCode )
319+ apnname = mkwvconf .selectApn (countryCode , provider )
320+ mkwvconf .makeConfig (countryCode , provider , apnname )
310321
311322
312323if __name__ == "__main__" :
0 commit comments